factory-factory 0.3.5 → 0.3.7
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 +17 -0
- package/dist/client/assets/_basePickBy-BsuMuaCZ.js +1 -0
- package/dist/client/assets/{_baseUniq-DuVP6l01.js → _baseUniq-BDd8f52s.js} +1 -1
- package/dist/client/assets/{arc-BRTVE1a5.js → arc-BWbaJQoA.js} +1 -1
- package/dist/client/assets/{architectureDiagram-VXUJARFQ-DphOng2K.js → architectureDiagram-VXUJARFQ-C_FQG3JS.js} +1 -1
- package/dist/client/assets/{blockDiagram-VD42YOAC-DvVRHTty.js → blockDiagram-VD42YOAC-CLwvH-wA.js} +1 -1
- package/dist/client/assets/{c4Diagram-YG6GDRKO-BZaLUCEP.js → c4Diagram-YG6GDRKO-Ba80_haP.js} +1 -1
- package/dist/client/assets/channel-B2z94T-9.js +1 -0
- package/dist/client/assets/{chunk-4BX2VUAB-n69YHsoN.js → chunk-4BX2VUAB-CSlDSMiy.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-C67Ak1Qy.js → chunk-55IACEB6-Dm3keBAf.js} +1 -1
- package/dist/client/assets/{chunk-B4BG7PRW-_Ja9GXA4.js → chunk-B4BG7PRW-BSrvNYuP.js} +1 -1
- package/dist/client/assets/{chunk-DI55MBZ5-C1TAOocX.js → chunk-DI55MBZ5-DFQPoLQZ.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-Co8OmD7c.js → chunk-FMBD7UC4-C1KS438H.js} +1 -1
- package/dist/client/assets/{chunk-QN33PNHL-ESdvapXF.js → chunk-QN33PNHL-4rPPxHo4.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-DQTGFT4I.js → chunk-QZHKN3VN-B_sF5IzV.js} +1 -1
- package/dist/client/assets/{chunk-TZMSLE5B-C7a0BTNr.js → chunk-TZMSLE5B-L-qbjoBp.js} +1 -1
- package/dist/client/assets/classDiagram-2ON5EDUG-B2LoFG_o.js +1 -0
- package/dist/client/assets/classDiagram-v2-WZHVMYZB-B2LoFG_o.js +1 -0
- package/dist/client/assets/clone-C8LA0zQQ.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-Dg_Elpr2.js → cose-bilkent-S5V4N54A-DB7lwAnl.js} +1 -1
- package/dist/client/assets/{dagre-6UL2VRFP-DC_BntL_.js → dagre-6UL2VRFP-z2fl_1iD.js} +2 -2
- package/dist/client/assets/{diagram-PSM6KHXK-D4EnEadG.js → diagram-PSM6KHXK-BL2iv8II.js} +1 -1
- package/dist/client/assets/{diagram-QEK2KX5R-DeDgxkkd.js → diagram-QEK2KX5R-DgMZW0D1.js} +1 -1
- package/dist/client/assets/{diagram-S2PKOQOG-DqCrW2Mz.js → diagram-S2PKOQOG-Ct2QBl2c.js} +1 -1
- package/dist/client/assets/{erDiagram-Q2GNP2WA-CoIzOJMx.js → erDiagram-Q2GNP2WA-DII-pqkb.js} +1 -1
- package/dist/client/assets/{flowDiagram-NV44I4VS-H-hzyVxN.js → flowDiagram-NV44I4VS-BV4CMZAZ.js} +1 -1
- package/dist/client/assets/{ganttDiagram-JELNMOA3-BZbu1Bvf.js → ganttDiagram-JELNMOA3-Dfj064tE.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-NY62KEGX-yHNzOwte.js → gitGraphDiagram-V2S2FVAM-Cg2b-j3t.js} +1 -1
- package/dist/client/assets/{graph-0fFVLhuM.js → graph-wzICjOO_.js} +1 -1
- package/dist/client/assets/index-DvtmO7DV.css +1 -0
- package/dist/client/assets/index-EVrp_NXm.js +429 -0
- package/dist/client/assets/{infoDiagram-WHAUD3N6-BdYcSIzA.js → infoDiagram-HS3SLOUP-D09mbfgG.js} +1 -1
- package/dist/client/assets/{journeyDiagram-XKPGCS4Q-BgD0iboh.js → journeyDiagram-XKPGCS4Q-BebsQbuf.js} +1 -1
- package/dist/client/assets/{kanban-definition-3W4ZIXB7-2cCK2J0j.js → kanban-definition-3W4ZIXB7-DOuawTNU.js} +1 -1
- package/dist/client/assets/{layout-UQByNmge.js → layout-Bj6cMfF5.js} +1 -1
- package/dist/client/assets/{linear-COsW-oY4.js → linear-B58HS9F4.js} +1 -1
- package/dist/client/assets/{mindmap-definition-VGOIOE7T-CnhVGcBr.js → mindmap-definition-VGOIOE7T-hSFgcTL2.js} +1 -1
- package/dist/client/assets/mobile-baseline-CmdjqYSm.js +10 -0
- package/dist/client/assets/{pieDiagram-ADFJNKIX-DX0wt7fJ.js → pieDiagram-ADFJNKIX-D1vkoKs3.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-AYHSOK5B-nfJepDyE.js → quadrantDiagram-AYHSOK5B-pMQj9xcS.js} +1 -1
- package/dist/client/assets/{requirementDiagram-UZGBJVZJ-I_tnp42L.js → requirementDiagram-UZGBJVZJ-DvRtxnIi.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-TZEHDZUN-4r_mPLW_.js → sankeyDiagram-TZEHDZUN-BWoDxXkR.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-WL72ISMW-DWymCFZa.js → sequenceDiagram-WL72ISMW-Dz5i1ly3.js} +1 -1
- package/dist/client/assets/{stateDiagram-FKZM4ZOC-CCHlcmzO.js → stateDiagram-FKZM4ZOC-BFd_gXUo.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-4FDKWEC3-CO6XGRkL.js +1 -0
- package/dist/client/assets/terminal-instance-BTIzq32H.js +16 -0
- package/dist/client/assets/terminal-instance-DDGTF8rc.css +1 -0
- package/dist/client/assets/{timeline-definition-IT6M3QCI-EkYjHzU_.js → timeline-definition-IT6M3QCI-BFEIWW6m.js} +1 -1
- package/dist/client/assets/treemap-GDKQZRPO-CC2Fh6RQ.js +160 -0
- package/dist/client/assets/{xychartDiagram-PRI3JC2R-DwOnTNwE.js → xychartDiagram-PRI3JC2R-DFygXQrm.js} +1 -1
- package/dist/client/index.html +3 -3
- package/dist/prisma/generated/commonInputTypes.d.ts +99 -39
- package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
- package/dist/prisma/generated/enums.d.ts +12 -0
- package/dist/prisma/generated/enums.d.ts.map +1 -1
- package/dist/prisma/generated/enums.js +11 -1
- package/dist/prisma/generated/enums.js.map +1 -1
- package/dist/prisma/generated/internal/class.d.ts.map +1 -1
- package/dist/prisma/generated/internal/class.js +12 -4
- package/dist/prisma/generated/internal/class.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.d.ts +16 -7
- package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.js +13 -6
- package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +12 -5
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +11 -4
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/prisma/generated/models/Project.d.ts +63 -1
- package/dist/prisma/generated/models/Project.d.ts.map +1 -1
- package/dist/prisma/generated/models/UserSettings.d.ts +60 -1
- package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
- package/dist/prisma/generated/models/Workspace.d.ts +130 -1
- package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
- package/dist/prompts/ratchet/dispatch.md +5 -2
- package/dist/prompts/workflows/pr-review-fix.md +2 -1
- package/dist/src/backend/domains/github/github-cli/schemas.d.ts +1 -1
- package/dist/src/backend/domains/github/github-cli/schemas.js +1 -1
- package/dist/src/backend/domains/github/github-cli/schemas.js.map +1 -1
- package/dist/src/backend/domains/github/github-cli.service.test.js +44 -0
- package/dist/src/backend/domains/github/github-cli.service.test.js.map +1 -1
- package/dist/src/backend/domains/linear/index.d.ts +3 -0
- package/dist/src/backend/domains/linear/index.d.ts.map +1 -0
- package/dist/src/backend/domains/linear/index.js +3 -0
- package/dist/src/backend/domains/linear/index.js.map +1 -0
- package/dist/src/backend/domains/linear/linear-client.service.d.ts +40 -0
- package/dist/src/backend/domains/linear/linear-client.service.d.ts.map +1 -0
- package/dist/src/backend/domains/linear/linear-client.service.js +134 -0
- package/dist/src/backend/domains/linear/linear-client.service.js.map +1 -0
- package/dist/src/backend/domains/linear/linear-state-sync.service.d.ts +7 -0
- package/dist/src/backend/domains/linear/linear-state-sync.service.d.ts.map +1 -0
- package/dist/src/backend/domains/linear/linear-state-sync.service.js +29 -0
- package/dist/src/backend/domains/linear/linear-state-sync.service.js.map +1 -0
- package/dist/src/backend/domains/ratchet/bridges.d.ts +1 -1
- package/dist/src/backend/domains/ratchet/bridges.d.ts.map +1 -1
- package/dist/src/backend/domains/ratchet/index.d.ts +2 -2
- package/dist/src/backend/domains/ratchet/index.d.ts.map +1 -1
- package/dist/src/backend/domains/ratchet/index.js +1 -1
- package/dist/src/backend/domains/ratchet/index.js.map +1 -1
- package/dist/src/backend/domains/ratchet/ratchet.service.d.ts +12 -0
- package/dist/src/backend/domains/ratchet/ratchet.service.d.ts.map +1 -1
- package/dist/src/backend/domains/ratchet/ratchet.service.js +83 -4
- package/dist/src/backend/domains/ratchet/ratchet.service.js.map +1 -1
- package/dist/src/backend/domains/ratchet/ratchet.service.test.js +272 -1
- package/dist/src/backend/domains/ratchet/ratchet.service.test.js.map +1 -1
- package/dist/src/backend/domains/run-script/run-script.service.d.ts +3 -0
- package/dist/src/backend/domains/run-script/run-script.service.d.ts.map +1 -1
- package/dist/src/backend/domains/run-script/run-script.service.js +34 -2
- package/dist/src/backend/domains/run-script/run-script.service.js.map +1 -1
- package/dist/src/backend/domains/run-script/run-script.service.test.js +42 -0
- package/dist/src/backend/domains/run-script/run-script.service.test.js.map +1 -1
- package/dist/src/backend/domains/run-script/startup-script.service.test.d.ts +2 -0
- package/dist/src/backend/domains/run-script/startup-script.service.test.d.ts.map +1 -0
- package/dist/src/backend/domains/run-script/startup-script.service.test.js +159 -0
- package/dist/src/backend/domains/run-script/startup-script.service.test.js.map +1 -0
- package/dist/src/backend/domains/session/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
- package/dist/src/backend/domains/session/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +35 -4
- package/dist/src/backend/domains/session/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
- package/dist/src/backend/domains/session/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js +108 -0
- package/dist/src/backend/domains/session/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js.map +1 -1
- package/dist/src/backend/domains/session/acp/codex-cli-import-resolution.integration.test.js +2 -2
- package/dist/src/backend/domains/session/acp/codex-cli-import-resolution.integration.test.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/start.handler.d.ts.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/start.handler.js +15 -7
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/start.handler.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/start.handler.test.js +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/start.handler.test.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/stop.handler.d.ts.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/stop.handler.js +1 -0
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/stop.handler.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/stop.handler.test.js +3 -0
- package/dist/src/backend/domains/session/chat/chat-message-handlers/handlers/stop.handler.test.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers/types.d.ts +1 -0
- package/dist/src/backend/domains/session/chat/chat-message-handlers/types.d.ts.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.d.ts +4 -0
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.js +33 -5
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.js.map +1 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.test.js +39 -1
- package/dist/src/backend/domains/session/chat/chat-message-handlers.service.test.js.map +1 -1
- package/dist/src/backend/domains/session/data/codex-session-history-loader.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/data/codex-session-history-loader.service.js +0 -11
- package/dist/src/backend/domains/session/data/codex-session-history-loader.service.js.map +1 -1
- package/dist/src/backend/domains/session/data/codex-session-history-loader.service.test.js +9 -6
- package/dist/src/backend/domains/session/data/codex-session-history-loader.service.test.js.map +1 -1
- package/dist/src/backend/domains/session/data/session-data.service.d.ts +6 -0
- package/dist/src/backend/domains/session/data/session-data.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.d.ts +1 -0
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.js +6 -0
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.js.map +1 -1
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.test.js +2 -0
- package/dist/src/backend/domains/session/data/session-provider-resolver.service.test.js.map +1 -1
- package/dist/src/backend/domains/session/lifecycle/session.service.d.ts +5 -0
- package/dist/src/backend/domains/session/lifecycle/session.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/lifecycle/session.service.js +240 -32
- package/dist/src/backend/domains/session/lifecycle/session.service.js.map +1 -1
- package/dist/src/backend/domains/session/lifecycle/session.service.test.js +166 -1
- package/dist/src/backend/domains/session/lifecycle/session.service.test.js.map +1 -1
- package/dist/src/backend/domains/session/session-domain.service.d.ts +3 -2
- package/dist/src/backend/domains/session/session-domain.service.d.ts.map +1 -1
- package/dist/src/backend/domains/session/session-domain.service.js +27 -2
- package/dist/src/backend/domains/session/session-domain.service.js.map +1 -1
- package/dist/src/backend/domains/session/session-domain.service.test.js +113 -0
- package/dist/src/backend/domains/session/session-domain.service.test.js.map +1 -1
- package/dist/src/backend/domains/session/store/session-runtime-machine.d.ts +1 -0
- package/dist/src/backend/domains/session/store/session-runtime-machine.d.ts.map +1 -1
- package/dist/src/backend/domains/session/store/session-runtime-machine.js +5 -2
- package/dist/src/backend/domains/session/store/session-runtime-machine.js.map +1 -1
- package/dist/src/backend/domains/session/store/session-runtime-machine.test.js +13 -0
- package/dist/src/backend/domains/session/store/session-runtime-machine.test.js.map +1 -1
- package/dist/src/backend/domains/workspace/index.d.ts +1 -0
- package/dist/src/backend/domains/workspace/index.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/index.js +1 -0
- package/dist/src/backend/domains/workspace/index.js.map +1 -1
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.d.ts +10 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.d.ts.map +1 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.js +24 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.js.map +1 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.test.d.ts +2 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.test.d.ts.map +1 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.test.js +17 -0
- package/dist/src/backend/domains/workspace/lifecycle/archive-tracker.service.test.js.map +1 -0
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.d.ts +12 -1
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.js +30 -10
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.js.map +1 -1
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.test.js +53 -2
- package/dist/src/backend/domains/workspace/lifecycle/creation.service.test.js.map +1 -1
- package/dist/src/backend/domains/workspace/lifecycle/data.service.d.ts +75 -0
- package/dist/src/backend/domains/workspace/lifecycle/data.service.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/lifecycle/data.service.js +8 -1
- package/dist/src/backend/domains/workspace/lifecycle/data.service.js.map +1 -1
- package/dist/src/backend/domains/workspace/query/project-management.service.d.ts +16 -0
- package/dist/src/backend/domains/workspace/query/project-management.service.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/query/project-management.service.js.map +1 -1
- package/dist/src/backend/domains/workspace/query/user-settings-query.service.d.ts +2 -0
- package/dist/src/backend/domains/workspace/query/user-settings-query.service.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/query/user-settings-query.service.js.map +1 -1
- package/dist/src/backend/domains/workspace/query/workspace-query.service.d.ts +8 -0
- package/dist/src/backend/domains/workspace/query/workspace-query.service.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/query/workspace-query.service.js +5 -1
- package/dist/src/backend/domains/workspace/query/workspace-query.service.js.map +1 -1
- package/dist/src/backend/domains/workspace/query/workspace-query.service.test.js +269 -65
- package/dist/src/backend/domains/workspace/query/workspace-query.service.test.js.map +1 -1
- package/dist/src/backend/domains/workspace/state/flow-state.d.ts.map +1 -1
- package/dist/src/backend/domains/workspace/state/flow-state.js +9 -1
- package/dist/src/backend/domains/workspace/state/flow-state.js.map +1 -1
- package/dist/src/backend/domains/workspace/state/flow-state.test.js +22 -2
- package/dist/src/backend/domains/workspace/state/flow-state.test.js.map +1 -1
- package/dist/src/backend/domains/workspace/state/kanban-state.test.js +169 -202
- package/dist/src/backend/domains/workspace/state/kanban-state.test.js.map +1 -1
- package/dist/src/backend/interceptors/branch-rename.interceptor.test.d.ts +2 -0
- package/dist/src/backend/interceptors/branch-rename.interceptor.test.d.ts.map +1 -0
- package/dist/src/backend/interceptors/branch-rename.interceptor.test.js +79 -0
- package/dist/src/backend/interceptors/branch-rename.interceptor.test.js.map +1 -0
- package/dist/src/backend/interceptors/branch-rename.utils.d.ts +8 -0
- package/dist/src/backend/interceptors/branch-rename.utils.d.ts.map +1 -0
- package/dist/src/backend/interceptors/branch-rename.utils.js +34 -0
- package/dist/src/backend/interceptors/branch-rename.utils.js.map +1 -0
- package/dist/src/backend/interceptors/conversation-rename.interceptor.test.d.ts +2 -0
- package/dist/src/backend/interceptors/conversation-rename.interceptor.test.d.ts.map +1 -0
- package/dist/src/backend/interceptors/conversation-rename.interceptor.test.js +116 -0
- package/dist/src/backend/interceptors/conversation-rename.interceptor.test.js.map +1 -0
- package/dist/src/backend/interceptors/index.d.ts.map +1 -1
- package/dist/src/backend/interceptors/index.js +4 -0
- package/dist/src/backend/interceptors/index.js.map +1 -1
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.d.ts +5 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.d.ts.map +1 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.js +211 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.js.map +1 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.test.d.ts +2 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.test.d.ts.map +1 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.test.js +304 -0
- package/dist/src/backend/interceptors/pre-pr-rename.interceptor.test.js.map +1 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.d.ts +3 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.d.ts.map +1 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.js +81 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.js.map +1 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.test.d.ts +2 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.test.d.ts.map +1 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.test.js +130 -0
- package/dist/src/backend/interceptors/pre-push-rename.interceptor.test.js.map +1 -0
- package/dist/src/backend/lib/git-status-parser.test.d.ts +2 -0
- package/dist/src/backend/lib/git-status-parser.test.d.ts.map +1 -0
- package/dist/src/backend/{trpc/workspace.trpc.test.js → lib/git-status-parser.test.js} +1 -1
- package/dist/src/backend/lib/git-status-parser.test.js.map +1 -0
- package/dist/src/backend/lib/provider-cli-availability.d.ts +15 -0
- package/dist/src/backend/lib/provider-cli-availability.d.ts.map +1 -0
- package/dist/src/backend/lib/provider-cli-availability.js +26 -0
- package/dist/src/backend/lib/provider-cli-availability.js.map +1 -0
- package/dist/src/backend/lib/provider-cli-availability.test.d.ts +2 -0
- package/dist/src/backend/lib/provider-cli-availability.test.d.ts.map +1 -0
- package/dist/src/backend/lib/provider-cli-availability.test.js +39 -0
- package/dist/src/backend/lib/provider-cli-availability.test.js.map +1 -0
- package/dist/src/backend/lib/session-summaries.d.ts.map +1 -1
- package/dist/src/backend/lib/session-summaries.js +1 -0
- package/dist/src/backend/lib/session-summaries.js.map +1 -1
- package/dist/src/backend/migrate.d.ts.map +1 -1
- package/dist/src/backend/migrate.js +13 -3
- package/dist/src/backend/migrate.js.map +1 -1
- package/dist/src/backend/migrate.test.js +44 -0
- package/dist/src/backend/migrate.test.js.map +1 -1
- package/dist/src/backend/orchestration/cli-health.service.d.ts +18 -0
- package/dist/src/backend/orchestration/cli-health.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/cli-health.service.js +106 -3
- package/dist/src/backend/orchestration/cli-health.service.js.map +1 -1
- package/dist/src/backend/orchestration/cli-health.service.test.js +22 -0
- package/dist/src/backend/orchestration/cli-health.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.js +25 -1
- package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.test.js +25 -9
- package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/decision-log-query.service.test.d.ts +2 -0
- package/dist/src/backend/orchestration/decision-log-query.service.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/decision-log-query.service.test.js +44 -0
- package/dist/src/backend/orchestration/decision-log-query.service.test.js.map +1 -0
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts +5 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.js +139 -8
- package/dist/src/backend/orchestration/event-collector.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js +143 -11
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/linear-config.helper.d.ts +9 -0
- package/dist/src/backend/orchestration/linear-config.helper.d.ts.map +1 -0
- package/dist/src/backend/orchestration/linear-config.helper.js +23 -0
- package/dist/src/backend/orchestration/linear-config.helper.js.map +1 -0
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +3 -0
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js +40 -34
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js +19 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js +275 -40
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
- package/dist/src/backend/prompts/quick-actions.test.d.ts +2 -0
- package/dist/src/backend/prompts/quick-actions.test.d.ts.map +1 -0
- package/dist/src/backend/prompts/quick-actions.test.js +59 -0
- package/dist/src/backend/prompts/quick-actions.test.js.map +1 -0
- package/dist/src/backend/prompts/ratchet-dispatch.d.ts.map +1 -1
- package/dist/src/backend/prompts/ratchet-dispatch.js +3 -1
- package/dist/src/backend/prompts/ratchet-dispatch.js.map +1 -1
- package/dist/src/backend/resource_accessors/project.accessor.d.ts +7 -1
- package/dist/src/backend/resource_accessors/project.accessor.d.ts.map +1 -1
- package/dist/src/backend/resource_accessors/project.accessor.js +8 -1
- package/dist/src/backend/resource_accessors/project.accessor.js.map +1 -1
- package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts +3 -1
- package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts.map +1 -1
- package/dist/src/backend/resource_accessors/user-settings.accessor.js +4 -0
- package/dist/src/backend/resource_accessors/user-settings.accessor.js.map +1 -1
- package/dist/src/backend/resource_accessors/workspace.accessor.d.ts +4 -1
- package/dist/src/backend/resource_accessors/workspace.accessor.d.ts.map +1 -1
- package/dist/src/backend/resource_accessors/workspace.accessor.js +3 -0
- package/dist/src/backend/resource_accessors/workspace.accessor.js.map +1 -1
- package/dist/src/backend/routers/websocket/chat.handler.test.js +162 -43
- package/dist/src/backend/routers/websocket/chat.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/index.d.ts +1 -0
- package/dist/src/backend/routers/websocket/index.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/index.js +1 -0
- package/dist/src/backend/routers/websocket/index.js.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.d.ts +6 -0
- package/dist/src/backend/routers/websocket/setup-terminal.handler.d.ts.map +1 -0
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js +108 -0
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js.map +1 -0
- package/dist/src/backend/routers/websocket/terminal.handler.test.js +166 -0
- package/dist/src/backend/routers/websocket/terminal.handler.test.js.map +1 -1
- package/dist/src/backend/server.d.ts.map +1 -1
- package/dist/src/backend/server.js +18 -10
- package/dist/src/backend/server.js.map +1 -1
- package/dist/src/backend/server.upgrade.test.js +2 -0
- package/dist/src/backend/server.upgrade.test.js.map +1 -1
- package/dist/src/backend/services/config.service.d.ts +2 -0
- package/dist/src/backend/services/config.service.d.ts.map +1 -1
- package/dist/src/backend/services/config.service.js +4 -0
- package/dist/src/backend/services/config.service.js.map +1 -1
- package/dist/src/backend/services/constants.d.ts +4 -0
- package/dist/src/backend/services/constants.d.ts.map +1 -1
- package/dist/src/backend/services/constants.js +4 -0
- package/dist/src/backend/services/constants.js.map +1 -1
- package/dist/src/backend/services/crypto.service.d.ts +10 -0
- package/dist/src/backend/services/crypto.service.d.ts.map +1 -0
- package/dist/src/backend/services/crypto.service.js +61 -0
- package/dist/src/backend/services/crypto.service.js.map +1 -0
- package/dist/src/backend/services/env-schemas.d.ts +1 -0
- package/dist/src/backend/services/env-schemas.d.ts.map +1 -1
- package/dist/src/backend/services/env-schemas.js +1 -0
- package/dist/src/backend/services/env-schemas.js.map +1 -1
- package/dist/src/backend/services/factory-config.service.test.d.ts +2 -0
- package/dist/src/backend/services/factory-config.service.test.d.ts.map +1 -0
- package/dist/src/backend/{trpc/project.trpc.test.js → services/factory-config.service.test.js} +1 -1
- package/dist/src/backend/services/factory-config.service.test.js.map +1 -0
- package/dist/src/backend/services/git-clone.service.d.ts +23 -0
- package/dist/src/backend/services/git-clone.service.d.ts.map +1 -0
- package/dist/src/backend/services/git-clone.service.js +67 -0
- package/dist/src/backend/services/git-clone.service.js.map +1 -0
- package/dist/src/backend/services/git-ops.service.test.d.ts +2 -0
- package/dist/src/backend/services/git-ops.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/git-ops.service.test.js +133 -0
- package/dist/src/backend/services/git-ops.service.test.js.map +1 -0
- package/dist/src/backend/services/notification.service.test.d.ts +2 -0
- package/dist/src/backend/services/notification.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/notification.service.test.js +118 -0
- package/dist/src/backend/services/notification.service.test.js.map +1 -0
- package/dist/src/backend/services/rate-limiter.service.test.d.ts +2 -0
- package/dist/src/backend/services/rate-limiter.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/rate-limiter.service.test.js +92 -0
- package/dist/src/backend/services/rate-limiter.service.test.js.map +1 -0
- package/dist/src/backend/services/run-script-proxy.service.d.ts +12 -0
- package/dist/src/backend/services/run-script-proxy.service.d.ts.map +1 -0
- package/dist/src/backend/services/run-script-proxy.service.js +210 -0
- package/dist/src/backend/services/run-script-proxy.service.js.map +1 -0
- package/dist/src/backend/services/run-script-proxy.service.test.d.ts +2 -0
- package/dist/src/backend/services/run-script-proxy.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/run-script-proxy.service.test.js +133 -0
- package/dist/src/backend/services/run-script-proxy.service.test.js.map +1 -0
- package/dist/src/backend/trpc/admin.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/admin.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/admin.router.test.js +238 -0
- package/dist/src/backend/trpc/admin.router.test.js.map +1 -0
- package/dist/src/backend/trpc/admin.trpc.d.ts +32 -4
- package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/admin.trpc.js +18 -0
- package/dist/src/backend/trpc/admin.trpc.js.map +1 -1
- package/dist/src/backend/trpc/decision-log.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/decision-log.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/decision-log.router.test.js +37 -0
- package/dist/src/backend/trpc/decision-log.router.test.js.map +1 -0
- package/dist/src/backend/trpc/github.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/github.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/github.router.test.js +89 -0
- package/dist/src/backend/trpc/github.router.test.js.map +1 -0
- package/dist/src/backend/trpc/index.d.ts +254 -9
- package/dist/src/backend/trpc/index.d.ts.map +1 -1
- package/dist/src/backend/trpc/index.js +2 -0
- package/dist/src/backend/trpc/index.js.map +1 -1
- package/dist/src/backend/trpc/linear.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/linear.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/linear.router.test.js +101 -0
- package/dist/src/backend/trpc/linear.router.test.js.map +1 -0
- package/dist/src/backend/trpc/linear.trpc.d.ts +44 -0
- package/dist/src/backend/trpc/linear.trpc.d.ts.map +1 -0
- package/dist/src/backend/trpc/linear.trpc.js +69 -0
- package/dist/src/backend/trpc/linear.trpc.js.map +1 -0
- package/dist/src/backend/trpc/pr-review.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/pr-review.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/pr-review.router.test.js +86 -0
- package/dist/src/backend/trpc/pr-review.router.test.js.map +1 -0
- package/dist/src/backend/trpc/procedures/project-scoped.test.d.ts +2 -0
- package/dist/src/backend/trpc/procedures/project-scoped.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/procedures/project-scoped.test.js +17 -0
- package/dist/src/backend/trpc/procedures/project-scoped.test.js.map +1 -0
- package/dist/src/backend/trpc/project.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/project.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/project.router.test.js +151 -0
- package/dist/src/backend/trpc/project.router.test.js.map +1 -0
- package/dist/src/backend/trpc/project.trpc.d.ts +86 -5
- package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/project.trpc.js +92 -18
- package/dist/src/backend/trpc/project.trpc.js.map +1 -1
- package/dist/src/backend/trpc/session.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/session.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/session.router.test.js +162 -0
- package/dist/src/backend/trpc/session.router.test.js.map +1 -0
- package/dist/src/backend/trpc/session.trpc.d.ts +12 -0
- package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/session.trpc.js +9 -0
- package/dist/src/backend/trpc/session.trpc.js.map +1 -1
- package/dist/src/backend/trpc/user-settings.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/user-settings.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/user-settings.router.test.js +60 -0
- package/dist/src/backend/trpc/user-settings.router.test.js.map +1 -0
- package/dist/src/backend/trpc/user-settings.trpc.d.ts +7 -1
- package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/user-settings.trpc.js +3 -1
- package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/files.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/files.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/files.router.test.js +117 -0
- package/dist/src/backend/trpc/workspace/files.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace/git.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/git.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/git.router.test.js +130 -0
- package/dist/src/backend/trpc/workspace/git.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace/git.trpc.d.ts +10 -0
- package/dist/src/backend/trpc/workspace/git.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/git.trpc.js +25 -0
- package/dist/src/backend/trpc/workspace/git.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/ide.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/ide.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/ide.router.test.js +71 -0
- package/dist/src/backend/trpc/workspace/ide.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace/init.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/init.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/init.router.test.js +136 -0
- package/dist/src/backend/trpc/workspace/init.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts +3 -0
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/run-script.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/run-script.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/run-script.router.test.js +106 -0
- package/dist/src/backend/trpc/workspace/run-script.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace/run-script.trpc.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/run-script.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/run-script.trpc.js +1 -0
- package/dist/src/backend/trpc/workspace/run-script.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +8 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/workspace-helpers.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.test.js +54 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace.router.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace.router.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace.router.test.js +228 -0
- package/dist/src/backend/trpc/workspace.router.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace.trpc.d.ts +81 -6
- package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.js +78 -6
- package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
- package/dist/src/cli/index.js +17 -91
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/proxy.d.ts +68 -0
- package/dist/src/cli/proxy.d.ts.map +1 -0
- package/dist/src/cli/proxy.js +825 -0
- package/dist/src/cli/proxy.js.map +1 -0
- package/dist/src/cli/proxy.test.d.ts +2 -0
- package/dist/src/cli/proxy.test.d.ts.map +1 -0
- package/dist/src/cli/proxy.test.js +276 -0
- package/dist/src/cli/proxy.test.js.map +1 -0
- package/dist/src/cli/runtime-utils.d.ts +9 -0
- package/dist/src/cli/runtime-utils.d.ts.map +1 -0
- package/dist/src/cli/runtime-utils.js +86 -0
- package/dist/src/cli/runtime-utils.js.map +1 -0
- package/dist/src/shared/chat-capabilities.d.ts +1 -0
- package/dist/src/shared/chat-capabilities.d.ts.map +1 -1
- package/dist/src/shared/chat-capabilities.js +24 -0
- package/dist/src/shared/chat-capabilities.js.map +1 -1
- package/dist/src/shared/core/enums.d.ts +6 -0
- package/dist/src/shared/core/enums.d.ts.map +1 -1
- package/dist/src/shared/core/enums.js +5 -0
- package/dist/src/shared/core/enums.js.map +1 -1
- package/dist/src/shared/core/index.d.ts +1 -1
- package/dist/src/shared/core/index.d.ts.map +1 -1
- package/dist/src/shared/core/index.js +1 -1
- package/dist/src/shared/core/index.js.map +1 -1
- package/dist/src/shared/github-types.d.ts +1 -1
- package/dist/src/shared/github-types.d.ts.map +1 -1
- package/dist/src/shared/proxy-utils.d.ts +61 -0
- package/dist/src/shared/proxy-utils.d.ts.map +1 -0
- package/dist/src/shared/proxy-utils.js +334 -0
- package/dist/src/shared/proxy-utils.js.map +1 -0
- package/dist/src/shared/schemas/export-data.schema.d.ts +39 -1
- package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
- package/dist/src/shared/schemas/export-data.schema.js +11 -2
- package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
- package/dist/src/shared/schemas/issue-tracker-config.schema.d.ts +35 -0
- package/dist/src/shared/schemas/issue-tracker-config.schema.d.ts.map +1 -0
- package/dist/src/shared/schemas/issue-tracker-config.schema.js +29 -0
- package/dist/src/shared/schemas/issue-tracker-config.schema.js.map +1 -0
- package/dist/src/shared/session-runtime.d.ts +8 -0
- package/dist/src/shared/session-runtime.d.ts.map +1 -1
- package/dist/src/shared/session-runtime.js +40 -0
- package/dist/src/shared/session-runtime.js.map +1 -1
- package/dist/src/shared/workspace-words.d.ts +1 -0
- package/dist/src/shared/workspace-words.d.ts.map +1 -1
- package/dist/src/shared/workspace-words.js +77 -0
- package/dist/src/shared/workspace-words.js.map +1 -1
- package/dist/tsconfig.backend.tsbuildinfo +1 -1
- package/package.json +49 -41
- package/prisma/migrations/20260217190642_add_linear_integration/migration.sql +34 -0
- package/prisma/migrations/20260220110000_add_user_permission_presets/migration.sql +2 -0
- package/prisma/schema.prisma +21 -0
- package/prompts/ratchet/dispatch.md +5 -2
- package/prompts/workflows/pr-review-fix.md +2 -1
- package/dist/client/assets/_basePickBy-DOa44aLB.js +0 -1
- package/dist/client/assets/channel-v55vPUhK.js +0 -1
- package/dist/client/assets/classDiagram-2ON5EDUG-DV-E9odE.js +0 -1
- package/dist/client/assets/classDiagram-v2-WZHVMYZB-DV-E9odE.js +0 -1
- package/dist/client/assets/clone-DQgzPMba.js +0 -1
- package/dist/client/assets/index-CzQJ6qnR.css +0 -1
- package/dist/client/assets/index-D2gG7VAV.js +0 -447
- package/dist/client/assets/stateDiagram-v2-4FDKWEC3-CuSoER-j.js +0 -1
- package/dist/client/assets/terminal-instance-DKydBe-u.js +0 -1
- package/dist/client/assets/treemap-KMMF4GRG-BH9wTzrS.js +0 -128
- package/dist/src/backend/trpc/project.trpc.test.d.ts +0 -2
- package/dist/src/backend/trpc/project.trpc.test.d.ts.map +0 -1
- package/dist/src/backend/trpc/project.trpc.test.js.map +0 -1
- package/dist/src/backend/trpc/workspace.trpc.test.d.ts +0 -2
- package/dist/src/backend/trpc/workspace.trpc.test.d.ts.map +0 -1
- package/dist/src/backend/trpc/workspace.trpc.test.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-cli-availability.js","sourceRoot":"","sources":["../../../../src/backend/lib/provider-cli-availability.ts"],"names":[],"mappings":"AAcA,SAAS,gBAAgB,CAAC,QAAyB;IACjD,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,QAAyB,EACzB,MAA+B;IAE/B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,8BAA8B,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,6BAA6B,CAAC;IAC7D,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,iCAAiC,CAAC;IACjE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAAyB,EACzB,MAA+B;IAE/B,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,6BAA6B,KAAK,EAAE,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-cli-availability.test.d.ts","sourceRoot":"","sources":["../../../../src/backend/lib/provider-cli-availability.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { getProviderBlockingIssue, getProviderUnavailableMessage, } from './provider-cli-availability.js';
|
|
3
|
+
describe('provider-cli-availability', () => {
|
|
4
|
+
it('returns null when provider requirements are met', () => {
|
|
5
|
+
const health = {
|
|
6
|
+
claude: { isInstalled: true },
|
|
7
|
+
codex: { isInstalled: true, isAuthenticated: true },
|
|
8
|
+
github: { isInstalled: true, isAuthenticated: true },
|
|
9
|
+
allHealthy: true,
|
|
10
|
+
};
|
|
11
|
+
expect(getProviderBlockingIssue('CLAUDE', health)).toBeNull();
|
|
12
|
+
expect(getProviderBlockingIssue('CODEX', health)).toBeNull();
|
|
13
|
+
});
|
|
14
|
+
it('reports missing claude install', () => {
|
|
15
|
+
const health = {
|
|
16
|
+
claude: { isInstalled: false, error: 'Claude CLI is not installed.' },
|
|
17
|
+
codex: { isInstalled: true, isAuthenticated: true },
|
|
18
|
+
github: { isInstalled: true, isAuthenticated: true },
|
|
19
|
+
allHealthy: false,
|
|
20
|
+
};
|
|
21
|
+
expect(getProviderBlockingIssue('CLAUDE', health)).toContain('not installed');
|
|
22
|
+
expect(getProviderUnavailableMessage('CLAUDE', health)).toContain('Claude provider is unavailable');
|
|
23
|
+
});
|
|
24
|
+
it('reports codex auth as blocking', () => {
|
|
25
|
+
const health = {
|
|
26
|
+
claude: { isInstalled: true },
|
|
27
|
+
codex: {
|
|
28
|
+
isInstalled: true,
|
|
29
|
+
isAuthenticated: false,
|
|
30
|
+
error: 'Codex CLI is not authenticated.',
|
|
31
|
+
},
|
|
32
|
+
github: { isInstalled: true, isAuthenticated: true },
|
|
33
|
+
allHealthy: true,
|
|
34
|
+
};
|
|
35
|
+
expect(getProviderBlockingIssue('CODEX', health)).toContain('not authenticated');
|
|
36
|
+
expect(getProviderUnavailableMessage('CODEX', health)).toContain('Codex provider is unavailable');
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=provider-cli-availability.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-cli-availability.test.js","sourceRoot":"","sources":["../../../../src/backend/lib/provider-cli-availability.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,6BAA6B,CAAC;AAErC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;YAC7B,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;YACnD,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;YACpD,UAAU,EAAE,IAAI;SACjB,CAAC;QAEF,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,8BAA8B,EAAE;YACrE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;YACnD,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;YACpD,UAAU,EAAE,KAAK;SAClB,CAAC;QAEF,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC9E,MAAM,CAAC,6BAA6B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAC/D,gCAAgC,CACjC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;YAC7B,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;gBACjB,eAAe,EAAE,KAAK;gBACtB,KAAK,EAAE,iCAAiC;aACzC;YACD,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;YACpD,UAAU,EAAE,IAAI;SACjB,CAAC;QAEF,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QACjF,MAAM,CAAC,6BAA6B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAC9D,+BAA+B,CAChC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-summaries.d.ts","sourceRoot":"","sources":["../../../../src/backend/lib/session-summaries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,KAAK,EAAE,aAAa,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,WAAW,EAAE,EACvB,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,mBAAmB,GAC7D,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"session-summaries.d.ts","sourceRoot":"","sources":["../../../../src/backend/lib/session-summaries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,KAAK,EAAE,aAAa,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,WAAW,EAAE,EACvB,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,mBAAmB,GAC7D,uBAAuB,EAAE,CAkB3B;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAEjF;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAEtF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-summaries.js","sourceRoot":"","sources":["../../../../src/backend/lib/session-summaries.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,8BAA8B,CAC5C,QAAuB,EACvB,kBAA8D;IAE9D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/C,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,YAAY,EAAE,OAAO,CAAC,KAAK;YAC3B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"session-summaries.js","sourceRoot":"","sources":["../../../../src/backend/lib/session-summaries.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,8BAA8B,CAC5C,QAAuB,EACvB,kBAA8D;IAE9D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/C,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,YAAY,EAAE,OAAO,CAAC,KAAK;YAC3B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;YAClC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;SAC3C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAgC;IACtE,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,SAAoC;IAC3E,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/backend/migrate.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/backend/migrate.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AA+ID,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CA2E7D"}
|
|
@@ -8,6 +8,16 @@ function writeStdout(message) {
|
|
|
8
8
|
function writeStderr(message) {
|
|
9
9
|
process.stderr.write(`${message}\n`);
|
|
10
10
|
}
|
|
11
|
+
function classifyPragmaBucket(trimmedPragma, foundNonPragma) {
|
|
12
|
+
const normalized = trimmedPragma.toUpperCase().replace(/\s+/g, '');
|
|
13
|
+
if (normalized === 'PRAGMADEFER_FOREIGN_KEYS=ON;' || normalized === 'PRAGMAFOREIGN_KEYS=OFF;') {
|
|
14
|
+
return 'pre';
|
|
15
|
+
}
|
|
16
|
+
if (normalized === 'PRAGMAFOREIGN_KEYS=ON;' || normalized === 'PRAGMADEFER_FOREIGN_KEYS=OFF;') {
|
|
17
|
+
return 'post';
|
|
18
|
+
}
|
|
19
|
+
return foundNonPragma ? 'post' : 'pre';
|
|
20
|
+
}
|
|
11
21
|
function parseMigrationSql(migrationSql) {
|
|
12
22
|
const lines = migrationSql.split('\n');
|
|
13
23
|
const prePragmas = [];
|
|
@@ -20,11 +30,11 @@ function parseMigrationSql(migrationSql) {
|
|
|
20
30
|
continue;
|
|
21
31
|
}
|
|
22
32
|
if (trimmed.toUpperCase().startsWith('PRAGMA ')) {
|
|
23
|
-
if (foundNonPragma) {
|
|
24
|
-
|
|
33
|
+
if (classifyPragmaBucket(trimmed, foundNonPragma) === 'pre') {
|
|
34
|
+
prePragmas.push(trimmed);
|
|
25
35
|
}
|
|
26
36
|
else {
|
|
27
|
-
|
|
37
|
+
postPragmas.push(trimmed);
|
|
28
38
|
}
|
|
29
39
|
}
|
|
30
40
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/backend/migrate.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAQtC,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;AACvC,CAAC;AAmBD,SAAS,iBAAiB,CAAC,YAAoB;IAK7C,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAEzC,SAAS;QACX,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/backend/migrate.ts"],"names":[],"mappings":"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"}
|
|
@@ -274,6 +274,50 @@ PRAGMA defer_foreign_keys=OFF;`);
|
|
|
274
274
|
db2.close();
|
|
275
275
|
}
|
|
276
276
|
});
|
|
277
|
+
it('handles interleaved FK PRAGMAs emitted by Prisma redefine-table migrations', () => {
|
|
278
|
+
createMigrationDir('001_enable_foreign_keys');
|
|
279
|
+
setupMigration('001_enable_foreign_keys', `CREATE TABLE fk_setup (id INTEGER PRIMARY KEY);
|
|
280
|
+
PRAGMA foreign_keys=ON;`);
|
|
281
|
+
createMigrationDir('002_interleaved_pragma_test');
|
|
282
|
+
setupMigration('002_interleaved_pragma_test', `CREATE TABLE parent (id INTEGER PRIMARY KEY);
|
|
283
|
+
CREATE TABLE child (
|
|
284
|
+
id INTEGER PRIMARY KEY,
|
|
285
|
+
parent_id INTEGER NOT NULL,
|
|
286
|
+
FOREIGN KEY (parent_id) REFERENCES parent(id)
|
|
287
|
+
);
|
|
288
|
+
INSERT INTO parent (id) VALUES (1);
|
|
289
|
+
INSERT INTO child (id, parent_id) VALUES (10, 1);
|
|
290
|
+
ALTER TABLE child ADD COLUMN name TEXT;
|
|
291
|
+
PRAGMA defer_foreign_keys=ON;
|
|
292
|
+
PRAGMA foreign_keys=OFF;
|
|
293
|
+
CREATE TABLE new_parent (
|
|
294
|
+
id INTEGER PRIMARY KEY,
|
|
295
|
+
extra TEXT
|
|
296
|
+
);
|
|
297
|
+
INSERT INTO new_parent (id) SELECT id FROM parent;
|
|
298
|
+
DROP TABLE parent;
|
|
299
|
+
ALTER TABLE new_parent RENAME TO parent;
|
|
300
|
+
PRAGMA foreign_keys=ON;
|
|
301
|
+
PRAGMA defer_foreign_keys=OFF;`);
|
|
302
|
+
runMigrations({
|
|
303
|
+
databasePath,
|
|
304
|
+
migrationsPath,
|
|
305
|
+
log: () => {
|
|
306
|
+
},
|
|
307
|
+
});
|
|
308
|
+
const db = new Database(databasePath);
|
|
309
|
+
try {
|
|
310
|
+
const appliedMigrations = getAppliedMigrations(db);
|
|
311
|
+
expect(appliedMigrations).toEqual(['001_enable_foreign_keys', '002_interleaved_pragma_test']);
|
|
312
|
+
const parentRows = db.prepare('SELECT COUNT(*) as count FROM parent').get();
|
|
313
|
+
expect(parentRows.count).toBe(1);
|
|
314
|
+
const childColumns = db.prepare("PRAGMA table_info('child')").all();
|
|
315
|
+
expect(childColumns.some((column) => column.name === 'name')).toBe(true);
|
|
316
|
+
}
|
|
317
|
+
finally {
|
|
318
|
+
db.close();
|
|
319
|
+
}
|
|
320
|
+
});
|
|
277
321
|
it('migrates ClaudeSession rows to AgentSession with locked mapping and indexes', () => {
|
|
278
322
|
createMigrationDir('001_agent_session_cutover');
|
|
279
323
|
const migrationSqlPath = join(process.cwd(), 'prisma', 'migrations', '20260212163000_agent_session_provider_cutover', 'migration.sql');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.test.js","sourceRoot":"","sources":["../../../src/backend/migrate.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migrate.test.js","sourceRoot":"","sources":["../../../src/backend/migrate.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import { type GitHubCLIHealthStatus } from '../../backend/domains/github/index.js';
|
|
2
2
|
export interface ClaudeCLIHealthStatus {
|
|
3
3
|
isInstalled: boolean;
|
|
4
|
+
isAuthenticated?: boolean;
|
|
4
5
|
version?: string;
|
|
6
|
+
latestVersion?: string;
|
|
7
|
+
isOutdated?: boolean;
|
|
5
8
|
error?: string;
|
|
6
9
|
}
|
|
7
10
|
export interface CodexCLIHealthStatus {
|
|
8
11
|
isInstalled: boolean;
|
|
9
12
|
isAuthenticated?: boolean;
|
|
10
13
|
version?: string;
|
|
14
|
+
latestVersion?: string;
|
|
15
|
+
isOutdated?: boolean;
|
|
11
16
|
error?: string;
|
|
12
17
|
}
|
|
13
18
|
export interface CLIHealthStatus {
|
|
@@ -16,9 +21,22 @@ export interface CLIHealthStatus {
|
|
|
16
21
|
github: GitHubCLIHealthStatus;
|
|
17
22
|
allHealthy: boolean;
|
|
18
23
|
}
|
|
24
|
+
export interface CLIUpgradeResult {
|
|
25
|
+
provider: 'CLAUDE' | 'CODEX';
|
|
26
|
+
packageName: string;
|
|
27
|
+
command: string;
|
|
28
|
+
output: string;
|
|
29
|
+
health: CLIHealthStatus;
|
|
30
|
+
}
|
|
19
31
|
declare class CLIHealthService {
|
|
20
32
|
private cachedStatus;
|
|
21
33
|
private cacheTimestamp;
|
|
34
|
+
private extractSemver;
|
|
35
|
+
private compareSemver;
|
|
36
|
+
private fetchLatestNpmVersion;
|
|
37
|
+
private buildVersionFreshness;
|
|
38
|
+
private getProviderUpgradePackage;
|
|
39
|
+
upgradeProviderCLI(provider: 'CLAUDE' | 'CODEX'): Promise<CLIUpgradeResult>;
|
|
22
40
|
checkClaudeCLI(): Promise<ClaudeCLIHealthStatus>;
|
|
23
41
|
checkCodexCLI(): Promise<CodexCLIHealthStatus>;
|
|
24
42
|
checkHealth(forceRefresh?: boolean): Promise<CLIHealthStatus>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-health.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli-health.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,qBAAqB,EAAoB,MAAM,0BAA0B,CAAC;AASxF,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;CACzB;AAOD,cAAM,gBAAgB;IACpB,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,aAAa;YAeP,qBAAqB;YAgBrB,qBAAqB;IAkBnC,OAAO,CAAC,yBAAyB;IAI3B,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiC3E,cAAc,IAAI,OAAO,CAAC,qBAAqB,CAAC;IA6ChD,aAAa,IAAI,OAAO,CAAC,oBAAoB,CAAC;IA6C9C,WAAW,CAAC,YAAY,UAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IAmDjE,UAAU,IAAI,IAAI;CAInB;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
|
|
@@ -1,13 +1,88 @@
|
|
|
1
1
|
import { execFile } from 'node:child_process';
|
|
2
2
|
import { promisify } from 'node:util';
|
|
3
|
+
import { z } from 'zod';
|
|
3
4
|
import { githubCLIService } from '../../backend/domains/github/index.js';
|
|
4
5
|
import { SERVICE_CACHE_TTL_MS, SERVICE_TIMEOUT_MS } from '../../backend/services/constants.js';
|
|
5
6
|
import { createLogger } from '../../backend/services/logger.service.js';
|
|
6
7
|
const execFileAsync = promisify(execFile);
|
|
7
8
|
const logger = createLogger('cli-health');
|
|
9
|
+
const CLAUDE_CLI_NPM_PACKAGE = '@anthropic-ai/claude-code';
|
|
10
|
+
const CODEX_CLI_NPM_PACKAGE = '@openai/codex';
|
|
8
11
|
class CLIHealthService {
|
|
9
12
|
cachedStatus = null;
|
|
10
13
|
cacheTimestamp = 0;
|
|
14
|
+
extractSemver(value) {
|
|
15
|
+
if (!value) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
const match = value.match(/(\d+)\.(\d+)\.(\d+)/);
|
|
19
|
+
return match?.[0];
|
|
20
|
+
}
|
|
21
|
+
compareSemver(left, right) {
|
|
22
|
+
const leftParts = left.split('.').map((part) => Number.parseInt(part, 10));
|
|
23
|
+
const rightParts = right.split('.').map((part) => Number.parseInt(part, 10));
|
|
24
|
+
for (let idx = 0; idx < 3; idx += 1) {
|
|
25
|
+
const l = leftParts[idx] ?? 0;
|
|
26
|
+
const r = rightParts[idx] ?? 0;
|
|
27
|
+
if (l !== r) {
|
|
28
|
+
return l - r;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return 0;
|
|
32
|
+
}
|
|
33
|
+
async fetchLatestNpmVersion(packageName) {
|
|
34
|
+
try {
|
|
35
|
+
const response = await fetch(`https://registry.npmjs.org/${packageName}/latest`, {
|
|
36
|
+
signal: AbortSignal.timeout(SERVICE_TIMEOUT_MS.cliLatestVersionCheck),
|
|
37
|
+
});
|
|
38
|
+
if (!response.ok) {
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
const payload = (await response.json());
|
|
42
|
+
return typeof payload.version === 'string' ? payload.version : undefined;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
async buildVersionFreshness(input) {
|
|
49
|
+
const latestRaw = await this.fetchLatestNpmVersion(input.packageName);
|
|
50
|
+
const latestVersion = this.extractSemver(latestRaw) ?? latestRaw;
|
|
51
|
+
const installedVersion = this.extractSemver(input.installedVersion) ?? input.installedVersion;
|
|
52
|
+
if (!(installedVersion && latestVersion)) {
|
|
53
|
+
return { latestVersion };
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
latestVersion,
|
|
57
|
+
isOutdated: this.compareSemver(installedVersion, latestVersion) < 0,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
getProviderUpgradePackage(provider) {
|
|
61
|
+
return provider === 'CLAUDE' ? CLAUDE_CLI_NPM_PACKAGE : CODEX_CLI_NPM_PACKAGE;
|
|
62
|
+
}
|
|
63
|
+
async upgradeProviderCLI(provider) {
|
|
64
|
+
const packageName = this.getProviderUpgradePackage(provider);
|
|
65
|
+
const args = ['install', '-g', packageName];
|
|
66
|
+
try {
|
|
67
|
+
const { stdout, stderr } = await execFileAsync('npm', args, {
|
|
68
|
+
timeout: SERVICE_TIMEOUT_MS.cliUpgrade,
|
|
69
|
+
});
|
|
70
|
+
this.clearCache();
|
|
71
|
+
const health = await this.checkHealth(true);
|
|
72
|
+
return {
|
|
73
|
+
provider,
|
|
74
|
+
packageName,
|
|
75
|
+
command: `npm ${args.join(' ')}`,
|
|
76
|
+
output: [stdout.trim(), stderr.trim()].filter(Boolean).join('\n'),
|
|
77
|
+
health,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
const err = error;
|
|
82
|
+
const details = [err.message, err.stderr, err.stdout].filter(Boolean).join('\n');
|
|
83
|
+
throw new Error(`Failed to upgrade ${provider === 'CLAUDE' ? 'Claude' : 'Codex'} CLI via npm: ${details}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
11
86
|
async checkClaudeCLI() {
|
|
12
87
|
try {
|
|
13
88
|
const { stdout } = await execFileAsync('claude', ['--version'], {
|
|
@@ -15,13 +90,31 @@ class CLIHealthService {
|
|
|
15
90
|
});
|
|
16
91
|
const versionMatch = stdout.match(/claude[- ]?(?:code[- ]?)?(?:v?(\d+\.\d+\.\d+))?/i);
|
|
17
92
|
const version = versionMatch?.[1] || stdout.trim().split('\n')[0];
|
|
18
|
-
|
|
93
|
+
const versionFreshnessPromise = this.buildVersionFreshness({
|
|
94
|
+
installedVersion: version,
|
|
95
|
+
packageName: CLAUDE_CLI_NPM_PACKAGE,
|
|
96
|
+
});
|
|
97
|
+
let isAuthenticated = false;
|
|
98
|
+
try {
|
|
99
|
+
const { stdout: authStdout } = await execFileAsync('claude', ['auth', 'status', '--json'], {
|
|
100
|
+
timeout: SERVICE_TIMEOUT_MS.claudeCliAuthCheck,
|
|
101
|
+
});
|
|
102
|
+
const parsed = z
|
|
103
|
+
.object({ loggedIn: z.boolean().optional() })
|
|
104
|
+
.safeParse(JSON.parse(authStdout));
|
|
105
|
+
isAuthenticated = parsed.success && parsed.data.loggedIn === true;
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
}
|
|
109
|
+
const versionFreshness = await versionFreshnessPromise;
|
|
110
|
+
return { isInstalled: true, isAuthenticated, version, ...versionFreshness };
|
|
19
111
|
}
|
|
20
112
|
catch (error) {
|
|
21
113
|
const message = error instanceof Error ? error.message : String(error);
|
|
22
114
|
const isNotFound = message.toLowerCase().includes('enoent') || message.includes('not found');
|
|
23
115
|
return {
|
|
24
116
|
isInstalled: false,
|
|
117
|
+
isAuthenticated: false,
|
|
25
118
|
error: isNotFound
|
|
26
119
|
? 'Claude CLI is not installed. Install from https://claude.ai/download'
|
|
27
120
|
: `Failed to check Claude CLI: ${message}`,
|
|
@@ -34,17 +127,24 @@ class CLIHealthService {
|
|
|
34
127
|
timeout: SERVICE_TIMEOUT_MS.codexCliVersionCheck,
|
|
35
128
|
});
|
|
36
129
|
const version = stdout.trim().split('\n')[0];
|
|
130
|
+
const versionFreshnessPromise = this.buildVersionFreshness({
|
|
131
|
+
installedVersion: version,
|
|
132
|
+
packageName: CODEX_CLI_NPM_PACKAGE,
|
|
133
|
+
});
|
|
37
134
|
try {
|
|
38
135
|
await execFileAsync('codex', ['login', 'status'], {
|
|
39
136
|
timeout: SERVICE_TIMEOUT_MS.codexCliAuthCheck,
|
|
40
137
|
});
|
|
41
|
-
|
|
138
|
+
const versionFreshness = await versionFreshnessPromise;
|
|
139
|
+
return { isInstalled: true, isAuthenticated: true, version, ...versionFreshness };
|
|
42
140
|
}
|
|
43
141
|
catch {
|
|
142
|
+
const versionFreshness = await versionFreshnessPromise;
|
|
44
143
|
return {
|
|
45
144
|
isInstalled: true,
|
|
46
145
|
isAuthenticated: false,
|
|
47
146
|
version,
|
|
147
|
+
...versionFreshness,
|
|
48
148
|
error: 'Codex CLI is not authenticated. Run `codex login` to authenticate.',
|
|
49
149
|
};
|
|
50
150
|
}
|
|
@@ -78,7 +178,10 @@ class CLIHealthService {
|
|
|
78
178
|
claude,
|
|
79
179
|
codex,
|
|
80
180
|
github,
|
|
81
|
-
allHealthy: claude.isInstalled &&
|
|
181
|
+
allHealthy: claude.isInstalled &&
|
|
182
|
+
claude.isAuthenticated === true &&
|
|
183
|
+
github.isInstalled &&
|
|
184
|
+
github.isAuthenticated,
|
|
82
185
|
};
|
|
83
186
|
this.cachedStatus = status;
|
|
84
187
|
this.cacheTimestamp = now;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-health.service.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAA8B,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-health.service.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ describe('cliHealthService', () => {
|
|
|
22
22
|
it('treats Codex CLI as optional for allHealthy', async () => {
|
|
23
23
|
vi.spyOn(cliHealthService, 'checkClaudeCLI').mockResolvedValue({
|
|
24
24
|
isInstalled: true,
|
|
25
|
+
isAuthenticated: true,
|
|
25
26
|
version: 'claude 1.2.3',
|
|
26
27
|
});
|
|
27
28
|
vi.spyOn(cliHealthService, 'checkCodexCLI').mockResolvedValue({
|
|
@@ -41,6 +42,7 @@ describe('cliHealthService', () => {
|
|
|
41
42
|
it('reports Codex as installed but unauthenticated', async () => {
|
|
42
43
|
vi.spyOn(cliHealthService, 'checkClaudeCLI').mockResolvedValue({
|
|
43
44
|
isInstalled: true,
|
|
45
|
+
isAuthenticated: true,
|
|
44
46
|
version: 'claude 1.2.3',
|
|
45
47
|
});
|
|
46
48
|
vi.spyOn(cliHealthService, 'checkCodexCLI').mockResolvedValue({
|
|
@@ -59,9 +61,29 @@ describe('cliHealthService', () => {
|
|
|
59
61
|
expect(status.codex.isAuthenticated).toBe(false);
|
|
60
62
|
expect(status.allHealthy).toBe(true);
|
|
61
63
|
});
|
|
64
|
+
it('reports unhealthy when Claude CLI is not authenticated', async () => {
|
|
65
|
+
vi.spyOn(cliHealthService, 'checkClaudeCLI').mockResolvedValue({
|
|
66
|
+
isInstalled: true,
|
|
67
|
+
isAuthenticated: false,
|
|
68
|
+
version: 'claude 1.2.3',
|
|
69
|
+
});
|
|
70
|
+
vi.spyOn(cliHealthService, 'checkCodexCLI').mockResolvedValue({
|
|
71
|
+
isInstalled: true,
|
|
72
|
+
isAuthenticated: true,
|
|
73
|
+
version: 'codex-cli 0.99.0',
|
|
74
|
+
});
|
|
75
|
+
vi.mocked(githubCLIService.checkHealth).mockResolvedValue({
|
|
76
|
+
isInstalled: true,
|
|
77
|
+
isAuthenticated: true,
|
|
78
|
+
version: '2.0.0',
|
|
79
|
+
});
|
|
80
|
+
const status = await cliHealthService.checkHealth(true);
|
|
81
|
+
expect(status.allHealthy).toBe(false);
|
|
82
|
+
});
|
|
62
83
|
it('reports unhealthy when required GitHub auth is missing', async () => {
|
|
63
84
|
vi.spyOn(cliHealthService, 'checkClaudeCLI').mockResolvedValue({
|
|
64
85
|
isInstalled: true,
|
|
86
|
+
isAuthenticated: true,
|
|
65
87
|
version: 'claude 1.2.3',
|
|
66
88
|
});
|
|
67
89
|
vi.spyOn(cliHealthService, 'checkCodexCLI').mockResolvedValue({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-health.service.test.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-health.service.test.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/cli-health.service.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-backup.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/orchestration/data-backup.service.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,UAAU,EAMX,MAAM,qCAAqC,CAAC;AAU7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,aAAa,CAAC;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,aAAa,CAAC;IAChC,YAAY,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CACvD;
|
|
1
|
+
{"version":3,"file":"data-backup.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/orchestration/data-backup.service.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,UAAU,EAMX,MAAM,qCAAqC,CAAC;AAU7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,aAAa,CAAC;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,aAAa,CAAC;IAChC,YAAY,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CACvD;AAiSD,cAAM,iBAAiB;IAOf,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA+InD,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CAmC5D;AAGD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC"}
|