factory-factory 0.4.4 → 0.4.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.
Files changed (541) hide show
  1. package/dist/client/assets/{abnfDiagram-VRR7QNED-CtUj9J56.js → abnfDiagram-N423BO3Z-BcUuFtOj.js} +1 -1
  2. package/dist/client/assets/{arc-2QeawLbF.js → arc-Cp8_E6ha.js} +1 -1
  3. package/dist/client/assets/architectureDiagram-T3A2C74G-C3_2J0tC.js +36 -0
  4. package/dist/client/assets/{blockDiagram-677ZJIJ3-BN6MDejN.js → blockDiagram-VBNYF7ZC-Dy0jc6lP.js} +1 -1
  5. package/dist/client/assets/{c4Diagram-LMCZKHZV-ZxcmUt9u.js → c4Diagram-5PPSVZJV-97TkD6w-.js} +1 -1
  6. package/dist/client/assets/channel-DLBBfejH.js +1 -0
  7. package/dist/client/assets/{chunk-32BRIVSS-BXA35oY0.js → chunk-2GRJ4B5K-Dc0I7ume.js} +1 -1
  8. package/dist/client/assets/{chunk-2Q5K7J3B-CyvdNBvs.js → chunk-2Q5K7J3B-DbFPWZwu.js} +1 -1
  9. package/dist/client/assets/{chunk-EX3LRPZG-BRYEhwoK.js → chunk-5RXB4S5H-Dci_7ZDD.js} +1 -1
  10. package/dist/client/assets/{chunk-5VM5RSS4-6lY9D3Us.js → chunk-5VM5RSS4-Ca82Rzl0.js} +1 -1
  11. package/dist/client/assets/{chunk-MOJQB5TN-MIX8YUEz.js → chunk-6Q2QTUOP-Be2f5Q2t.js} +1 -1
  12. package/dist/client/assets/{chunk-V7JOEXUC-DpMacC1A.js → chunk-GF5L2VYU-C4VRs6xS.js} +1 -1
  13. package/dist/client/assets/{chunk-JWPE2WC7-DBeDDTf3.js → chunk-JWPE2WC7-DVlW0c7f.js} +1 -1
  14. package/dist/client/assets/{chunk-VR4S4FIN-Bd6MGh78.js → chunk-KBJHAD2P-BKRpW89b.js} +1 -1
  15. package/dist/client/assets/{chunk-RYQCIY6F-CT_f1sbt.js → chunk-RYQCIY6F-BwMw9oh9.js} +1 -1
  16. package/dist/client/assets/{chunk-XXDRQBXY-BYg-oILv.js → chunk-XXDRQBXY-py-FQquv.js} +1 -1
  17. package/dist/client/assets/classDiagram-JCYQIIEL-Ds5wVQR3.js +1 -0
  18. package/dist/client/assets/classDiagram-v2-OCEON4UE-Ds5wVQR3.js +1 -0
  19. package/dist/client/assets/{cose-bilkent-JH36ORCC-BGhjYi6z.js → cose-bilkent-JH36ORCC-BMCtQCZ8.js} +1 -1
  20. package/dist/client/assets/{cynefin-VYW2F7L2-BouObN4T.js → cynefin-VYW2F7L2-BTHAy6wD.js} +1 -1
  21. package/dist/client/assets/{cynefinDiagram-TSTJHNR4-DrbscNyk.js → cynefinDiagram-MW4NZA55-pQCQD0Ih.js} +1 -1
  22. package/dist/client/assets/{dagre-VKFMJZFB-CpHBhtab.js → dagre-VZM6K2ZE-CZcoEFVf.js} +1 -1
  23. package/dist/client/assets/{diagram-OA4YK3LP-C6Jnb8nm.js → diagram-7IWD3JNH-DgQv_208.js} +1 -1
  24. package/dist/client/assets/{diagram-FQU43EPY-C_pXymmj.js → diagram-B4RE2ZJO-DoFotcsB.js} +1 -1
  25. package/dist/client/assets/{diagram-NH7WQ7WH-DWHcerSm.js → diagram-LBJQPF4R-C5zkL1ml.js} +1 -1
  26. package/dist/client/assets/{diagram-G47NLZAW-DNPz9Qrh.js → diagram-Q27KOJAE-ERKqnoHP.js} +1 -1
  27. package/dist/client/assets/diagram-UB23O5K3-Dyt6sy3Z.js +41 -0
  28. package/dist/client/assets/{ebnfDiagram-CCIWWBDH-_Wt4C-Lm.js → ebnfDiagram-BXEA7PRR-DqsFEAw2.js} +1 -1
  29. package/dist/client/assets/{erDiagram-Q63AITRT-D9F9IIZ7.js → erDiagram-JOGREHBK-Dn8Aqkgn.js} +1 -1
  30. package/dist/client/assets/{flowDiagram-23GEKE2U-BzTUtnLY.js → flowDiagram-UKHOOZJN-DcArGyH-.js} +6 -6
  31. package/dist/client/assets/{ganttDiagram-NO4QXBWP-lmFnKYE5.js → ganttDiagram-PKOTCBZU-BuHaeolc.js} +1 -1
  32. package/dist/client/assets/{gitGraphDiagram-IHSO6WYX-DiIQa_m6.js → gitGraphDiagram-DS77QQ5N-iKWWNsQK.js} +1 -1
  33. package/dist/client/assets/index-CVVo6xHd.css +1 -0
  34. package/dist/client/assets/index-DY0TryY7.js +695 -0
  35. package/dist/client/assets/{infoDiagram-FWYZ7A6U-BXtmiN5g.js → infoDiagram-6WML65LV-C7IulVvo.js} +1 -1
  36. package/dist/client/assets/{ishikawaDiagram-FXEZZL3T-Ce8fzasD.js → ishikawaDiagram-WSZJBQD7-DW4cB_Nk.js} +1 -1
  37. package/dist/client/assets/{journeyDiagram-5HDEW3XC-CAhJE-OU.js → journeyDiagram-NVQOT4AX-Nzsiy4H7.js} +1 -1
  38. package/dist/client/assets/{kanban-definition-HUTT4EX6-B8br5xew.js → kanban-definition-27J2QSJJ-BUsK9dj9.js} +1 -1
  39. package/dist/client/assets/{linear-BPVVEns_.js → linear-CyoW-usj.js} +1 -1
  40. package/dist/client/assets/{mindmap-definition-LN4V7U3C-lX6h9H-N.js → mindmap-definition-FAOFIHXS-Bd9cSJjQ.js} +1 -1
  41. package/dist/client/assets/{mobile-baseline-C45NSkzw.js → mobile-baseline-K78aE4nt.js} +1 -1
  42. package/dist/client/assets/{pegDiagram-2B236MQR-CiFWwnk4.js → pegDiagram-VL7TDLO6-BrmAKdiE.js} +1 -1
  43. package/dist/client/assets/{pieDiagram-ENE6RG2P-CvkwWtzQ.js → pieDiagram-7S7Q4E2Y-Ce0k6LI1.js} +1 -1
  44. package/dist/client/assets/{quadrantDiagram-ABIIQ3AL-B40anMyK.js → quadrantDiagram-CIZ2JOQS-_9HxOOGa.js} +1 -1
  45. package/dist/client/assets/{railroadDiagram-RFXS5EU6-WVYsdkDC.js → railroadDiagram-AXF67PYL-ChdF1CBw.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-TGXJPOKE-DBTIsXpA.js → requirementDiagram-LRYGKXZP-Bm2gdYTE.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-HTMAVEWB-Dx8y47pZ.js → sankeyDiagram-W5VNT64P-Kf7zUiC-.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-DBY2YBRQ-C6ZZMZJm.js → sequenceDiagram-SI44F4Z6-DyPqsgh1.js} +1 -1
  49. package/dist/client/assets/{sizeCapture-X5ZJPWSS-DLy8loNR.js → sizeCapture-X5ZJPWSS-Cgn8Hxr2.js} +1 -1
  50. package/dist/client/assets/{stateDiagram-2N3HPSRC-RoTcqZkX.js → stateDiagram-OKZ733FA-CJxSzxmg.js} +1 -1
  51. package/dist/client/assets/stateDiagram-v2-UEYNNEHI-BwUaUW2J.js +1 -0
  52. package/dist/client/assets/{swimlanes-5IMT3BWC-CFmoSHiT.js → swimlanes-SLNWSIFB-Ckb_izEZ.js} +2 -2
  53. package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-D87lLmuW.js +8 -0
  54. package/dist/client/assets/{terminal-instance-Br0jXsXE.js → terminal-instance-DWySt2_t.js} +1 -1
  55. package/dist/client/assets/{timeline-definition-FHXFAJF6-Bh5XA09y.js → timeline-definition-Z64GVDOM-BWx_NLrK.js} +1 -1
  56. package/dist/client/assets/{vennDiagram-L72KCM5P-BC754zGO.js → vennDiagram-T6HMQDX7-BgN2-lO-.js} +1 -1
  57. package/dist/client/assets/{wardleyDiagram-EHGQE667-xJdUzWCg.js → wardleyDiagram-T6FBY63Y-C9iwoeki.js} +1 -1
  58. package/dist/client/assets/{xychartDiagram-FW5EYKEG-wxQH1S7i.js → xychartDiagram-ELKLHX3M-B3AYy5ZN.js} +4 -4
  59. package/dist/client/audio-worklets/pcm-capture-processor.js +67 -0
  60. package/dist/client/index.html +2 -2
  61. package/dist/client/sounds/voice-thinking-start.mp3 +0 -0
  62. package/dist/prisma/generated/browser.d.ts +1 -0
  63. package/dist/prisma/generated/browser.d.ts.map +1 -1
  64. package/dist/prisma/generated/client.d.ts +1 -0
  65. package/dist/prisma/generated/client.d.ts.map +1 -1
  66. package/dist/prisma/generated/commonInputTypes.d.ts +100 -0
  67. package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
  68. package/dist/prisma/generated/enums.d.ts +16 -0
  69. package/dist/prisma/generated/enums.d.ts.map +1 -1
  70. package/dist/prisma/generated/enums.js +14 -0
  71. package/dist/prisma/generated/enums.js.map +1 -1
  72. package/dist/prisma/generated/internal/class.d.ts +3 -0
  73. package/dist/prisma/generated/internal/class.d.ts.map +1 -1
  74. package/dist/prisma/generated/internal/class.js +4 -4
  75. package/dist/prisma/generated/internal/class.js.map +1 -1
  76. package/dist/prisma/generated/internal/prismaNamespace.d.ts +97 -2
  77. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  78. package/dist/prisma/generated/internal/prismaNamespace.js +17 -0
  79. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  80. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +18 -0
  81. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  82. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +17 -0
  83. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  84. package/dist/prisma/generated/models/SessionLifecycleEvent.d.ts +657 -0
  85. package/dist/prisma/generated/models/SessionLifecycleEvent.d.ts.map +1 -0
  86. package/dist/prisma/generated/models/SessionLifecycleEvent.js +2 -0
  87. package/dist/prisma/generated/models/SessionLifecycleEvent.js.map +1 -0
  88. package/dist/prisma/generated/models/UserSettings.d.ts +216 -1
  89. package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
  90. package/dist/prisma/generated/models/Workspace.d.ts +264 -0
  91. package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
  92. package/dist/prisma/generated/models.d.ts +1 -0
  93. package/dist/prisma/generated/models.d.ts.map +1 -1
  94. package/dist/src/backend/app-context.d.ts +4 -1
  95. package/dist/src/backend/app-context.d.ts.map +1 -1
  96. package/dist/src/backend/app-context.js +6 -2
  97. package/dist/src/backend/app-context.js.map +1 -1
  98. package/dist/src/backend/interceptors/branch-naming.interceptor.d.ts.map +1 -1
  99. package/dist/src/backend/interceptors/branch-naming.interceptor.js +0 -4
  100. package/dist/src/backend/interceptors/branch-naming.interceptor.js.map +1 -1
  101. package/dist/src/backend/interceptors/branch-naming.interceptor.test.js +26 -0
  102. package/dist/src/backend/interceptors/branch-naming.interceptor.test.js.map +1 -1
  103. package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
  104. package/dist/src/backend/orchestration/data-backup.service.js +10 -0
  105. package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
  106. package/dist/src/backend/orchestration/data-backup.service.test.js +23 -0
  107. package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
  108. package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts +2 -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 +6 -6
  111. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
  112. package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +18 -8
  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.map +1 -1
  115. package/dist/src/backend/orchestration/event-collector.orchestrator.js +3 -1
  116. package/dist/src/backend/orchestration/event-collector.orchestrator.js.map +1 -1
  117. package/dist/src/backend/orchestration/event-collector.orchestrator.test.js +3 -1
  118. package/dist/src/backend/orchestration/event-collector.orchestrator.test.js.map +1 -1
  119. package/dist/src/backend/orchestration/reconciliation.service.d.ts +11 -8
  120. package/dist/src/backend/orchestration/reconciliation.service.d.ts.map +1 -1
  121. package/dist/src/backend/orchestration/reconciliation.service.js +45 -33
  122. package/dist/src/backend/orchestration/reconciliation.service.js.map +1 -1
  123. package/dist/src/backend/orchestration/reconciliation.service.test.js +48 -42
  124. package/dist/src/backend/orchestration/reconciliation.service.test.js.map +1 -1
  125. package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +4 -1
  126. package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
  127. package/dist/src/backend/orchestration/workspace-archive.orchestrator.js +4 -1
  128. package/dist/src/backend/orchestration/workspace-archive.orchestrator.js.map +1 -1
  129. package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js +15 -2
  130. package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js.map +1 -1
  131. package/dist/src/backend/orchestration/workspace-init-issue-prompts.d.ts.map +1 -1
  132. package/dist/src/backend/orchestration/workspace-init-issue-prompts.js +3 -1
  133. package/dist/src/backend/orchestration/workspace-init-issue-prompts.js.map +1 -1
  134. package/dist/src/backend/orchestration/workspace-init-issue-prompts.test.d.ts +2 -0
  135. package/dist/src/backend/orchestration/workspace-init-issue-prompts.test.d.ts.map +1 -0
  136. package/dist/src/backend/orchestration/workspace-init-issue-prompts.test.js +75 -0
  137. package/dist/src/backend/orchestration/workspace-init-issue-prompts.test.js.map +1 -0
  138. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts +7 -4
  139. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
  140. package/dist/src/backend/orchestration/workspace-init.orchestrator.js +36 -1
  141. package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
  142. package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js +117 -8
  143. package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js.map +1 -1
  144. package/dist/src/backend/routers/websocket/index.d.ts +1 -0
  145. package/dist/src/backend/routers/websocket/index.d.ts.map +1 -1
  146. package/dist/src/backend/routers/websocket/index.js +1 -0
  147. package/dist/src/backend/routers/websocket/index.js.map +1 -1
  148. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.d.ts +11 -0
  149. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.d.ts.map +1 -0
  150. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.js +28 -0
  151. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.js.map +1 -0
  152. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.test.d.ts +2 -0
  153. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.test.d.ts.map +1 -0
  154. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.test.js +84 -0
  155. package/dist/src/backend/routers/websocket/voice-soft-stop.handler.test.js.map +1 -0
  156. package/dist/src/backend/routers/websocket/voice.handler.d.ts +3 -0
  157. package/dist/src/backend/routers/websocket/voice.handler.d.ts.map +1 -0
  158. package/dist/src/backend/routers/websocket/voice.handler.js +46 -0
  159. package/dist/src/backend/routers/websocket/voice.handler.js.map +1 -0
  160. package/dist/src/backend/server.d.ts.map +1 -1
  161. package/dist/src/backend/server.js +3 -1
  162. package/dist/src/backend/server.js.map +1 -1
  163. package/dist/src/backend/server.upgrade.test.js +16 -0
  164. package/dist/src/backend/server.upgrade.test.js.map +1 -1
  165. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -1
  166. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +27 -6
  167. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -1
  168. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js +7 -0
  169. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js.map +1 -1
  170. package/dist/src/backend/services/port.service.d.ts.map +1 -1
  171. package/dist/src/backend/services/port.service.js +4 -0
  172. package/dist/src/backend/services/port.service.js.map +1 -1
  173. package/dist/src/backend/services/port.service.test.js +8 -0
  174. package/dist/src/backend/services/port.service.test.js.map +1 -1
  175. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +6 -0
  176. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +1 -1
  177. package/dist/src/backend/services/registry.d.ts +2 -2
  178. package/dist/src/backend/services/registry.d.ts.map +1 -1
  179. package/dist/src/backend/services/registry.js +2 -1
  180. package/dist/src/backend/services/registry.js.map +1 -1
  181. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.d.ts +23 -0
  182. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.d.ts.map +1 -0
  183. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.js +23 -0
  184. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.js.map +1 -0
  185. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.test.d.ts +2 -0
  186. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.test.d.ts.map +1 -0
  187. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.test.js +62 -0
  188. package/dist/src/backend/services/session/resources/session-lifecycle-event.accessor.test.js.map +1 -0
  189. package/dist/src/backend/services/session/service/acp/acp-client-handler.d.ts +1 -0
  190. package/dist/src/backend/services/session/service/acp/acp-client-handler.d.ts.map +1 -1
  191. package/dist/src/backend/services/session/service/acp/acp-client-handler.js +30 -0
  192. package/dist/src/backend/services/session/service/acp/acp-client-handler.js.map +1 -1
  193. package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js +57 -0
  194. package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js.map +1 -1
  195. package/dist/src/backend/services/session/service/acp/acp-event-translator.d.ts +1 -37
  196. package/dist/src/backend/services/session/service/acp/acp-event-translator.d.ts.map +1 -1
  197. package/dist/src/backend/services/session/service/acp/acp-event-translator.js +1 -334
  198. package/dist/src/backend/services/session/service/acp/acp-event-translator.js.map +1 -1
  199. package/dist/src/backend/services/session/service/acp/acp-event-translator.test.js +5 -484
  200. package/dist/src/backend/services/session/service/acp/acp-event-translator.test.js.map +1 -1
  201. package/dist/src/backend/services/session/service/acp/acp-process-handle.d.ts +2 -0
  202. package/dist/src/backend/services/session/service/acp/acp-process-handle.d.ts.map +1 -1
  203. package/dist/src/backend/services/session/service/acp/acp-process-handle.js +12 -0
  204. package/dist/src/backend/services/session/service/acp/acp-process-handle.js.map +1 -1
  205. package/dist/src/backend/services/session/service/acp/acp-process-handle.test.d.ts +2 -0
  206. package/dist/src/backend/services/session/service/acp/acp-process-handle.test.d.ts.map +1 -0
  207. package/dist/src/backend/services/session/service/acp/acp-process-handle.test.js +66 -0
  208. package/dist/src/backend/services/session/service/acp/acp-process-handle.test.js.map +1 -0
  209. package/dist/src/backend/services/session/service/acp/acp-runtime-events.d.ts +7 -1
  210. package/dist/src/backend/services/session/service/acp/acp-runtime-events.d.ts.map +1 -1
  211. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts +21 -2
  212. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
  213. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +254 -61
  214. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
  215. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js +353 -22
  216. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js.map +1 -1
  217. package/dist/src/backend/services/session/service/acp/acp-session-config-options.d.ts +1 -0
  218. package/dist/src/backend/services/session/service/acp/acp-session-config-options.d.ts.map +1 -1
  219. package/dist/src/backend/services/session/service/acp/acp-session-config-options.js +4 -17
  220. package/dist/src/backend/services/session/service/acp/acp-session-config-options.js.map +1 -1
  221. package/dist/src/backend/services/session/service/acp/acp-session-config-options.test.d.ts +2 -0
  222. package/dist/src/backend/services/session/service/acp/acp-session-config-options.test.d.ts.map +1 -0
  223. package/dist/src/backend/services/session/service/acp/acp-session-config-options.test.js +121 -0
  224. package/dist/src/backend/services/session/service/acp/acp-session-config-options.test.js.map +1 -0
  225. package/dist/src/backend/services/session/service/acp/acp-session-negotiation.integration.test.js +1 -1
  226. package/dist/src/backend/services/session/service/acp/acp-session-negotiation.integration.test.js.map +1 -1
  227. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.d.ts +7 -0
  228. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.d.ts.map +1 -0
  229. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.js +160 -0
  230. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.js.map +1 -0
  231. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.test.d.ts +2 -0
  232. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.test.d.ts.map +1 -0
  233. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.test.js +260 -0
  234. package/dist/src/backend/services/session/service/acp/claude-model-catalog-loader.test.js.map +1 -0
  235. package/dist/src/backend/services/session/service/acp/claude-model-options.d.ts +5 -0
  236. package/dist/src/backend/services/session/service/acp/claude-model-options.d.ts.map +1 -0
  237. package/dist/src/backend/services/session/service/acp/claude-model-options.js +25 -0
  238. package/dist/src/backend/services/session/service/acp/claude-model-options.js.map +1 -0
  239. package/dist/src/backend/services/session/service/acp/claude-model-options.test.d.ts +2 -0
  240. package/dist/src/backend/services/session/service/acp/claude-model-options.test.d.ts.map +1 -0
  241. package/dist/src/backend/services/session/service/acp/claude-model-options.test.js +49 -0
  242. package/dist/src/backend/services/session/service/acp/claude-model-options.test.js.map +1 -0
  243. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adapter-state.d.ts +2 -0
  244. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adapter-state.d.ts.map +1 -1
  245. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts +2 -0
  246. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
  247. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +64 -1
  248. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
  249. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.manual.integration.test.js +169 -0
  250. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.manual.integration.test.js.map +1 -1
  251. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js +251 -0
  252. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js.map +1 -1
  253. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.d.ts +38 -0
  254. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.d.ts.map +1 -0
  255. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.js +287 -0
  256. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.js.map +1 -0
  257. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.test.d.ts +2 -0
  258. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.test.d.ts.map +1 -0
  259. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.test.js +648 -0
  260. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-controller.test.js.map +1 -0
  261. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.d.ts +12 -0
  262. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.d.ts.map +1 -0
  263. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.js +51 -0
  264. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.js.map +1 -0
  265. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.test.d.ts +2 -0
  266. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.test.d.ts.map +1 -0
  267. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.test.js +85 -0
  268. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-subagent-mapper.test.js.map +1 -0
  269. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.d.ts +154 -19
  270. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.d.ts.map +1 -1
  271. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.js +73 -4
  272. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.js.map +1 -1
  273. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.test.js +86 -1
  274. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-zod.test.js.map +1 -1
  275. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.d.ts +7 -0
  276. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.d.ts.map +1 -1
  277. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.js +85 -16
  278. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.js.map +1 -1
  279. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.test.js +356 -0
  280. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.test.js.map +1 -1
  281. package/dist/src/backend/services/session/service/acp/index.d.ts +2 -1
  282. package/dist/src/backend/services/session/service/acp/index.d.ts.map +1 -1
  283. package/dist/src/backend/services/session/service/acp/index.js +1 -0
  284. package/dist/src/backend/services/session/service/acp/index.js.map +1 -1
  285. package/dist/src/backend/services/session/service/acp/types.d.ts +1 -0
  286. package/dist/src/backend/services/session/service/acp/types.d.ts.map +1 -1
  287. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.d.ts +3 -0
  288. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.d.ts.map +1 -1
  289. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.js +44 -2
  290. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.js.map +1 -1
  291. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.test.d.ts +2 -0
  292. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.test.d.ts.map +1 -0
  293. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.test.js +108 -0
  294. package/dist/src/backend/services/session/service/chat/chat-event-forwarder.service.test.js.map +1 -0
  295. package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.test.js +21 -0
  296. package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.test.js.map +1 -1
  297. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.d.ts.map +1 -1
  298. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.js +3 -279
  299. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.js.map +1 -1
  300. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.test.js +154 -7
  301. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.test.js.map +1 -1
  302. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.d.ts.map +1 -1
  303. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.js +4 -0
  304. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.js.map +1 -1
  305. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.test.js +24 -0
  306. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.test.js.map +1 -1
  307. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.js +1 -1
  308. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.js.map +1 -1
  309. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js +1 -1
  310. package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js.map +1 -1
  311. package/dist/src/backend/services/session/service/chat/chat-message-handlers/image-format-validation.js +1 -1
  312. package/dist/src/backend/services/session/service/chat/chat-message-handlers/image-format-validation.js.map +1 -1
  313. package/dist/src/backend/services/session/service/chat/chat-message-handlers/utils.d.ts.map +1 -1
  314. package/dist/src/backend/services/session/service/chat/chat-message-handlers/utils.js +1 -0
  315. package/dist/src/backend/services/session/service/chat/chat-message-handlers/utils.js.map +1 -1
  316. package/dist/src/backend/services/session/service/chat/chat-message-handlers/utils.test.js +17 -0
  317. package/dist/src/backend/services/session/service/chat/chat-message-handlers/utils.test.js.map +1 -1
  318. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts +2 -0
  319. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts.map +1 -1
  320. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +41 -9
  321. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js.map +1 -1
  322. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js +180 -2
  323. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js.map +1 -1
  324. package/dist/src/backend/services/session/service/data/session-provider-resolver.service.test.js +6 -0
  325. package/dist/src/backend/services/session/service/data/session-provider-resolver.service.test.js.map +1 -1
  326. package/dist/src/backend/services/session/service/index.d.ts +5 -4
  327. package/dist/src/backend/services/session/service/index.d.ts.map +1 -1
  328. package/dist/src/backend/services/session/service/index.js +4 -3
  329. package/dist/src/backend/services/session/service/index.js.map +1 -1
  330. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.d.ts +6 -1
  331. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.d.ts.map +1 -1
  332. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.js +59 -30
  333. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.js.map +1 -1
  334. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.subagents.test.d.ts +2 -0
  335. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.subagents.test.d.ts.map +1 -0
  336. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.subagents.test.js +70 -0
  337. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.subagents.test.js.map +1 -0
  338. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.text-streaming.test.js +28 -0
  339. package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.text-streaming.test.js.map +1 -1
  340. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.d.ts +26 -0
  341. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.d.ts.map +1 -0
  342. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.js +84 -0
  343. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.js.map +1 -0
  344. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.test.d.ts +2 -0
  345. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.test.d.ts.map +1 -0
  346. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.test.js +283 -0
  347. package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-event.service.test.js.map +1 -0
  348. package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.d.ts +10 -0
  349. package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.d.ts.map +1 -0
  350. package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.js +299 -0
  351. package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.js.map +1 -0
  352. package/dist/src/backend/services/session/service/lifecycle/session-services.d.ts +2 -0
  353. package/dist/src/backend/services/session/service/lifecycle/session-services.d.ts.map +1 -1
  354. package/dist/src/backend/services/session/service/lifecycle/session-services.js +11 -0
  355. package/dist/src/backend/services/session/service/lifecycle/session-services.js.map +1 -1
  356. package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts +1 -0
  357. package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts.map +1 -1
  358. package/dist/src/backend/services/session/service/lifecycle/session.config.service.js +25 -4
  359. package/dist/src/backend/services/session/service/lifecycle/session.config.service.js.map +1 -1
  360. package/dist/src/backend/services/session/service/lifecycle/session.config.service.test.js +100 -5
  361. package/dist/src/backend/services/session/service/lifecycle/session.config.service.test.js.map +1 -1
  362. package/dist/src/backend/services/session/service/lifecycle/session.error-message.d.ts +2 -0
  363. package/dist/src/backend/services/session/service/lifecycle/session.error-message.d.ts.map +1 -1
  364. package/dist/src/backend/services/session/service/lifecycle/session.error-message.js +21 -0
  365. package/dist/src/backend/services/session/service/lifecycle/session.error-message.js.map +1 -1
  366. package/dist/src/backend/services/session/service/lifecycle/session.error-message.test.js +26 -1
  367. package/dist/src/backend/services/session/service/lifecycle/session.error-message.test.js.map +1 -1
  368. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +35 -2
  369. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts.map +1 -1
  370. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js +427 -156
  371. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js.map +1 -1
  372. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.test.js +684 -15
  373. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.test.js.map +1 -1
  374. package/dist/src/backend/services/session/service/lifecycle/session.prompt.service.test.js +206 -5
  375. package/dist/src/backend/services/session/service/lifecycle/session.prompt.service.test.js.map +1 -1
  376. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts +15 -2
  377. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts.map +1 -1
  378. package/dist/src/backend/services/session/service/lifecycle/session.service.js +87 -14
  379. package/dist/src/backend/services/session/service/lifecycle/session.service.js.map +1 -1
  380. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +46 -7
  381. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
  382. package/dist/src/backend/services/session/service/session-domain.service.d.ts +1 -0
  383. package/dist/src/backend/services/session/service/session-domain.service.d.ts.map +1 -1
  384. package/dist/src/backend/services/session/service/session-domain.service.js +10 -0
  385. package/dist/src/backend/services/session/service/session-domain.service.js.map +1 -1
  386. package/dist/src/backend/services/session/service/session-domain.service.test.js +58 -0
  387. package/dist/src/backend/services/session/service/session-domain.service.test.js.map +1 -1
  388. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.d.ts +6 -0
  389. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.d.ts.map +1 -0
  390. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.js +114 -0
  391. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.js.map +1 -0
  392. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.test.d.ts +2 -0
  393. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.test.d.ts.map +1 -0
  394. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.test.js +129 -0
  395. package/dist/src/backend/services/session/service/store/session-lifecycle-transcript.test.js.map +1 -0
  396. package/dist/src/backend/services/session/service/store/session-store.types.d.ts +1 -1
  397. package/dist/src/backend/services/session/service/store/session-store.types.d.ts.map +1 -1
  398. package/dist/src/backend/services/session/service/store/session-transcript.d.ts.map +1 -1
  399. package/dist/src/backend/services/session/service/store/session-transcript.js +7 -4
  400. package/dist/src/backend/services/session/service/store/session-transcript.js.map +1 -1
  401. package/dist/src/backend/services/session/service/voice/voice-mode-instructions.d.ts +2 -0
  402. package/dist/src/backend/services/session/service/voice/voice-mode-instructions.d.ts.map +1 -0
  403. package/dist/src/backend/services/session/service/voice/voice-mode-instructions.js +5 -0
  404. package/dist/src/backend/services/session/service/voice/voice-mode-instructions.js.map +1 -0
  405. package/dist/src/backend/services/session/service/voice/voice-narration.service.d.ts +28 -0
  406. package/dist/src/backend/services/session/service/voice/voice-narration.service.d.ts.map +1 -0
  407. package/dist/src/backend/services/session/service/voice/voice-narration.service.js +431 -0
  408. package/dist/src/backend/services/session/service/voice/voice-narration.service.js.map +1 -0
  409. package/dist/src/backend/services/session/service/voice/voice-narration.service.test.d.ts +2 -0
  410. package/dist/src/backend/services/session/service/voice/voice-narration.service.test.d.ts.map +1 -0
  411. package/dist/src/backend/services/session/service/voice/voice-narration.service.test.js +536 -0
  412. package/dist/src/backend/services/session/service/voice/voice-narration.service.test.js.map +1 -0
  413. package/dist/src/backend/services/settings/resources/user-settings.accessor.d.ts +6 -0
  414. package/dist/src/backend/services/settings/resources/user-settings.accessor.d.ts.map +1 -1
  415. package/dist/src/backend/services/settings/resources/user-settings.accessor.js +46 -17
  416. package/dist/src/backend/services/settings/resources/user-settings.accessor.js.map +1 -1
  417. package/dist/src/backend/services/settings/service/user-settings.service.d.ts +6 -0
  418. package/dist/src/backend/services/settings/service/user-settings.service.d.ts.map +1 -1
  419. package/dist/src/backend/services/settings/service/user-settings.service.js.map +1 -1
  420. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.d.ts.map +1 -1
  421. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.js +1 -0
  422. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.js.map +1 -1
  423. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +24 -0
  424. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js.map +1 -1
  425. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.d.ts +1 -0
  426. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.d.ts.map +1 -1
  427. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.js +23 -12
  428. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.js.map +1 -1
  429. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.test.js +59 -4
  430. package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.test.js.map +1 -1
  431. package/dist/src/backend/trpc/admin.trpc.d.ts +10 -0
  432. package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
  433. package/dist/src/backend/trpc/index.d.ts +631 -4
  434. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  435. package/dist/src/backend/trpc/index.js +2 -0
  436. package/dist/src/backend/trpc/index.js.map +1 -1
  437. package/dist/src/backend/trpc/project.router.test.js +19 -0
  438. package/dist/src/backend/trpc/project.router.test.js.map +1 -1
  439. package/dist/src/backend/trpc/project.trpc.js +1 -1
  440. package/dist/src/backend/trpc/project.trpc.js.map +1 -1
  441. package/dist/src/backend/trpc/session.router.test.js +204 -2
  442. package/dist/src/backend/trpc/session.router.test.js.map +1 -1
  443. package/dist/src/backend/trpc/session.trpc.d.ts +539 -0
  444. package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
  445. package/dist/src/backend/trpc/session.trpc.js +57 -0
  446. package/dist/src/backend/trpc/session.trpc.js.map +1 -1
  447. package/dist/src/backend/trpc/user-settings.router.test.js +117 -6
  448. package/dist/src/backend/trpc/user-settings.router.test.js.map +1 -1
  449. package/dist/src/backend/trpc/user-settings.trpc.d.ts +16 -4
  450. package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
  451. package/dist/src/backend/trpc/user-settings.trpc.js +25 -2
  452. package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
  453. package/dist/src/backend/trpc/voice.trpc.d.ts +67 -0
  454. package/dist/src/backend/trpc/voice.trpc.d.ts.map +1 -0
  455. package/dist/src/backend/trpc/voice.trpc.js +156 -0
  456. package/dist/src/backend/trpc/voice.trpc.js.map +1 -0
  457. package/dist/src/backend/trpc/voice.trpc.test.d.ts +2 -0
  458. package/dist/src/backend/trpc/voice.trpc.test.d.ts.map +1 -0
  459. package/dist/src/backend/trpc/voice.trpc.test.js +259 -0
  460. package/dist/src/backend/trpc/voice.trpc.test.js.map +1 -0
  461. package/dist/src/cli/runtime-utils.d.ts.map +1 -1
  462. package/dist/src/cli/runtime-utils.js +4 -0
  463. package/dist/src/cli/runtime-utils.js.map +1 -1
  464. package/dist/src/cli/runtime-utils.test.js +7 -0
  465. package/dist/src/cli/runtime-utils.test.js.map +1 -1
  466. package/dist/src/shared/acp-protocol/index.d.ts +2 -0
  467. package/dist/src/shared/acp-protocol/index.d.ts.map +1 -1
  468. package/dist/src/shared/acp-protocol/index.js +2 -0
  469. package/dist/src/shared/acp-protocol/index.js.map +1 -1
  470. package/dist/src/shared/acp-protocol/protocol/messages.d.ts +18 -2
  471. package/dist/src/shared/acp-protocol/protocol/messages.d.ts.map +1 -1
  472. package/dist/src/shared/acp-protocol/protocol/messages.js +1 -0
  473. package/dist/src/shared/acp-protocol/protocol/messages.js.map +1 -1
  474. package/dist/src/shared/acp-protocol/protocol/queued.d.ts +1 -0
  475. package/dist/src/shared/acp-protocol/protocol/queued.d.ts.map +1 -1
  476. package/dist/src/shared/acp-protocol/protocol/renderer-window.d.ts.map +1 -1
  477. package/dist/src/shared/acp-protocol/protocol/renderer-window.js +3 -0
  478. package/dist/src/shared/acp-protocol/protocol/renderer-window.js.map +1 -1
  479. package/dist/src/shared/acp-protocol/protocol/websocket.d.ts +7 -0
  480. package/dist/src/shared/acp-protocol/protocol/websocket.d.ts.map +1 -1
  481. package/dist/src/shared/acp-protocol/protocol/websocket.js +1 -0
  482. package/dist/src/shared/acp-protocol/protocol/websocket.js.map +1 -1
  483. package/dist/src/shared/acp-protocol/session-update-translator.d.ts +39 -0
  484. package/dist/src/shared/acp-protocol/session-update-translator.d.ts.map +1 -0
  485. package/dist/src/shared/acp-protocol/session-update-translator.js +356 -0
  486. package/dist/src/shared/acp-protocol/session-update-translator.js.map +1 -0
  487. package/dist/src/shared/acp-protocol/subagents.d.ts +1175 -0
  488. package/dist/src/shared/acp-protocol/subagents.d.ts.map +1 -0
  489. package/dist/src/shared/acp-protocol/subagents.js +259 -0
  490. package/dist/src/shared/acp-protocol/subagents.js.map +1 -0
  491. package/dist/src/shared/core/enums.d.ts +16 -0
  492. package/dist/src/shared/core/enums.d.ts.map +1 -1
  493. package/dist/src/shared/core/enums.js +14 -0
  494. package/dist/src/shared/core/enums.js.map +1 -1
  495. package/dist/src/shared/core/index.d.ts +1 -1
  496. package/dist/src/shared/core/index.d.ts.map +1 -1
  497. package/dist/src/shared/core/index.js +1 -1
  498. package/dist/src/shared/core/index.js.map +1 -1
  499. package/dist/src/shared/deepgram-voices.d.ts +12 -0
  500. package/dist/src/shared/deepgram-voices.d.ts.map +1 -0
  501. package/dist/src/shared/deepgram-voices.js +51 -0
  502. package/dist/src/shared/deepgram-voices.js.map +1 -0
  503. package/dist/src/shared/issue-start-prompt.d.ts.map +1 -1
  504. package/dist/src/shared/issue-start-prompt.js +8 -3
  505. package/dist/src/shared/issue-start-prompt.js.map +1 -1
  506. package/dist/src/shared/schemas/export-data.schema.d.ts +10 -0
  507. package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
  508. package/dist/src/shared/schemas/export-data.schema.js +19 -0
  509. package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
  510. package/dist/src/shared/voice-vad.d.ts +11 -0
  511. package/dist/src/shared/voice-vad.d.ts.map +1 -0
  512. package/dist/src/shared/voice-vad.js +19 -0
  513. package/dist/src/shared/voice-vad.js.map +1 -0
  514. package/dist/src/shared/websocket/chat-message.schema.d.ts +1 -0
  515. package/dist/src/shared/websocket/chat-message.schema.d.ts.map +1 -1
  516. package/dist/src/shared/websocket/chat-message.schema.js +1 -0
  517. package/dist/src/shared/websocket/chat-message.schema.js.map +1 -1
  518. package/dist/src/shared/websocket/voice-message.schema.d.ts +25 -0
  519. package/dist/src/shared/websocket/voice-message.schema.d.ts.map +1 -0
  520. package/dist/src/shared/websocket/voice-message.schema.js +14 -0
  521. package/dist/src/shared/websocket/voice-message.schema.js.map +1 -0
  522. package/dist/src/shared/workspace-snapshot.d.ts +5 -5
  523. package/dist/src/test-utils/application-graph.d.ts.map +1 -1
  524. package/dist/src/test-utils/application-graph.js +10 -2
  525. package/dist/src/test-utils/application-graph.js.map +1 -1
  526. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  527. package/package.json +6 -6
  528. package/prisma/migrations/20260730140000_add_session_lifecycle_events/migration.sql +20 -0
  529. package/prisma/migrations/20260802152257_add_voice_mode_settings/migration.sql +34 -0
  530. package/prisma/migrations/20260802200414_add_voice_tts_model_and_speed/migration.sql +36 -0
  531. package/prisma/migrations/20260807222320_voice_vad_aggressiveness_settings/migration.sql +38 -0
  532. package/prisma/schema.prisma +41 -0
  533. package/dist/client/assets/architectureDiagram-ZJ3FMSHR-Cz-V9xRh.js +0 -36
  534. package/dist/client/assets/channel-DVMObwOq.js +0 -1
  535. package/dist/client/assets/classDiagram-OUVF2IWQ-wHGXcbfd.js +0 -1
  536. package/dist/client/assets/classDiagram-v2-EOCWNBFH-wHGXcbfd.js +0 -1
  537. package/dist/client/assets/diagram-WEI45ONY-DF667tXW.js +0 -41
  538. package/dist/client/assets/index-CpvT2M5m.js +0 -689
  539. package/dist/client/assets/index-CwfNzqG5.css +0 -1
  540. package/dist/client/assets/stateDiagram-v2-6OUMAXLB-CGxDgHho.js +0 -1
  541. package/dist/client/assets/swimlanesDiagram-G3AALYLV-1u_1g3u4.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"acp-runtime-manager.js","sourceRoot":"","sources":["../../../../../../../src/backend/services/session/service/acp/acp-runtime-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acp-runtime-manager.js","sourceRoot":"","sources":["../../../../../../../src/backend/services/session/service/acp/acp-runtime-manager.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,17 @@ import { EventEmitter } from 'node:events';
2
2
  import { tmpdir } from 'node:os';
3
3
  import { PassThrough } from 'node:stream';
4
4
  import { beforeEach, describe, expect, it, vi } from 'vitest';
5
- const { mockSpawn, mockInitialize, mockNewSession, mockPrompt, mockCancel, mockSetSessionConfigOption, mockSetSessionMode, mockSetSessionModel, mockNdJsonStream, } = vi.hoisted(() => ({
5
+ const { mockSpawn, mockInitialize, mockLoadSession, mockNewSession, mockPrompt, mockCancel, mockSetSessionConfigOption, mockSetSessionMode, mockSetSessionModel, mockExtMethod, mockNdJsonStream, } = vi.hoisted(() => ({
6
6
  mockSpawn: vi.fn(),
7
7
  mockInitialize: vi.fn(),
8
+ mockLoadSession: vi.fn(),
8
9
  mockNewSession: vi.fn(),
9
10
  mockPrompt: vi.fn(),
10
11
  mockCancel: vi.fn(),
11
12
  mockSetSessionConfigOption: vi.fn(),
12
13
  mockSetSessionMode: vi.fn(),
13
14
  mockSetSessionModel: vi.fn(),
15
+ mockExtMethod: vi.fn(),
14
16
  mockNdJsonStream: vi
15
17
  .fn()
16
18
  .mockReturnValue({ writable: {}, readable: { pipeThrough: () => ({}) } }),
@@ -22,12 +24,14 @@ vi.mock('@agentclientprotocol/sdk', () => {
22
24
  class MockCSC {
23
25
  toClient;
24
26
  initialize = mockInitialize;
27
+ loadSession = mockLoadSession;
25
28
  newSession = mockNewSession;
26
29
  prompt = mockPrompt;
27
30
  cancel = mockCancel;
28
31
  setSessionConfigOption = mockSetSessionConfigOption;
29
32
  setSessionMode = mockSetSessionMode;
30
33
  unstable_setSessionModel = mockSetSessionModel;
34
+ extMethod = mockExtMethod;
31
35
  constructor(toClient, _stream) {
32
36
  this.toClient = toClient;
33
37
  }
@@ -47,8 +51,15 @@ vi.mock('@/backend/services/logger.service', () => ({
47
51
  }),
48
52
  getCurrentProcessEnv: () => ({ ...process.env }),
49
53
  }));
54
+ import { SUBAGENTS_CAPABILITY_META_KEY, SUBAGENTS_LIST_METHOD, SUBAGENTS_READ_METHOD, } from '../../../../../shared/acp-protocol/subagents.js';
50
55
  import { AcpClientHandler } from './acp-client-handler.js';
51
56
  import { AcpRuntimeManager, PromptTimeoutError } from './acp-runtime-manager.js';
57
+ describe('PromptTimeoutError', () => {
58
+ it('retains the caller-specified timeout for durable classification', () => {
59
+ const error = new PromptTimeoutError('session-1', 300_000);
60
+ expect(error.timeoutMs).toBe(300_000);
61
+ });
62
+ });
52
63
  function createMockChildProcess() {
53
64
  const child = new EventEmitter();
54
65
  child.pid = 12_345;
@@ -132,18 +143,21 @@ function defaultConfigOptions() {
132
143
  },
133
144
  ];
134
145
  }
135
- function setupSuccessfulSpawn() {
146
+ function setupSuccessfulSpawn(agentCapabilities = { loadSession: {} }) {
136
147
  const child = createMockChildProcess();
137
148
  mockSpawn.mockReturnValue(child);
138
149
  mockInitialize.mockResolvedValue({
139
150
  protocolVersion: 1,
140
- agentCapabilities: { loadSession: {} },
151
+ agentCapabilities,
141
152
  agentInfo: { name: 'claude-agent-acp' },
142
153
  });
143
154
  mockNewSession.mockResolvedValue({
144
155
  sessionId: 'provider-session-123',
145
156
  configOptions: defaultConfigOptions(),
146
157
  });
158
+ mockLoadSession.mockResolvedValue({
159
+ configOptions: defaultConfigOptions(),
160
+ });
147
161
  mockSetSessionConfigOption.mockResolvedValue({
148
162
  configOptions: defaultConfigOptions(),
149
163
  });
@@ -151,6 +165,19 @@ function setupSuccessfulSpawn() {
151
165
  mockSetSessionModel.mockResolvedValue({});
152
166
  return child;
153
167
  }
168
+ function subagentBrowseCapabilities() {
169
+ return {
170
+ loadSession: {},
171
+ _meta: {
172
+ [SUBAGENTS_CAPABILITY_META_KEY]: {
173
+ version: 1,
174
+ list: true,
175
+ read: true,
176
+ notifications: true,
177
+ },
178
+ },
179
+ };
180
+ }
154
181
  function createDeferred() {
155
182
  let resolvePromise;
156
183
  let rejectPromise;
@@ -541,7 +568,267 @@ describe('AcpRuntimeManager', () => {
541
568
  const handle = await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
542
569
  const modelOption = handle.configOptions.find((option) => option.id === 'model');
543
570
  const defaultEntry = modelOption?.options.find((option) => 'value' in option && option.value === 'default');
544
- expect(defaultEntry).toMatchObject({ value: 'default', name: 'Opus 4.6' });
571
+ expect(defaultEntry).toMatchObject({ value: 'default', name: 'Default — Opus 4.6' });
572
+ });
573
+ });
574
+ describe('sub-agent browsing extensions', () => {
575
+ it('classifies a browse-only client before provider restoration completes', async () => {
576
+ const child = setupSuccessfulSpawn({ ...subagentBrowseCapabilities(), loadSession: true });
577
+ const initialization = createDeferred();
578
+ mockInitialize.mockReturnValueOnce(initialization.promise);
579
+ const creation = manager.getOrCreateClient('db-session-1', {
580
+ ...codexOptions(),
581
+ purpose: 'browse',
582
+ resumeProviderSessionId: 'provider-session-existing',
583
+ }, defaultHandlers(), defaultContext());
584
+ await vi.waitFor(() => {
585
+ expect(mockSpawn).toHaveBeenCalled();
586
+ });
587
+ expect(manager.isBrowseOnlySession('db-session-1')).toBe(true);
588
+ initialization.resolve({
589
+ protocolVersion: 1,
590
+ agentCapabilities: { ...subagentBrowseCapabilities(), loadSession: true },
591
+ agentInfo: { name: 'codex-app-server-acp' },
592
+ });
593
+ await creation;
594
+ expect(manager.isBrowseOnlySession('db-session-1')).toBe(true);
595
+ exitChildAfterSigterm(child);
596
+ await manager.stopClient('db-session-1');
597
+ });
598
+ it('keeps a browse-only restored client stopped until active startup promotes it', async () => {
599
+ setupSuccessfulSpawn({ ...subagentBrowseCapabilities(), loadSession: true });
600
+ mockExtMethod.mockResolvedValueOnce({ subagents: [], nextCursor: null });
601
+ const browseHandle = await manager.getOrCreateClient('db-session-1', {
602
+ ...codexOptions(),
603
+ purpose: 'browse',
604
+ resumeProviderSessionId: 'provider-session-existing',
605
+ }, defaultHandlers(), defaultContext());
606
+ await expect(manager.listSubagents('db-session-1', { cursor: null, limit: 50 })).resolves.toEqual({ subagents: [], nextCursor: null });
607
+ expect(manager.getClient('db-session-1')).toBeUndefined();
608
+ expect(manager.isSessionRunning('db-session-1')).toBe(false);
609
+ const activeHandle = await manager.getOrCreateClient('db-session-1', { ...codexOptions(), purpose: 'active' }, defaultHandlers(), defaultContext());
610
+ expect(activeHandle).toBe(browseHandle);
611
+ expect(manager.getClient('db-session-1')).toBe(browseHandle);
612
+ expect(manager.isSessionRunning('db-session-1')).toBe(true);
613
+ expect(mockSpawn).toHaveBeenCalledTimes(1);
614
+ });
615
+ it('does not replace a missing browse-only provider session with a new session', async () => {
616
+ const child = setupSuccessfulSpawn({ ...subagentBrowseCapabilities(), loadSession: true });
617
+ exitChildAfterSigterm(child);
618
+ mockLoadSession.mockRejectedValueOnce(new Error('stored provider session missing'));
619
+ await expect(manager.getOrCreateClient('db-session-1', {
620
+ ...codexOptions(),
621
+ purpose: 'browse',
622
+ resumeProviderSessionId: 'provider-session-missing',
623
+ }, defaultHandlers(), defaultContext())).rejects.toMatchObject({
624
+ name: 'AcpBrowseSessionUnavailableError',
625
+ cause: { message: 'stored provider session missing' },
626
+ });
627
+ expect(mockNewSession).not.toHaveBeenCalled();
628
+ });
629
+ it('preserves browse-only state when an older process finishes exit handling', async () => {
630
+ const firstChild = setupSuccessfulSpawn();
631
+ const exitHandling = createDeferred();
632
+ const firstHandlers = {
633
+ ...defaultHandlers(),
634
+ onExit: vi.fn(() => exitHandling.promise),
635
+ };
636
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), firstHandlers, defaultContext());
637
+ firstChild.exitCode = 1;
638
+ firstChild.emit('exit', 1, null);
639
+ await vi.waitFor(() => {
640
+ expect(firstHandlers.onExit).toHaveBeenCalledWith('db-session-1', 1);
641
+ });
642
+ const replacementChild = setupSuccessfulSpawn({
643
+ ...subagentBrowseCapabilities(),
644
+ loadSession: true,
645
+ });
646
+ const replacementHandle = await manager.getOrCreateClient('db-session-1', {
647
+ ...codexOptions(),
648
+ purpose: 'browse',
649
+ resumeProviderSessionId: 'provider-session-existing',
650
+ }, defaultHandlers(), defaultContext());
651
+ exitHandling.resolve();
652
+ await new Promise((resolve) => setTimeout(resolve, 0));
653
+ expect(manager.getBrowseClient('db-session-1')).toBe(replacementHandle);
654
+ expect(manager.isBrowseOnlySession('db-session-1')).toBe(true);
655
+ expect(manager.getClient('db-session-1')).toBeUndefined();
656
+ exitChildAfterSigterm(replacementChild);
657
+ await manager.stopClient('db-session-1');
658
+ });
659
+ it('classifies a provider without loadSession as unsupported for browse restoration', async () => {
660
+ const child = setupSuccessfulSpawn(subagentBrowseCapabilities());
661
+ exitChildAfterSigterm(child);
662
+ await expect(manager.getOrCreateClient('db-session-1', {
663
+ ...codexOptions(),
664
+ purpose: 'browse',
665
+ resumeProviderSessionId: 'provider-session-existing',
666
+ }, defaultHandlers(), defaultContext())).rejects.toMatchObject({ name: 'AcpBrowseSessionUnavailableError' });
667
+ expect(mockNewSession).not.toHaveBeenCalled();
668
+ });
669
+ it('returns the negotiated capability only for a live handle', async () => {
670
+ expect(manager.getSubagentBrowseCapability('session-1')).toBeNull();
671
+ const child = setupSuccessfulSpawn(subagentBrowseCapabilities());
672
+ await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
673
+ expect(manager.getSubagentBrowseCapability('session-1')).toEqual({
674
+ version: 1,
675
+ list: true,
676
+ read: true,
677
+ notifications: true,
678
+ });
679
+ child.killed = true;
680
+ expect(manager.getSubagentBrowseCapability('session-1')).toBeNull();
681
+ });
682
+ it('lists sub-agents with the provider session ID and unchanged cursor', async () => {
683
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
684
+ mockExtMethod.mockResolvedValueOnce({ subagents: [], nextCursor: null });
685
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
686
+ const result = await manager.listSubagents('db-session-1', {
687
+ cursor: 'list-cursor-7',
688
+ limit: 50,
689
+ });
690
+ expect(result).toEqual({ subagents: [], nextCursor: null });
691
+ expect(mockExtMethod).toHaveBeenCalledWith(SUBAGENTS_LIST_METHOD, {
692
+ sessionId: 'provider-session-123',
693
+ cursor: 'list-cursor-7',
694
+ limit: 50,
695
+ });
696
+ });
697
+ it('reads a transcript with the provider session ID and unchanged cursor', async () => {
698
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
699
+ mockExtMethod.mockResolvedValueOnce({
700
+ projectionBoundary: 'turn',
701
+ updates: [],
702
+ nextCursor: 'read-cursor-9',
703
+ });
704
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
705
+ const result = await manager.readSubagentTranscript('db-session-1', {
706
+ subagentId: 'child-1',
707
+ cursor: 'read-cursor-8',
708
+ limit: 10,
709
+ });
710
+ expect(result).toEqual({
711
+ projectionBoundary: 'turn',
712
+ updates: [],
713
+ nextCursor: 'read-cursor-9',
714
+ });
715
+ expect(mockExtMethod).toHaveBeenCalledWith(SUBAGENTS_READ_METHOD, {
716
+ sessionId: 'provider-session-123',
717
+ subagentId: 'child-1',
718
+ cursor: 'read-cursor-8',
719
+ limit: 10,
720
+ });
721
+ });
722
+ it('rejects malformed extension inputs before calling the provider', async () => {
723
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
724
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
725
+ await expect(manager.listSubagents('db-session-1', { cursor: null, limit: 101 })).rejects.toThrow();
726
+ expect(mockExtMethod).not.toHaveBeenCalled();
727
+ });
728
+ it('normalizes malformed list and transcript responses as provider precondition errors', async () => {
729
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
730
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
731
+ mockExtMethod.mockResolvedValueOnce({ subagents: 'invalid', nextCursor: null });
732
+ await expect(manager.listSubagents('db-session-1', { cursor: null, limit: 50 })).rejects.toMatchObject({
733
+ name: 'AcpSubagentBrowseError',
734
+ code: 'PRECONDITION_FAILED',
735
+ message: 'Sub-agent list is unavailable because the provider returned an invalid response.',
736
+ });
737
+ mockExtMethod.mockResolvedValueOnce({
738
+ projectionBoundary: 'turn',
739
+ updates: [{ sessionUpdate: 'unknown' }],
740
+ nextCursor: null,
741
+ });
742
+ await expect(manager.readSubagentTranscript('db-session-1', {
743
+ subagentId: 'child-1',
744
+ cursor: null,
745
+ limit: 10,
746
+ })).rejects.toMatchObject({
747
+ name: 'AcpSubagentBrowseError',
748
+ code: 'PRECONDITION_FAILED',
749
+ message: 'Sub-agent transcript is unavailable because the provider returned an invalid response.',
750
+ });
751
+ });
752
+ it('normalizes provider extension errors into safe application errors', async () => {
753
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
754
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
755
+ mockExtMethod.mockRejectedValueOnce({
756
+ code: -32_602,
757
+ message: 'Invalid params: secret provider detail',
758
+ data: { cursor: 'invalid' },
759
+ });
760
+ await expect(manager.readSubagentTranscript('db-session-1', {
761
+ subagentId: 'child-1',
762
+ cursor: 'invalid',
763
+ limit: 10,
764
+ })).rejects.toMatchObject({
765
+ name: 'AcpSubagentBrowseError',
766
+ code: 'INVALID_INPUT',
767
+ message: 'Invalid sub-agent transcript request.',
768
+ });
769
+ mockExtMethod.mockRejectedValueOnce({
770
+ code: -32_002,
771
+ message: 'Resource not found: secret provider thread',
772
+ });
773
+ await expect(manager.readSubagentTranscript('db-session-1', {
774
+ subagentId: 'foreign-child',
775
+ cursor: null,
776
+ limit: 10,
777
+ })).rejects.toMatchObject({
778
+ name: 'AcpSubagentBrowseError',
779
+ code: 'NOT_FOUND',
780
+ message: 'Sub-agent transcript not found for this session.',
781
+ });
782
+ mockExtMethod.mockRejectedValueOnce({
783
+ code: -32_603,
784
+ message: 'Internal error: mismatched provider thread IDs',
785
+ });
786
+ await expect(manager.readSubagentTranscript('db-session-1', {
787
+ subagentId: 'child-1',
788
+ cursor: null,
789
+ limit: 10,
790
+ })).rejects.toMatchObject({
791
+ name: 'AcpSubagentBrowseError',
792
+ code: 'PRECONDITION_FAILED',
793
+ message: 'Sub-agent transcript is unavailable because the provider returned an invalid response.',
794
+ });
795
+ });
796
+ it('preserves JSON-RPC codes carried by Error subclasses', async () => {
797
+ setupSuccessfulSpawn(subagentBrowseCapabilities());
798
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
799
+ const providerError = Object.assign(new Error('Resource not found: provider thread'), {
800
+ code: -32_002,
801
+ data: { threadId: 'missing-child' },
802
+ });
803
+ mockExtMethod.mockRejectedValueOnce(providerError);
804
+ await expect(manager.readSubagentTranscript('db-session-1', {
805
+ subagentId: 'missing-child',
806
+ cursor: null,
807
+ limit: 10,
808
+ })).rejects.toMatchObject({
809
+ name: 'AcpSubagentBrowseError',
810
+ code: 'NOT_FOUND',
811
+ message: 'Sub-agent transcript not found for this session.',
812
+ });
813
+ });
814
+ it('rejects extension requests without a live handle or negotiated capability', async () => {
815
+ await expect(manager.listSubagents('missing-session', { cursor: null, limit: 50 })).rejects.toMatchObject({
816
+ name: 'AcpSubagentBrowseError',
817
+ code: 'PRECONDITION_FAILED',
818
+ message: 'Sub-agent browsing requires a running parent session.',
819
+ });
820
+ setupSuccessfulSpawn();
821
+ await manager.getOrCreateClient('db-session-1', defaultOptions(), defaultHandlers(), defaultContext());
822
+ await expect(manager.readSubagentTranscript('db-session-1', {
823
+ subagentId: 'child-1',
824
+ cursor: null,
825
+ limit: 10,
826
+ })).rejects.toMatchObject({
827
+ name: 'AcpSubagentBrowseError',
828
+ code: 'PRECONDITION_FAILED',
829
+ message: 'Sub-agent browsing is unavailable for this session.',
830
+ });
831
+ expect(mockExtMethod).not.toHaveBeenCalled();
545
832
  });
546
833
  });
547
834
  describe('stopClient', () => {
@@ -635,21 +922,26 @@ describe('AcpRuntimeManager', () => {
635
922
  });
636
923
  expect(child.kill).toHaveBeenCalledWith('SIGTERM');
637
924
  });
638
- it('is idempotent - double stop is no-op', async () => {
925
+ it('waits for an existing stop when called concurrently', async () => {
639
926
  const child = setupSuccessfulSpawn();
640
927
  await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
641
- child.kill = vi.fn(() => {
642
- setTimeout(() => {
643
- child.exitCode = 0;
644
- child.emit('exit', 0, null);
645
- }, 10);
646
- return true;
928
+ child.kill = vi.fn(() => true);
929
+ const firstStop = manager.stopClient('session-1');
930
+ await vi.waitFor(() => {
931
+ expect(manager.isStopInProgress('session-1')).toBe(true);
932
+ });
933
+ let secondStopSettled = false;
934
+ const secondStop = manager.stopClient('session-1').then(() => {
935
+ secondStopSettled = true;
647
936
  });
648
- const [, result2] = await Promise.all([
649
- manager.stopClient('session-1'),
650
- manager.stopClient('session-1'),
651
- ]);
652
- expect(result2).toBeUndefined();
937
+ await Promise.resolve();
938
+ expect(secondStopSettled).toBe(false);
939
+ child.exitCode = 0;
940
+ child.emit('exit', 0, null);
941
+ await Promise.all([firstStop, secondStop]);
942
+ expect(secondStopSettled).toBe(true);
943
+ expect(child.kill).toHaveBeenCalledTimes(1);
944
+ expect(child.kill).toHaveBeenCalledWith('SIGTERM');
653
945
  });
654
946
  it('aborts in-flight client creation and cleans up the spawned subprocess', async () => {
655
947
  const child = createMockChildProcess();
@@ -850,6 +1142,33 @@ describe('AcpRuntimeManager', () => {
850
1142
  });
851
1143
  });
852
1144
  describe('stopAllClients', () => {
1145
+ it('atomically closes admission and reports active and pending session ids', async () => {
1146
+ const activeChild = setupSuccessfulSpawn();
1147
+ await manager.getOrCreateClient('session-active', defaultOptions(), defaultHandlers(), defaultContext());
1148
+ const pendingChild = createMockChildProcess();
1149
+ exitChildAfterSigterm(pendingChild);
1150
+ mockSpawn.mockReturnValueOnce(pendingChild);
1151
+ mockInitialize.mockImplementationOnce(() => new Promise(() => {
1152
+ }));
1153
+ const pendingCreation = manager
1154
+ .getOrCreateClient('session-pending', { ...defaultOptions(), sessionId: 'session-pending' }, defaultHandlers(), defaultContext())
1155
+ .catch((error) => error);
1156
+ await vi.waitFor(() => {
1157
+ expect(manager.getPendingClient('session-pending')).toBeDefined();
1158
+ });
1159
+ const shutdownSessionIds = manager.beginShutdown();
1160
+ expect(new Set(shutdownSessionIds)).toEqual(new Set(['session-active', 'session-pending']));
1161
+ await expect(manager.getOrCreateClient('session-too-late', { ...defaultOptions(), sessionId: 'session-too-late' }, defaultHandlers(), defaultContext())).rejects.toThrow('ACP runtime manager is shutting down');
1162
+ activeChild.kill = vi.fn(() => {
1163
+ activeChild.exitCode = 0;
1164
+ activeChild.emit('exit', 0, null);
1165
+ return true;
1166
+ });
1167
+ await manager.stopAllClients(50);
1168
+ await expect(pendingCreation).resolves.toMatchObject({
1169
+ message: expect.stringContaining('ACP runtime manager is shutting down'),
1170
+ });
1171
+ });
853
1172
  it('clears per-client shutdown timeouts when clients stop quickly', async () => {
854
1173
  const firstChild = setupSuccessfulSpawn();
855
1174
  await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
@@ -1076,20 +1395,23 @@ describe('AcpRuntimeManager', () => {
1076
1395
  mockCancel.mockResolvedValue(undefined);
1077
1396
  const handle = await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
1078
1397
  handle.isPromptInFlight = true;
1079
- await manager.cancelPrompt('session-1');
1398
+ const cancelled = await manager.cancelPrompt('session-1');
1080
1399
  expect(mockCancel).toHaveBeenCalledWith({
1081
1400
  sessionId: 'provider-session-123',
1082
1401
  });
1402
+ expect(cancelled).toBe(true);
1083
1403
  });
1084
1404
  it('does nothing when no prompt is in flight', async () => {
1085
1405
  setupSuccessfulSpawn();
1086
1406
  await manager.getOrCreateClient('session-1', defaultOptions(), defaultHandlers(), defaultContext());
1087
- await manager.cancelPrompt('session-1');
1407
+ const cancelled = await manager.cancelPrompt('session-1');
1088
1408
  expect(mockCancel).not.toHaveBeenCalled();
1409
+ expect(cancelled).toBe(false);
1089
1410
  });
1090
1411
  it('does nothing for nonexistent session', async () => {
1091
- await manager.cancelPrompt('nonexistent');
1412
+ const cancelled = await manager.cancelPrompt('nonexistent');
1092
1413
  expect(mockCancel).not.toHaveBeenCalled();
1414
+ expect(cancelled).toBe(false);
1093
1415
  });
1094
1416
  });
1095
1417
  describe('setConfigOption', () => {
@@ -1128,7 +1450,7 @@ describe('AcpRuntimeManager', () => {
1128
1450
  ?.options.find((option) => 'value' in option && option.value === 'default');
1129
1451
  expect(defaultModelOption).toMatchObject({
1130
1452
  value: 'default',
1131
- name: 'Opus 4.6',
1453
+ name: 'Default — Opus 4.6',
1132
1454
  });
1133
1455
  expect(handle.configOptions.find((option) => option.id === 'mode')?.currentValue).toBe('plan');
1134
1456
  });
@@ -1267,8 +1589,12 @@ describe('AcpClientHandler', () => {
1267
1589
  expect(event.update.sessionUpdate).toBe('agent_message_chunk');
1268
1590
  return;
1269
1591
  }
1270
- expect(event.type).toBe('acp_permission_request');
1271
- expect(event.params.toolCall.toolCallId).toBe('tc-1');
1592
+ if (event.type === 'acp_permission_request') {
1593
+ expect(event.params.toolCall.toolCallId).toBe('tc-1');
1594
+ return;
1595
+ }
1596
+ expect(event.subagentId).toBe('child-1');
1597
+ expect(event.change).toBe('updated');
1272
1598
  };
1273
1599
  onEvent('test-session', {
1274
1600
  type: 'acp_session_update',
@@ -1286,6 +1612,11 @@ describe('AcpClientHandler', () => {
1286
1612
  options: [{ optionId: 'allow-1', kind: 'allow_once', name: 'Allow once' }],
1287
1613
  },
1288
1614
  });
1615
+ onEvent('test-session', {
1616
+ type: 'acp_subagents_changed',
1617
+ subagentId: 'child-1',
1618
+ change: 'updated',
1619
+ });
1289
1620
  });
1290
1621
  it('sessionUpdate emits logs through onLog callback', async () => {
1291
1622
  const onEvent = vi.fn();