factory-factory 0.3.14 → 0.3.16

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.
Files changed (439) hide show
  1. package/dist/client/assets/{arc-DSBuWL5s.js → arc-CAOrfHBL.js} +1 -1
  2. package/dist/client/assets/architectureDiagram-3BPJPVTR-CzxGCKeM.js +36 -0
  3. package/dist/client/assets/blockDiagram-GPEHLZMM-B4k0dvv-.js +132 -0
  4. package/dist/client/assets/{c4Diagram-AHTNJAMY-DLB6YyaK.js → c4Diagram-AAUBKEIU-ByaECY1u.js} +1 -1
  5. package/dist/client/assets/channel-D2ho7Eza.js +1 -0
  6. package/dist/client/assets/{chunk-EDXVE4YY-JtUNKE2M.js → chunk-2J33WTMH-Crxo1uMY.js} +1 -1
  7. package/dist/client/assets/{chunk-4BX2VUAB-DVPwhCCH.js → chunk-4BX2VUAB-CggFLwAA.js} +1 -1
  8. package/dist/client/assets/{chunk-55IACEB6-BW_jDeAT.js → chunk-55IACEB6-BSoTWFAF.js} +1 -1
  9. package/dist/client/assets/chunk-727SXJPM-DcQoeGkQ.js +206 -0
  10. package/dist/client/assets/chunk-AQP2D5EJ-Ci5tNJvg.js +231 -0
  11. package/dist/client/assets/{chunk-FMBD7UC4-BVYe-KgE.js → chunk-FMBD7UC4-CjYtwTh4.js} +1 -1
  12. package/dist/client/assets/{chunk-YZCP3GAM-CDhS7CGF.js → chunk-ND2GUHAM-Dla8Gmku.js} +1 -1
  13. package/dist/client/assets/{chunk-QZHKN3VN-99tx2X7z.js → chunk-QZHKN3VN-CiblfzNN.js} +1 -1
  14. package/dist/client/assets/classDiagram-4FO5ZUOK-ZExoOExU.js +1 -0
  15. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ZExoOExU.js +1 -0
  16. package/dist/client/assets/{cose-bilkent-S5V4N54A-GJd1fOeJ.js → cose-bilkent-S5V4N54A-DWuzgvAN.js} +1 -1
  17. package/dist/client/assets/dagre-BM42HDAG-hvdcGfHc.js +4 -0
  18. package/dist/client/assets/diagram-2AECGRRQ-DVZDsgVY.js +43 -0
  19. package/dist/client/assets/diagram-5GNKFQAL-BLXKSUUu.js +10 -0
  20. package/dist/client/assets/diagram-KO2AKTUF-1nNBdWqs.js +3 -0
  21. package/dist/client/assets/diagram-LMA3HP47-CTw-M4zU.js +24 -0
  22. package/dist/client/assets/diagram-OG6HWLK6-D9J0vyno.js +24 -0
  23. package/dist/client/assets/{erDiagram-SMLLAGMA-b5ieH-Rd.js → erDiagram-TEJ5UH35-DYXcLeDs.js} +1 -1
  24. package/dist/client/assets/{flowDiagram-DWJPFMVM-C6BT6FGE.js → flowDiagram-I6XJVG4X-CXFyFXcd.js} +1 -1
  25. package/dist/client/assets/{ganttDiagram-T4ZO3ILL-ANP28BYp.js → ganttDiagram-6RSMTGT7-CPGMIRhg.js} +2 -2
  26. package/dist/client/assets/gitGraphDiagram-PVQCEYII-BCIDHp-Q.js +106 -0
  27. package/dist/client/assets/graph--OzhPTMs.js +1 -0
  28. package/dist/client/assets/index-IJ_NNlgJ.css +1 -0
  29. package/dist/client/assets/{index-DXhws4gD.js → index-gIy0Sz_B.js} +152 -153
  30. package/dist/client/assets/infoDiagram-5YYISTIA-ThNaUmLI.js +2 -0
  31. package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-CqKsMHgP.js → ishikawaDiagram-YF4QCWOH-nD7e1KKT.js} +1 -1
  32. package/dist/client/assets/{journeyDiagram-VCZTEJTY-BZtfD_AX.js → journeyDiagram-JHISSGLW-DKfK1tIp.js} +1 -1
  33. package/dist/client/assets/{kanban-definition-6JOO6SKY-BmXsWhyy.js → kanban-definition-UN3LZRKU-C61PkF-T.js} +1 -1
  34. package/dist/client/assets/layout-SsrduOYp.js +1 -0
  35. package/dist/client/assets/{linear-D3KSZ58g.js → linear-yYp6Wht8.js} +1 -1
  36. package/dist/client/assets/{mindmap-definition-QFDTVHPH-Ds6I5xr9.js → mindmap-definition-RKZ34NQL-DI6Bl654.js} +9 -9
  37. package/dist/client/assets/{mobile-baseline-LNAOKO2v.js → mobile-baseline-DRrQYbFX.js} +1 -1
  38. package/dist/client/assets/pieDiagram-4H26LBE5-CNV-VY3H.js +30 -0
  39. package/dist/client/assets/quadrantDiagram-W4KKPZXB-CDBpCVHO.js +7 -0
  40. package/dist/client/assets/{requirementDiagram-MS252O5E-U4qQHRNe.js → requirementDiagram-4Y6WPE33-D_rxDIc5.js} +1 -1
  41. package/dist/client/assets/sankeyDiagram-5OEKKPKP-DeyadfL0.js +40 -0
  42. package/dist/client/assets/{sequenceDiagram-FGHM5R23-BU3bWBgE.js → sequenceDiagram-3UESZ5HK-36_kZ6la.js} +12 -7
  43. package/dist/client/assets/stateDiagram-AJRCARHV-4ayM-mAT.js +1 -0
  44. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-ChnnLckY.js +1 -0
  45. package/dist/client/assets/{terminal-instance-F0JrQZ9R.js → terminal-instance-CMp5bO62.js} +1 -1
  46. package/dist/client/assets/{timeline-definition-GMOUNBTQ-BLLt9f0n.js → timeline-definition-PNZ67QCA-D0pQgePo.js} +1 -1
  47. package/dist/client/assets/{vennDiagram-DHZGUBPP-wVxLQieb.js → vennDiagram-CIIHVFJN-CnoMcpwq.js} +1 -1
  48. package/dist/client/assets/wardley-L42UT6IY-DOtSWmwv.js +161 -0
  49. package/dist/client/assets/wardleyDiagram-YWT4CUSO-Z3hYGa2_.js +78 -0
  50. package/dist/client/assets/{xychartDiagram-5P7HB3ND-D-h5ykwN.js → xychartDiagram-2RQKCTM6-CBvgTdkn.js} +1 -1
  51. package/dist/client/index.html +2 -2
  52. package/dist/prisma/generated/browser.d.ts +2 -0
  53. package/dist/prisma/generated/browser.d.ts.map +1 -1
  54. package/dist/prisma/generated/client.d.ts +2 -0
  55. package/dist/prisma/generated/client.d.ts.map +1 -1
  56. package/dist/prisma/generated/commonInputTypes.d.ts +60 -0
  57. package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
  58. package/dist/prisma/generated/enums.d.ts +16 -0
  59. package/dist/prisma/generated/enums.d.ts.map +1 -1
  60. package/dist/prisma/generated/enums.js +15 -1
  61. package/dist/prisma/generated/enums.js.map +1 -1
  62. package/dist/prisma/generated/internal/class.d.ts +6 -0
  63. package/dist/prisma/generated/internal/class.d.ts.map +1 -1
  64. package/dist/prisma/generated/internal/class.js +4 -4
  65. package/dist/prisma/generated/internal/class.js.map +1 -1
  66. package/dist/prisma/generated/internal/prismaNamespace.d.ts +181 -1
  67. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  68. package/dist/prisma/generated/internal/prismaNamespace.js +27 -1
  69. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  70. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +28 -0
  71. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  72. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +27 -1
  73. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  74. package/dist/prisma/generated/models/PeriodicTask.d.ts +954 -0
  75. package/dist/prisma/generated/models/PeriodicTask.d.ts.map +1 -0
  76. package/dist/prisma/generated/models/PeriodicTask.js +2 -0
  77. package/dist/prisma/generated/models/PeriodicTask.js.map +1 -0
  78. package/dist/prisma/generated/models/PeriodicTaskExecution.d.ts +813 -0
  79. package/dist/prisma/generated/models/PeriodicTaskExecution.d.ts.map +1 -0
  80. package/dist/prisma/generated/models/PeriodicTaskExecution.js +2 -0
  81. package/dist/prisma/generated/models/PeriodicTaskExecution.js.map +1 -0
  82. package/dist/prisma/generated/models/Project.d.ts +132 -0
  83. package/dist/prisma/generated/models/Project.d.ts.map +1 -1
  84. package/dist/prisma/generated/models/Workspace.d.ts +809 -32
  85. package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
  86. package/dist/prisma/generated/models.d.ts +2 -0
  87. package/dist/prisma/generated/models.d.ts.map +1 -1
  88. package/dist/src/backend/lib/env.d.ts +2 -1
  89. package/dist/src/backend/lib/env.d.ts.map +1 -1
  90. package/dist/src/backend/lib/env.js +6 -3
  91. package/dist/src/backend/lib/env.js.map +1 -1
  92. package/dist/src/backend/lib/session-summaries.d.ts +1 -1
  93. package/dist/src/backend/lib/session-summaries.d.ts.map +1 -1
  94. package/dist/src/backend/lib/session-summaries.js +3 -2
  95. package/dist/src/backend/lib/session-summaries.js.map +1 -1
  96. package/dist/src/backend/lib/workspace-derived-state.js +1 -1
  97. package/dist/src/backend/lib/workspace-derived-state.js.map +1 -1
  98. package/dist/src/backend/lib/workspace-derived-state.test.js +33 -9
  99. package/dist/src/backend/lib/workspace-derived-state.test.js.map +1 -1
  100. package/dist/src/backend/orchestration/cli-health.service.d.ts +2 -0
  101. package/dist/src/backend/orchestration/cli-health.service.d.ts.map +1 -1
  102. package/dist/src/backend/orchestration/cli-health.service.js +23 -5
  103. package/dist/src/backend/orchestration/cli-health.service.js.map +1 -1
  104. package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
  105. package/dist/src/backend/orchestration/data-backup.service.js +6 -0
  106. package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
  107. package/dist/src/backend/orchestration/data-backup.service.test.js +55 -4
  108. package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
  109. package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
  110. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +39 -1
  111. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
  112. package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +3 -1
  113. package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js.map +1 -1
  114. package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts +2 -0
  115. package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts.map +1 -1
  116. package/dist/src/backend/orchestration/event-collector.orchestrator.js +17 -0
  117. package/dist/src/backend/orchestration/event-collector.orchestrator.js.map +1 -1
  118. package/dist/src/backend/orchestration/event-collector.orchestrator.test.js +14 -3
  119. package/dist/src/backend/orchestration/event-collector.orchestrator.test.js.map +1 -1
  120. package/dist/src/backend/orchestration/scheduler.service.d.ts.map +1 -1
  121. package/dist/src/backend/orchestration/scheduler.service.js +4 -2
  122. package/dist/src/backend/orchestration/scheduler.service.js.map +1 -1
  123. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.d.ts +1 -0
  124. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.d.ts.map +1 -1
  125. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js +7 -1
  126. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js.map +1 -1
  127. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js +34 -0
  128. package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js.map +1 -1
  129. package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +9 -0
  130. package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
  131. package/dist/src/backend/orchestration/workspace-archive.orchestrator.js +80 -39
  132. package/dist/src/backend/orchestration/workspace-archive.orchestrator.js.map +1 -1
  133. package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js +74 -2
  134. package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js.map +1 -1
  135. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts +1 -0
  136. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
  137. package/dist/src/backend/orchestration/workspace-init.orchestrator.js +101 -17
  138. package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
  139. package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js +70 -3
  140. package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js.map +1 -1
  141. package/dist/src/backend/prompts/ratchet-dispatch.d.ts.map +1 -1
  142. package/dist/src/backend/prompts/ratchet-dispatch.js +14 -10
  143. package/dist/src/backend/prompts/ratchet-dispatch.js.map +1 -1
  144. package/dist/src/backend/prompts/ratchet-dispatch.test.js +37 -0
  145. package/dist/src/backend/prompts/ratchet-dispatch.test.js.map +1 -1
  146. package/dist/src/backend/routers/websocket/setup-terminal.handler.d.ts.map +1 -1
  147. package/dist/src/backend/routers/websocket/setup-terminal.handler.js +13 -1
  148. package/dist/src/backend/routers/websocket/setup-terminal.handler.js.map +1 -1
  149. package/dist/src/backend/routers/websocket/setup-terminal.handler.test.js +89 -3
  150. package/dist/src/backend/routers/websocket/setup-terminal.handler.test.js.map +1 -1
  151. package/dist/src/backend/routers/websocket/snapshots.handler.d.ts.map +1 -1
  152. package/dist/src/backend/routers/websocket/snapshots.handler.js +24 -8
  153. package/dist/src/backend/routers/websocket/snapshots.handler.js.map +1 -1
  154. package/dist/src/backend/routers/websocket/terminal.handler.d.ts.map +1 -1
  155. package/dist/src/backend/routers/websocket/terminal.handler.js +29 -11
  156. package/dist/src/backend/routers/websocket/terminal.handler.js.map +1 -1
  157. package/dist/src/backend/routers/websocket/terminal.handler.test.js +98 -0
  158. package/dist/src/backend/routers/websocket/terminal.handler.test.js.map +1 -1
  159. package/dist/src/backend/schemas/websocket/terminal-message.schema.d.ts +1 -0
  160. package/dist/src/backend/schemas/websocket/terminal-message.schema.d.ts.map +1 -1
  161. package/dist/src/backend/schemas/websocket/terminal-message.schema.js +1 -0
  162. package/dist/src/backend/schemas/websocket/terminal-message.schema.js.map +1 -1
  163. package/dist/src/backend/server.d.ts.map +1 -1
  164. package/dist/src/backend/server.js +84 -62
  165. package/dist/src/backend/server.js.map +1 -1
  166. package/dist/src/backend/server.upgrade.test.js +40 -1
  167. package/dist/src/backend/server.upgrade.test.js.map +1 -1
  168. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts +2 -1
  169. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts.map +1 -1
  170. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js +82 -0
  171. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js.map +1 -1
  172. package/dist/src/backend/services/config.service.d.ts.map +1 -1
  173. package/dist/src/backend/services/config.service.js +1 -4
  174. package/dist/src/backend/services/config.service.js.map +1 -1
  175. package/dist/src/backend/services/constants.d.ts +1 -0
  176. package/dist/src/backend/services/constants.d.ts.map +1 -1
  177. package/dist/src/backend/services/constants.js +1 -0
  178. package/dist/src/backend/services/constants.js.map +1 -1
  179. package/dist/src/backend/services/github/service/github-cli/schemas.d.ts +1 -0
  180. package/dist/src/backend/services/github/service/github-cli/schemas.d.ts.map +1 -1
  181. package/dist/src/backend/services/github/service/github-cli/schemas.js +1 -1
  182. package/dist/src/backend/services/github/service/github-cli/schemas.js.map +1 -1
  183. package/dist/src/backend/services/github/service/github-cli.service.d.ts +10 -0
  184. package/dist/src/backend/services/github/service/github-cli.service.d.ts.map +1 -1
  185. package/dist/src/backend/services/github/service/github-cli.service.js +85 -2
  186. package/dist/src/backend/services/github/service/github-cli.service.js.map +1 -1
  187. package/dist/src/backend/services/github/service/github-cli.service.test.js +38 -8
  188. package/dist/src/backend/services/github/service/github-cli.service.test.js.map +1 -1
  189. package/dist/src/backend/services/periodic-task/index.d.ts +5 -0
  190. package/dist/src/backend/services/periodic-task/index.d.ts.map +1 -0
  191. package/dist/src/backend/services/periodic-task/index.js +6 -0
  192. package/dist/src/backend/services/periodic-task/index.js.map +1 -0
  193. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +49 -0
  194. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -0
  195. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +138 -0
  196. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -0
  197. package/dist/src/backend/services/periodic-task/service/index.d.ts +3 -0
  198. package/dist/src/backend/services/periodic-task/service/index.d.ts.map +1 -0
  199. package/dist/src/backend/services/periodic-task/service/index.js +2 -0
  200. package/dist/src/backend/services/periodic-task/service/index.js.map +1 -0
  201. package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts +44 -0
  202. package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts.map +1 -0
  203. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js +177 -0
  204. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js.map +1 -0
  205. package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.d.ts.map +1 -1
  206. package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js +1 -0
  207. package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js.map +1 -1
  208. package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js +74 -1
  209. package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js.map +1 -1
  210. package/dist/src/backend/services/ratchet/service/ratchet.service.js +1 -1
  211. package/dist/src/backend/services/ratchet/service/ratchet.service.js.map +1 -1
  212. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +9 -5
  213. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +1 -1
  214. package/dist/src/backend/services/registry.d.ts +6 -2
  215. package/dist/src/backend/services/registry.d.ts.map +1 -1
  216. package/dist/src/backend/services/registry.js +7 -0
  217. package/dist/src/backend/services/registry.js.map +1 -1
  218. package/dist/src/backend/services/resources.integration.test.js +33 -3
  219. package/dist/src/backend/services/resources.integration.test.js.map +1 -1
  220. package/dist/src/backend/services/run-script/service/run-script.service.d.ts +2 -1
  221. package/dist/src/backend/services/run-script/service/run-script.service.d.ts.map +1 -1
  222. package/dist/src/backend/services/run-script/service/run-script.service.js +7 -1
  223. package/dist/src/backend/services/run-script/service/run-script.service.js.map +1 -1
  224. package/dist/src/backend/services/run-script/service/run-script.service.test.js +20 -0
  225. package/dist/src/backend/services/run-script/service/run-script.service.test.js.map +1 -1
  226. package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts +2 -0
  227. package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts.map +1 -1
  228. package/dist/src/backend/services/session/resources/agent-session.accessor.js +88 -49
  229. package/dist/src/backend/services/session/resources/agent-session.accessor.js.map +1 -1
  230. package/dist/src/backend/services/session/resources/agent-session.accessor.test.js +27 -0
  231. package/dist/src/backend/services/session/resources/agent-session.accessor.test.js.map +1 -1
  232. package/dist/src/backend/services/session/service/acp/acp-client-handler.d.ts.map +1 -1
  233. package/dist/src/backend/services/session/service/acp/acp-client-handler.js +31 -16
  234. package/dist/src/backend/services/session/service/acp/acp-client-handler.js.map +1 -1
  235. package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js +41 -7
  236. package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js.map +1 -1
  237. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts +2 -0
  238. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
  239. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +25 -6
  240. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
  241. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js +81 -3
  242. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js.map +1 -1
  243. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts +1 -0
  244. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
  245. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +13 -0
  246. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
  247. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js +34 -0
  248. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js.map +1 -1
  249. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.d.ts +7 -0
  250. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.d.ts.map +1 -1
  251. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.js +25 -8
  252. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.js.map +1 -1
  253. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.test.js +28 -0
  254. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.test.js.map +1 -1
  255. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.d.ts.map +1 -1
  256. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.js +3 -26
  257. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.js.map +1 -1
  258. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.test.js +30 -4
  259. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.test.js.map +1 -1
  260. package/dist/src/backend/services/session/service/acp/codex-cli-import-resolution.integration.test.js +17 -5
  261. package/dist/src/backend/services/session/service/acp/codex-cli-import-resolution.integration.test.js.map +1 -1
  262. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js +23 -0
  263. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js.map +1 -1
  264. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts +10 -1
  265. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts.map +1 -1
  266. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +72 -2
  267. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js.map +1 -1
  268. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js +66 -0
  269. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js.map +1 -1
  270. package/dist/src/backend/services/session/service/data/session-data.service.d.ts +3 -0
  271. package/dist/src/backend/services/session/service/data/session-data.service.d.ts.map +1 -1
  272. package/dist/src/backend/services/session/service/data/session-data.service.js +3 -0
  273. package/dist/src/backend/services/session/service/data/session-data.service.js.map +1 -1
  274. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +5 -1
  275. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts.map +1 -1
  276. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js +14 -5
  277. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js.map +1 -1
  278. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts +1 -0
  279. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts.map +1 -1
  280. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js +50 -7
  281. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js.map +1 -1
  282. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js +68 -0
  283. package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js.map +1 -1
  284. package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts +2 -0
  285. package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts.map +1 -1
  286. package/dist/src/backend/services/session/service/lifecycle/session.repository.js +3 -0
  287. package/dist/src/backend/services/session/service/lifecycle/session.repository.js.map +1 -1
  288. package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js +6 -0
  289. package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js.map +1 -1
  290. package/dist/src/backend/services/session/service/lifecycle/session.service.coverage.test.js +65 -2
  291. package/dist/src/backend/services/session/service/lifecycle/session.service.coverage.test.js.map +1 -1
  292. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts +7 -0
  293. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts.map +1 -1
  294. package/dist/src/backend/services/session/service/lifecycle/session.service.js +54 -2
  295. package/dist/src/backend/services/session/service/lifecycle/session.service.js.map +1 -1
  296. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +254 -3
  297. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
  298. package/dist/src/backend/services/terminal/service/terminal.service.d.ts +1 -2
  299. package/dist/src/backend/services/terminal/service/terminal.service.d.ts.map +1 -1
  300. package/dist/src/backend/services/terminal/service/terminal.service.js +95 -9
  301. package/dist/src/backend/services/terminal/service/terminal.service.js.map +1 -1
  302. package/dist/src/backend/services/terminal/service/terminal.service.test.js +16 -0
  303. package/dist/src/backend/services/terminal/service/terminal.service.test.js.map +1 -1
  304. package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts +3 -1
  305. package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts.map +1 -1
  306. package/dist/src/backend/services/workspace/resources/workspace.accessor.js +15 -0
  307. package/dist/src/backend/services/workspace/resources/workspace.accessor.js.map +1 -1
  308. package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js +37 -1
  309. package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js.map +1 -1
  310. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +1 -0
  311. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js.map +1 -1
  312. package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts +9 -0
  313. package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts.map +1 -1
  314. package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts +2 -0
  315. package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts.map +1 -1
  316. package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts +6 -2
  317. package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts.map +1 -1
  318. package/dist/src/backend/services/workspace/service/query/workspace-query.service.js +38 -26
  319. package/dist/src/backend/services/workspace/service/query/workspace-query.service.js.map +1 -1
  320. package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js +42 -6
  321. package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js.map +1 -1
  322. package/dist/src/backend/services/workspace/service/state/kanban-state.d.ts.map +1 -1
  323. package/dist/src/backend/services/workspace/service/state/kanban-state.js +1 -3
  324. package/dist/src/backend/services/workspace/service/state/kanban-state.js.map +1 -1
  325. package/dist/src/backend/services/workspace/service/state/pending-request-type.js +2 -2
  326. package/dist/src/backend/services/workspace/service/state/pending-request-type.js.map +1 -1
  327. package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js +7 -0
  328. package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js.map +1 -1
  329. package/dist/src/backend/services/workspace/service/state/workspace-runtime-state.js +1 -1
  330. package/dist/src/backend/services/workspace/service/state/workspace-runtime-state.js.map +1 -1
  331. package/dist/src/backend/services/workspace/service/worktree/worktree-init.test.js +5 -0
  332. package/dist/src/backend/services/workspace/service/worktree/worktree-init.test.js.map +1 -1
  333. package/dist/src/backend/services/workspace-snapshot-store.service.test.js +7 -5
  334. package/dist/src/backend/services/workspace-snapshot-store.service.test.js.map +1 -1
  335. package/dist/src/backend/trpc/admin.trpc.d.ts +6 -2
  336. package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
  337. package/dist/src/backend/trpc/auto-iteration.trpc.d.ts.map +1 -1
  338. package/dist/src/backend/trpc/auto-iteration.trpc.js +38 -2
  339. package/dist/src/backend/trpc/auto-iteration.trpc.js.map +1 -1
  340. package/dist/src/backend/trpc/index.d.ts +267 -4
  341. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  342. package/dist/src/backend/trpc/index.js +2 -0
  343. package/dist/src/backend/trpc/index.js.map +1 -1
  344. package/dist/src/backend/trpc/periodic-task.trpc.d.ts +153 -0
  345. package/dist/src/backend/trpc/periodic-task.trpc.d.ts.map +1 -0
  346. package/dist/src/backend/trpc/periodic-task.trpc.js +59 -0
  347. package/dist/src/backend/trpc/periodic-task.trpc.js.map +1 -0
  348. package/dist/src/backend/trpc/project.trpc.d.ts +2 -0
  349. package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
  350. package/dist/src/backend/trpc/session.router.test.js +6 -6
  351. package/dist/src/backend/trpc/session.router.test.js.map +1 -1
  352. package/dist/src/backend/trpc/session.trpc.d.ts +5 -0
  353. package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
  354. package/dist/src/backend/trpc/session.trpc.js +2 -2
  355. package/dist/src/backend/trpc/session.trpc.js.map +1 -1
  356. package/dist/src/backend/trpc/workspace/init.router.test.js +44 -4
  357. package/dist/src/backend/trpc/workspace/init.router.test.js.map +1 -1
  358. package/dist/src/backend/trpc/workspace/init.trpc.d.ts +1 -0
  359. package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
  360. package/dist/src/backend/trpc/workspace/init.trpc.js +25 -19
  361. package/dist/src/backend/trpc/workspace/init.trpc.js.map +1 -1
  362. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +2 -0
  363. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
  364. package/dist/src/backend/trpc/workspace.trpc.d.ts +102 -2
  365. package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
  366. package/dist/src/backend/trpc/workspace.trpc.js +32 -0
  367. package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
  368. package/dist/src/cli/database-path.d.ts +8 -0
  369. package/dist/src/cli/database-path.d.ts.map +1 -0
  370. package/dist/src/cli/database-path.js +15 -0
  371. package/dist/src/cli/database-path.js.map +1 -0
  372. package/dist/src/cli/database-path.test.d.ts +2 -0
  373. package/dist/src/cli/database-path.test.d.ts.map +1 -0
  374. package/dist/src/cli/database-path.test.js +51 -0
  375. package/dist/src/cli/database-path.test.js.map +1 -0
  376. package/dist/src/cli/index.js +4 -12
  377. package/dist/src/cli/index.js.map +1 -1
  378. package/dist/src/cli/proxy.d.ts.map +1 -1
  379. package/dist/src/cli/proxy.js +2 -5
  380. package/dist/src/cli/proxy.js.map +1 -1
  381. package/dist/src/shared/core/ci-status.d.ts.map +1 -1
  382. package/dist/src/shared/core/ci-status.js +10 -9
  383. package/dist/src/shared/core/ci-status.js.map +1 -1
  384. package/dist/src/shared/core/enums.d.ts +16 -0
  385. package/dist/src/shared/core/enums.d.ts.map +1 -1
  386. package/dist/src/shared/core/enums.js +14 -0
  387. package/dist/src/shared/core/enums.js.map +1 -1
  388. package/dist/src/shared/core/index.d.ts +1 -1
  389. package/dist/src/shared/core/index.d.ts.map +1 -1
  390. package/dist/src/shared/core/index.js +1 -1
  391. package/dist/src/shared/core/index.js.map +1 -1
  392. package/dist/src/shared/github-types.d.ts +1 -1
  393. package/dist/src/shared/github-types.d.ts.map +1 -1
  394. package/dist/src/shared/pending-request-types.d.ts +4 -0
  395. package/dist/src/shared/pending-request-types.d.ts.map +1 -1
  396. package/dist/src/shared/pending-request-types.js +6 -0
  397. package/dist/src/shared/pending-request-types.js.map +1 -1
  398. package/dist/src/shared/schemas/export-data.schema.d.ts +12 -0
  399. package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
  400. package/dist/src/shared/schemas/export-data.schema.js +4 -1
  401. package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
  402. package/dist/src/shared/session-runtime.d.ts +2 -0
  403. package/dist/src/shared/session-runtime.d.ts.map +1 -1
  404. package/dist/src/shared/session-runtime.js +6 -0
  405. package/dist/src/shared/session-runtime.js.map +1 -1
  406. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  407. package/package.json +23 -15
  408. package/prisma/migrations/20260217000000_add_auto_approve_permissions/migration.sql +2 -0
  409. package/prisma/migrations/20260410000000_remove_auto_approve_permissions/migration.sql +2 -0
  410. package/prisma/migrations/20260414120000_add_performance_indexes/migration.sql +23 -0
  411. package/prisma/migrations/20260512204732_add_periodic_tasks/migration.sql +125 -0
  412. package/prisma/schema.prisma +76 -0
  413. package/dist/client/assets/_baseUniq-CRIXZajf.js +0 -1
  414. package/dist/client/assets/architectureDiagram-Q4EWVU46-CR--POQ9.js +0 -36
  415. package/dist/client/assets/blockDiagram-DXYQGD6D-JuBGkp-x.js +0 -132
  416. package/dist/client/assets/channel-BToPvV0p.js +0 -1
  417. package/dist/client/assets/chunk-4TB4RGXK-YVAR8wg-.js +0 -206
  418. package/dist/client/assets/chunk-OYMX7WX6-u9Af6O8U.js +0 -231
  419. package/dist/client/assets/classDiagram-6PBFFD2Q-CdGzzfRv.js +0 -1
  420. package/dist/client/assets/classDiagram-v2-HSJHXN6E-CdGzzfRv.js +0 -1
  421. package/dist/client/assets/clone-DZkyOsGH.js +0 -1
  422. package/dist/client/assets/dagre-KV5264BT-DzucNBZu.js +0 -4
  423. package/dist/client/assets/diagram-5BDNPKRD-C6OYvRyt.js +0 -10
  424. package/dist/client/assets/diagram-G4DWMVQ6-DrQYwY3E.js +0 -24
  425. package/dist/client/assets/diagram-MMDJMWI5-CfInQsB1.js +0 -43
  426. package/dist/client/assets/diagram-TYMM5635-CwNYFf_u.js +0 -24
  427. package/dist/client/assets/gitGraphDiagram-UUTBAWPF-VkjInTZg.js +0 -106
  428. package/dist/client/assets/graph-C3Zfn3Km.js +0 -1
  429. package/dist/client/assets/index-CBgUr8yV.css +0 -1
  430. package/dist/client/assets/infoDiagram-42DDH7IO-Dp-vRCFg.js +0 -2
  431. package/dist/client/assets/layout-BVsX4tmn.js +0 -1
  432. package/dist/client/assets/min-DH_RgixA.js +0 -1
  433. package/dist/client/assets/pieDiagram-DEJITSTG-S9DirkFb.js +0 -30
  434. package/dist/client/assets/quadrantDiagram-34T5L4WZ-CVmMYBg1.js +0 -7
  435. package/dist/client/assets/sankeyDiagram-XADWPNL6-Zd2-RQeP.js +0 -10
  436. package/dist/client/assets/stateDiagram-FHFEXIEX-DX9qwfCK.js +0 -1
  437. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CJ_nRdIj.js +0 -1
  438. package/dist/client/assets/wardley-RL74JXVD-DiTLa5PU.js +0 -162
  439. package/dist/client/assets/wardleyDiagram-NUSXRM2D-CJRSuGsS.js +0 -20
