agent-tower 0.7.2-beta.1 → 0.7.2-beta.6
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/dist/executors/base.executor.d.ts.map +1 -1
- package/dist/executors/base.executor.js +6 -3
- package/dist/executors/base.executor.js.map +1 -1
- package/dist/routes/__tests__/workspaces.test.js +80 -0
- package/dist/routes/__tests__/workspaces.test.js.map +1 -1
- package/dist/routes/workspaces.js +1 -1
- package/dist/routes/workspaces.js.map +1 -1
- package/dist/runtime/__tests__/cli-driver-lifecycle.test.js +49 -8
- package/dist/runtime/__tests__/cli-driver-lifecycle.test.js.map +1 -1
- package/dist/runtime/__tests__/runtime-coordinator.test.js +13 -0
- package/dist/runtime/__tests__/runtime-coordinator.test.js.map +1 -1
- package/dist/runtime/cli-driver.js +32 -12
- package/dist/runtime/cli-driver.js.map +1 -1
- package/dist/runtime/contracts.d.ts +9 -2
- package/dist/runtime/contracts.d.ts.map +1 -1
- package/dist/runtime/runtime-coordinator.d.ts +2 -0
- package/dist/runtime/runtime-coordinator.d.ts.map +1 -1
- package/dist/runtime/runtime-coordinator.js +10 -0
- package/dist/runtime/runtime-coordinator.js.map +1 -1
- package/dist/services/__tests__/session-manager.lifecycle.test.js +136 -0
- package/dist/services/__tests__/session-manager.lifecycle.test.js.map +1 -1
- package/dist/services/__tests__/session-manager.team-run.test.js +44 -47
- package/dist/services/__tests__/session-manager.team-run.test.js.map +1 -1
- package/dist/services/__tests__/team-reconciler.service.test.js +30 -0
- package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -1
- package/dist/services/__tests__/terminal-manager.test.js +70 -0
- package/dist/services/__tests__/terminal-manager.test.js.map +1 -1
- package/dist/services/project.service.d.ts.map +1 -1
- package/dist/services/project.service.js +30 -4
- package/dist/services/project.service.js.map +1 -1
- package/dist/services/session-manager.d.ts +1 -0
- package/dist/services/session-manager.d.ts.map +1 -1
- package/dist/services/session-manager.js +40 -5
- package/dist/services/session-manager.js.map +1 -1
- package/dist/services/session-runtime-cleanup-gate.d.ts +1 -0
- package/dist/services/session-runtime-cleanup-gate.d.ts.map +1 -1
- package/dist/services/session-runtime-cleanup-gate.js +5 -3
- package/dist/services/session-runtime-cleanup-gate.js.map +1 -1
- package/dist/services/team-reconciler.service.d.ts +1 -0
- package/dist/services/team-reconciler.service.d.ts.map +1 -1
- package/dist/services/team-reconciler.service.js +1 -0
- package/dist/services/team-reconciler.service.js.map +1 -1
- package/dist/services/terminal-manager.d.ts.map +1 -1
- package/dist/services/terminal-manager.js +9 -4
- package/dist/services/terminal-manager.js.map +1 -1
- package/dist/services/workspace.service.js +8 -8
- package/dist/services/workspace.service.js.map +1 -1
- package/dist/utils/__tests__/spawned-process-identity.test.d.ts +2 -0
- package/dist/utils/__tests__/spawned-process-identity.test.d.ts.map +1 -0
- package/dist/utils/__tests__/spawned-process-identity.test.js +31 -0
- package/dist/utils/__tests__/spawned-process-identity.test.js.map +1 -0
- package/dist/utils/spawned-process-identity.d.ts +1 -1
- package/dist/utils/spawned-process-identity.d.ts.map +1 -1
- package/dist/utils/spawned-process-identity.js +11 -3
- package/dist/utils/spawned-process-identity.js.map +1 -1
- package/dist/web/assets/AgentDemoPage-D0LQRcXm.js +1 -0
- package/dist/web/assets/{AgentEnvironmentSettingsPage-DfVjAeK8.js → AgentEnvironmentSettingsPage-BnWVgvNe.js} +1 -1
- package/dist/web/assets/AgentLogo-BDyW3ihb.js +1 -0
- package/dist/web/assets/BranchSelect-Dmp5hq0i.js +1 -0
- package/dist/web/assets/BrandLogo-YGT4Vlw5.js +1 -0
- package/dist/web/assets/{ConversationPage-Bh_x9kK3.js → ConversationPage-BhapUYGe.js} +2 -2
- package/dist/web/assets/CreateTaskInput-GLF3Oyc1.js +1 -0
- package/dist/web/assets/{DemoPage-xys5j303.js → DemoPage-BwX2SvcN.js} +1 -1
- package/dist/web/assets/DesignSystemPage-j-1-1JtQ.js +16 -0
- package/dist/web/assets/EditableTaskTitle-mHT39coo.js +70 -0
- package/dist/web/assets/{ExecutionPermissionSelector-CTeKhMaB.js → ExecutionPermissionSelector-DeeNd4Kh.js} +1 -1
- package/dist/web/assets/{GeneralSettingsPage-BZEcE8xN.js → GeneralSettingsPage-BBe3EXcj.js} +1 -1
- package/dist/web/assets/{LoadingPreviewPage-D81UstX2.js → LoadingPreviewPage-BxEFnEQh.js} +1 -1
- package/dist/web/assets/McpSettingsPage-DDA8yUxu.js +1 -0
- package/dist/web/assets/{MemberAvatar-BuueBvLu.js → MemberAvatar-CCRbS97s.js} +1 -1
- package/dist/web/assets/MobileTaskDetail-BOIFPybn.js +5 -0
- package/dist/web/assets/NotificationSettingsPage-B2kUnE8w.js +1 -0
- package/dist/web/assets/{ProfileSettingsPage-DdK3Q2wl.js → ProfileSettingsPage-DPZpUoFd.js} +1 -1
- package/dist/web/assets/ProjectKanbanPage-DQnwUBFg.js +12 -0
- package/dist/web/assets/ProjectSettingsPage-CcXAOYb7.js +2 -0
- package/dist/web/assets/{ProviderSettingsPage-CiTp3QwX.js → ProviderSettingsPage-BAIRvcAS.js} +3 -3
- package/dist/web/assets/{SettingsMasterDetail-BhepxZ5b.js → SettingsMasterDetail-BuxwsR9R.js} +1 -1
- package/dist/web/assets/TaskDetail-B3pOSx3f.js +3 -0
- package/dist/web/assets/TeamSettingsPage-DoWmzvKu.js +1 -0
- package/dist/web/assets/agent-meta-MzuGtqxl.js +1 -0
- package/dist/web/assets/arc-Bm_QIbJA.js +1 -0
- package/dist/web/assets/{architectureDiagram-3BPJPVTR-Byb8rrNU.js → architectureDiagram-3BPJPVTR-B5EIiXuX.js} +1 -1
- package/dist/web/assets/arrow-down-BVePf1ZM.js +1 -0
- package/dist/web/assets/at-sign-BE17rU5b.js +1 -0
- package/dist/web/assets/{blockDiagram-GPEHLZMM-DGcS4UET.js → blockDiagram-GPEHLZMM-GFwnvSLM.js} +1 -1
- package/dist/web/assets/{c4Diagram-AAUBKEIU-BRyJRATZ.js → c4Diagram-AAUBKEIU-iJfLTxEa.js} +1 -1
- package/dist/web/assets/channel-CYYV7_Oi.js +1 -0
- package/dist/web/assets/check-qs0S_9rB.js +1 -0
- package/dist/web/assets/chevron-down-BaQEBzp3.js +1 -0
- package/dist/web/assets/chevron-up-D0y6skqr.js +1 -0
- package/dist/web/assets/{chunk-2J33WTMH-DgL3sVcs.js → chunk-2J33WTMH-CDxRPp-8.js} +1 -1
- package/dist/web/assets/{chunk-4BX2VUAB-BVgUUvCo.js → chunk-4BX2VUAB-mzPbgyiz.js} +1 -1
- package/dist/web/assets/{chunk-55IACEB6-CfD9Uy7p.js → chunk-55IACEB6-KNAJbQyw.js} +1 -1
- package/dist/web/assets/{chunk-727SXJPM-D8gRbLX6.js → chunk-727SXJPM-BqGfqkDK.js} +2 -2
- package/dist/web/assets/{chunk-AQP2D5EJ-CwBPJyzk.js → chunk-AQP2D5EJ-D27ue-H0.js} +1 -1
- package/dist/web/assets/{chunk-FMBD7UC4-B0b7Iiv3.js → chunk-FMBD7UC4-DRza-3q8.js} +1 -1
- package/dist/web/assets/{chunk-ND2GUHAM-D0Y5tagg.js → chunk-ND2GUHAM-CUgkviLu.js} +1 -1
- package/dist/web/assets/{chunk-QZHKN3VN-qVEPtRTm.js → chunk-QZHKN3VN-BAlOJwZb.js} +1 -1
- package/dist/web/assets/{circle-alert-C_ON1rCL.js → circle-alert-Cbvy2cMo.js} +1 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-Cl-3ikxt.js +1 -0
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-Cl-3ikxt.js +1 -0
- package/dist/web/assets/code-block-OCS4YCEC-CO23R1Os.js +2 -0
- package/dist/web/assets/{confirm-dialog-Drhw7wmk.js → confirm-dialog-BrgNTypL.js} +1 -1
- package/dist/web/assets/copy-DejkmIHZ.js +1 -0
- package/dist/web/assets/{cose-bilkent-S5V4N54A-BoSlujEJ.js → cose-bilkent-S5V4N54A-8TBY7BP_.js} +1 -1
- package/dist/web/assets/cssMode-hzDRnxMx.js +1 -0
- package/dist/web/assets/{dagre-BM42HDAG-DWm_GyDR.js → dagre-BM42HDAG-CkMzDiim.js} +1 -1
- package/dist/web/assets/{diagram-2AECGRRQ-CVtgrsl0.js → diagram-2AECGRRQ-CAOQJ2N1.js} +1 -1
- package/dist/web/assets/{diagram-5GNKFQAL-XNMIXdme.js → diagram-5GNKFQAL-DKhE0hiI.js} +1 -1
- package/dist/web/assets/{diagram-KO2AKTUF-CYXdL2cC.js → diagram-KO2AKTUF-DBdkXSpa.js} +1 -1
- package/dist/web/assets/{diagram-LMA3HP47-8MCVTTrT.js → diagram-LMA3HP47-DRi2t32c.js} +1 -1
- package/dist/web/assets/{diagram-OG6HWLK6-DMWgHctP.js → diagram-OG6HWLK6-DtP92tI1.js} +1 -1
- package/dist/web/assets/{erDiagram-TEJ5UH35-D3qp5csl.js → erDiagram-TEJ5UH35-DWFKXtst.js} +1 -1
- package/dist/web/assets/{flowDiagram-I6XJVG4X-D-Bem31x.js → flowDiagram-I6XJVG4X-LDE0h4ri.js} +1 -1
- package/dist/web/assets/{freemarker2-D7pixABp.js → freemarker2-CLksOOZX.js} +3 -3
- package/dist/web/assets/{ganttDiagram-6RSMTGT7-D5ctgPCm.js → ganttDiagram-6RSMTGT7-DD2RfdyV.js} +1 -1
- package/dist/web/assets/gauge-CPlvCZUV.js +1 -0
- package/dist/web/assets/{gitGraphDiagram-PVQCEYII-lA3I18_r.js → gitGraphDiagram-PVQCEYII-DkKrR8ex.js} +1 -1
- package/dist/web/assets/globe-CD4g63c9.js +1 -0
- package/dist/web/assets/handlebars-C1M9t0Lo.js +1 -0
- package/dist/web/assets/html-DKVKQovh.js +1 -0
- package/dist/web/assets/htmlMode-BSWjg5ir.js +1 -0
- package/dist/web/assets/index-BnqdwOEH.css +1 -0
- package/dist/web/assets/{index-ClhIruws.js → index-CMJV-mgF.js} +13 -13
- package/dist/web/assets/{index-CA_B15_q.js → index-D_QVcsLn.js} +5 -5
- package/dist/web/assets/{infoDiagram-5YYISTIA-CGy_XnVP.js → infoDiagram-5YYISTIA-BdPA9Xfi.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-DFGAkcYD.js → ishikawaDiagram-YF4QCWOH-220u4uiv.js} +1 -1
- package/dist/web/assets/javascript-WwrMY2Bg.js +1 -0
- package/dist/web/assets/{journeyDiagram-JHISSGLW-C9ZHl7QM.js → journeyDiagram-JHISSGLW-BvE0Y3tZ.js} +1 -1
- package/dist/web/assets/{jsonMode-bD-WsLyj.js → jsonMode-Dz0hnnvg.js} +4 -4
- package/dist/web/assets/{kanban-definition-UN3LZRKU-BbbRnxDG.js → kanban-definition-UN3LZRKU-Q0JH1P6D.js} +1 -1
- package/dist/web/assets/key-round-DZm1FLLr.js +1 -0
- package/dist/web/assets/{layers-BlEewgM8.js → layers-Dda7MM7a.js} +1 -1
- package/dist/web/assets/{linear-D04wUvKo.js → linear-Dr6SfnSn.js} +1 -1
- package/dist/web/assets/link-BUeSP3T7.js +1 -0
- package/dist/web/assets/liquid-CzGEh0ls.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-jn1q-hoP.js → lspLanguageFeatures-Bbp4PWlJ.js} +1 -1
- package/dist/web/assets/mdx-y6S3OMMk.js +1 -0
- package/dist/web/assets/mermaid-NOHMQCX5-C72362la.js +123 -0
- package/dist/web/assets/{message-square-CTrwLud_.js → message-square-CFriSt4D.js} +1 -1
- package/dist/web/assets/{mindmap-definition-RKZ34NQL-n24WGa7x.js → mindmap-definition-RKZ34NQL-bvDaNfKs.js} +1 -1
- package/dist/web/assets/{modal-BFDGLwoR.js → modal-DeigO7aN.js} +1 -1
- package/dist/web/assets/{monaco-CirwkIGR.js → monaco-BuDK9Fat.js} +3 -3
- package/dist/web/assets/paperclip-BOSklTt7.js +1 -0
- package/dist/web/assets/pencil-BRQ9W_a-.js +1 -0
- package/dist/web/assets/{pieDiagram-4H26LBE5-CUMw3DZK.js → pieDiagram-4H26LBE5-BQCca9Cq.js} +2 -2
- package/dist/web/assets/play-Mxkwq69n.js +1 -0
- package/dist/web/assets/python-CMnGKsU9.js +1 -0
- package/dist/web/assets/{quadrantDiagram-W4KKPZXB-DMshWJZy.js → quadrantDiagram-W4KKPZXB-BEM2U7Cd.js} +1 -1
- package/dist/web/assets/razor-mLurbGgY.js +1 -0
- package/dist/web/assets/{requirementDiagram-4Y6WPE33-B4Jx_Yx6.js → requirementDiagram-4Y6WPE33-CcmFIALZ.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-5OEKKPKP-CN2JbWht.js → sankeyDiagram-5OEKKPKP-D9Nrfbqk.js} +1 -1
- package/dist/web/assets/{select-CLV6rtRD.js → select-DKS02St6.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-3UESZ5HK-B4bMaYD_.js → sequenceDiagram-3UESZ5HK-5udQDi0x.js} +1 -1
- package/dist/web/assets/server-DJaSJ9m1.js +1 -0
- package/dist/web/assets/stateDiagram-AJRCARHV-D-cF1NGV.js +1 -0
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-a4ugQnZs.js +1 -0
- package/dist/web/assets/status-styles-sQm4KLdp.js +1 -0
- package/dist/web/assets/{switch-Ch_hFX_n.js → switch-7LWQ_sEx.js} +1 -1
- package/dist/web/assets/task-CDYaC_No.js +42 -0
- package/dist/web/assets/task-priority-acVgTiil.js +1 -0
- package/dist/web/assets/{textarea-DDy2_gLQ.js → textarea-Ft9KMoEI.js} +1 -1
- package/dist/web/assets/{timeline-definition-PNZ67QCA-BuLxqHOL.js → timeline-definition-PNZ67QCA-DXS236a-.js} +1 -1
- package/dist/web/assets/{trash-2-DrNpNvRo.js → trash-2-Bc-URu8c.js} +1 -1
- package/dist/web/assets/{tsMode-qES9KHvZ.js → tsMode-Vr3bndW1.js} +4 -4
- package/dist/web/assets/typescript-BfjoaUSn.js +1 -0
- package/dist/web/assets/{upload-D6SifUfr.js → upload-C9Z4jLtv.js} +1 -1
- package/dist/web/assets/use-attachments-EypT-7PI.js +2 -0
- package/dist/web/assets/{use-profiles-DUoivbBF.js → use-profiles-nMPGwy3v.js} +1 -1
- package/dist/web/assets/use-projects-DI27nNwl.js +1 -0
- package/dist/web/assets/{use-providers-BKYsoOBU.js → use-providers-DB9ghBPq.js} +1 -1
- package/dist/web/assets/use-workspaces-d4n9m9cX.js +1 -0
- package/dist/web/assets/useNormalizedLogs-DRoPbP0w.js +1 -0
- package/dist/web/assets/useTokenUsage-4qTDa8SY.js +1 -0
- package/dist/web/assets/{vennDiagram-CIIHVFJN-LoQ_fciU.js → vennDiagram-CIIHVFJN-BzyNrP06.js} +1 -1
- package/dist/web/assets/{wardley-L42UT6IY-Dh_9I9Zv.js → wardley-L42UT6IY-BQ4SyU9_.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-YWT4CUSO-CQ-yZsuW.js → wardleyDiagram-YWT4CUSO-CcCqmB58.js} +1 -1
- package/dist/web/assets/xml-BGVoPR0b.js +1 -0
- package/dist/web/assets/{xychartDiagram-2RQKCTM6-HLyImhwf.js → xychartDiagram-2RQKCTM6-RWm1MtQk.js} +1 -1
- package/dist/web/assets/yaml-eFhNavrs.js +1 -0
- package/dist/web/index.html +2 -2
- package/node_modules/@agent-tower/shared/dist/types.d.ts +1 -1
- package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/web/assets/AgentDemoPage-CCw9EfsA.js +0 -1
- package/dist/web/assets/AgentLogo-BhKP5dmt.js +0 -1
- package/dist/web/assets/CreateTaskInput-D_KCLZ4q.js +0 -1
- package/dist/web/assets/McpSettingsPage-Ch1U9tIg.js +0 -1
- package/dist/web/assets/NotificationSettingsPage-IHVOP-Vc.js +0 -1
- package/dist/web/assets/ProjectKanbanPage-VFkvX9IJ.js +0 -86
- package/dist/web/assets/ProjectSettingsPage-BlRbxcf8.js +0 -2
- package/dist/web/assets/TeamSettingsPage-JaLFYXmJ.js +0 -1
- package/dist/web/assets/arc-Bd616RKq.js +0 -1
- package/dist/web/assets/channel-DJbXDmr3.js +0 -1
- package/dist/web/assets/check-Bj-p_n7C.js +0 -1
- package/dist/web/assets/chevron-down-BouKK_Vr.js +0 -1
- package/dist/web/assets/chevron-right-DJVYJhGF.js +0 -1
- package/dist/web/assets/chevron-up-CRlA9Cjl.js +0 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-BIz565rI.js +0 -1
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-BIz565rI.js +0 -1
- package/dist/web/assets/code-block-OCS4YCEC-wB-pkznC.js +0 -2
- package/dist/web/assets/cssMode-DBSRGK6o.js +0 -1
- package/dist/web/assets/globe-AjOch0vk.js +0 -1
- package/dist/web/assets/handlebars-B10IREzV.js +0 -1
- package/dist/web/assets/html-BpG68rDt.js +0 -1
- package/dist/web/assets/htmlMode-DuHt_Jpu.js +0 -1
- package/dist/web/assets/index-NxnivNNl.css +0 -1
- package/dist/web/assets/javascript-BupP80yJ.js +0 -1
- package/dist/web/assets/liquid-C57aZJpn.js +0 -1
- package/dist/web/assets/mdx-CEldzbGM.js +0 -1
- package/dist/web/assets/mermaid-NOHMQCX5-BsnLQ2rU.js +0 -124
- package/dist/web/assets/pencil-DQeFTV0j.js +0 -1
- package/dist/web/assets/python-B5Uu3BYh.js +0 -1
- package/dist/web/assets/razor-BW2eCr4L.js +0 -1
- package/dist/web/assets/server-Dhw531hF.js +0 -1
- package/dist/web/assets/stateDiagram-AJRCARHV-CJAmyasO.js +0 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-CXOXut1l.js +0 -1
- package/dist/web/assets/typescript-DyiE-tjk.js +0 -1
- package/dist/web/assets/use-projects-CNU2P0v0.js +0 -1
- package/dist/web/assets/use-workspaces-C1HJqhNs.js +0 -1
- package/dist/web/assets/useNormalizedLogs-Bu2oXEky.js +0 -1
- package/dist/web/assets/xml-BNpVw2Ox.js +0 -1
- package/dist/web/assets/yaml-DtqgC7D8.js +0 -1
- /package/dist/web/assets/{ProjectKanbanPage-DcpNTP1B.css → EditableTaskTitle-DcpNTP1B.css} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-coordinator.js","sourceRoot":"","sources":["../../src/runtime/runtime-coordinator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime-coordinator.js","sourceRoot":"","sources":["../../src/runtime/runtime-coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1703,6 +1703,142 @@ describe('SessionManager session status vs real process state', () => {
|
|
|
1703
1703
|
await backgroundManager.stopAll().catch(() => undefined);
|
|
1704
1704
|
}
|
|
1705
1705
|
}, 15_000);
|
|
1706
|
+
it('recovers a rolled-back CLI started transaction and persists tree cleanup before stop succeeds', async () => {
|
|
1707
|
+
const { session } = await createSessionFixture();
|
|
1708
|
+
const pty = new ControlledPty();
|
|
1709
|
+
spawnMock.mockResolvedValueOnce(spawnResultFor(pty));
|
|
1710
|
+
let rejectStartedWrite = true;
|
|
1711
|
+
// Fail after ExecutionProcess.create inside the real SQLite transaction,
|
|
1712
|
+
// matching the timeout that rolled back the owner's row in production.
|
|
1713
|
+
prisma.$use(async (params, next) => {
|
|
1714
|
+
if (rejectStartedWrite && params.model === 'Session' && params.action === 'updateMany'
|
|
1715
|
+
&& params.args.where?.id === session.id
|
|
1716
|
+
&& params.args.data?.runtimeLaunchState === 'PROCESS_RECORDED') {
|
|
1717
|
+
throw new Error('P2028: started transaction expired');
|
|
1718
|
+
}
|
|
1719
|
+
return next(params);
|
|
1720
|
+
});
|
|
1721
|
+
const manager = new SessionManager(new EventBus());
|
|
1722
|
+
try {
|
|
1723
|
+
await expect(manager.start(session.id)).rejects.toThrow('P2028: started transaction expired');
|
|
1724
|
+
expect(pty.killed).toBe(true);
|
|
1725
|
+
expect(await prisma.executionProcess.count({ where: { sessionId: session.id } })).toBe(0);
|
|
1726
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } })).resolves.toMatchObject({
|
|
1727
|
+
status: 'RUNNING', runtimeLaunchState: 'QUARANTINED', runtimeLaunchClaimCount: 1,
|
|
1728
|
+
runtimeLaunchResolvedCount: 0, runtimeLaunchProcessCount: 0,
|
|
1729
|
+
});
|
|
1730
|
+
await expect(manager.stop(session.id)).rejects.toMatchObject({ code: 'runtime_cleanup_pending' });
|
|
1731
|
+
rejectStartedWrite = false;
|
|
1732
|
+
await manager.retryFailedRuntimeDisposals();
|
|
1733
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(true);
|
|
1734
|
+
await expect(prisma.executionProcess.findMany({ where: { sessionId: session.id } })).resolves.toMatchObject([
|
|
1735
|
+
{ launchClaimNumber: 1, pid: pty.pid, exitCode: 0, cleanupState: 'CONFIRMED' },
|
|
1736
|
+
]);
|
|
1737
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } })).resolves.toMatchObject({
|
|
1738
|
+
runtimeLaunchState: 'PROCESS_RECORDED', runtimeLaunchClaimCount: 1,
|
|
1739
|
+
runtimeLaunchResolvedCount: 1, runtimeLaunchProcessCount: 1,
|
|
1740
|
+
});
|
|
1741
|
+
await manager.stop(session.id);
|
|
1742
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } }))
|
|
1743
|
+
.resolves.toMatchObject({ status: 'CANCELLED' });
|
|
1744
|
+
await manager.retryFailedRuntimeDisposals();
|
|
1745
|
+
expect(await prisma.executionProcess.count({ where: { sessionId: session.id } })).toBe(1);
|
|
1746
|
+
}
|
|
1747
|
+
finally {
|
|
1748
|
+
rejectStartedWrite = false;
|
|
1749
|
+
await manager.retryFailedRuntimeDisposals();
|
|
1750
|
+
await manager.destroyAll();
|
|
1751
|
+
}
|
|
1752
|
+
});
|
|
1753
|
+
it.each([SessionStatus.RUNNING, SessionStatus.COMPLETED])('does not report stop success for an unresolved %s launch after a server restart', async (status) => {
|
|
1754
|
+
const { session } = await createSessionFixture();
|
|
1755
|
+
await prisma.session.update({ where: { id: session.id }, data: {
|
|
1756
|
+
status, runtimeLaunchState: 'QUARANTINED', runtimeLaunchClaimCount: 1,
|
|
1757
|
+
runtimeLaunchResolvedCount: 0, runtimeLaunchProcessCount: 0,
|
|
1758
|
+
} });
|
|
1759
|
+
const eventBus = new EventBus();
|
|
1760
|
+
const stopped = vi.fn();
|
|
1761
|
+
eventBus.on('session:stopped', stopped);
|
|
1762
|
+
const manager = new SessionManager(eventBus);
|
|
1763
|
+
try {
|
|
1764
|
+
await expect(manager.stop(session.id)).rejects.toMatchObject({
|
|
1765
|
+
code: 'RUNTIME_CLEANUP_PENDING', statusCode: 409,
|
|
1766
|
+
});
|
|
1767
|
+
expect(stopped).not.toHaveBeenCalled();
|
|
1768
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } }))
|
|
1769
|
+
.resolves.toMatchObject({ status, runtimeLaunchResolvedCount: 0 });
|
|
1770
|
+
}
|
|
1771
|
+
finally {
|
|
1772
|
+
await manager.destroyAll();
|
|
1773
|
+
}
|
|
1774
|
+
});
|
|
1775
|
+
it('recovers a failed CLI launch after late parent-owned cleanup without an ExecutionProcess row', async () => {
|
|
1776
|
+
const { attachSpawnCleanupOwner } = await import('../../executors/start-error.js');
|
|
1777
|
+
const { session } = await createSessionFixture();
|
|
1778
|
+
const cleanup = deferred();
|
|
1779
|
+
const owner = {
|
|
1780
|
+
processExit: cleanup.promise, requestStop: vi.fn(), cleanup: vi.fn(async () => undefined),
|
|
1781
|
+
dispose: vi.fn(), disposeTreeCleanupChannel: vi.fn(),
|
|
1782
|
+
};
|
|
1783
|
+
spawnMock.mockRejectedValueOnce(attachSpawnCleanupOwner(new Error('identity capture failed'), owner));
|
|
1784
|
+
const manager = new SessionManager(new EventBus());
|
|
1785
|
+
try {
|
|
1786
|
+
await expect(manager.start(session.id)).rejects.toThrow('identity capture failed');
|
|
1787
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } })).resolves.toMatchObject({
|
|
1788
|
+
status: 'RUNNING', runtimeLaunchState: 'QUARANTINED', runtimeLaunchClaimCount: 1,
|
|
1789
|
+
runtimeLaunchResolvedCount: 0, runtimeLaunchProcessCount: 0,
|
|
1790
|
+
});
|
|
1791
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(false);
|
|
1792
|
+
expect(await prisma.executionProcess.count({ where: { sessionId: session.id } })).toBe(0);
|
|
1793
|
+
cleanup.resolve();
|
|
1794
|
+
// The heartbeat recovery must retry the in-memory failed owner even
|
|
1795
|
+
// though the persisted process scan has no candidates.
|
|
1796
|
+
await manager.retryFailedRuntimeDisposals();
|
|
1797
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(true);
|
|
1798
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } })).resolves.toMatchObject({
|
|
1799
|
+
runtimeLaunchState: 'CLEANED_START_FAILURE', runtimeLaunchClaimCount: 1,
|
|
1800
|
+
runtimeLaunchResolvedCount: 1, runtimeLaunchProcessCount: 0,
|
|
1801
|
+
});
|
|
1802
|
+
await manager.stop(session.id);
|
|
1803
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } }))
|
|
1804
|
+
.resolves.toMatchObject({ status: 'CANCELLED' });
|
|
1805
|
+
expect(owner.dispose).toHaveBeenCalledTimes(1);
|
|
1806
|
+
}
|
|
1807
|
+
finally {
|
|
1808
|
+
cleanup.resolve();
|
|
1809
|
+
await manager.destroyAll();
|
|
1810
|
+
}
|
|
1811
|
+
}, 20_000);
|
|
1812
|
+
it('binds failed-launch cleanup to the unresolved claim and cannot bypass recorded process cleanup', async () => {
|
|
1813
|
+
const { session } = await createSessionFixture();
|
|
1814
|
+
const manager = new SessionManager(new EventBus());
|
|
1815
|
+
const handle = manager.handleRuntimeProcessEvent.bind(manager);
|
|
1816
|
+
const event = { type: 'launch_cleanup_completed', towerSessionId: session.id, runtimeInstanceId: 'failed-runtime', launchClaimNumber: 2 };
|
|
1817
|
+
try {
|
|
1818
|
+
await prisma.session.update({ where: { id: session.id }, data: {
|
|
1819
|
+
runtimeLaunchState: 'QUARANTINED', runtimeLaunchClaimCount: 2, runtimeLaunchResolvedCount: 1,
|
|
1820
|
+
} });
|
|
1821
|
+
await handle({ ...event, launchClaimNumber: 1 });
|
|
1822
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(false);
|
|
1823
|
+
await handle(event);
|
|
1824
|
+
await handle(event);
|
|
1825
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(true);
|
|
1826
|
+
await expect(prisma.session.findUniqueOrThrow({ where: { id: session.id } }))
|
|
1827
|
+
.resolves.toMatchObject({ runtimeLaunchResolvedCount: 2 });
|
|
1828
|
+
await prisma.session.update({ where: { id: session.id }, data: {
|
|
1829
|
+
runtimeLaunchState: 'CLAIMED', runtimeLaunchClaimCount: 3,
|
|
1830
|
+
} });
|
|
1831
|
+
await handle(event);
|
|
1832
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(false);
|
|
1833
|
+
await handle({ ...event, type: 'started', launchClaimNumber: 3, runtimeInstanceId: 'recorded-runtime',
|
|
1834
|
+
pid: 123, processGroupId: '123', birthMarker: 'birth', ownershipToken: 'token' });
|
|
1835
|
+
await expect(handle({ ...event, launchClaimNumber: 3 })).rejects.toMatchObject({ code: 'RUNTIME_LAUNCH_CLAIM_MISMATCH' });
|
|
1836
|
+
expect(await manager.isRuntimeCleanupConfirmed(session.id)).toBe(false);
|
|
1837
|
+
}
|
|
1838
|
+
finally {
|
|
1839
|
+
await manager.destroyAll();
|
|
1840
|
+
}
|
|
1841
|
+
});
|
|
1706
1842
|
it('does not confirm ACP tree cleanup on root exit or let a late old cleanup overwrite a new runtime', async () => {
|
|
1707
1843
|
const { session } = await createSessionFixture();
|
|
1708
1844
|
const manager = new SessionManager(new EventBus());
|