@cloudcli-ai/cloudcli 1.37.3 → 1.37.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/assets/{abnfDiagram-N423BO3Z-CJntskwA.js → abnfDiagram-N423BO3Z-Dmkwx38H.js} +1 -1
- package/dist/assets/{arc-CIfH4uMN.js → arc-DLe9AYuO.js} +1 -1
- package/dist/assets/{architectureDiagram-T3A2C74G-_IpEkukg.js → architectureDiagram-T3A2C74G-CBbbbNUW.js} +1 -1
- package/dist/assets/{blockDiagram-VBNYF7ZC-BttxrpgZ.js → blockDiagram-VBNYF7ZC-CaMEaWu4.js} +1 -1
- package/dist/assets/{c4Diagram-5PPSVZJV-g51dSRr1.js → c4Diagram-5PPSVZJV-DhjMgNnR.js} +1 -1
- package/dist/assets/channel-CWrmwsir.js +1 -0
- package/dist/assets/{chunk-2GRJ4B5K-D_-LbQUa.js → chunk-2GRJ4B5K-yjl3-F-i.js} +1 -1
- package/dist/assets/{chunk-2Q5K7J3B-BtlHzwaO.js → chunk-2Q5K7J3B-DsAYaWEP.js} +1 -1
- package/dist/assets/{chunk-5RXB4S5H-UzkpvpAT.js → chunk-5RXB4S5H-Bt5qmqOX.js} +1 -1
- package/dist/assets/{chunk-5VM5RSS4-BKwx5Gag.js → chunk-5VM5RSS4-yWrWVvUt.js} +1 -1
- package/dist/assets/{chunk-6Q2QTUOP-D_KEBH5f.js → chunk-6Q2QTUOP-Dt66K5xb.js} +1 -1
- package/dist/assets/{chunk-GF5L2VYU-rK2DGyto.js → chunk-GF5L2VYU-DA0vzaj4.js} +1 -1
- package/dist/assets/{chunk-JWPE2WC7-CeBl_N9i.js → chunk-JWPE2WC7-CUkbx96V.js} +1 -1
- package/dist/assets/{chunk-KBJHAD2P-BiQLWVIr.js → chunk-KBJHAD2P-DWKxx1WH.js} +1 -1
- package/dist/assets/{chunk-RYQCIY6F-C1knVGV5.js → chunk-RYQCIY6F-BqluplN0.js} +1 -1
- package/dist/assets/{chunk-XXDRQBXY-CtKbJkvF.js → chunk-XXDRQBXY-DelKg3Xf.js} +1 -1
- package/dist/assets/classDiagram-JCYQIIEL-COAGCC6w.js +1 -0
- package/dist/assets/classDiagram-v2-OCEON4UE-COAGCC6w.js +1 -0
- package/dist/assets/{cose-bilkent-JH36ORCC-DjX8y40Z.js → cose-bilkent-JH36ORCC-DHV93-Em.js} +1 -1
- package/dist/assets/{cynefin-VYW2F7L2-DM6YeRba.js → cynefin-VYW2F7L2-B9HZgoGX.js} +1 -1
- package/dist/assets/{cynefinDiagram-MW4NZA55-wZJ-vy5B.js → cynefinDiagram-MW4NZA55-hFjjEQg8.js} +1 -1
- package/dist/assets/{dagre-VZM6K2ZE-BzP0ejkH.js → dagre-VZM6K2ZE-CpeVOC7V.js} +1 -1
- package/dist/assets/{diagram-7IWD3JNH-BTL_j23J.js → diagram-7IWD3JNH-D0H1UoRA.js} +1 -1
- package/dist/assets/{diagram-B4RE2ZJO-Cf1Norgu.js → diagram-B4RE2ZJO-6Y7BQUup.js} +1 -1
- package/dist/assets/{diagram-LBJQPF4R-DPiUEKr-.js → diagram-LBJQPF4R-C0nNOwht.js} +1 -1
- package/dist/assets/{diagram-Q27KOJAE-CTcTpiz5.js → diagram-Q27KOJAE-En6QlOVX.js} +1 -1
- package/dist/assets/{diagram-UB23O5K3-DPMSdYm0.js → diagram-UB23O5K3-CmPiNeGD.js} +1 -1
- package/dist/assets/{ebnfDiagram-BXEA7PRR-7yvD6uiF.js → ebnfDiagram-BXEA7PRR-Bygzp1Qt.js} +1 -1
- package/dist/assets/{erDiagram-JOGREHBK-CfgeDoV6.js → erDiagram-JOGREHBK-CwScRfzl.js} +1 -1
- package/dist/assets/{flowDiagram-UKHOOZJN-B27ng5zu.js → flowDiagram-UKHOOZJN-bKX-0xP6.js} +1 -1
- package/dist/assets/{ganttDiagram-PKOTCBZU-CcC6b_7t.js → ganttDiagram-PKOTCBZU-DtZPKXGd.js} +1 -1
- package/dist/assets/{gitGraphDiagram-DS77QQ5N-BX5kPGrO.js → gitGraphDiagram-DS77QQ5N-CUOtdL1o.js} +1 -1
- package/dist/assets/index-CdjIFxM2.js +5004 -0
- package/dist/assets/index-DgafhGTF.css +32 -0
- package/dist/assets/{infoDiagram-6WML65LV-CUP-SlN4.js → infoDiagram-6WML65LV-ciRQTS0h.js} +1 -1
- package/dist/assets/{ishikawaDiagram-WSZJBQD7-BTTDhOpX.js → ishikawaDiagram-WSZJBQD7-CgjhQZ84.js} +1 -1
- package/dist/assets/{journeyDiagram-NVQOT4AX-ARXcc61m.js → journeyDiagram-NVQOT4AX-BsbQSeIW.js} +1 -1
- package/dist/assets/{kanban-definition-27J2QSJJ-BieMpqMA.js → kanban-definition-27J2QSJJ-CrwzY9Jw.js} +1 -1
- package/dist/assets/{linear-61vxjRnP.js → linear-BUaCDr6l.js} +1 -1
- package/dist/assets/{mermaid.core-nhnwkfQx.js → mermaid.core-ClgdUU0j.js} +5 -5
- package/dist/assets/{mindmap-definition-FAOFIHXS-Cm6x5vT1.js → mindmap-definition-FAOFIHXS-BictljY1.js} +1 -1
- package/dist/assets/{pegDiagram-VL7TDLO6-CcYBq_9H.js → pegDiagram-VL7TDLO6-BXdByy_U.js} +1 -1
- package/dist/assets/{pieDiagram-7S7Q4E2Y-CfvIjfzo.js → pieDiagram-7S7Q4E2Y-uZsMfkRX.js} +1 -1
- package/dist/assets/{quadrantDiagram-CIZ2JOQS-SgYoWPNb.js → quadrantDiagram-CIZ2JOQS-7lCv4QIj.js} +1 -1
- package/dist/assets/{railroadDiagram-AXF67PYL-D2Mu5E_f.js → railroadDiagram-AXF67PYL-07dxIWbi.js} +1 -1
- package/dist/assets/{requirementDiagram-LRYGKXZP-Azwe_k4Q.js → requirementDiagram-LRYGKXZP-Cb31Yv1_.js} +1 -1
- package/dist/assets/{sankeyDiagram-W5VNT64P-DN1Ju3PA.js → sankeyDiagram-W5VNT64P-X0YPSyF9.js} +1 -1
- package/dist/assets/{sequenceDiagram-SI44F4Z6-Bj4qC34S.js → sequenceDiagram-SI44F4Z6-BdBxSIlP.js} +1 -1
- package/dist/assets/{sizeCapture-X5ZJPWSS-Co4PdklG.js → sizeCapture-X5ZJPWSS-DQM5xAyD.js} +1 -1
- package/dist/assets/{stateDiagram-OKZ733FA-nOvL9dRC.js → stateDiagram-OKZ733FA-DJ3xkLUF.js} +1 -1
- package/dist/assets/{stateDiagram-v2-UEYNNEHI-DNv8ppw7.js → stateDiagram-v2-UEYNNEHI-vAaE4zNo.js} +1 -1
- package/dist/assets/{swimlanes-SLNWSIFB-CCK3wMid.js → swimlanes-SLNWSIFB-rjfYdW0w.js} +2 -2
- package/dist/assets/swimlanesDiagram-ULZ7WXOC-TV2IF4Nq.js +8 -0
- package/dist/assets/{timeline-definition-Z64GVDOM-BC29RNFm.js → timeline-definition-Z64GVDOM-DZMra5do.js} +1 -1
- package/dist/assets/{vennDiagram-T6HMQDX7-pZlZCtEo.js → vennDiagram-T6HMQDX7-BevD8uu0.js} +1 -1
- package/dist/assets/{wardleyDiagram-T6FBY63Y-De8k2-zM.js → wardleyDiagram-T6FBY63Y-DsIyXB7z.js} +1 -1
- package/dist/assets/{xychartDiagram-ELKLHX3M-Bk8ykH0w.js → xychartDiagram-ELKLHX3M-G3PlF3ko.js} +1 -1
- package/dist/index.html +2 -2
- package/dist-server/server/index.js +4 -1
- package/dist-server/server/index.js.map +1 -1
- package/dist-server/server/modules/agent/agent.module.js +9 -2
- package/dist-server/server/modules/agent/agent.module.js.map +1 -1
- package/dist-server/server/modules/agent/agent.routes.js +175 -128
- package/dist-server/server/modules/agent/agent.routes.js.map +1 -1
- package/dist-server/server/modules/agent/tests/agent-run-registration.test.js +306 -0
- package/dist-server/server/modules/agent/tests/agent-run-registration.test.js.map +1 -0
- package/dist-server/server/modules/agent/tests/agent.routes.test.js +18 -1
- package/dist-server/server/modules/agent/tests/agent.routes.test.js.map +1 -1
- package/dist-server/server/modules/database/migrations.js +13 -0
- package/dist-server/server/modules/database/migrations.js.map +1 -1
- package/dist-server/server/modules/database/repositories/provider-models.js +60 -6
- package/dist-server/server/modules/database/repositories/provider-models.js.map +1 -1
- package/dist-server/server/modules/database/repositories/sessions.db.js +7 -0
- package/dist-server/server/modules/database/repositories/sessions.db.js.map +1 -1
- package/dist-server/server/modules/database/schema.js +7 -0
- package/dist-server/server/modules/database/schema.js.map +1 -1
- package/dist-server/server/modules/database/tests/provider-models.db.integration.test.js +99 -0
- package/dist-server/server/modules/database/tests/provider-models.db.integration.test.js.map +1 -1
- package/dist-server/server/modules/file-tree/file-tree.module.js +2 -1
- package/dist-server/server/modules/file-tree/file-tree.module.js.map +1 -1
- package/dist-server/server/modules/file-tree/file-tree.service.js +44 -7
- package/dist-server/server/modules/file-tree/file-tree.service.js.map +1 -1
- package/dist-server/server/modules/file-tree/tests/file-tree.service.test.js +126 -1
- package/dist-server/server/modules/file-tree/tests/file-tree.service.test.js.map +1 -1
- package/dist-server/server/modules/git/git-branch-diff.service.js +142 -0
- package/dist-server/server/modules/git/git-branch-diff.service.js.map +1 -0
- package/dist-server/server/modules/git/git-branch.service.js.map +1 -1
- package/dist-server/server/modules/git/git.routes.js +92 -5
- package/dist-server/server/modules/git/git.routes.js.map +1 -1
- package/dist-server/server/modules/git/tests/git-branch-diff.service.test.js +160 -0
- package/dist-server/server/modules/git/tests/git-branch-diff.service.test.js.map +1 -0
- package/dist-server/server/modules/projects/project-clone.routes.js +108 -0
- package/dist-server/server/modules/projects/project-clone.routes.js.map +1 -0
- package/dist-server/server/modules/projects/projects.routes.js +13 -66
- package/dist-server/server/modules/projects/projects.routes.js.map +1 -1
- package/dist-server/server/modules/projects/services/project-clone-request.service.js +36 -0
- package/dist-server/server/modules/projects/services/project-clone-request.service.js.map +1 -0
- package/dist-server/server/modules/projects/services/project-clone.service.js +86 -32
- package/dist-server/server/modules/projects/services/project-clone.service.js.map +1 -1
- package/dist-server/server/modules/projects/tests/project-clone.routes.test.js +191 -0
- package/dist-server/server/modules/projects/tests/project-clone.routes.test.js.map +1 -0
- package/dist-server/server/modules/projects/tests/project-clone.service.test.js +275 -0
- package/dist-server/server/modules/projects/tests/project-clone.service.test.js.map +1 -1
- package/dist-server/server/modules/providers/list/claude/claude-auth.provider.js +42 -8
- package/dist-server/server/modules/providers/list/claude/claude-auth.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/claude/claude-models.provider.js +6 -16
- package/dist-server/server/modules/providers/list/claude/claude-models.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/claude/claude-runtime.provider.js +305 -16
- package/dist-server/server/modules/providers/list/claude/claude-runtime.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/claude/claude-session-synchronizer.provider.js +38 -11
- package/dist-server/server/modules/providers/list/claude/claude-session-synchronizer.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/claude/claude-sessions.provider.js +686 -77
- package/dist-server/server/modules/providers/list/claude/claude-sessions.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/codex/codex-models.provider.js +31 -0
- package/dist-server/server/modules/providers/list/codex/codex-models.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/codex/codex-runtime.provider.js +11 -4
- package/dist-server/server/modules/providers/list/codex/codex-runtime.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/codex/codex-sessions.provider.js +57 -0
- package/dist-server/server/modules/providers/list/codex/codex-sessions.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/cursor/cursor-auth.provider.js +9 -2
- package/dist-server/server/modules/providers/list/cursor/cursor-auth.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/cursor/cursor-runtime.provider.js +8 -2
- package/dist-server/server/modules/providers/list/cursor/cursor-runtime.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/opencode/opencode-models.provider.js +16 -3
- package/dist-server/server/modules/providers/list/opencode/opencode-models.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/opencode/opencode-runtime.provider.js +5 -2
- package/dist-server/server/modules/providers/list/opencode/opencode-runtime.provider.js.map +1 -1
- package/dist-server/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.js +19 -2
- package/dist-server/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.js.map +1 -1
- package/dist-server/server/modules/providers/provider.routes.js +110 -2
- package/dist-server/server/modules/providers/provider.routes.js.map +1 -1
- package/dist-server/server/modules/providers/services/claude-cli-liveness.service.js +100 -0
- package/dist-server/server/modules/providers/services/claude-cli-liveness.service.js.map +1 -0
- package/dist-server/server/modules/providers/services/claude-settings-permissions.service.js +97 -0
- package/dist-server/server/modules/providers/services/claude-settings-permissions.service.js.map +1 -0
- package/dist-server/server/modules/providers/services/provider-capabilities.service.js +9 -1
- package/dist-server/server/modules/providers/services/provider-capabilities.service.js.map +1 -1
- package/dist-server/server/modules/providers/services/provider-models.service.js +59 -5
- package/dist-server/server/modules/providers/services/provider-models.service.js.map +1 -1
- package/dist-server/server/modules/providers/services/provider-runtime.service.js +8 -0
- package/dist-server/server/modules/providers/services/provider-runtime.service.js.map +1 -1
- package/dist-server/server/modules/providers/services/session-conversations-search.service.js +2 -4
- package/dist-server/server/modules/providers/services/session-conversations-search.service.js.map +1 -1
- package/dist-server/server/modules/providers/services/session-history-cache.service.js +4 -0
- package/dist-server/server/modules/providers/services/session-history-cache.service.js.map +1 -1
- package/dist-server/server/modules/providers/services/sessions.service.js +73 -3
- package/dist-server/server/modules/providers/services/sessions.service.js.map +1 -1
- package/dist-server/server/modules/providers/tests/claude-auth.test.js +131 -0
- package/dist-server/server/modules/providers/tests/claude-auth.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/claude-background-work.test.js +172 -0
- package/dist-server/server/modules/providers/tests/claude-background-work.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/claude-compaction.test.js +84 -0
- package/dist-server/server/modules/providers/tests/claude-compaction.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/claude-message-model.test.js +123 -0
- package/dist-server/server/modules/providers/tests/claude-message-model.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/claude-runtime-hold.test.js +265 -0
- package/dist-server/server/modules/providers/tests/claude-runtime-hold.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/claude-sessions.test.js +1368 -12
- package/dist-server/server/modules/providers/tests/claude-sessions.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/claude-settings-permissions.test.js +228 -0
- package/dist-server/server/modules/providers/tests/claude-settings-permissions.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/codex-models.test.js +25 -0
- package/dist-server/server/modules/providers/tests/codex-models.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/codex-runtime.test.js +32 -0
- package/dist-server/server/modules/providers/tests/codex-runtime.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/codex-sessions.test.js +50 -0
- package/dist-server/server/modules/providers/tests/codex-sessions.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/cursor-auth.test.js +167 -0
- package/dist-server/server/modules/providers/tests/cursor-auth.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/opencode-models.test.js +79 -0
- package/dist-server/server/modules/providers/tests/opencode-models.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/opencode-sessions.test.js +19 -1
- package/dist-server/server/modules/providers/tests/opencode-sessions.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/provider-capabilities.service.test.js +30 -0
- package/dist-server/server/modules/providers/tests/provider-capabilities.service.test.js.map +1 -0
- package/dist-server/server/modules/providers/tests/provider-models.service.test.js +79 -1
- package/dist-server/server/modules/providers/tests/provider-models.service.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/provider.routes.test.js +190 -1
- package/dist-server/server/modules/providers/tests/provider.routes.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/session-history-cache.service.test.js +19 -0
- package/dist-server/server/modules/providers/tests/session-history-cache.service.test.js.map +1 -1
- package/dist-server/server/modules/providers/tests/sessions.service.test.js +175 -1
- package/dist-server/server/modules/providers/tests/sessions.service.test.js.map +1 -1
- package/dist-server/server/modules/scheduled-messages/services/scheduled-message-dispatcher.service.js +13 -1
- package/dist-server/server/modules/scheduled-messages/services/scheduled-message-dispatcher.service.js.map +1 -1
- package/dist-server/server/modules/scheduled-messages/tests/scheduled-messages.test.js +36 -1
- package/dist-server/server/modules/scheduled-messages/tests/scheduled-messages.test.js.map +1 -1
- package/dist-server/server/modules/websocket/services/chat-run-registry.service.js +27 -5
- package/dist-server/server/modules/websocket/services/chat-run-registry.service.js.map +1 -1
- package/dist-server/server/modules/websocket/services/chat-websocket.service.js +38 -1
- package/dist-server/server/modules/websocket/services/chat-websocket.service.js.map +1 -1
- package/dist-server/server/modules/websocket/services/shell-websocket.service.js +230 -20
- package/dist-server/server/modules/websocket/services/shell-websocket.service.js.map +1 -1
- package/dist-server/server/modules/websocket/tests/chat-background-subscribe.test.js +137 -0
- package/dist-server/server/modules/websocket/tests/chat-background-subscribe.test.js.map +1 -0
- package/dist-server/server/modules/websocket/tests/chat-stop-task.test.js +96 -0
- package/dist-server/server/modules/websocket/tests/chat-stop-task.test.js.map +1 -0
- package/dist-server/server/modules/websocket/tests/shell-websocket.service.test.js +420 -0
- package/dist-server/server/modules/websocket/tests/shell-websocket.service.test.js.map +1 -1
- package/dist-server/server/shared/message-unification.js +1 -1
- package/dist-server/server/shared/message-unification.js.map +1 -1
- package/dist-server/server/shared/tests/read-only-roots.test.js +124 -0
- package/dist-server/server/shared/tests/read-only-roots.test.js.map +1 -0
- package/dist-server/server/shared/tests/strip-ansi-sequences.test.js +31 -0
- package/dist-server/server/shared/tests/strip-ansi-sequences.test.js.map +1 -0
- package/dist-server/server/shared/utils.js +126 -0
- package/dist-server/server/shared/utils.js.map +1 -1
- package/electron/desktopWindow.js +6 -0
- package/electron/viewHost.js +25 -2
- package/package.json +4 -4
- package/server/index.ts +5 -1
- package/server/modules/agent/agent.module.ts +11 -1
- package/server/modules/agent/agent.routes.ts +198 -140
- package/server/modules/agent/tests/agent-run-registration.test.ts +348 -0
- package/server/modules/agent/tests/agent.routes.test.ts +18 -1
- package/server/modules/database/migrations.ts +14 -0
- package/server/modules/database/repositories/provider-models.ts +79 -6
- package/server/modules/database/repositories/sessions.db.ts +8 -0
- package/server/modules/database/schema.ts +7 -0
- package/server/modules/database/tests/provider-models.db.integration.test.ts +113 -0
- package/server/modules/file-tree/file-tree.module.ts +2 -1
- package/server/modules/file-tree/file-tree.service.ts +49 -7
- package/server/modules/file-tree/tests/file-tree.service.test.ts +163 -1
- package/server/modules/git/git-branch-diff.service.ts +204 -0
- package/server/modules/git/git-branch.service.ts +2 -12
- package/server/modules/git/git.routes.ts +100 -6
- package/server/modules/git/tests/git-branch-diff.service.test.ts +210 -0
- package/server/modules/projects/project-clone.routes.ts +142 -0
- package/server/modules/projects/projects.routes.ts +16 -81
- package/server/modules/projects/services/project-clone-request.service.ts +56 -0
- package/server/modules/projects/services/project-clone.service.ts +102 -34
- package/server/modules/projects/tests/project-clone.routes.test.ts +246 -0
- package/server/modules/projects/tests/project-clone.service.test.ts +376 -0
- package/server/modules/providers/list/claude/claude-auth.provider.ts +60 -10
- package/server/modules/providers/list/claude/claude-models.provider.ts +10 -22
- package/server/modules/providers/list/claude/claude-runtime.provider.js +322 -15
- package/server/modules/providers/list/claude/claude-session-synchronizer.provider.ts +40 -14
- package/server/modules/providers/list/claude/claude-sessions.provider.ts +796 -88
- package/server/modules/providers/list/codex/codex-models.provider.ts +31 -0
- package/server/modules/providers/list/codex/codex-runtime.provider.ts +12 -4
- package/server/modules/providers/list/codex/codex-sessions.provider.ts +63 -0
- package/server/modules/providers/list/cursor/cursor-auth.provider.ts +10 -2
- package/server/modules/providers/list/cursor/cursor-runtime.provider.js +9 -2
- package/server/modules/providers/list/opencode/opencode-models.provider.ts +18 -3
- package/server/modules/providers/list/opencode/opencode-runtime.provider.js +5 -2
- package/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.ts +30 -2
- package/server/modules/providers/provider.routes.ts +131 -2
- package/server/modules/providers/services/claude-cli-liveness.service.ts +121 -0
- package/server/modules/providers/services/claude-settings-permissions.service.ts +127 -0
- package/server/modules/providers/services/provider-capabilities.service.ts +17 -1
- package/server/modules/providers/services/provider-models.service.ts +71 -4
- package/server/modules/providers/services/provider-runtime.service.ts +11 -0
- package/server/modules/providers/services/session-conversations-search.service.ts +2 -5
- package/server/modules/providers/services/session-history-cache.service.ts +13 -2
- package/server/modules/providers/services/sessions.service.ts +108 -8
- package/server/modules/providers/tests/claude-auth.test.ts +150 -0
- package/server/modules/providers/tests/claude-background-work.test.ts +213 -0
- package/server/modules/providers/tests/claude-compaction.test.ts +101 -0
- package/server/modules/providers/tests/claude-message-model.test.ts +160 -0
- package/server/modules/providers/tests/claude-runtime-hold.test.ts +309 -0
- package/server/modules/providers/tests/claude-sessions.test.ts +1630 -12
- package/server/modules/providers/tests/claude-settings-permissions.test.ts +271 -0
- package/server/modules/providers/tests/codex-models.test.ts +37 -0
- package/server/modules/providers/tests/codex-runtime.test.ts +36 -0
- package/server/modules/providers/tests/codex-sessions.test.ts +59 -0
- package/server/modules/providers/tests/cursor-auth.test.ts +187 -0
- package/server/modules/providers/tests/opencode-models.test.ts +100 -0
- package/server/modules/providers/tests/opencode-sessions.test.ts +40 -1
- package/server/modules/providers/tests/provider-capabilities.service.test.ts +37 -0
- package/server/modules/providers/tests/provider-models.service.test.ts +99 -1
- package/server/modules/providers/tests/provider.routes.test.ts +230 -1
- package/server/modules/providers/tests/session-history-cache.service.test.ts +22 -0
- package/server/modules/providers/tests/sessions.service.test.ts +237 -1
- package/server/modules/scheduled-messages/services/scheduled-message-dispatcher.service.ts +14 -1
- package/server/modules/scheduled-messages/tests/scheduled-messages.test.ts +45 -1
- package/server/modules/websocket/README.md +4 -2
- package/server/modules/websocket/services/chat-run-registry.service.ts +29 -5
- package/server/modules/websocket/services/chat-websocket.service.ts +58 -1
- package/server/modules/websocket/services/shell-websocket.service.ts +269 -22
- package/server/modules/websocket/tests/chat-background-subscribe.test.ts +167 -0
- package/server/modules/websocket/tests/chat-stop-task.test.ts +127 -0
- package/server/modules/websocket/tests/shell-websocket.service.test.ts +521 -0
- package/server/shared/interfaces.ts +29 -0
- package/server/shared/message-unification.ts +1 -1
- package/server/shared/tests/read-only-roots.test.ts +139 -0
- package/server/shared/tests/strip-ansi-sequences.test.ts +42 -0
- package/server/shared/types.ts +261 -7
- package/server/shared/utils.ts +136 -0
- package/dist/assets/channel-C5xU9jMw.js +0 -1
- package/dist/assets/classDiagram-JCYQIIEL-CRrL3vp7.js +0 -1
- package/dist/assets/classDiagram-v2-OCEON4UE-CRrL3vp7.js +0 -1
- package/dist/assets/index-BTDHQ6Id.css +0 -32
- package/dist/assets/index-sFfz8iBR.js +0 -4931
- package/dist/assets/swimlanesDiagram-ULZ7WXOC-DnfbNQEp.js +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-sessions.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/claude-sessions.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6DAA6D,CAAC;AAErG,KAAK,UAAU,oBAAoB,CAAC,OAAmC;IACrE,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACvD,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAEnF,eAAe,EAAE,CAAC;IAClB,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAChE,MAAM,kBAAkB,EAAE,CAAC;IAE3B,IAAI,CAAC;QACH,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,eAAe,EAAE,CAAC;QAClB,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,oBAAoB,CAAC;QACnD,CAAC;QACD,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG,kBAAkB,CAAC;AACtC,MAAM,QAAQ,GAAG,kBAAkB,CAAC;AACpC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAE1C;;;;GAIG;AACH,KAAK,UAAU,0BAA0B,CAAC,gBAAwB;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,UAAU,QAAQ,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IAC/E,MAAM,KAAK,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpD,MAAM,WAAW,GAAG;QAClB;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,aAAa;YACnB,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,UAAU;wBAChB,EAAE,EAAE,iBAAiB;wBACrB,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE;qBAC3F,CAAC;aACH;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,cAAc;YACpB,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,aAAa;wBACnB,WAAW,EAAE,iBAAiB;wBAC9B,OAAO,EAAE,kEAAkE;qBAC5E,CAAC;aACH;YACD,aAAa,EAAE;gBACb,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,gBAAgB;gBACxB,OAAO,EAAE,QAAQ;gBACjB,WAAW,EAAE,iBAAiB;gBAC9B,aAAa,EAAE,eAAe;aAC/B;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,gBAAgB;YACtB,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;4BACJ,qBAAqB;4BACrB,YAAY,QAAQ,YAAY;4BAChC,gBAAgB,iBAAiB,gBAAgB;4BACjD,4BAA4B;4BAC5B,qDAAqD;4BACrD,6CAA6C;4BAC7C,sBAAsB;yBACvB,CAAC,IAAI,CAAC,IAAI,CAAC;qBACb,CAAC;aACH;SACF;KACF,CAAC;IACF,MAAM,SAAS,CAAC,UAAU,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEvG,MAAM,UAAU,GAAG;QACjB;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,eAAe;gBACtB,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE;oBAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE;iBACpG;aACF;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;aAC7F;SACF;KACF,CAAC;IACF,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,SAAS,QAAQ,QAAQ,CAAC,EACvD,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAChE,MAAM,CACP,CAAC;IACF,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,SAAS,QAAQ,YAAY,CAAC,EAC3D,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,EACrH,MAAM,CACP,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,IAAI,CAAC,kFAAkF,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IAC1H,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE3E,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAE9D,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAEnG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC1E,iBAAiB,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,CACjF,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,0CAA0C,CAAC,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YAErD,wEAAwE;YACxE,iEAAiE;YACjE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+EAA+E,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACvH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAE/E,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAE9D,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAEnG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC1E,iBAAiB,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,CACjF,CAAC;YAEF,yEAAyE;YACzE,+BAA+B;YAC/B,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,4BAA4B,CAAC,CAAC;YAE1E,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAC7C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACpG,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,SAAS,EAAE,yDAAyD,CAAC,CAAC;QACxG,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,kFAAkF;AAClF,KAAK,UAAU,oBAAoB,CAAC,UAAkB;IACpD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,SAAS,CACb,UAAU,EACV,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAC/F,MAAM,CACP,CAAC;AACJ,CAAC;AAED,IAAI,CAAC,6EAA6E,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACrH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEjF,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAC9D,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEvC,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAEnG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC1E,iBAAiB,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,CACjF,CAAC;YAEF,uEAAuE;YACvE,yEAAyE;YACzE,8DAA8D;YAC9D,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACtD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,wDAAwD,CAAC,CAAC;QAC5G,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+EAA+E,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACvH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAEhF,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAC9D,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEvC,uEAAuE;QACvE,6CAA6C;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,QAAQ,QAAQ,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,SAAS,CACb,SAAS,EACT,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAC9F,MAAM,CACP,CAAC;QAEF,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAEnG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC1E,iBAAiB,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,CACjF,CAAC;YAEF,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4DAA4D,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACpG,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAE5E,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAE9D,qEAAqE;QACrE,iDAAiD;QACjD,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,QAAQ,QAAQ,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,QAAQ;aACtB,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA2E,CAAC;YACzG,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;gBAChD,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBAChC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,SAAS,CAAC,SAAS,EAAE,GAAG,QAAQ,IAAI,EAAE,MAAM,CAAC,CAAC;QAEpD,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAEnG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC1E,iBAAiB,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,CACjF,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;YAEnF,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,EAAE,sCAAsC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YACjG,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,wCAAwC,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAE9C;;;;GAIG;AACH,KAAK,UAAU,qBAAqB,CAAC,gBAAwB;IAC3D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,eAAe,QAAQ,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG;QACX;YACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe;YACtE,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;SAC7E;QACD;YACE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe;YAC3E,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;SAC1G;QACD;YACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe;YACtE,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,EAAE;SACvF;QACD;YACE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe;YAC3E,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,EAAE;SACnH;QACD,8CAA8C;QAC9C;YACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe;YACvE,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,EAAE;SACrF;QACD;YACE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,eAAe;YAC7E,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,EAAE;SAChH;KACF,CAAC;IAEF,MAAM,SAAS,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAClG,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,IAAI,CAAC,2EAA2E,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACnH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAE/E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAE7D,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;YAE1G,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE;gBAC/E,iBAAiB,EAAE,eAAe;aACnC,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAEjE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtB,cAAc;gBACd,cAAc;gBACd,sBAAsB;gBACtB,oBAAoB;aACrB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IAC1F,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC;IACjF,MAAM,SAAS,GAAG,yBAAyB,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;QACjE,0EAA0E;QAC1E,2EAA2E;QAC3E,sEAAsE;QACtE,MAAM,IAAI,GAAG;YACX;gBACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS;gBACrD,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE;aAC9E;YACD;gBACE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS;gBAC3D,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE;oBACP,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe;oBACzC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;iBACxF;aACF;YACD;gBACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS;gBACvD,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE;aAC/G;YACD;gBACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS;gBACvD,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE;aAC/G;SACF,CAAC;QACF,MAAM,SAAS,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAElG,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;YAEpG,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE;gBACzE,iBAAiB,EAAE,SAAS;aAC7B,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,CACV,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,eAAe,CAAC,EACvE,IAAI,CACL,CAAC;YACF,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAChF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACvG,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAE9E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAE7D,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;YAC1G,MAAM,QAAQ,GAAG,IAAI,sBAAsB,EAAE,CAAC;YAE9C,qEAAqE;YACrE,yEAAyE;YACzE,uBAAuB;YACvB,MAAM,CAAC,SAAS,CACd,MAAM,QAAQ,CAAC,iBAAiB,CAAC,eAAe,EAAE,KAAK,CAAC,EACxD,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CACvC,CAAC;YAEF,sEAAsE;YACtE,MAAM,CAAC,SAAS,CACd,MAAM,QAAQ,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,EACvD,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CACvC,CAAC;YAEF,MAAM,CAAC,SAAS,CACd,MAAM,QAAQ,CAAC,iBAAiB,CAAC,eAAe,EAAE,mBAAmB,CAAC,EACtE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CACxC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4DAA4D,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACpG,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE7E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAE7D,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;YAE1G,MAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE;gBAC/E,iBAAiB,EAAE,eAAe;aACnC,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAC/E,MAAM,CAAC,SAAS,CACd,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EACrD,CAAC,IAAI,EAAE,KAAK,CAAC,CACd,CAAC;YACF,sEAAsE;YACtE,uBAAuB;YACvB,MAAM,CAAC,KAAK,CACV,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,EACzF,KAAK,CACN,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qEAAqE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IAC7G,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,4BAA4B,CAAC;IAE/C,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;QACjE,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,IAAI,GAAG;YACX;gBACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS;gBACtD,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE;aACtE;YACD;gBACE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS;gBAC5D,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE;aAChG;YACD;gBACE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS;gBAC9D,SAAS,EAAE,0BAA0B;aACtC;YACD;gBACE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS;gBACxD,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE;aAC9E;SACF,CAAC;QACF,MAAM,SAAS,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAElG,MAAM,oBAAoB,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;YAEjG,MAAM,CAAC,SAAS,CACd,MAAM,IAAI,sBAAsB,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,EACtE,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CACxC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"claude-sessions.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/claude-sessions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import assert from 'node:assert/strict';
|
|
2
|
+
import { once } from 'node:events';
|
|
3
|
+
import { mkdir, mkdtemp, readFile, rm, writeFile } from 'node:fs/promises';
|
|
4
|
+
import os from 'node:os';
|
|
5
|
+
import path from 'node:path';
|
|
6
|
+
import test from 'node:test';
|
|
7
|
+
import express from 'express';
|
|
8
|
+
import providerRouter from '../../../modules/providers/provider.routes.js';
|
|
9
|
+
import { claudeSettingsPermissionsService } from '../../../modules/providers/services/claude-settings-permissions.service.js';
|
|
10
|
+
const withHome = async (run) => {
|
|
11
|
+
const homeDir = await mkdtemp(path.join(os.tmpdir(), 'claude-settings-permissions-'));
|
|
12
|
+
// os.homedir() reads HOME on POSIX and USERPROFILE on Windows.
|
|
13
|
+
const overridden = { HOME: homeDir, USERPROFILE: homeDir, CLAUDE_CONFIG_DIR: undefined };
|
|
14
|
+
const original = Object.fromEntries(Object.keys(overridden).map((key) => [key, process.env[key]]));
|
|
15
|
+
const setEnv = (values) => {
|
|
16
|
+
for (const [key, value] of Object.entries(values)) {
|
|
17
|
+
if (value === undefined) {
|
|
18
|
+
delete process.env[key];
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
process.env[key] = value;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
setEnv(overridden);
|
|
26
|
+
try {
|
|
27
|
+
await run(homeDir);
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
setEnv(original);
|
|
31
|
+
await rm(homeDir, { recursive: true, force: true });
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const writeSettings = async (filePath, content) => {
|
|
35
|
+
await mkdir(path.dirname(filePath), { recursive: true });
|
|
36
|
+
await writeFile(filePath, typeof content === 'string' || Buffer.isBuffer(content) ? content : JSON.stringify(content));
|
|
37
|
+
};
|
|
38
|
+
const bySource = (sources, scope) => {
|
|
39
|
+
const source = sources.find((entry) => entry.scope === scope);
|
|
40
|
+
assert.ok(source, `expected a ${scope} source`);
|
|
41
|
+
return source;
|
|
42
|
+
};
|
|
43
|
+
test('lists the allow, deny and ask rules of ~/.claude/settings.json and the managed file', async () => {
|
|
44
|
+
await withHome(async (homeDir) => {
|
|
45
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
46
|
+
const managedFile = path.join(homeDir, 'managed', 'managed-settings.json');
|
|
47
|
+
await writeSettings(userFile, {
|
|
48
|
+
env: { ANTHROPIC_API_KEY: 'sk-secret' },
|
|
49
|
+
permissions: {
|
|
50
|
+
allow: ['Bash(npm run test:*)', 'Read', 'Read', ' ', 42],
|
|
51
|
+
deny: ['Bash(rm:*)'],
|
|
52
|
+
ask: ['WebFetch'],
|
|
53
|
+
defaultMode: 'acceptEdits',
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
await writeSettings(managedFile, { permissions: { deny: ['WebSearch'] } });
|
|
57
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(managedFile);
|
|
58
|
+
assert.deepEqual(bySource(sources, 'user'), {
|
|
59
|
+
scope: 'user',
|
|
60
|
+
path: userFile,
|
|
61
|
+
status: 'ok',
|
|
62
|
+
// Duplicates, blanks and non-strings are dropped; order is kept.
|
|
63
|
+
allow: ['Bash(npm run test:*)', 'Read'],
|
|
64
|
+
deny: ['Bash(rm:*)'],
|
|
65
|
+
ask: ['WebFetch'],
|
|
66
|
+
});
|
|
67
|
+
assert.deepEqual(bySource(sources, 'managed'), {
|
|
68
|
+
scope: 'managed',
|
|
69
|
+
path: managedFile,
|
|
70
|
+
status: 'ok',
|
|
71
|
+
allow: [],
|
|
72
|
+
deny: ['WebSearch'],
|
|
73
|
+
ask: [],
|
|
74
|
+
});
|
|
75
|
+
// Nothing but the rule lists leaves the server (the env block holds secrets).
|
|
76
|
+
assert.doesNotMatch(JSON.stringify(sources), /sk-secret|acceptEdits/);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
test('reports missing files as empty instead of failing', async () => {
|
|
80
|
+
await withHome(async (homeDir) => {
|
|
81
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'nowhere', 'managed-settings.json'));
|
|
82
|
+
for (const source of sources) {
|
|
83
|
+
assert.equal(source.status, 'missing');
|
|
84
|
+
assert.deepEqual([source.allow, source.deny, source.ask], [[], [], []]);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
test('reports invalid JSON, non-object JSON and unreadable paths as invalid without throwing', async () => {
|
|
89
|
+
await withHome(async (homeDir) => {
|
|
90
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
91
|
+
const managedFile = path.join(homeDir, 'managed', 'managed-settings.json');
|
|
92
|
+
await writeSettings(userFile, '{ "permissions": { "allow": ["Read"], }');
|
|
93
|
+
await writeSettings(managedFile, '["Read"]');
|
|
94
|
+
let sources = await claudeSettingsPermissionsService.listRuleSources(managedFile);
|
|
95
|
+
assert.equal(bySource(sources, 'user').status, 'invalid');
|
|
96
|
+
assert.deepEqual(bySource(sources, 'user').allow, []);
|
|
97
|
+
assert.equal(bySource(sources, 'managed').status, 'invalid');
|
|
98
|
+
// A directory where the file should be cannot be read either.
|
|
99
|
+
await rm(userFile);
|
|
100
|
+
await mkdir(userFile);
|
|
101
|
+
sources = await claudeSettingsPermissionsService.listRuleSources(managedFile);
|
|
102
|
+
assert.equal(bySource(sources, 'user').status, 'invalid');
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
test('reports a file under a path that is not a directory as missing', async () => {
|
|
106
|
+
await withHome(async (homeDir) => {
|
|
107
|
+
// ~/.claude is a plain file, so ~/.claude/settings.json cannot exist (ENOTDIR).
|
|
108
|
+
await writeFile(path.join(homeDir, '.claude'), 'not a directory');
|
|
109
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
110
|
+
assert.equal(bySource(sources, 'user').status, 'missing');
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
test('reads files saved with a byte order mark, as the CLI does', async () => {
|
|
114
|
+
await withHome(async (homeDir) => {
|
|
115
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
116
|
+
const managedFile = path.join(homeDir, 'managed', 'managed-settings.json');
|
|
117
|
+
const settings = JSON.stringify({ permissions: { allow: ['Bash(git status)'], deny: ['Bash(rm:*)'] } });
|
|
118
|
+
// UTF-8 with BOM (older Notepad) and UTF-16LE with BOM (Windows PowerShell 5.1 Out-File).
|
|
119
|
+
await writeSettings(userFile, Buffer.concat([Buffer.from([0xef, 0xbb, 0xbf]), Buffer.from(settings, 'utf8')]));
|
|
120
|
+
await writeSettings(managedFile, Buffer.concat([Buffer.from([0xff, 0xfe]), Buffer.from(settings, 'utf16le')]));
|
|
121
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(managedFile);
|
|
122
|
+
for (const scope of ['user', 'managed']) {
|
|
123
|
+
const source = bySource(sources, scope);
|
|
124
|
+
assert.equal(source.status, 'ok', `${scope} file`);
|
|
125
|
+
assert.deepEqual(source.allow, ['Bash(git status)']);
|
|
126
|
+
assert.deepEqual(source.deny, ['Bash(rm:*)']);
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
test('treats an empty or whitespace-only file as valid with no rules, as the CLI does', async () => {
|
|
131
|
+
await withHome(async (homeDir) => {
|
|
132
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
133
|
+
const managedFile = path.join(homeDir, 'managed', 'managed-settings.json');
|
|
134
|
+
await writeSettings(userFile, '');
|
|
135
|
+
await writeSettings(managedFile, ' \n\t\r\n');
|
|
136
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(managedFile);
|
|
137
|
+
for (const source of sources) {
|
|
138
|
+
assert.equal(source.status, 'ok', `${source.scope} file`);
|
|
139
|
+
assert.deepEqual([source.allow, source.deny, source.ask], [[], [], []]);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
test('reports a file over the CLI 2 MB limit as invalid, since the CLI skips it', async () => {
|
|
144
|
+
await withHome(async (homeDir) => {
|
|
145
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
146
|
+
await writeSettings(userFile, { permissions: { allow: ['Read'] }, padding: 'x'.repeat(2 * 1024 * 1024) });
|
|
147
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
148
|
+
assert.equal(bySource(sources, 'user').status, 'invalid');
|
|
149
|
+
assert.deepEqual(bySource(sources, 'user').allow, []);
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
test('a settings file without a permissions block is valid and adds no rules', async () => {
|
|
153
|
+
await withHome(async (homeDir) => {
|
|
154
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
155
|
+
await writeSettings(userFile, { model: 'opus' });
|
|
156
|
+
let sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
157
|
+
assert.equal(bySource(sources, 'user').status, 'ok');
|
|
158
|
+
assert.deepEqual(bySource(sources, 'user').allow, []);
|
|
159
|
+
// A rule list that is not an array adds no rules either.
|
|
160
|
+
await writeSettings(userFile, { permissions: { allow: 'Read' } });
|
|
161
|
+
sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
162
|
+
assert.equal(bySource(sources, 'user').status, 'ok');
|
|
163
|
+
assert.deepEqual(bySource(sources, 'user').allow, []);
|
|
164
|
+
});
|
|
165
|
+
});
|
|
166
|
+
test('reads the managed file from the fixed path the CLI uses on each OS', async () => {
|
|
167
|
+
const expected = {
|
|
168
|
+
darwin: '/Library/Application Support/ClaudeCode/managed-settings.json',
|
|
169
|
+
win32: 'C:\\Program Files\\ClaudeCode\\managed-settings.json',
|
|
170
|
+
linux: '/etc/claude-code/managed-settings.json',
|
|
171
|
+
};
|
|
172
|
+
const originalPlatform = Object.getOwnPropertyDescriptor(process, 'platform');
|
|
173
|
+
assert.ok(originalPlatform);
|
|
174
|
+
await withHome(async () => {
|
|
175
|
+
try {
|
|
176
|
+
for (const [platform, managedPath] of Object.entries(expected)) {
|
|
177
|
+
Object.defineProperty(process, 'platform', { ...originalPlatform, value: platform });
|
|
178
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources();
|
|
179
|
+
assert.equal(bySource(sources, 'managed').path, managedPath, platform);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
finally {
|
|
183
|
+
Object.defineProperty(process, 'platform', originalPlatform);
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
});
|
|
187
|
+
test('follows CLAUDE_CONFIG_DIR like the CLI does', async () => {
|
|
188
|
+
await withHome(async (homeDir) => {
|
|
189
|
+
const configDir = path.join(homeDir, 'custom-claude');
|
|
190
|
+
await writeSettings(path.join(configDir, 'settings.json'), { permissions: { allow: ['Edit'] } });
|
|
191
|
+
process.env.CLAUDE_CONFIG_DIR = configDir;
|
|
192
|
+
const sources = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
193
|
+
assert.equal(bySource(sources, 'user').path, path.join(configDir, 'settings.json'));
|
|
194
|
+
assert.deepEqual(bySource(sources, 'user').allow, ['Edit']);
|
|
195
|
+
// A relative value would resolve against the server's cwd, not the CLI's
|
|
196
|
+
// project folder, so the reader keeps the default location instead.
|
|
197
|
+
process.env.CLAUDE_CONFIG_DIR = 'custom-claude';
|
|
198
|
+
const fallback = await claudeSettingsPermissionsService.listRuleSources(path.join(homeDir, 'none.json'));
|
|
199
|
+
assert.equal(bySource(fallback, 'user').path, path.join(homeDir, '.claude', 'settings.json'));
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
test('GET /api/providers/claude/settings-permissions serves the sources and never writes the files', async () => {
|
|
203
|
+
await withHome(async (homeDir) => {
|
|
204
|
+
const userFile = path.join(homeDir, '.claude', 'settings.json');
|
|
205
|
+
const original = JSON.stringify({ permissions: { allow: ['Bash(git status)'] } });
|
|
206
|
+
await writeSettings(userFile, original);
|
|
207
|
+
const app = express().use('/api/providers', providerRouter);
|
|
208
|
+
const server = app.listen(0, '127.0.0.1');
|
|
209
|
+
await once(server, 'listening');
|
|
210
|
+
try {
|
|
211
|
+
const { port } = server.address();
|
|
212
|
+
const response = await fetch(`http://127.0.0.1:${port}/api/providers/claude/settings-permissions`);
|
|
213
|
+
const payload = await response.json();
|
|
214
|
+
assert.equal(response.status, 200);
|
|
215
|
+
assert.equal(payload.success, true);
|
|
216
|
+
const user = bySource(payload.data.sources, 'user');
|
|
217
|
+
assert.equal(user.path, userFile);
|
|
218
|
+
assert.deepEqual(user.allow, ['Bash(git status)']);
|
|
219
|
+
assert.equal(await readFile(userFile, 'utf8'), original);
|
|
220
|
+
}
|
|
221
|
+
finally {
|
|
222
|
+
await new Promise((resolve, reject) => {
|
|
223
|
+
server.close((error) => error ? reject(error) : resolve());
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
//# sourceMappingURL=claude-settings-permissions.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-settings-permissions.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/claude-settings-permissions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import assert from 'node:assert/strict';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import test from 'node:test';
|
|
4
|
+
import { CODEX_PREDEFINED_MODELS } from '../../../modules/providers/list/codex/codex-models.provider.js';
|
|
5
|
+
const require = createRequire(import.meta.url);
|
|
6
|
+
const findCodexModel = (value) => CODEX_PREDEFINED_MODELS.OPTIONS.find((option) => option.value === value);
|
|
7
|
+
test('lists GPT-6 Sol and GPT-6 Luna with the effort levels the Codex CLI accepts', () => {
|
|
8
|
+
const sol = findCodexModel('gpt-6-sol');
|
|
9
|
+
assert.equal(sol?.label, 'GPT-6 Sol');
|
|
10
|
+
assert.equal(sol?.effort?.default, 'medium');
|
|
11
|
+
assert.deepEqual(sol?.effort?.values.map((effort) => effort.value), ['low', 'medium', 'high', 'xhigh', 'max', 'ultra']);
|
|
12
|
+
const luna = findCodexModel('gpt-6-luna');
|
|
13
|
+
assert.equal(luna?.label, 'GPT-6 Luna');
|
|
14
|
+
assert.equal(luna?.effort?.default, 'medium');
|
|
15
|
+
assert.deepEqual(luna?.effort?.values.map((effort) => effort.value), ['low', 'medium', 'high', 'xhigh', 'max']);
|
|
16
|
+
});
|
|
17
|
+
test('bundles a Codex CLI new enough to know the GPT-6 Sol and Luna models', () => {
|
|
18
|
+
// Codex only ships metadata for gpt-6-sol / gpt-6-luna from 0.155.0 on. An
|
|
19
|
+
// older CLI still sends the request, but on fallback metadata: it warns
|
|
20
|
+
// "Model metadata ... not found" and quietly drops `ultra` to `medium`.
|
|
21
|
+
const { version } = require('@openai/codex/package.json');
|
|
22
|
+
const [major, minor] = version.split('.').map(Number);
|
|
23
|
+
assert.ok(major > 0 || minor >= 155, `bundled @openai/codex ${version} predates 0.155.0`);
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=codex-models.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-models.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/codex-models.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAElG,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE,CACvC,uBAAuB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;AAE3E,IAAI,CAAC,6EAA6E,EAAE,GAAG,EAAE;IACvF,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACtC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,CACd,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EACjD,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CACnD,CAAC;IAEF,MAAM,IAAI,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IAC1C,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,CAAC,SAAS,CACd,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAClD,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAC1C,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAChF,2EAA2E;IAC3E,wEAAwE;IACxE,wEAAwE;IACxE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAwB,CAAC;IACjF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,GAAG,EAAE,yBAAyB,OAAO,mBAAmB,CAAC,CAAC;AAC5F,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import assert from 'node:assert/strict';
|
|
2
|
+
import path from 'node:path';
|
|
2
3
|
import test from 'node:test';
|
|
3
4
|
import { Codex } from '@openai/codex-sdk';
|
|
4
5
|
import { codexRuntime } from '../../../modules/providers/list/codex/codex-runtime.provider.js';
|
|
@@ -48,4 +49,35 @@ for (const resumed of [false, true]) {
|
|
|
48
49
|
});
|
|
49
50
|
}
|
|
50
51
|
}
|
|
52
|
+
for (const command of ['', ' \n\t']) {
|
|
53
|
+
test(`Codex supplies a prompt for an image-only turn (${JSON.stringify(command)})`, async (t) => {
|
|
54
|
+
let capturedPrompt;
|
|
55
|
+
const imagePath = path.join(process.cwd(), 'public', 'favicon.png');
|
|
56
|
+
const thread = {
|
|
57
|
+
id: 'native-thread',
|
|
58
|
+
async runStreamed(prompt) {
|
|
59
|
+
capturedPrompt = prompt;
|
|
60
|
+
return { events: (async function* () {
|
|
61
|
+
yield { type: 'thread.started', thread_id: 'native-thread' };
|
|
62
|
+
})() };
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
t.mock.method(Codex.prototype, 'startThread', () => thread);
|
|
66
|
+
const context = {
|
|
67
|
+
resolveProviderSessionId: () => null,
|
|
68
|
+
resolveResumeModel: async () => 'test-model',
|
|
69
|
+
getProviderModels: async () => ({ OPTIONS: [], DEFAULT: 'test-model' }),
|
|
70
|
+
normalizeMessage: () => [],
|
|
71
|
+
isProviderInstalled: async () => true,
|
|
72
|
+
};
|
|
73
|
+
await codexRuntime.run(command, {
|
|
74
|
+
cwd: process.cwd(),
|
|
75
|
+
images: [{ path: imagePath, mimeType: 'image/png' }],
|
|
76
|
+
}, { isWebSocketWriter: true, send: () => { } }, context);
|
|
77
|
+
assert.deepEqual(capturedPrompt, [
|
|
78
|
+
{ type: 'text', text: 'Please analyze the attached image(s).' },
|
|
79
|
+
{ type: 'local_image', path: imagePath },
|
|
80
|
+
]);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
51
83
|
//# sourceMappingURL=codex-runtime.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-runtime.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/codex-runtime.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codex-runtime.test.js","sourceRoot":"","sources":["../../../../../server/modules/providers/tests/codex-runtime.test.ts"],"names":[],"mappings":"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"}
|