@svenroth-ai/shipwright 0.24.7-next.0 → 0.26.0

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 (239) hide show
  1. package/client/dist/assets/{EmbeddedTerminal-D2BLGWdW.js → EmbeddedTerminal-D3wpPNZP.js} +20 -20
  2. package/client/dist/assets/{abnfDiagram-VRR7QNED-C-W_2Jd4.js → abnfDiagram-VRR7QNED-BkLIltB3.js} +1 -1
  3. package/client/dist/assets/{arc-CpqwESP5.js → arc-Sw-Gh0nI.js} +1 -1
  4. package/client/dist/assets/{architectureDiagram-ZJ3FMSHR-DZVZ895V.js → architectureDiagram-ZJ3FMSHR-rdxUi9Ks.js} +1 -1
  5. package/client/dist/assets/{blockDiagram-677ZJIJ3-CCCZiAA7.js → blockDiagram-677ZJIJ3-Ch_9dj8a.js} +1 -1
  6. package/client/dist/assets/{c4Diagram-LMCZKHZV-Bg1beZAE.js → c4Diagram-LMCZKHZV-CkFlO65x.js} +1 -1
  7. package/client/dist/assets/channel-BYPbLjRl.js +1 -0
  8. package/client/dist/assets/{chunk-2Q5K7J3B-CoaXSarh.js → chunk-2Q5K7J3B-CypX83xu.js} +1 -1
  9. package/client/dist/assets/{chunk-32BRIVSS-CeFXS-CM.js → chunk-32BRIVSS-DxVLYGdl.js} +1 -1
  10. package/client/dist/assets/{chunk-5VM5RSS4-QyJMVe0m.js → chunk-5VM5RSS4-Cxk1evhx.js} +1 -1
  11. package/client/dist/assets/{chunk-EX3LRPZG-BIOtWVF8.js → chunk-EX3LRPZG-n9q5S4yJ.js} +1 -1
  12. package/client/dist/assets/{chunk-JWPE2WC7-Dcq-lWyX.js → chunk-JWPE2WC7-jeL4xvir.js} +1 -1
  13. package/client/dist/assets/{chunk-MOJQB5TN-C95323ja.js → chunk-MOJQB5TN-DDSHN0cj.js} +1 -1
  14. package/client/dist/assets/{chunk-RYQCIY6F-C0HPwpWy.js → chunk-RYQCIY6F-C0bo383g.js} +1 -1
  15. package/client/dist/assets/{chunk-V7JOEXUC-BPrTbZqA.js → chunk-V7JOEXUC-C0jDXXAU.js} +1 -1
  16. package/client/dist/assets/{chunk-VR4S4FIN--BCnNoqt.js → chunk-VR4S4FIN-h-Rr4Pn2.js} +1 -1
  17. package/client/dist/assets/{chunk-XXDRQBXY-Dj8vtcXf.js → chunk-XXDRQBXY-BexSo0-s.js} +1 -1
  18. package/client/dist/assets/classDiagram-OUVF2IWQ-CsFIeTju.js +1 -0
  19. package/client/dist/assets/classDiagram-v2-EOCWNBFH-CsFIeTju.js +1 -0
  20. package/client/dist/assets/{cose-bilkent-JH36ORCC-y51otZKz.js → cose-bilkent-JH36ORCC-BQXzaioj.js} +1 -1
  21. package/client/dist/assets/{cynefin-VYW2F7L2-BRfS3cHo.js → cynefin-VYW2F7L2-BJIofhfe.js} +1 -1
  22. package/client/dist/assets/{cynefinDiagram-TSTJHNR4-Dpg2RtfL.js → cynefinDiagram-TSTJHNR4-DmPqTM1T.js} +1 -1
  23. package/client/dist/assets/{dagre-VKFMJZFB-BdZtXgKZ.js → dagre-VKFMJZFB-1xljvw6X.js} +1 -1
  24. package/client/dist/assets/{diagram-FQU43EPY-K-RCwWxW.js → diagram-FQU43EPY-iyL9muCG.js} +1 -1
  25. package/client/dist/assets/{diagram-G47NLZAW-CHNn7F2-.js → diagram-G47NLZAW-DREp2Th6.js} +1 -1
  26. package/client/dist/assets/{diagram-NH7WQ7WH-B3zu6xib.js → diagram-NH7WQ7WH-h0X3Is2S.js} +1 -1
  27. package/client/dist/assets/{diagram-OA4YK3LP-Wp5ju7L7.js → diagram-OA4YK3LP-Bj8YZRFJ.js} +1 -1
  28. package/client/dist/assets/{diagram-WEI45ONY-C94GpsRk.js → diagram-WEI45ONY-BZOf805d.js} +1 -1
  29. package/client/dist/assets/{ebnfDiagram-CCIWWBDH-DXrTPOrP.js → ebnfDiagram-CCIWWBDH-DO5JnXda.js} +1 -1
  30. package/client/dist/assets/{erDiagram-Q63AITRT-CGejnW0f.js → erDiagram-Q63AITRT-DRgcqg1T.js} +1 -1
  31. package/client/dist/assets/{flowDiagram-23GEKE2U-CFJMM637.js → flowDiagram-23GEKE2U-C3J9QmrW.js} +1 -1
  32. package/client/dist/assets/{ganttDiagram-NO4QXBWP-DnaH94Su.js → ganttDiagram-NO4QXBWP-BIEl3Tkm.js} +1 -1
  33. package/client/dist/assets/{gitGraphDiagram-IHSO6WYX-DT-D0gbn.js → gitGraphDiagram-IHSO6WYX-BNF0tFWC.js} +1 -1
  34. package/client/dist/assets/index-BnTOrFHb.js +829 -0
  35. package/client/dist/assets/index-CYPc6qxw.css +1 -0
  36. package/client/dist/assets/{infoDiagram-FWYZ7A6U-DW3Ps00w.js → infoDiagram-FWYZ7A6U-DEyFxiyY.js} +1 -1
  37. package/client/dist/assets/{ishikawaDiagram-FXEZZL3T-DjxjIT3n.js → ishikawaDiagram-FXEZZL3T-B_ehlg3I.js} +1 -1
  38. package/client/dist/assets/{journeyDiagram-5HDEW3XC-DTQRI93Y.js → journeyDiagram-5HDEW3XC-Dp00FyJS.js} +1 -1
  39. package/client/dist/assets/{kanban-definition-HUTT4EX6-BeDvbiEs.js → kanban-definition-HUTT4EX6-CTAf16q8.js} +1 -1
  40. package/client/dist/assets/{linear-B4foxDlh.js → linear-9vNUgmYd.js} +1 -1
  41. package/client/dist/assets/{mermaid.core-c-L4qgSB.js → mermaid.core-A6tjaEVD.js} +4 -4
  42. package/client/dist/assets/{mindmap-definition-LN4V7U3C-dh8v0J8T.js → mindmap-definition-LN4V7U3C-DRW3bmCY.js} +1 -1
  43. package/client/dist/assets/{pegDiagram-2B236MQR-D5vNrtFh.js → pegDiagram-2B236MQR-DJFCjHp2.js} +1 -1
  44. package/client/dist/assets/{pieDiagram-ENE6RG2P-CIjg_6lR.js → pieDiagram-ENE6RG2P-KRd-sGvC.js} +1 -1
  45. package/client/dist/assets/{quadrantDiagram-ABIIQ3AL-CF37qWQD.js → quadrantDiagram-ABIIQ3AL-9TLZE3Hu.js} +1 -1
  46. package/client/dist/assets/{railroadDiagram-RFXS5EU6-x0Hn30Kj.js → railroadDiagram-RFXS5EU6-y4tLtjXg.js} +1 -1
  47. package/client/dist/assets/{requirementDiagram-TGXJPOKE-BE2QnVbN.js → requirementDiagram-TGXJPOKE-B9EOQDQM.js} +1 -1
  48. package/client/dist/assets/{sankeyDiagram-HTMAVEWB-CUv6cIlV.js → sankeyDiagram-HTMAVEWB-zfwiDzkT.js} +1 -1
  49. package/client/dist/assets/{sequenceDiagram-DBY2YBRQ-C3ACj5LS.js → sequenceDiagram-DBY2YBRQ-DW1LWepL.js} +1 -1
  50. package/client/dist/assets/{sizeCapture-X5ZJPWSS-DTMIb5gX.js → sizeCapture-X5ZJPWSS-BM81Mik0.js} +1 -1
  51. package/client/dist/assets/{stateDiagram-2N3HPSRC-DI1Z8P74.js → stateDiagram-2N3HPSRC-D0EMIw1w.js} +1 -1
  52. package/client/dist/assets/stateDiagram-v2-6OUMAXLB-B3E4_xxT.js +1 -0
  53. package/client/dist/assets/{swimlanes-5IMT3BWC-CLSr9w29.js → swimlanes-5IMT3BWC-CKXNCX6M.js} +2 -2
  54. package/client/dist/assets/swimlanesDiagram-G3AALYLV-BegQBqnC.js +8 -0
  55. package/client/dist/assets/{timeline-definition-FHXFAJF6-BTWmUhDh.js → timeline-definition-FHXFAJF6-ByzIfvL5.js} +1 -1
  56. package/client/dist/assets/{vennDiagram-L72KCM5P-Ce1dlLCM.js → vennDiagram-L72KCM5P-Xep38xBH.js} +1 -1
  57. package/client/dist/assets/{wardleyDiagram-EHGQE667-ClOE-aae.js → wardleyDiagram-EHGQE667-DKWDpx6g.js} +1 -1
  58. package/client/dist/assets/{xychartDiagram-FW5EYKEG-Fa2pqWKw.js → xychartDiagram-FW5EYKEG-BGcwZTnu.js} +1 -1
  59. package/client/dist/index.html +27 -27
  60. package/lib/claude-cli.mjs +173 -173
  61. package/lib/preflight.mjs +252 -252
  62. package/lib/probe-path.mjs +84 -84
  63. package/lib/server.mjs +369 -369
  64. package/lib/util.mjs +157 -157
  65. package/lib/win32-spawn.mjs +253 -253
  66. package/package.json +1 -1
  67. package/scripts/deploy-procs.mjs +208 -208
  68. package/scripts/deploy-swap.mjs +276 -276
  69. package/scripts/kill-targets.js +140 -140
  70. package/scripts/repair-claude-json.mjs +295 -295
  71. package/server/dist/config/default-actions.json +90 -90
  72. package/server/dist/core/grade-runner.d.ts +4 -4
  73. package/server/dist/core/grade-runner.d.ts.map +1 -1
  74. package/server/dist/core/grade-runner.js +51 -26
  75. package/server/dist/core/grade-runner.js.map +1 -1
  76. package/server/dist/core/grade-target.d.ts +8 -0
  77. package/server/dist/core/grade-target.d.ts.map +1 -1
  78. package/server/dist/core/grade-target.js +10 -0
  79. package/server/dist/core/grade-target.js.map +1 -1
  80. package/server/dist/core/mission-context/association.d.ts +46 -0
  81. package/server/dist/core/mission-context/association.d.ts.map +1 -1
  82. package/server/dist/core/mission-context/association.js +69 -0
  83. package/server/dist/core/mission-context/association.js.map +1 -1
  84. package/server/dist/core/mission-context/resolver-iterate.d.ts +6 -0
  85. package/server/dist/core/mission-context/resolver-iterate.d.ts.map +1 -0
  86. package/server/dist/core/mission-context/resolver-iterate.js +202 -0
  87. package/server/dist/core/mission-context/resolver-iterate.js.map +1 -0
  88. package/server/dist/core/mission-context/resolver-parts.d.ts +20 -0
  89. package/server/dist/core/mission-context/resolver-parts.d.ts.map +1 -1
  90. package/server/dist/core/mission-context/resolver-parts.js +92 -0
  91. package/server/dist/core/mission-context/resolver-parts.js.map +1 -1
  92. package/server/dist/core/mission-context/resolver.d.ts +1 -1
  93. package/server/dist/core/mission-context/resolver.d.ts.map +1 -1
  94. package/server/dist/core/mission-context/resolver.js +17 -199
  95. package/server/dist/core/mission-context/resolver.js.map +1 -1
  96. package/server/dist/core/mission-context/run-id-recovery.d.ts +21 -5
  97. package/server/dist/core/mission-context/run-id-recovery.d.ts.map +1 -1
  98. package/server/dist/core/mission-context/run-id-recovery.js +32 -5
  99. package/server/dist/core/mission-context/run-id-recovery.js.map +1 -1
  100. package/server/dist/core/mission-context/scenario.d.ts +18 -11
  101. package/server/dist/core/mission-context/scenario.d.ts.map +1 -1
  102. package/server/dist/core/mission-context/scenario.js +40 -3
  103. package/server/dist/core/mission-context/scenario.js.map +1 -1
  104. package/server/dist/core/path-guard.d.ts +1 -1
  105. package/server/dist/core/path-guard.d.ts.map +1 -1
  106. package/server/dist/core/path-guard.js +9 -2
  107. package/server/dist/core/path-guard.js.map +1 -1
  108. package/server/dist/core/shipslog-docs-reader.d.ts +4 -0
  109. package/server/dist/core/shipslog-docs-reader.d.ts.map +1 -0
  110. package/server/dist/core/shipslog-docs-reader.js +181 -0
  111. package/server/dist/core/shipslog-docs-reader.js.map +1 -0
  112. package/server/dist/core/shipslog-docs-types.d.ts +15 -0
  113. package/server/dist/core/shipslog-docs-types.d.ts.map +1 -0
  114. package/server/dist/core/shipslog-docs-types.js +14 -0
  115. package/server/dist/core/shipslog-docs-types.js.map +1 -0
  116. package/server/dist/core/triage-cli-runner.d.ts.map +1 -1
  117. package/server/dist/core/triage-cli-runner.js +29 -10
  118. package/server/dist/core/triage-cli-runner.js.map +1 -1
  119. package/server/dist/core/uv-runner.d.ts +23 -0
  120. package/server/dist/core/uv-runner.d.ts.map +1 -0
  121. package/server/dist/core/uv-runner.js +39 -0
  122. package/server/dist/core/uv-runner.js.map +1 -0
  123. package/server/dist/external/design-review/serve.js +27 -27
  124. package/server/dist/external/file/exists-routes.d.ts +7 -0
  125. package/server/dist/external/file/exists-routes.d.ts.map +1 -0
  126. package/server/dist/external/file/exists-routes.js +91 -0
  127. package/server/dist/external/file/exists-routes.js.map +1 -0
  128. package/server/dist/external/mission-context/association-write.d.ts +22 -0
  129. package/server/dist/external/mission-context/association-write.d.ts.map +1 -0
  130. package/server/dist/external/mission-context/association-write.js +90 -0
  131. package/server/dist/external/mission-context/association-write.js.map +1 -0
  132. package/server/dist/external/mission-context/routes.d.ts.map +1 -1
  133. package/server/dist/external/mission-context/routes.js +18 -31
  134. package/server/dist/external/mission-context/routes.js.map +1 -1
  135. package/server/dist/external/org/audit-log.d.ts +27 -0
  136. package/server/dist/external/org/audit-log.d.ts.map +1 -0
  137. package/server/dist/external/org/audit-log.js +92 -0
  138. package/server/dist/external/org/audit-log.js.map +1 -0
  139. package/server/dist/external/org/beat-register.d.ts +15 -22
  140. package/server/dist/external/org/beat-register.d.ts.map +1 -1
  141. package/server/dist/external/org/beat-register.js +37 -32
  142. package/server/dist/external/org/beat-register.js.map +1 -1
  143. package/server/dist/external/org/file-read.d.ts +16 -0
  144. package/server/dist/external/org/file-read.d.ts.map +1 -1
  145. package/server/dist/external/org/file-read.js +86 -46
  146. package/server/dist/external/org/file-read.js.map +1 -1
  147. package/server/dist/external/org/file-write-core.d.ts +18 -0
  148. package/server/dist/external/org/file-write-core.d.ts.map +1 -0
  149. package/server/dist/external/org/file-write-core.js +97 -0
  150. package/server/dist/external/org/file-write-core.js.map +1 -0
  151. package/server/dist/external/org/file-write.d.ts +25 -0
  152. package/server/dist/external/org/file-write.d.ts.map +1 -1
  153. package/server/dist/external/org/file-write.js +82 -132
  154. package/server/dist/external/org/file-write.js.map +1 -1
  155. package/server/dist/external/org/last-run.d.ts +25 -16
  156. package/server/dist/external/org/last-run.d.ts.map +1 -1
  157. package/server/dist/external/org/last-run.js +78 -64
  158. package/server/dist/external/org/last-run.js.map +1 -1
  159. package/server/dist/external/org/lead-doc-read.d.ts +21 -0
  160. package/server/dist/external/org/lead-doc-read.d.ts.map +1 -0
  161. package/server/dist/external/org/lead-doc-read.js +84 -0
  162. package/server/dist/external/org/lead-doc-read.js.map +1 -0
  163. package/server/dist/external/org/mount.d.ts +12 -0
  164. package/server/dist/external/org/mount.d.ts.map +1 -0
  165. package/server/dist/external/org/mount.js +34 -0
  166. package/server/dist/external/org/mount.js.map +1 -0
  167. package/server/dist/external/org/org-chart-lookup.d.ts +13 -0
  168. package/server/dist/external/org/org-chart-lookup.d.ts.map +1 -1
  169. package/server/dist/external/org/org-chart-lookup.js +40 -5
  170. package/server/dist/external/org/org-chart-lookup.js.map +1 -1
  171. package/server/dist/external/org/org-chart.d.ts +21 -12
  172. package/server/dist/external/org/org-chart.d.ts.map +1 -1
  173. package/server/dist/external/org/org-chart.js +50 -32
  174. package/server/dist/external/org/org-chart.js.map +1 -1
  175. package/server/dist/external/org/role-extract.d.ts +8 -0
  176. package/server/dist/external/org/role-extract.d.ts.map +1 -0
  177. package/server/dist/external/org/role-extract.js +72 -0
  178. package/server/dist/external/org/role-extract.js.map +1 -0
  179. package/server/dist/external/org/usage.d.ts +15 -11
  180. package/server/dist/external/org/usage.d.ts.map +1 -1
  181. package/server/dist/external/org/usage.js +64 -54
  182. package/server/dist/external/org/usage.js.map +1 -1
  183. package/server/dist/external/routes.d.ts +1 -1
  184. package/server/dist/external/routes.d.ts.map +1 -1
  185. package/server/dist/external/routes.js +19 -17
  186. package/server/dist/external/routes.js.map +1 -1
  187. package/server/dist/external/shipslog-docs/routes.d.ts +10 -0
  188. package/server/dist/external/shipslog-docs/routes.d.ts.map +1 -0
  189. package/server/dist/external/shipslog-docs/routes.js +41 -0
  190. package/server/dist/external/shipslog-docs/routes.js.map +1 -0
  191. package/server/dist/routes/grade.d.ts.map +1 -1
  192. package/server/dist/routes/grade.js +3 -2
  193. package/server/dist/routes/grade.js.map +1 -1
  194. package/server/dist/routes/org-leads-composite.d.ts +21 -0
  195. package/server/dist/routes/org-leads-composite.d.ts.map +1 -0
  196. package/server/dist/routes/org-leads-composite.js +95 -0
  197. package/server/dist/routes/org-leads-composite.js.map +1 -0
  198. package/server/dist/routes/org.d.ts +15 -0
  199. package/server/dist/routes/org.d.ts.map +1 -0
  200. package/server/dist/routes/org.js +198 -0
  201. package/server/dist/routes/org.js.map +1 -0
  202. package/server/dist/terminal/pty-manager.d.ts +9 -0
  203. package/server/dist/terminal/pty-manager.d.ts.map +1 -1
  204. package/server/dist/terminal/pty-manager.js +15 -0
  205. package/server/dist/terminal/pty-manager.js.map +1 -1
  206. package/server/dist/terminal/replay-snapshot.d.ts +10 -1
  207. package/server/dist/terminal/replay-snapshot.d.ts.map +1 -1
  208. package/server/dist/terminal/replay-snapshot.js +36 -1
  209. package/server/dist/terminal/replay-snapshot.js.map +1 -1
  210. package/server/dist/terminal/ws-upgrade-handler.d.ts +17 -1
  211. package/server/dist/terminal/ws-upgrade-handler.d.ts.map +1 -1
  212. package/server/dist/terminal/ws-upgrade-handler.fixtures.d.ts +1 -0
  213. package/server/dist/terminal/ws-upgrade-handler.fixtures.d.ts.map +1 -1
  214. package/server/dist/terminal/ws-upgrade-handler.fixtures.js +3 -2
  215. package/server/dist/terminal/ws-upgrade-handler.fixtures.js.map +1 -1
  216. package/server/dist/terminal/ws-upgrade-handler.js +45 -4
  217. package/server/dist/terminal/ws-upgrade-handler.js.map +1 -1
  218. package/server/dist/test/python-spawn-guard-util.d.ts +14 -0
  219. package/server/dist/test/python-spawn-guard-util.d.ts.map +1 -0
  220. package/server/dist/test/python-spawn-guard-util.js +124 -0
  221. package/server/dist/test/python-spawn-guard-util.js.map +1 -0
  222. package/server/dist/types/org.d.ts +115 -0
  223. package/server/dist/types/org.d.ts.map +1 -0
  224. package/server/dist/types/org.js +16 -0
  225. package/server/dist/types/org.js.map +1 -0
  226. package/server/package.json +1 -1
  227. package/server/profiles/PROFILE_SCHEMA_VERSION +1 -1
  228. package/server/profiles/README.md +27 -27
  229. package/server/profiles/python-plugin-monorepo.json +35 -35
  230. package/server/profiles/supabase-nextjs.json +253 -253
  231. package/server/profiles/vite-hono.json +92 -92
  232. package/client/dist/assets/MarkdownEditorModal-CP5yG9OU.js +0 -212
  233. package/client/dist/assets/channel-BNXbCvDS.js +0 -1
  234. package/client/dist/assets/classDiagram-OUVF2IWQ-w-wCtLx3.js +0 -1
  235. package/client/dist/assets/classDiagram-v2-EOCWNBFH-w-wCtLx3.js +0 -1
  236. package/client/dist/assets/index-CU2QJgvx.js +0 -609
  237. package/client/dist/assets/index-ftvVcUT8.css +0 -1
  238. package/client/dist/assets/stateDiagram-v2-6OUMAXLB-DvwiHlJv.js +0 -1
  239. package/client/dist/assets/swimlanesDiagram-G3AALYLV-JTQZTlZ3.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"replay-snapshot.js","sourceRoot":"","sources":["../../src/terminal/replay-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,uBAAuB,GAAG,+BAA+B,CAAC;AAChE,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AACpC,MAAM,sBAAsB,GAAG,GAAG,GAAG,QAAQ,CAAC;AAE9C,MAAM,UAAU,2BAA2B,CACzC,GAAmB;IAEnB,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACpB,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7E,IAAI,GAAG,IAAI,GAAG,kBAAkB,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC7C,IAAI,GAAG,sBAAsB,GAAG,IAAI,CAAC;IACvC,CAAC;IACD,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,IAAI;QACJ,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,eAAe,EAAE,GAAG,CAAC,eAAe;KACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAgC,EAChC,MAAc,EACd,eAAmC,EACnC,UAAiC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,GAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CACL,uCAAuC,MAAM,KAAM,GAAa,CAAC,OAAO,EAAE,CAC3E,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,eAAe,IAAI,GAAG,CAAC,eAAe,KAAK,eAAe,EAAE,CAAC;QAC/D,OAAO,CACL,4CAA4C,MAAM,UAAU,GAAG,CAAC,eAAe,aAAa,eAAe,mCAAmC,CAC/I,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"replay-snapshot.js","sourceRoot":"","sources":["../../src/terminal/replay-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,uBAAuB,GAAG,+BAA+B,CAAC;AAChE,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AACpC,MAAM,sBAAsB,GAAG,GAAG,GAAG,QAAQ,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,yBAAyB,GAC7B,iEAAiE,CAAC;AAYpE,MAAM,UAAU,2BAA2B,CACzC,GAAmB,EACnB,IAAyC;IAEzC,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACpB,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7E,IAAI,GAAG,IAAI,GAAG,kBAAkB,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC7C,IAAI,GAAG,sBAAsB,GAAG,IAAI,CAAC;IACvC,CAAC;IACD,IAAI,IAAI,EAAE,wBAAwB,EAAE,CAAC;QACnC,IAAI,GAAG,IAAI,GAAG,yBAAyB,CAAC;IAC1C,CAAC;IACD,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,IAAI;QACJ,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,eAAe,EAAE,GAAG,CAAC,eAAe;KACrC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAgC,EAChC,MAAc,EACd,eAAmC,EACnC,UAAiC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,GAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CACL,uCAAuC,MAAM,KAAM,GAAa,CAAC,OAAO,EAAE,CAC3E,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,eAAe,IAAI,GAAG,CAAC,eAAe,KAAK,eAAe,EAAE,CAAC;QAC/D,OAAO,CACL,4CAA4C,MAAM,UAAU,GAAG,CAAC,eAAe,aAAa,eAAe,mCAAmC,CAC/I,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -7,6 +7,22 @@ interface WSMessageData {
7
7
  type: "data";
8
8
  payload: string;
9
9
  }
10
+ /**
11
+ * SGR mouse report (iterate-2026-08-24-terminal-readonly-scroll-copy). Wire
12
+ * mirror of the client's `terminal-mouse-report.ts` classification — carries
13
+ * the SAME bytes as `data` but is honoured for a READER too (see the writer
14
+ * gate in `onMessage` below): Claude's live TUI implements scroll and
15
+ * selection-for-copy purely via these reports (alt-screen + any-motion
16
+ * tracking, `?1003h`), so gating them like real keystrokes left a read-only
17
+ * viewer unable to scroll or copy. `isSgrMouseReport` re-validates the shape
18
+ * server-side rather than trusting the client's tag — only a bounded
19
+ * button+coordinate SGR frame ever reaches the pty from a non-writer, never
20
+ * arbitrary text a client could mislabel.
21
+ */
22
+ interface WSMessageMouse {
23
+ type: "mouse";
24
+ payload: string;
25
+ }
10
26
  interface WSMessageResize {
11
27
  type: "resize";
12
28
  cols: number;
@@ -37,7 +53,7 @@ interface WSMessageRedraw {
37
53
  interface WSMessageResync {
38
54
  type: "resync";
39
55
  }
40
- export type WSInbound = WSMessageData | WSMessageResize | WSMessageRedraw | WSMessageResync;
56
+ export type WSInbound = WSMessageData | WSMessageMouse | WSMessageResize | WSMessageRedraw | WSMessageResync;
41
57
  export declare function isWSInbound(v: unknown): v is WSInbound;
42
58
  /**
43
59
  * `ValidatedWsUpgradeContext` encodes the strict precondition that
@@ -1 +1 @@
1
- {"version":3,"file":"ws-upgrade-handler.d.ts","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,KAAK,EAEV,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAkB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAazE,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AACD;;;;;;GAMG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;CAChB;AACD;;;;;;;;;;;GAWG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;CAChB;AACD,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,eAAe,GACf,eAAe,GACf,eAAe,CAAC;AAEpB,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,SAAS,CAUtD;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,MAAM,CAAC;CACrC;AA8CD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,yBAAyB,GAC7B,QAAQ,CAAC,SAAS,CAAC,CAQrB"}
1
+ {"version":3,"file":"ws-upgrade-handler.d.ts","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACpF,OAAO,KAAK,EAEV,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAkB,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAczE,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;;;;;GAWG;AACH,UAAU,cAAc;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AACD;;;;;;GAMG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;CAChB;AACD;;;;;;;;;;;GAWG;AACH,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;CAChB;AACD,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,cAAc,GACd,eAAe,GACf,eAAe,GACf,eAAe,CAAC;AAEpB,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,SAAS,CAWtD;AAkBD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,MAAM,CAAC;CACrC;AA+CD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,yBAAyB,GAC7B,QAAQ,CAAC,SAAS,CAAC,CAQrB"}
@@ -22,6 +22,7 @@ export interface MockPtyManager extends PtyManager {
22
22
  flushMirrorSnapshot: ReturnType<typeof vi.fn>;
23
23
  getRole: ReturnType<typeof vi.fn>;
24
24
  write: ReturnType<typeof vi.fn>;
25
+ writeMouseReport: ReturnType<typeof vi.fn>;
25
26
  resize: ReturnType<typeof vi.fn>;
26
27
  };
27
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ws-upgrade-handler.fixtures.d.ts","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.fixtures.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,+BAA+B,CAAC;AAMvC,wBAAgB,QAAQ,CAAC,SAAS,GAAE,OAAO,CAAC,YAAY,CAAM,GAAG,YAAY,CAiB5E;AAED,wBAAgB,QAAQ,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CAQ9E;AAMD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACjC;AAED,wBAAgB,MAAM,IAAI,MAAM,CAK/B;AAMD,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,OAAO,EAAE;QACP,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACjC,sBAAsB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACjD,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACvC,aAAa,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACxC,qBAAqB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,cAAc,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACzC,mBAAmB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAClC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;KAClC,CAAC;CACH;AAED,wBAAgB,cAAc,CAC5B,IAAI,GAAE;IACJ,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,CAAC;IACtE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;CACnB,GACL,cAAc,CAoChB;AAMD,wBAAgB,SAAS,IAAI;IAC3B,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACnC,CAMA;AAMD,wBAAgB,OAAO,CACrB,SAAS,GAAE,OAAO,CAAC,yBAAyB,CAAM,GACjD,yBAAyB,CAY3B;AAMD,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,EAAE,CAK9C;AAED,2EAA2E;AAC3E,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD"}
1
+ {"version":3,"file":"ws-upgrade-handler.fixtures.d.ts","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.fixtures.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,+BAA+B,CAAC;AAMvC,wBAAgB,QAAQ,CAAC,SAAS,GAAE,OAAO,CAAC,YAAY,CAAM,GAAG,YAAY,CAiB5E;AAED,wBAAgB,QAAQ,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CAQ9E;AAMD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACjC;AAED,wBAAgB,MAAM,IAAI,MAAM,CAK/B;AAMD,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,OAAO,EAAE;QACP,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACjC,sBAAsB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACjD,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACvC,aAAa,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACxC,qBAAqB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,cAAc,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACzC,mBAAmB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAClC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChC,gBAAgB,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3C,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;KAClC,CAAC;CACH;AAED,wBAAgB,cAAc,CAC5B,IAAI,GAAE;IACJ,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,CAAC;IACtE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;CACnB,GACL,cAAc,CAqChB;AAMD,wBAAgB,SAAS,IAAI;IAC3B,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACnC,CAMA;AAMD,wBAAgB,OAAO,CACrB,SAAS,GAAE,OAAO,CAAC,yBAAyB,CAAM,GACjD,yBAAyB,CAY3B;AAMD,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,EAAE,CAK9C;AAED,2EAA2E;AAC3E,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD"}
@@ -63,6 +63,7 @@ export function makePtyManager(opts = {}) {
63
63
  const flushMirrorSnapshot = vi.fn(async () => undefined);
64
64
  const getRole = vi.fn(() => attachResult.role);
65
65
  const write = vi.fn();
66
+ const writeMouseReport = vi.fn();
66
67
  const resize = vi.fn();
67
68
  // Post-replay redraw nudge (iterate-2026-07-27). NOTE the server tsconfig
68
69
  // EXCLUDES **/*.test.ts, so a mock missing a real method fails at RUNTIME,
@@ -72,12 +73,12 @@ export function makePtyManager(opts = {}) {
72
73
  get, spawn, attach, subscribeForConnection,
73
74
  pauseForConn, resumeForConn,
74
75
  serializeMirrorIfLive, detachAndCount, flushMirrorSnapshot,
75
- getRole, write, resize, forceRedraw,
76
+ getRole, write, writeMouseReport, resize, forceRedraw,
76
77
  __mocks: {
77
78
  get, spawn, attach, subscribeForConnection,
78
79
  pauseForConn, resumeForConn,
79
80
  serializeMirrorIfLive, detachAndCount, flushMirrorSnapshot,
80
- getRole, write, resize, forceRedraw,
81
+ getRole, write, writeMouseReport, resize, forceRedraw,
81
82
  },
82
83
  };
83
84
  return m;
@@ -1 +1 @@
1
- {"version":3,"file":"ws-upgrade-handler.fixtures.js","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.fixtures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws-upgrade-handler.fixtures.js","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.fixtures.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,8 @@ export function isWSInbound(v) {
39
39
  const o = v;
40
40
  if (o.type === "data" && typeof o.payload === "string")
41
41
  return true;
42
+ if (o.type === "mouse" && typeof o.payload === "string")
43
+ return true;
42
44
  if (o.type === "resize" && typeof o.cols === "number" && typeof o.rows === "number") {
43
45
  return true;
44
46
  }
@@ -48,6 +50,16 @@ export function isWSInbound(v) {
48
50
  return true;
49
51
  return false;
50
52
  }
53
+ /**
54
+ * SGR mouse report: ESC [ < Cb ; Cx ; Cy (M|m) — mirror of the client's
55
+ * `terminal-mouse-report.ts` (no cross-package import, DO-NOT #7). The
56
+ * server-side re-check on a `mouse` message's payload before it bypasses the
57
+ * writer gate below.
58
+ */
59
+ const SGR_MOUSE_REPORT = /^\x1b\[<\d+;\d+;\d+[Mm]$/;
60
+ function isSgrMouseReport(data) {
61
+ return SGR_MOUSE_REPORT.test(data);
62
+ }
51
63
  // ---------------------------------------------------------------------------
52
64
  // Private helpers (formerly factory-closure helpers inside routes.ts).
53
65
  // Moved here as one cohesive unit per external plan review HIGH #2 so
@@ -63,9 +75,9 @@ const resolveReplaySnapshot = async (ctx) => {
63
75
  };
64
76
  // ADR-089 — single-envelope replay emit. Backpressure stays trivial
65
77
  // because the entire snapshot is one WS frame.
66
- const sendReplaySnapshot = (ws, rec) => {
78
+ const sendReplaySnapshot = (ws, rec, opts) => {
67
79
  try {
68
- ws.send(JSON.stringify(buildReplaySnapshotEnvelope(rec)));
80
+ ws.send(JSON.stringify(buildReplaySnapshotEnvelope(rec, opts)));
69
81
  return true;
70
82
  }
71
83
  catch {
@@ -141,7 +153,10 @@ function buildReplayOnlyHandlers(ctx) {
141
153
  // emission has been retired.
142
154
  const snap = await tryReadSnapshot(ctx.snapshotStore, taskId, ctx.expectedTerminalVersion);
143
155
  if (snap) {
144
- sendReplaySnapshot(ws, snap);
156
+ sendReplaySnapshot(ws, snap,
157
+ // Iterate-2026-08-27 — this attach is final: no live pty will
158
+ // ever follow up to turn mouse-tracking / alt-scroll back off.
159
+ { tearDownInteractionModes: true });
145
160
  }
146
161
  // Close cleanly — no live shell to keep open.
147
162
  try {
@@ -402,7 +417,21 @@ function buildLiveHandlers(ctx) {
402
417
  // snapshot; a live pty resolves here exactly as before.
403
418
  const snap = await (preSpawnReplay ?? resolveReplaySnapshot(ctx));
404
419
  if (snap) {
405
- sendReplaySnapshot(ws, snap);
420
+ sendReplaySnapshot(ws, snap,
421
+ // doubt-reviewer (HIGH) — `!ptyExistedBeforeAttach` means this
422
+ // attach just spawned a BARE, unrelated shell; the disk
423
+ // snapshot being replayed may still encode mouse-tracking /
424
+ // alt-scroll from whatever last ran (typically Claude's TUI),
425
+ // and unlike the ptyExistedBeforeAttach=true case, no live pty
426
+ // will ever follow up to turn those modes back off — the same
427
+ // dead-scroll/dead-copy defect Bug A's replay-only teardown
428
+ // exists to fix, reached through this reaped-pty reconnect
429
+ // path instead. `terminalReset` is NOT the right gate here
430
+ // (it additionally requires `firstJsonlObservedAt`, which is
431
+ // orthogonal to whether a live pty exists) — this uses the
432
+ // same synchronous pre-spawn probe `terminalReset` itself is
433
+ // derived from.
434
+ !ptyExistedBeforeAttach ? { tearDownInteractionModes: true } : undefined);
406
435
  }
407
436
  flushLiveBuffer(ws);
408
437
  replayDone = true;
@@ -464,6 +493,18 @@ function buildLiveHandlers(ctx) {
464
493
  // reader. attach() is idempotent for same-conn since the
465
494
  // F6 fix, but getRole() is the cheaper + safer entrypoint.
466
495
  const actualRole = ctx.ptyManager.getRole(taskId, connToken);
496
+ // Reader-scroll/copy exception (iterate-2026-08-24-terminal-readonly-
497
+ // scroll-copy) — honoured for BOTH roles, ahead of the writer gate
498
+ // below. See WSMessageMouse for why, and isSgrMouseReport for the
499
+ // server-side re-validation of the client's tag. writeMouseReport()
500
+ // also skips the `hadDataWritten` latch: scrolling/selecting is not
501
+ // "real input" for the new-plain-resume heuristic that latch feeds.
502
+ if (parsed.type === "mouse") {
503
+ if (actualRole !== null && isSgrMouseReport(parsed.payload)) {
504
+ ctx.ptyManager.writeMouseReport(taskId, parsed.payload);
505
+ }
506
+ return;
507
+ }
467
508
  if (actualRole !== "writer") {
468
509
  try {
469
510
  ws.send(JSON.stringify({ type: "read_only" }));
@@ -1 +1 @@
1
- {"version":3,"file":"ws-upgrade-handler.js","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws-upgrade-handler.js","sourceRoot":"","sources":["../../src/terminal/ws-upgrade-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export declare const SERVER_SRC: string;
2
+ export declare function walk(dir: string, acc?: string[]): string[];
3
+ /** `file` relative to server/src, forward-slash normalized — full-path
4
+ * match, never a bare basename (a bare basename would let a same-named file
5
+ * dropped anywhere else in the tree inherit an allowance it was never
6
+ * granted). */
7
+ export declare function relToServerSrc(file: string): string;
8
+ export declare function readSource(file: string): string;
9
+ /** Strip block/line comments while preserving line breaks and string
10
+ * contents, so a doc-comment mentioning these patterns never false-positives
11
+ * while a real `"python3"` spawn literal still matches. */
12
+ export declare function stripCommentsPreserveLines(src: string): string;
13
+ export declare function indexToLine(src: string, index: number): number;
14
+ //# sourceMappingURL=python-spawn-guard-util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-spawn-guard-util.d.ts","sourceRoot":"","sources":["../../src/test/python-spawn-guard-util.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,UAAU,QAA2B,CAAC;AAEnD,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CAiB9D;AAED;;;gBAGgB;AAChB,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;4DAE4D;AAC5D,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiE9D;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAM9D"}
@@ -0,0 +1,124 @@
1
+ /*
2
+ * Shared source-scan helpers for the python-spawn drift guards
3
+ * (no-direct-python-spawn.test.ts + no-indirect-python-spawn.test.ts,
4
+ * iterate-2026-08-26-grade-uv-run). Split out once the guard grew past one
5
+ * check per file — mirrors the walk + comment-strip convention of
6
+ * no-cross-package-imports.test.ts, but factored so the two guard files don't
7
+ * duplicate it between themselves.
8
+ */
9
+ import { readdirSync, readFileSync, statSync } from "node:fs";
10
+ import { dirname, join, relative, resolve } from "node:path";
11
+ import { fileURLToPath } from "node:url";
12
+ const __filename = fileURLToPath(import.meta.url);
13
+ const __dirname = dirname(__filename);
14
+ // server/src/test/ → server/src
15
+ export const SERVER_SRC = resolve(__dirname, "..");
16
+ export function walk(dir, acc = []) {
17
+ for (const entry of readdirSync(dir)) {
18
+ const full = join(dir, entry);
19
+ const st = statSync(full);
20
+ if (st.isDirectory()) {
21
+ if (entry === "node_modules" || entry === "dist")
22
+ continue;
23
+ walk(full, acc);
24
+ }
25
+ else if (st.isFile() &&
26
+ entry.endsWith(".ts") &&
27
+ !entry.endsWith(".d.ts") &&
28
+ !entry.endsWith(".test.ts")) {
29
+ acc.push(full);
30
+ }
31
+ }
32
+ return acc;
33
+ }
34
+ /** `file` relative to server/src, forward-slash normalized — full-path
35
+ * match, never a bare basename (a bare basename would let a same-named file
36
+ * dropped anywhere else in the tree inherit an allowance it was never
37
+ * granted). */
38
+ export function relToServerSrc(file) {
39
+ return relative(SERVER_SRC, file).split("\\").join("/");
40
+ }
41
+ export function readSource(file) {
42
+ return readFileSync(file, "utf-8");
43
+ }
44
+ /** Strip block/line comments while preserving line breaks and string
45
+ * contents, so a doc-comment mentioning these patterns never false-positives
46
+ * while a real `"python3"` spawn literal still matches. */
47
+ export function stripCommentsPreserveLines(src) {
48
+ let out = "";
49
+ let i = 0;
50
+ let inBlock = false;
51
+ let inLine = false;
52
+ let inString = null;
53
+ let escape = false;
54
+ while (i < src.length) {
55
+ const ch = src[i];
56
+ const next = src[i + 1];
57
+ if (inBlock) {
58
+ if (ch === "*" && next === "/") {
59
+ out += " ";
60
+ i += 2;
61
+ inBlock = false;
62
+ continue;
63
+ }
64
+ out += ch === "\n" ? "\n" : " ";
65
+ i++;
66
+ continue;
67
+ }
68
+ if (inLine) {
69
+ if (ch === "\n") {
70
+ out += "\n";
71
+ inLine = false;
72
+ }
73
+ else {
74
+ out += " ";
75
+ }
76
+ i++;
77
+ continue;
78
+ }
79
+ if (inString) {
80
+ out += ch;
81
+ if (escape) {
82
+ escape = false;
83
+ }
84
+ else if (ch === "\\") {
85
+ escape = true;
86
+ }
87
+ else if (ch === inString) {
88
+ inString = null;
89
+ }
90
+ i++;
91
+ continue;
92
+ }
93
+ if (ch === "/" && next === "*") {
94
+ out += " ";
95
+ i += 2;
96
+ inBlock = true;
97
+ continue;
98
+ }
99
+ if (ch === "/" && next === "/") {
100
+ out += " ";
101
+ i += 2;
102
+ inLine = true;
103
+ continue;
104
+ }
105
+ if (ch === '"' || ch === "'" || ch === "`") {
106
+ inString = ch;
107
+ out += ch;
108
+ i++;
109
+ continue;
110
+ }
111
+ out += ch;
112
+ i++;
113
+ }
114
+ return out;
115
+ }
116
+ export function indexToLine(src, index) {
117
+ let line = 1;
118
+ for (let i = 0; i < index; i++) {
119
+ if (src[i] === "\n")
120
+ line++;
121
+ }
122
+ return line;
123
+ }
124
+ //# sourceMappingURL=python-spawn-guard-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-spawn-guard-util.js","sourceRoot":"","sources":["../../src/test/python-spawn-guard-util.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,gCAAgC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEnD,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,MAAgB,EAAE;IAClD,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9B,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,MAAM;gBAAE,SAAS;YAC3D,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAClB,CAAC;aAAM,IACL,EAAE,CAAC,MAAM,EAAE;YACX,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YACrB,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YACxB,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC3B,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;gBAGgB;AAChB,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;4DAE4D;AAC5D,MAAM,UAAU,0BAA0B,CAAC,GAAW;IACpD,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,QAAQ,GAA2B,IAAI,CAAC;IAC5C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxB,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,IAAI,CAAC,CAAC;gBACP,OAAO,GAAG,KAAK,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YAChC,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBAChB,GAAG,IAAI,IAAI,CAAC;gBACZ,MAAM,GAAG,KAAK,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,GAAG,IAAI,GAAG,CAAC;YACb,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,GAAG,KAAK,CAAC;YACjB,CAAC;iBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,GAAG,IAAI,CAAC;YAChB,CAAC;iBAAM,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;gBAC3B,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC/B,GAAG,IAAI,IAAI,CAAC;YACZ,CAAC,IAAI,CAAC,CAAC;YACP,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC/B,GAAG,IAAI,IAAI,CAAC;YACZ,CAAC,IAAI,CAAC,CAAC;YACP,MAAM,GAAG,IAAI,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC3C,QAAQ,GAAG,EAAqB,CAAC;YACjC,GAAG,IAAI,EAAE,CAAC;YACV,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,GAAG,IAAI,EAAE,CAAC;QACV,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,KAAa;IACpD,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,115 @@
1
+ import type { Staleness } from "../external/org/cron.js";
2
+ import type { LeadOrgInfoReason } from "../external/org/org-chart-lookup.js";
3
+ export interface OrgChartLeadView {
4
+ domain: string;
5
+ name: string;
6
+ reports_to: string | null;
7
+ manages: string[];
8
+ charter_path: string;
9
+ }
10
+ export interface OrgChartView {
11
+ version: number;
12
+ po: string;
13
+ leads: Record<string, OrgChartLeadView>;
14
+ }
15
+ export type UsageResponse = {
16
+ leadId: string;
17
+ measured: false;
18
+ } | {
19
+ leadId: string;
20
+ measured: true;
21
+ costUsd: number;
22
+ runCount: number;
23
+ windowDays: number;
24
+ asOf: string;
25
+ };
26
+ export type CadenceUnresolvedReason = LeadOrgInfoReason | "invalid_cron";
27
+ export type LastRunResponse = {
28
+ leadId: string;
29
+ measured: false;
30
+ } | {
31
+ leadId: string;
32
+ measured: true;
33
+ lastRunAt: string;
34
+ sessionId: string;
35
+ staleness: Staleness | "unknown";
36
+ thresholdMs: number | null;
37
+ cadenceMs: number | null;
38
+ cadenceUnresolvedReason?: CadenceUnresolvedReason;
39
+ };
40
+ export interface BeatRegisterEntryView {
41
+ sessionId: string;
42
+ beatId: string;
43
+ leadId: string;
44
+ pid: number;
45
+ startedAt: string;
46
+ closedAt: string | null;
47
+ }
48
+ export type BeatRegisterHealthResponse = {
49
+ leadId: string;
50
+ status: "clear";
51
+ } | {
52
+ leadId: string;
53
+ status: "open";
54
+ entry: BeatRegisterEntryView;
55
+ } | {
56
+ leadId: string;
57
+ status: "fault";
58
+ reason: "duplicate-session-id";
59
+ sessionId: string;
60
+ entries: BeatRegisterEntryView[];
61
+ };
62
+ /** The Now block's four states (iterate spec AC-2) — "waiting on you" is
63
+ * deliberately absent, see the iterate spec's Design Notes. */
64
+ export type LeadNowState = {
65
+ state: "running";
66
+ } | {
67
+ state: "resting";
68
+ lastRun: {
69
+ measured: false;
70
+ } | {
71
+ measured: true;
72
+ lastRunAt: string;
73
+ };
74
+ } | {
75
+ state: "needs-attention";
76
+ reason: "duplicate-session";
77
+ } | {
78
+ state: "not-measured";
79
+ };
80
+ export type LeadRoleView = {
81
+ measured: false;
82
+ } | {
83
+ measured: true;
84
+ text: string;
85
+ };
86
+ export type LeadCadenceView = {
87
+ measured: false;
88
+ } | {
89
+ measured: true;
90
+ text: string;
91
+ cron: string;
92
+ };
93
+ export interface LeadRosterEntry {
94
+ leadId: string;
95
+ domain: string;
96
+ name: string;
97
+ reportsTo: string | null;
98
+ role: LeadRoleView;
99
+ now: LeadNowState;
100
+ cadence: LeadCadenceView;
101
+ usage: UsageResponse;
102
+ }
103
+ export interface LeadsRosterResponse {
104
+ leads: LeadRosterEntry[];
105
+ }
106
+ export interface AuditLogEntry {
107
+ raw: string;
108
+ parsed: Record<string, unknown> | null;
109
+ }
110
+ export interface AuditLogPage {
111
+ entries: AuditLogEntry[];
112
+ total: number;
113
+ nextCursor: number | null;
114
+ }
115
+ //# sourceMappingURL=org.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org.d.ts","sourceRoot":"","sources":["../../src/types/org.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /*
2
+ * types/org.ts — canonical TS shapes for the leadwright org-directory route
3
+ * family (`/api/external/org/*`, and its plain-surface mirror `/api/org/*`,
4
+ * see `server/src/routes/org.ts`).
5
+ *
6
+ * `external/org/*.ts` import their response types from here instead of
7
+ * declaring them inline, so the secret-gated route and the browser-facing
8
+ * proxy can never drift on wire shape. Client-side mirrors (`client/src/lib/
9
+ * orgApi.ts`) are verbatim copies of these — same discipline as
10
+ * `triage.ts` / `action-schema.ts` (CLAUDE.md rule 7), guarded here by
11
+ * `org-schema-sync.test.ts`'s union-arm comparison (these are discriminated
12
+ * unions, not flat interfaces — the flat-interface field-name guard those
13
+ * two files use does not apply).
14
+ */
15
+ export {};
16
+ //# sourceMappingURL=org.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org.js","sourceRoot":"","sources":["../../src/types/org.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shipwright-command-center-server",
3
- "version": "0.24.7-next.0",
3
+ "version": "0.26.0",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "dev": "tsx watch --env-file-if-exists=../.env.local src/index.ts",
@@ -1 +1 @@
1
- 1
1
+ 1
@@ -1,27 +1,27 @@
1
- # Bundled stack profiles
2
-
3
- This directory holds a **snapshot** of `shared/profiles/*.json` from the
4
- Shipwright monorepo. The WebUI ships this snapshot so it can run
5
- standalone — no Shipwright repo required at runtime.
6
-
7
- ## Lookup order (see `server/src/core/profile-loader.ts::getProfilesDir`)
8
-
9
- 1. `SHIPWRIGHT_PROFILES_DIR` — explicit user override (absolute path).
10
- 2. `SHIPWRIGHT_MONOREPO_PATH` → `<path>/shared/profiles/` — dev-loop
11
- helper: when you're iterating on the Shipwright monorepo itself and
12
- want profile edits to take effect without re-syncing the snapshot.
13
- 3. This directory (bundled snapshot) — the default when neither env
14
- var is set.
15
-
16
- ## Keeping the snapshot fresh
17
-
18
- The source of truth is `shipwright/shared/profiles/`. When profiles
19
- change upstream, re-run:
20
-
21
- ```bash
22
- npm run sync-profiles # (from webui/server/)
23
- ```
24
-
25
- …or just copy the changed files manually. There is no automatic sync —
26
- the snapshot-vs-live drift is intentional so Shipwright and the WebUI
27
- can release independently.
1
+ # Bundled stack profiles
2
+
3
+ This directory holds a **snapshot** of `shared/profiles/*.json` from the
4
+ Shipwright monorepo. The WebUI ships this snapshot so it can run
5
+ standalone — no Shipwright repo required at runtime.
6
+
7
+ ## Lookup order (see `server/src/core/profile-loader.ts::getProfilesDir`)
8
+
9
+ 1. `SHIPWRIGHT_PROFILES_DIR` — explicit user override (absolute path).
10
+ 2. `SHIPWRIGHT_MONOREPO_PATH` → `<path>/shared/profiles/` — dev-loop
11
+ helper: when you're iterating on the Shipwright monorepo itself and
12
+ want profile edits to take effect without re-syncing the snapshot.
13
+ 3. This directory (bundled snapshot) — the default when neither env
14
+ var is set.
15
+
16
+ ## Keeping the snapshot fresh
17
+
18
+ The source of truth is `shipwright/shared/profiles/`. When profiles
19
+ change upstream, re-run:
20
+
21
+ ```bash
22
+ npm run sync-profiles # (from webui/server/)
23
+ ```
24
+
25
+ …or just copy the changed files manually. There is no automatic sync —
26
+ the snapshot-vs-live drift is intentional so Shipwright and the WebUI
27
+ can release independently.