@@ -236,6 +236,104 @@ describe('createTerminalUpgradeHandler', () => {
236
236
  await Promise.resolve();
237
237
  expect(terminalService.destroyTerminal).toHaveBeenCalledWith(workspaceId, 'terminal-1');
238
238
  });
239
+ it('echoes create request ids when terminal creations resolve out of order', async () => {
240
+ const workspaceId = 'workspace-1';
241
+ vi.mocked(workspaceDataService.findById).mockResolvedValue({
242
+ id: workspaceId,
243
+ worktreePath: '/tmp/worktree',
244
+ });
245
+ const { terminalService } = createTerminalService();
246
+ let resolveFirst;
247
+ let resolveSecond;
248
+ terminalService.createTerminal
249
+ .mockImplementationOnce(() => new Promise((resolve) => {
250
+ resolveFirst = resolve;
251
+ }))
252
+ .mockImplementationOnce(() => new Promise((resolve) => {
253
+ resolveSecond = resolve;
254
+ }));
255
+ const logger = createLogger();
256
+ const appContext = {
257
+ services: {
258
+ terminalService,
259
+ createLogger: vi.fn(() => logger),
260
+ },
261
+ };
262
+ const handler = createTerminalUpgradeHandler(appContext);
263
+ const ws = new MockWebSocket();
264
+ const wss = createWss(ws);
265
+ const request = {};
266
+ const socket = { write: vi.fn(), destroy: vi.fn() };
267
+ handler(request, socket, Buffer.alloc(0), new URL(`http://localhost/terminal?workspaceId=${workspaceId}`), wss, new WeakMap());
268
+ ws.emit('message', JSON.stringify({ type: 'create', requestId: 'request-1', cols: 80, rows: 24 }));
269
+ ws.emit('message', JSON.stringify({ type: 'create', requestId: 'request-2', cols: 80, rows: 24 }));
270
+ await vi.waitFor(() => {
271
+ expect(resolveFirst).toBeDefined();
272
+ expect(resolveSecond).toBeDefined();
273
+ });
274
+ resolveSecond?.({ terminalId: 'terminal-2', pid: 4322 });
275
+ await vi.waitFor(() => {
276
+ expect(ws.send).toHaveBeenCalledWith(JSON.stringify({
277
+ type: 'created',
278
+ terminalId: 'terminal-2',
279
+ requestId: 'request-2',
280
+ }));
281
+ });
282
+ resolveFirst?.({ terminalId: 'terminal-1', pid: 4321 });
283
+ await vi.waitFor(() => {
284
+ expect(ws.send).toHaveBeenCalledWith(JSON.stringify({
285
+ type: 'created',
286
+ terminalId: 'terminal-1',
287
+ requestId: 'request-1',
288
+ }));
289
+ });
290
+ });
291
+ it('destroys a newly created terminal when session persistence fails', async () => {
292
+ const workspaceId = 'workspace-1';
293
+ vi.mocked(workspaceDataService.findById).mockResolvedValue({
294
+ id: workspaceId,
295
+ worktreePath: '/tmp/worktree',
296
+ });
297
+ vi.mocked(sessionDataService.createTerminalSession).mockRejectedValueOnce(new Error('database locked'));
298
+ const terminalInstances = new Map();
299
+ const { terminalService } = createTerminalService();
300
+ terminalService.createTerminal.mockImplementationOnce(() => {
301
+ const terminalId = 'terminal-1';
302
+ terminalInstances.set(terminalId, { id: terminalId, pid: 4321 });
303
+ return Promise.resolve({ terminalId, pid: 4321 });
304
+ });
305
+ terminalService.destroyTerminal.mockImplementationOnce((_wsId, terminalId) => {
306
+ terminalInstances.delete(terminalId);
307
+ return true;
308
+ });
309
+ const logger = createLogger();
310
+ const appContext = {
311
+ services: {
312
+ terminalService,
313
+ createLogger: vi.fn(() => logger),
314
+ },
315
+ };
316
+ const handler = createTerminalUpgradeHandler(appContext);
317
+ const ws = new MockWebSocket();
318
+ const wss = createWss(ws);
319
+ const request = {};
320
+ const socket = { write: vi.fn(), destroy: vi.fn() };
321
+ handler(request, socket, Buffer.alloc(0), new URL(`http://localhost/terminal?workspaceId=${workspaceId}`), wss, new WeakMap());
322
+ ws.emit('message', JSON.stringify({ type: 'create', cols: 80, rows: 24 }));
323
+ await vi.waitFor(() => {
324
+ expect(sessionDataService.createTerminalSession).toHaveBeenCalledWith({
325
+ workspaceId,
326
+ name: 'terminal-1',
327
+ pid: 4321,
328
+ });
329
+ expect(terminalService.destroyTerminal).toHaveBeenCalledWith(workspaceId, 'terminal-1');
330
+ });
331
+ expect(terminalInstances.size).toBe(0);
332
+ expect(terminalService.onOutput).not.toHaveBeenCalled();
333
+ expect(terminalService.onExit).not.toHaveBeenCalled();
334
+ expect(ws.send).not.toHaveBeenCalledWith(JSON.stringify({ type: 'created', terminalId: 'terminal-1' }));
335
+ expect(ws.send).toHaveBeenCalledWith(JSON.stringify({ type: 'error', message: 'Operation failed: database locked' }));
336
+ });
239
337
  it('sends structured errors for invalid or failed terminal operations', async () => {
240
338
  const workspaceId = 'workspace-1';
241
339
  vi.mocked(workspaceDataService.findById).mockResolvedValue(null);
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.handler.test.js","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/terminal.handler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.handler.test.js","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/terminal.handler.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  export declare const TerminalMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3
3
  type: z.ZodLiteral<"create">;
4
+ requestId: z.ZodOptional<z.ZodString>;
4
5
  cols: z.ZodOptional<z.ZodNumber>;
5
6
  rows: z.ZodOptional<z.ZodNumber>;
6
7
  }, z.core.$strip>, z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-message.schema.d.ts","sourceRoot":"","sources":["../../../../../src/backend/schemas/websocket/terminal-message.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;2BAqChC,CAAC;AAMH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"terminal-message.schema.d.ts","sourceRoot":"","sources":["../../../../../src/backend/schemas/websocket/terminal-message.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;2BAsChC,CAAC;AAMH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  export const TerminalMessageSchema = z.discriminatedUnion('type', [
3
3
  z.object({
4
4
  type: z.literal('create'),
5
+ requestId: z.string().optional(),
5
6
  cols: z.number().int().positive().optional(),
6
7
  rows: z.number().int().positive().optional(),
7
8
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-message.schema.js","sourceRoot":"","sources":["../../../../../src/backend/schemas/websocket/terminal-message.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAEhE,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;KAC7C,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QACjC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;KAClC,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;CACtC,CAAC,CAAC"}
1
+ {"version":3,"file":"terminal-message.schema.js","sourceRoot":"","sources":["../../../../../src/backend/schemas/websocket/terminal-message.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAEhE,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;KAC7C,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QACjC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;KAClC,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;IAGF,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;CACtC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/backend/server.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AA+BlE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,YAAY,EAAE,cAAc,EAAE,CAAC;AAS/B,wBAAgB,YAAY,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,cAAc,CA0V5F"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/backend/server.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AAiClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,YAAY,EAAE,cAAc,EAAE,CAAC;AAS/B,wBAAgB,YAAY,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,cAAc,CAuY5F"}
@@ -12,8 +12,10 @@ import { createCorsMiddleware, createRequestLoggerMiddleware, securityMiddleware
12
12
  import { configureDomainBridges } from './orchestration/domain-bridges.orchestrator.js';
13
13
  import { configureEventCollector, stopEventCollector, } from './orchestration/event-collector.orchestrator.js';
14
14
  import { configureSnapshotReconciliation, snapshotReconciliationService, } from './orchestration/snapshot-reconciliation.orchestrator.js';
15
+ import { recoverStaleArchivingWorkspaces } from './orchestration/workspace-archive.orchestrator.js';
15
16
  import { createHealthRouter } from './routers/health.router.js';
16
17
  import { createChatUpgradeHandler, createDevLogsUpgradeHandler, createPostRunLogsUpgradeHandler, createSetupTerminalUpgradeHandler, createSnapshotsUpgradeHandler, createTerminalUpgradeHandler, } from './routers/websocket/index.js';
18
+ import { periodicTaskService } from './services/periodic-task/index.js';
17
19
  import { reconciliationService } from './services/ratchet/index.js';
18
20
  import { runScriptStateMachine } from './services/run-script/index.js';
19
21
  import { workspaceAccessor } from './services/workspace/index.js';
@@ -148,6 +150,32 @@ export function createServer(requestedPort, appContext) {
148
150
  socket.destroy();
149
151
  });
150
152
  const SHUTDOWN_TIMEOUT_MS = 5000;
153
+ const runStartupTask = async (errorMessage, task) => {
154
+ try {
155
+ await task();
156
+ }
157
+ catch (error) {
158
+ logger.error(errorMessage, toError(error));
159
+ }
160
+ };
161
+ const recoverStaleArchivingOnStartup = async () => {
162
+ const recovered = await recoverStaleArchivingWorkspaces(context.services);
163
+ if (recovered.archived.length > 0 || recovered.failed.length > 0) {
164
+ logger.info('Recovered stale archiving workspaces on startup', {
165
+ archived: recovered.archived,
166
+ failed: recovered.failed,
167
+ });
168
+ }
169
+ };
170
+ const recoverStaleAutoIterationOnStartup = async () => {
171
+ const recovered = await workspaceAccessor.resetStaleAutoIterationStatuses();
172
+ if (recovered.length > 0) {
173
+ logger.info('Recovered stale auto-iteration states on startup', {
174
+ count: recovered.length,
175
+ workspaceIds: recovered.map((w) => w.id),
176
+ });
177
+ }
178
+ };
151
179
  const performCleanup = async () => {
152
180
  logger.info('Starting graceful cleanup');
153
181
  clearInterval(heartbeatInterval);
@@ -163,6 +191,7 @@ export function createServer(requestedPort, appContext) {
163
191
  stopEventCollector();
164
192
  await snapshotReconciliationService.stop();
165
193
  await ratchetService.stop();
194
+ await periodicTaskService.stop();
166
195
  await reconciliationService.stopPeriodicCleanup();
167
196
  await prisma.$disconnect();
168
197
  logger.info('Graceful cleanup completed');
@@ -181,71 +210,64 @@ export function createServer(requestedPort, appContext) {
181
210
  });
182
211
  }
183
212
  const runStartupReconciliation = async () => {
184
- try {
185
- await reconciliationService.cleanupOrphans();
186
- }
187
- catch (error) {
188
- logger.error('Failed to cleanup orphan sessions on startup', toError(error));
189
- }
190
- try {
191
- await reconciliationService.reconcile();
192
- }
193
- catch (error) {
194
- logger.error('Failed to reconcile workspaces on startup', toError(error));
195
- }
196
- try {
197
- await runScriptStateMachine.recoverStaleStates();
198
- }
199
- catch (error) {
200
- logger.error('Failed to recover stale run script states on startup', toError(error));
201
- }
202
- try {
203
- const recovered = await workspaceAccessor.resetStaleAutoIterationStatuses();
204
- if (recovered.length > 0) {
205
- logger.info('Recovered stale auto-iteration states on startup', {
206
- count: recovered.length,
207
- workspaceIds: recovered.map((w) => w.id),
208
- });
209
- }
210
- }
211
- catch (error) {
212
- logger.error('Failed to recover stale auto-iteration states on startup', toError(error));
213
- }
213
+ await runStartupTask('Failed to cleanup orphan sessions on startup', () => reconciliationService.cleanupOrphans());
214
+ await runStartupTask('Failed to recover stale agent sessions on startup', async () => {
215
+ await sessionService.recoverStaleSessionStates();
216
+ });
217
+ await runStartupTask('Failed to reconcile workspaces on startup', () => reconciliationService.reconcile());
218
+ await runStartupTask('Failed to recover stale run script states on startup', () => runScriptStateMachine.recoverStaleStates());
219
+ await runStartupTask('Failed to recover stale archiving workspaces on startup', recoverStaleArchivingOnStartup);
220
+ await runStartupTask('Failed to recover stale auto-iteration states on startup', recoverStaleAutoIterationOnStartup);
214
221
  };
215
222
  return new Promise((resolve, reject) => {
216
- server.listen(actualPort, REQUESTED_HOST, async () => {
217
- logger.info('Backend server started', {
218
- port: actualPort,
219
- environment: configService.getEnvironment(),
220
- });
221
- if (configService.isRunScriptProxyEnabled()) {
222
- process.stdout.write(`BACKEND_PORT:${actualPort}\n`);
223
- }
224
- configureDomainBridges(context.services);
225
- configureEventCollector(context.services);
226
- configureSnapshotReconciliation(context.services);
227
- await runStartupReconciliation();
228
- sessionFileLogger.cleanupOldLogs();
229
- acpTraceLogger.cleanupOldLogs();
230
- await startInterceptors();
231
- reconciliationService.startPeriodicCleanup();
232
- rateLimiter.start();
233
- schedulerService.start();
234
- ratchetService.start();
235
- logger.info('Server endpoints available', {
236
- server: `http://${ENDPOINT_HOST}:${actualPort}`,
237
- health: `http://${ENDPOINT_HOST}:${actualPort}/health`,
238
- healthAll: `http://${ENDPOINT_HOST}:${actualPort}/health/all`,
239
- trpc: `http://${ENDPOINT_HOST}:${actualPort}/api/trpc`,
240
- wsChat: `ws://${ENDPOINT_HOST}:${actualPort}/chat`,
241
- wsTerminal: `ws://${ENDPOINT_HOST}:${actualPort}/terminal`,
242
- wsSnapshots: `ws://${ENDPOINT_HOST}:${actualPort}/snapshots`,
243
- });
244
- resolve(`http://${ENDPOINT_HOST}:${actualPort}`);
245
- });
246
- server.on('error', (error) => {
223
+ let startupFailed = false;
224
+ const onServerError = (error) => {
225
+ startupFailed = true;
247
226
  reject(error);
248
- });
227
+ };
228
+ server.once('error', onServerError);
229
+ void (async () => {
230
+ try {
231
+ configureDomainBridges(context.services);
232
+ configureEventCollector(context.services);
233
+ await runStartupReconciliation();
234
+ if (startupFailed) {
235
+ return;
236
+ }
237
+ server.listen(actualPort, REQUESTED_HOST, async () => {
238
+ configureSnapshotReconciliation(context.services);
239
+ logger.info('Backend server started', {
240
+ port: actualPort,
241
+ environment: configService.getEnvironment(),
242
+ });
243
+ if (configService.isRunScriptProxyEnabled()) {
244
+ process.stdout.write(`BACKEND_PORT:${actualPort}\n`);
245
+ }
246
+ sessionFileLogger.cleanupOldLogs();
247
+ acpTraceLogger.cleanupOldLogs();
248
+ await startInterceptors();
249
+ reconciliationService.startPeriodicCleanup();
250
+ rateLimiter.start();
251
+ schedulerService.start();
252
+ ratchetService.start();
253
+ periodicTaskService.start();
254
+ logger.info('Server endpoints available', {
255
+ server: `http://${ENDPOINT_HOST}:${actualPort}`,
256
+ health: `http://${ENDPOINT_HOST}:${actualPort}/health`,
257
+ healthAll: `http://${ENDPOINT_HOST}:${actualPort}/health/all`,
258
+ trpc: `http://${ENDPOINT_HOST}:${actualPort}/api/trpc`,
259
+ wsChat: `ws://${ENDPOINT_HOST}:${actualPort}/chat`,
260
+ wsTerminal: `ws://${ENDPOINT_HOST}:${actualPort}/terminal`,
261
+ wsSnapshots: `ws://${ENDPOINT_HOST}:${actualPort}/snapshots`,
262
+ });
263
+ resolve(`http://${ENDPOINT_HOST}:${actualPort}`);
264
+ });
265
+ }
266
+ catch (error) {
267
+ server.off('error', onServerError);
268
+ reject(error);
269
+ }
270
+ })();
249
271
  });
250
272
  },
251
273
  async stop() {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/backend/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/backend/server.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,9 @@ import { startInterceptors, stopInterceptors } from '../backend/interceptors/ind
8
8
  import { configureDomainBridges } from '../backend/orchestration/domain-bridges.orchestrator.js';
9
9
  import { configureEventCollector, stopEventCollector, } from '../backend/orchestration/event-collector.orchestrator.js';
10
10
  import { configureSnapshotReconciliation, snapshotReconciliationService, } from '../backend/orchestration/snapshot-reconciliation.orchestrator.js';
11
+ import { recoverStaleArchivingWorkspaces } from '../backend/orchestration/workspace-archive.orchestrator.js';
11
12
  import { reconciliationService } from '../backend/services/ratchet/index.js';
13
+ import { runScriptStateMachine } from '../backend/services/run-script/index.js';
12
14
  import { unsafeCoerce } from '../test-utils/unsafe-coerce.js';
13
15
  const handlers = vi.hoisted(() => ({
14
16
  chat: vi.fn(),
@@ -39,6 +41,9 @@ vi.mock('@/backend/orchestration/snapshot-reconciliation.orchestrator', () => ({
39
41
  stop: vi.fn(async () => undefined),
40
42
  },
41
43
  }));
44
+ vi.mock('@/backend/orchestration/workspace-archive.orchestrator', () => ({
45
+ recoverStaleArchivingWorkspaces: vi.fn(async () => ({ archived: [], failed: [] })),
46
+ }));
42
47
  vi.mock('@/backend/services/ratchet', async (importOriginal) => {
43
48
  const actual = await importOriginal();
44
49
  return {
@@ -51,6 +56,18 @@ vi.mock('@/backend/services/ratchet', async (importOriginal) => {
51
56
  },
52
57
  };
53
58
  });
59
+ vi.mock('@/backend/services/run-script', async (importOriginal) => {
60
+ const actual = await importOriginal();
61
+ return {
62
+ ...actual,
63
+ runScriptStateMachine: {
64
+ ...actual.runScriptStateMachine,
65
+ removeAllListeners: vi.fn(),
66
+ on: vi.fn(),
67
+ recoverStaleStates: vi.fn(async () => undefined),
68
+ },
69
+ };
70
+ });
54
71
  vi.mock('@/backend/interceptors', () => ({
55
72
  registerInterceptors: vi.fn(),
56
73
  startInterceptors: vi.fn(async () => undefined),
@@ -118,6 +135,7 @@ function createTestHarness(options = {}) {
118
135
  },
119
136
  sessionService: {
120
137
  stopAllClients: vi.fn(async () => undefined),
138
+ recoverStaleSessionStates: vi.fn(async () => 0),
121
139
  },
122
140
  terminalService: {
123
141
  cleanup: vi.fn(),
@@ -281,7 +299,21 @@ describe('server websocket upgrade routing', () => {
281
299
  expect(configureEventCollector).toHaveBeenCalledWith(harness.context.services);
282
300
  expect(configureSnapshotReconciliation).toHaveBeenCalledWith(harness.context.services);
283
301
  expect(reconciliationService.cleanupOrphans).toHaveBeenCalledOnce();
302
+ expect(harness.services.sessionService.recoverStaleSessionStates).toHaveBeenCalledOnce();
284
303
  expect(reconciliationService.reconcile).toHaveBeenCalledOnce();
304
+ expect(runScriptStateMachine.recoverStaleStates).toHaveBeenCalledOnce();
305
+ expect(recoverStaleArchivingWorkspaces).toHaveBeenCalledWith(harness.context.services);
306
+ const runScriptRecoveryOrder = vi.mocked(runScriptStateMachine.recoverStaleStates).mock
307
+ .invocationCallOrder[0];
308
+ const archiveRecoveryOrder = vi.mocked(recoverStaleArchivingWorkspaces).mock
309
+ .invocationCallOrder[0];
310
+ const snapshotReconciliationOrder = vi.mocked(configureSnapshotReconciliation).mock
311
+ .invocationCallOrder[0];
312
+ expect(runScriptRecoveryOrder).toBeDefined();
313
+ expect(archiveRecoveryOrder).toBeDefined();
314
+ expect(snapshotReconciliationOrder).toBeDefined();
315
+ expect(runScriptRecoveryOrder ?? 0).toBeLessThan(archiveRecoveryOrder ?? 0);
316
+ expect(archiveRecoveryOrder ?? 0).toBeLessThan(snapshotReconciliationOrder ?? 0);
285
317
  expect(startInterceptors).toHaveBeenCalledOnce();
286
318
  expect(reconciliationService.startPeriodicCleanup).toHaveBeenCalledOnce();
287
319
  expect(harness.services.rateLimiter.start).toHaveBeenCalledOnce();
@@ -300,13 +332,19 @@ describe('server websocket upgrade routing', () => {
300
332
  writeSpy.mockRestore();
301
333
  });
302
334
  it('logs startup reconciliation failures and continues starting', async () => {
335
+ const harness = createTestHarness({ requestedPortResult: 0 });
303
336
  vi.mocked(reconciliationService.cleanupOrphans).mockRejectedValueOnce(new Error('cleanup failed'));
337
+ vi.mocked(harness.services.sessionService.recoverStaleSessionStates).mockRejectedValueOnce(new Error('session recovery failed'));
304
338
  vi.mocked(reconciliationService.reconcile).mockRejectedValueOnce(new Error('reconcile failed'));
305
- const harness = createTestHarness({ requestedPortResult: 0 });
339
+ vi.mocked(runScriptStateMachine.recoverStaleStates).mockRejectedValueOnce(new Error('run script recovery failed'));
340
+ vi.mocked(recoverStaleArchivingWorkspaces).mockRejectedValueOnce(new Error('archive recovery failed'));
306
341
  const server = createTestServer(harness.context, 0);
307
342
  await expect(server.start()).resolves.toBe('http://localhost:0');
308
343
  expect(harness.logger.error).toHaveBeenCalledWith('Failed to cleanup orphan sessions on startup', expect.any(Object));
344
+ expect(harness.logger.error).toHaveBeenCalledWith('Failed to recover stale agent sessions on startup', expect.any(Object));
309
345
  expect(harness.logger.error).toHaveBeenCalledWith('Failed to reconcile workspaces on startup', expect.any(Object));
346
+ expect(harness.logger.error).toHaveBeenCalledWith('Failed to recover stale run script states on startup', expect.any(Object));
347
+ expect(harness.logger.error).toHaveBeenCalledWith('Failed to recover stale archiving workspaces on startup', expect.any(Object));
310
348
  });
311
349
  it('rejects start when http server emits an error', async () => {
312
350
  const harness = createTestHarness({ requestedPortResult: 0 });
@@ -317,6 +355,7 @@ describe('server websocket upgrade routing', () => {
317
355
  await Promise.resolve();
318
356
  httpServer.emit('error', new Error('listen failed'));
319
357
  await expect(startPromise).rejects.toThrow('listen failed');
358
+ expect(configureSnapshotReconciliation).not.toHaveBeenCalled();
320
359
  });
321
360
  it('runs cleanup fan-out when server stops', async () => {
322
361
  const harness = createTestHarness();