strikethroo 4.2.2 → 4.3.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 (131) hide show
  1. package/README.md +1 -1
  2. package/dist/cli.js +7 -3
  3. package/dist/cli.js.map +1 -1
  4. package/dist/harnesses/agent-adapter.d.ts.map +1 -1
  5. package/dist/harnesses/agent-adapter.js +13 -7
  6. package/dist/harnesses/agent-adapter.js.map +1 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +39 -10
  9. package/dist/index.js.map +1 -1
  10. package/dist/profiles.d.ts +7 -1
  11. package/dist/profiles.d.ts.map +1 -1
  12. package/dist/profiles.js +65 -4
  13. package/dist/profiles.js.map +1 -1
  14. package/dist/serve/archive.d.ts.map +1 -1
  15. package/dist/serve/archive.js +37 -5
  16. package/dist/serve/archive.js.map +1 -1
  17. package/dist/serve/events.d.ts +4 -1
  18. package/dist/serve/events.d.ts.map +1 -1
  19. package/dist/serve/events.js +18 -1
  20. package/dist/serve/events.js.map +1 -1
  21. package/dist/serve/server.d.ts +26 -0
  22. package/dist/serve/server.d.ts.map +1 -1
  23. package/dist/serve/server.js +39 -5
  24. package/dist/serve/server.js.map +1 -1
  25. package/dist/skill-scripts/shared/blueprint-parse.d.ts.map +1 -1
  26. package/dist/skill-scripts/shared/blueprint-parse.js +3 -1
  27. package/dist/skill-scripts/shared/blueprint-parse.js.map +1 -1
  28. package/dist/skill-scripts/shared/safe-fs.d.ts +9 -0
  29. package/dist/skill-scripts/shared/safe-fs.d.ts.map +1 -1
  30. package/dist/skill-scripts/shared/safe-fs.js +42 -1
  31. package/dist/skill-scripts/shared/safe-fs.js.map +1 -1
  32. package/dist/skill-scripts/shared/terminal-text.d.ts +8 -0
  33. package/dist/skill-scripts/shared/terminal-text.d.ts.map +1 -0
  34. package/dist/skill-scripts/shared/terminal-text.js +18 -0
  35. package/dist/skill-scripts/shared/terminal-text.js.map +1 -0
  36. package/dist-web/assets/{abnfDiagram-VCTEODGH-BzCsgJDs.js → abnfDiagram-VCTEODGH-BvZ1pCY3.js} +1 -1
  37. package/dist-web/assets/{architecture-7GRP2DOG-CBUhnWrC.js → architecture-7GRP2DOG-BeduVWtR.js} +1 -1
  38. package/dist-web/assets/{architectureDiagram-5GKGNRK7-Bop_LnoV.js → architectureDiagram-5GKGNRK7-CvEdyO1F.js} +1 -1
  39. package/dist-web/assets/{blockDiagram-I7D4REHJ-DOXaeClv.js → blockDiagram-I7D4REHJ-0I7HYa3X.js} +1 -1
  40. package/dist-web/assets/{c4Diagram-7LVT6UL2-DrCdQZVp.js → c4Diagram-7LVT6UL2-zsEFngW4.js} +1 -1
  41. package/dist-web/assets/channel-CRuV_uu-.js +1 -0
  42. package/dist-web/assets/{chunk-4HAMMTFA-Firu94wp.js → chunk-4HAMMTFA-DbD3wbdw.js} +1 -1
  43. package/dist-web/assets/{chunk-75Z2AOVW-BjQRmZig.js → chunk-75Z2AOVW-W0OMgx4h.js} +1 -1
  44. package/dist-web/assets/{chunk-DU6HZSFF-CTqk1VQb.js → chunk-DU6HZSFF-DkIrl6EA.js} +1 -1
  45. package/dist-web/assets/{chunk-F27PBJKO-h5Njo5KQ.js → chunk-F27PBJKO-DXebO2XW.js} +1 -1
  46. package/dist-web/assets/{chunk-GMAD6QVW-CcW6t_R-.js → chunk-GMAD6QVW-BQt0R132.js} +1 -1
  47. package/dist-web/assets/{chunk-GVQU2GXP-DK2NmlUp.js → chunk-GVQU2GXP-CrfoFpp_.js} +1 -1
  48. package/dist-web/assets/{chunk-IMKFNOWR-C3JrEGM9.js → chunk-IMKFNOWR-Cly2PY7c.js} +1 -1
  49. package/dist-web/assets/{chunk-L3NEJ4N5-BHRlSK25.js → chunk-L3NEJ4N5-T4qOJdCN.js} +1 -1
  50. package/dist-web/assets/{chunk-OSK3NFVY-BwzOR6V3.js → chunk-OSK3NFVY-dTmduRUB.js} +1 -1
  51. package/dist-web/assets/{chunk-P2QGCYS3-DkJLsuP2.js → chunk-P2QGCYS3-GnvtDll1.js} +1 -1
  52. package/dist-web/assets/{chunk-POPQ4Y6H-CrcoeybN.js → chunk-POPQ4Y6H-CFCQ60uc.js} +1 -1
  53. package/dist-web/assets/{chunk-PWAF6VOD-DYesOocU.js → chunk-PWAF6VOD-aI4ujNz9.js} +1 -1
  54. package/dist-web/assets/{chunk-SHT3W25Y-DJdG0y2z.js → chunk-SHT3W25Y-BElsN9YS.js} +1 -1
  55. package/dist-web/assets/{chunk-SVP7TREG-B2xVgR-D.js → chunk-SVP7TREG-DAFJKfg_.js} +1 -1
  56. package/dist-web/assets/{chunk-TICWLB2K-L-9PgYn4.js → chunk-TICWLB2K-wB7wX3Zz.js} +1 -1
  57. package/dist-web/assets/classDiagram-ZZMXUADV-BdHt3Gse.js +1 -0
  58. package/dist-web/assets/classDiagram-v2-VYDZK3BY-BdHt3Gse.js +1 -0
  59. package/dist-web/assets/{cynefin-OW5HDTMX-BHBebW5E.js → cynefin-OW5HDTMX-COvBNLLf.js} +1 -1
  60. package/dist-web/assets/{cynefinDiagram-5FMLGOSQ-CDC-xmWs.js → cynefinDiagram-5FMLGOSQ-Cwet8Ftt.js} +1 -1
  61. package/dist-web/assets/{dagre-GXQ25YYZ-vAjnQ2Vf.js → dagre-GXQ25YYZ-D6jN98mQ.js} +1 -1
  62. package/dist-web/assets/{diagram-S7CK7UJ4-D4Pe9028.js → diagram-S7CK7UJ4-D2cmTVs4.js} +1 -1
  63. package/dist-web/assets/{diagram-UQ7AKVKN-BK4TJUPp.js → diagram-UQ7AKVKN-CpZliE8n.js} +1 -1
  64. package/dist-web/assets/{diagram-VSXAHHWV-3fpwV8Sf.js → diagram-VSXAHHWV-D83zce_4.js} +1 -1
  65. package/dist-web/assets/{diagram-VX7I27RA-DXuDwJX2.js → diagram-VX7I27RA-D582YYyi.js} +1 -1
  66. package/dist-web/assets/{diagram-Z3DM3KII-CqfGfr9_.js → diagram-Z3DM3KII-CD8YxCLN.js} +1 -1
  67. package/dist-web/assets/{dist-CpwYT177.js → dist--ERqgORI.js} +1 -1
  68. package/dist-web/assets/{ebnfDiagram-PWID7BFC-D2veYBZ7.js → ebnfDiagram-PWID7BFC-0iTUALfP.js} +1 -1
  69. package/dist-web/assets/{erDiagram-RLTQ6QDP-CKW-_SNe.js → erDiagram-RLTQ6QDP-C_QisMfi.js} +1 -1
  70. package/dist-web/assets/{esm-Dz0rQ969.js → esm-cOBc4rXO.js} +1 -1
  71. package/dist-web/assets/{eventmodeling-NTZA5JFV-DCmo4UiI.js → eventmodeling-NTZA5JFV-tTj3nqCh.js} +1 -1
  72. package/dist-web/assets/flowDiagram-HODETNUW-OZ9Q6u4m.js +1 -0
  73. package/dist-web/assets/{ganttDiagram-EL5Y4UJY-BPFZadEY.js → ganttDiagram-EL5Y4UJY-BPxJCQ7d.js} +1 -1
  74. package/dist-web/assets/{gitGraph-4MIJSDKK-B0izNmDt.js → gitGraph-4MIJSDKK-CXjW6gzn.js} +1 -1
  75. package/dist-web/assets/{gitGraphDiagram-WWUBYQGX-BaRp3Kb3.js → gitGraphDiagram-WWUBYQGX-Dp_VNLVI.js} +1 -1
  76. package/dist-web/assets/index-JIyixqsW.js +103 -0
  77. package/dist-web/assets/{info-A6RAGUB7-CbUASswG.js → info-A6RAGUB7-DO5zjdJI.js} +1 -1
  78. package/dist-web/assets/{infoDiagram-27XIBGKW-DrbBWBPX.js → infoDiagram-27XIBGKW-DpNA8SEc.js} +1 -1
  79. package/dist-web/assets/{ishikawaDiagram-5VMMS53U-Bb1phoDM.js → ishikawaDiagram-5VMMS53U-9dXbb5kQ.js} +1 -1
  80. package/dist-web/assets/{journeyDiagram-3NMN7TZE-B5DJPq3Y.js → journeyDiagram-3NMN7TZE-Dzm5G51X.js} +1 -1
  81. package/dist-web/assets/{kanban-definition-UXKFOSKX-BoXDn7Rh.js → kanban-definition-UXKFOSKX-ClvElG2Y.js} +1 -1
  82. package/dist-web/assets/{line-DZ7SPqmB.js → line-Bh024q-a.js} +1 -1
  83. package/dist-web/assets/{mermaid-parser.core-DzJhgjV2.js → mermaid-parser.core-DCh9vaqa.js} +3 -3
  84. package/dist-web/assets/{mermaid.core-BN8HV7um.js → mermaid.core-jjgqBRWz.js} +4 -4
  85. package/dist-web/assets/{mindmap-definition-YA3MSWOX-Ts-Cmx_X.js → mindmap-definition-YA3MSWOX-Du2-l8jG.js} +1 -1
  86. package/dist-web/assets/{packet-AYTQ26CC-C56Czhto.js → packet-AYTQ26CC-E2lZzC7N.js} +1 -1
  87. package/dist-web/assets/{pegDiagram-XKGWAZYB-C7gd5qaP.js → pegDiagram-XKGWAZYB-Cw80poDJ.js} +1 -1
  88. package/dist-web/assets/{pie-WAS4IAKB-CAWF4bW_.js → pie-WAS4IAKB-CbHY12vd.js} +1 -1
  89. package/dist-web/assets/{pieDiagram-E7YTZNPT-CIW1gCih.js → pieDiagram-E7YTZNPT-eD5BMO-b.js} +1 -1
  90. package/dist-web/assets/{quadrantDiagram-AXDQQJYC-BKnUP8mt.js → quadrantDiagram-AXDQQJYC-DMbfGbkt.js} +1 -1
  91. package/dist-web/assets/{radar-RG4KPBEZ-T98QZGdl.js → radar-RG4KPBEZ-BQuIIJpx.js} +1 -1
  92. package/dist-web/assets/{railroad-74A4TZTK-pGjYW3aV.js → railroad-74A4TZTK-B93i8N4Z.js} +1 -1
  93. package/dist-web/assets/{railroad-abnf-HS5TGJTU-ClesRBvA.js → railroad-abnf-HS5TGJTU-DC4wPjmQ.js} +1 -1
  94. package/dist-web/assets/{railroad-ebnf-LZEXJU2U-BocaTNym.js → railroad-ebnf-LZEXJU2U-CBmTpErC.js} +1 -1
  95. package/dist-web/assets/{railroad-peg-WCYAUIDC-Ctmu6X31.js → railroad-peg-WCYAUIDC-PiiiqepT.js} +1 -1
  96. package/dist-web/assets/{railroadDiagram-O6MQD6OU-Cg8yDfXb.js → railroadDiagram-O6MQD6OU-DTVk__mb.js} +1 -1
  97. package/dist-web/assets/{requirementDiagram-BXWQKSXE-B31bG3OT.js → requirementDiagram-BXWQKSXE-VBlRPuVc.js} +1 -1
  98. package/dist-web/assets/{sankeyDiagram-P5KCCOFB-nKgNMtAl.js → sankeyDiagram-P5KCCOFB-DaLtDOsf.js} +1 -1
  99. package/dist-web/assets/{sequenceDiagram-WJ2MYXX4-C4-cQykl.js → sequenceDiagram-WJ2MYXX4-BUoZS6BQ.js} +1 -1
  100. package/dist-web/assets/{stateDiagram-D77RDMKH-CodCpfyw.js → stateDiagram-D77RDMKH-Ca8WAR4u.js} +1 -1
  101. package/dist-web/assets/stateDiagram-v2-MP3YSRHH-E5Mt_qdX.js +1 -0
  102. package/dist-web/assets/{swimlanes-42K2YHIH-BessW7pk.js → swimlanes-42K2YHIH-BRjd29gH.js} +1 -1
  103. package/dist-web/assets/swimlanesDiagram-VR7AAH4N-D9jN5UVU.js +8 -0
  104. package/dist-web/assets/{timeline-definition-24CTP7MA-Txuv14Lv.js → timeline-definition-24CTP7MA-C4R4KuWo.js} +1 -1
  105. package/dist-web/assets/{treeView-Q6P3EWNA-5RqQc191.js → treeView-Q6P3EWNA-C4dzjL_P.js} +1 -1
  106. package/dist-web/assets/{treemap-WGGIJYW6-CiFJVrM7.js → treemap-WGGIJYW6-BluzEReS.js} +1 -1
  107. package/dist-web/assets/{vennDiagram-4TSXK5OY-B1D7Rp0V.js → vennDiagram-4TSXK5OY-DFK3NdJq.js} +1 -1
  108. package/dist-web/assets/{wardley-WFR3VGLG-B8GUWuzm.js → wardley-WFR3VGLG-CER9SI8U.js} +1 -1
  109. package/dist-web/assets/{wardleyDiagram-VM6X3IG4-Cksom3fY.js → wardleyDiagram-VM6X3IG4-BUCwI02m.js} +1 -1
  110. package/dist-web/assets/{xychartDiagram-S5SC5T6Z-uViy0dpz.js → xychartDiagram-S5SC5T6Z-CCCkgFZH.js} +1 -1
  111. package/dist-web/index.html +1 -1
  112. package/package.json +2 -1
  113. package/dist/__tests__/built-skills.d.ts +0 -15
  114. package/dist/__tests__/built-skills.d.ts.map +0 -1
  115. package/dist/__tests__/built-skills.js +0 -53
  116. package/dist/__tests__/built-skills.js.map +0 -1
  117. package/dist/__tests__/fixtures/blueprint-trailing-summary.d.ts +0 -14
  118. package/dist/__tests__/fixtures/blueprint-trailing-summary.d.ts.map +0 -1
  119. package/dist/__tests__/fixtures/blueprint-trailing-summary.js +0 -54
  120. package/dist/__tests__/fixtures/blueprint-trailing-summary.js.map +0 -1
  121. package/dist/__tests__/fixtures/review-gate.d.ts +0 -62
  122. package/dist/__tests__/fixtures/review-gate.d.ts.map +0 -1
  123. package/dist/__tests__/fixtures/review-gate.js +0 -155
  124. package/dist/__tests__/fixtures/review-gate.js.map +0 -1
  125. package/dist-web/assets/channel-CTbD_jxX.js +0 -1
  126. package/dist-web/assets/classDiagram-ZZMXUADV-D3zm2MPI.js +0 -1
  127. package/dist-web/assets/classDiagram-v2-VYDZK3BY-D3zm2MPI.js +0 -1
  128. package/dist-web/assets/flowDiagram-HODETNUW-DPlW1xZE.js +0 -1
  129. package/dist-web/assets/index-DYXICSNV.js +0 -103
  130. package/dist-web/assets/stateDiagram-v2-MP3YSRHH-CD61TDzc.js +0 -1
  131. package/dist-web/assets/swimlanesDiagram-VR7AAH4N-IUE64bJM.js +0 -8
@@ -60,7 +60,10 @@ export declare class EventsHub {
60
60
  * armed to resume, and the slow timer starts.
61
61
  */
62
62
  private send;
63
- /** Attaches an SSE response, or refuses it with `503` when at capacity. */
63
+ /**
64
+ * Attaches an SSE response, or refuses it: `406` for a browser request that
65
+ * is not an `EventSource` or `fetch`, `503` when at capacity.
66
+ */
64
67
  handleConnection(req: http.IncomingMessage, res: http.ServerResponse): void;
65
68
  /** An {@link ApiHandler} for `GET /api/events`; returns false otherwise. */
66
69
  apiHandler: (req: http.IncomingMessage, res: http.ServerResponse, ctx: {
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/serve/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,0EAA0E;AAC1E,eAAO,MAAM,aAAa,QAAQ,CAAC;AAEnC,iEAAiE;AACjE,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAQxC,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAeD;;;;GAIG;AACH,qBAAa,SAAS;IAMlB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAN9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAGtB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,YAAA,EACpC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM;IASvC,iFAAiF;IACjF,KAAK,IAAI,IAAI;IASb,+DAA+D;IAC/D,KAAK,IAAI,IAAI;IAab,iEAAiE;IACjE,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,uEAAuE;IACvE,IAAI,kBAAkB,IAAI,MAAM,CAI/B;IAED;;;;;OAKG;IACH,SAAS,IAAI,IAAI;IAOjB;;;;OAIG;IACH,OAAO,CAAC,IAAI;IAYZ,2EAA2E;IAC3E,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI;IAyD3E,4EAA4E;IAC5E,UAAU,GACR,KAAK,IAAI,CAAC,eAAe,EACzB,KAAK,IAAI,CAAC,cAAc,EACxB,KAAK;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KACxB,OAAO,CAMR;CACH"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/serve/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,0EAA0E;AAC1E,eAAO,MAAM,aAAa,QAAQ,CAAC;AAEnC,iEAAiE;AACjE,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAQxC,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAeD;;;;GAIG;AACH,qBAAa,SAAS;IAMlB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAN9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAGtB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,YAAA,EACpC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM;IASvC,iFAAiF;IACjF,KAAK,IAAI,IAAI;IASb,+DAA+D;IAC/D,KAAK,IAAI,IAAI;IAab,iEAAiE;IACjE,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,uEAAuE;IACvE,IAAI,kBAAkB,IAAI,MAAM,CAI/B;IAED;;;;;OAKG;IACH,SAAS,IAAI,IAAI;IAOjB;;;;OAIG;IACH,OAAO,CAAC,IAAI;IAYZ;;;OAGG;IACH,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI;IAuE3E,4EAA4E;IAC5E,UAAU,GACR,KAAK,IAAI,CAAC,eAAe,EACzB,KAAK,IAAI,CAAC,cAAc,EACxB,KAAK;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KACxB,OAAO,CAMR;CACH"}
@@ -118,8 +118,25 @@ class EventsHub {
118
118
  }, this.limits.blockedTimeoutMs);
119
119
  state.slowTimer.unref?.();
120
120
  }
121
- /** Attaches an SSE response, or refuses it with `503` when at capacity. */
121
+ /**
122
+ * Attaches an SSE response, or refuses it: `406` for a browser request that
123
+ * is not an `EventSource` or `fetch`, `503` when at capacity.
124
+ */
122
125
  handleConnection(req, res) {
126
+ // An `<img src="/api/events">` in rendered Markdown or a mermaid image node
127
+ // would otherwise hold a never-ending stream per tag and exhaust the
128
+ // browser's per-host connections. `EventSource` sends `Sec-Fetch-Dest:
129
+ // empty`; non-browser clients send no fetch metadata at all.
130
+ const dest = req.headers['sec-fetch-dest'];
131
+ if (dest !== undefined && dest !== 'empty') {
132
+ const body = JSON.stringify({ error: 'The event stream is for EventSource clients only.' });
133
+ res.writeHead(406, {
134
+ 'Content-Type': 'application/json; charset=utf-8',
135
+ 'Content-Length': Buffer.byteLength(body),
136
+ });
137
+ res.end(body);
138
+ return;
139
+ }
123
140
  if (this.clients.size >= this.limits.maxClients) {
124
141
  const body = JSON.stringify({ error: 'Too many event-stream clients.' });
125
142
  res.writeHead(503, {
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/serve/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/serve/events.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAGH,uCAAqE;AAErE,0EAA0E;AAC7D,QAAA,aAAa,GAAG,KAAK,CAAC;AAEnC,iEAAiE;AACpD,QAAA,eAAe,GAAG,EAAE,CAAC;AAElC,oFAAoF;AACvE,QAAA,kBAAkB,GAAG,KAAK,CAAC;AAExC,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAM,aAAa,GAAG,8BAA8B,CAAC;AACrD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAsB9C;;;;GAIG;AACH,MAAa,SAAS;IAKpB,YACmB,YAAoB,EACpB,UAAmB,EACpC,SAAmC,EAAE;QAFpB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,eAAU,GAAV,UAAU,CAAS;QANrB,YAAO,GAAG,IAAI,GAAG,EAAoC,CAAC;QAC/D,YAAO,GAA4B,IAAI,CAAC;QA4JhD,4EAA4E;QAC5E,eAAU,GAAG,CACX,GAAyB,EACzB,GAAwB,EACxB,GAAyB,EAChB,EAAE;YACX,IAAI,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;gBACtE,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAChC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QA/JA,IAAI,CAAC,MAAM,GAAG;YACZ,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,uBAAe;YAChD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,0BAAkB;YAC/D,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,qBAAa;SACjD,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAA,gCAAsB,EACnC,IAAI,CAAC,YAAY,EACjB,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,EACtB,IAAI,CAAC,UAAU,CAChB,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC;QACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,6DAA6D;YAC7D,IAAI,KAAK,CAAC,OAAO;gBAAE,GAAG,CAAC,OAAO,EAAE,CAAC;;gBAC5B,GAAG,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,uEAAuE;IACvE,IAAI,kBAAkB;QACpB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,IAAI,KAAK,CAAC,OAAO;gBAAE,KAAK,IAAI,CAAC,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,SAAS;QACP,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,KAAK,CAAC,OAAO;gBAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;;gBACnC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,IAAI,CAAC,GAAwB,EAAE,KAAkB,EAAE,KAAa;QACtE,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO;QAC7B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,GAAyB,EAAE,GAAwB;QAClE,4EAA4E;QAC5E,qEAAqE;QACrE,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC,CAAC;YAC5F,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,iCAAiC;gBACjD,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;aAC1C,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YACzE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,iCAAiC;gBACjD,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;gBACzC,aAAa,EAAE,MAAM,CAAC,mBAAmB,CAAC;aAC3C,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;YACjB,cAAc,EAAE,mBAAmB;YACnC,eAAe,EAAE,UAAU;YAC3B,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QAEH,MAAM,KAAK,GAAgB;YACzB,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,WAAW,CACpB,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,kBAAkB,CAAC,EAC/C,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB;YACD,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,OAAO;gBACnC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;gBACtB,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;oBACpB,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBAC9B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;gBACzB,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;oBACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;oBAAE,OAAO;gBACtC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC/B,IAAI,KAAK,CAAC,SAAS;oBAAE,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACnD,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3C,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3C,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC;QACF,qEAAqE;QACrE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAE/B,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAC3C,CAAC;CAcF;AA1KD,8BA0KC"}
@@ -30,6 +30,10 @@
30
30
  * (and so the token). No cookies, no accounts, no CORS — the token lives in
31
31
  * the page's memory and is never persisted, logged, or placed in a URL.
32
32
  *
33
+ * With `readOnly`, every mutation route and the session bootstrap answer
34
+ * {@link READ_ONLY} before any other check, so no token is issued and a
35
+ * presented one is never consulted.
36
+ *
33
37
  * The SSE change stream (`GET /api/events`) is added by a separate module that
34
38
  * hooks into the `apiHandlers` extension point below, so this module stays free
35
39
  * of file-watching concerns. Node built-ins only — no runtime dependency, no
@@ -66,6 +70,8 @@ export interface ServeOptions {
66
70
  * every peer that can reach it; see {@link ServeHandle.exposed}.
67
71
  */
68
72
  host?: string;
73
+ /** When `true`, refuse every mutation route and issue no capability. */
74
+ readOnly?: boolean;
69
75
  /**
70
76
  * Seams for the self-review launcher (availability probe and spawn).
71
77
  * Test-only: lets a suite prove a rejected request launched nothing.
@@ -92,6 +98,8 @@ export interface ServeHandle {
92
98
  reachableUrls: string[];
93
99
  /** The SSE change-stream hub backing `GET /api/events`. */
94
100
  events: EventsHub;
101
+ /** True when mutation routes are disabled. */
102
+ readOnly: boolean;
95
103
  /**
96
104
  * This instance's mutation capability. Test-only: production callers (the
97
105
  * CLI) must never print, log, or persist it; the SPA obtains it from
@@ -114,6 +122,8 @@ export interface GuardContext {
114
122
  allowedHosts: ReadonlySet<string>;
115
123
  /** The per-start mutation capability (see the module comment). */
116
124
  capability: string;
125
+ /** When set, mutations and the session bootstrap answer {@link READ_ONLY}. */
126
+ readOnly: boolean;
117
127
  }
118
128
  /**
119
129
  * Outcome of {@link guardRequest} and the per-route guards: the parsed path to
@@ -128,6 +138,15 @@ export type GuardResult = {
128
138
  body: unknown;
129
139
  headers?: Record<string, string>;
130
140
  };
141
+ /** The refusal for a mutation or session request on a read-only server. */
142
+ export declare const READ_ONLY: {
143
+ readonly ok: false;
144
+ readonly status: 403;
145
+ readonly body: {
146
+ readonly error: "This viewer is read-only.";
147
+ readonly reason: "read-only";
148
+ };
149
+ };
131
150
  /**
132
151
  * Runs before routing, for every request. Refuses any `Host` that is not one
133
152
  * of the server's own loopback authorities (DNS-rebinding defense), then parses
@@ -160,6 +179,13 @@ export declare const guardRequest: (req: http.IncomingMessage, ctx: GuardContext
160
179
  * `<meta http-equiv>`.
161
180
  */
162
181
  export declare const CONTENT_SECURITY_POLICY: string;
182
+ /**
183
+ * Sent on every response, API and static alike. `nosniff` and a same-origin
184
+ * resource policy stop another origin from loading a JSON or SSE response as a
185
+ * script, image, or style; `no-referrer` keeps plan URLs out of the `Referer`
186
+ * sent when a user follows an external link in rendered Markdown.
187
+ */
188
+ export declare const SECURITY_HEADERS: Readonly<Record<string, string>>;
163
189
  export declare const isLoopbackAddress: (address: string) => boolean;
164
190
  /**
165
191
  * IP addresses a browser may name in `Host` for a server bound to `bound`. A
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/serve/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAI7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAIzB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAIL,UAAU,EACX,MAAM,eAAe,CAAC;AAIvB,uCAAuC;AACvC,MAAM,WAAW,YAAY;IAC3B,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,IAAI,EAAE,OAAO,CAAC;IACd,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B;AAED,8EAA8E;AAC9E,MAAM,MAAM,UAAU,GAAG,CACvB,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,GAAG,EAAE,IAAI,CAAC,cAAc,EACxB,GAAG,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KACpC,OAAO,CAAC;AAEb,uDAAuD;AACvD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,6DAA6D;IAC7D,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,2DAA2D;IAC3D,MAAM,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,uDAAuD;AACvD,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AA0C5D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAAO,MAAyD,CAAC;AAiC9F,qFAAqF;AACrF,MAAM,WAAW,YAAY;IAC3B,oEAAoE;IACpE,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GACnB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAYnF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,IAAI,CAAC,eAAe,EAAE,KAAK,YAAY,KAAG,WAsB3E,CAAC;AA4bF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,uBAAuB,QAG2B,CAAC;AAkGhE,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,KAAG,OAC0C,CAAC;AAE/F;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,OAAO,MAAM,EACb,aAAY,UAAU,CAAC,OAAO,EAAE,CAAC,iBAAiB,CAA0B,KAC3E,MAAM,EAYR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAU,MAAM,YAAY,KAAG,OAAO,CAAC,WAAW,CAwHzE,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/serve/server.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,10 @@
31
31
  * (and so the token). No cookies, no accounts, no CORS — the token lives in
32
32
  * the page's memory and is never persisted, logged, or placed in a URL.
33
33
  *
34
+ * With `readOnly`, every mutation route and the session bootstrap answer
35
+ * {@link READ_ONLY} before any other check, so no token is issued and a
36
+ * presented one is never consulted.
37
+ *
34
38
  * The SSE change stream (`GET /api/events`) is added by a separate module that
35
39
  * hooks into the `apiHandlers` extension point below, so this module stays free
36
40
  * of file-watching concerns. Node built-ins only — no runtime dependency, no
@@ -70,7 +74,7 @@ var __importStar = (this && this.__importStar) || (function () {
70
74
  };
71
75
  })();
72
76
  Object.defineProperty(exports, "__esModule", { value: true });
73
- exports.startServer = exports.hostAddressesFor = exports.isLoopbackAddress = exports.CONTENT_SECURITY_POLICY = exports.guardRequest = exports.defaultAssetsDir = exports.CAPABILITY_HEADER = void 0;
77
+ exports.startServer = exports.hostAddressesFor = exports.isLoopbackAddress = exports.SECURITY_HEADERS = exports.CONTENT_SECURITY_POLICY = exports.guardRequest = exports.READ_ONLY = exports.defaultAssetsDir = exports.CAPABILITY_HEADER = void 0;
74
78
  const http = __importStar(require("http"));
75
79
  const fs = __importStar(require("fs"));
76
80
  const path = __importStar(require("path"));
@@ -157,6 +161,12 @@ const reject = (status, error) => ({
157
161
  const BAD_REQUEST = reject(400, 'Bad request.');
158
162
  const MISDIRECTED = reject(421, 'Misdirected request.');
159
163
  const FORBIDDEN = reject(403, 'Forbidden.');
164
+ /** The refusal for a mutation or session request on a read-only server. */
165
+ exports.READ_ONLY = {
166
+ ok: false,
167
+ status: 403,
168
+ body: { error: 'This viewer is read-only.', reason: 'read-only' },
169
+ };
160
170
  /**
161
171
  * Runs before routing, for every request. Refuses any `Host` that is not one
162
172
  * of the server's own loopback authorities (DNS-rebinding defense), then parses
@@ -518,6 +528,7 @@ const API_ROUTES = [
518
528
  methods: READ_METHODS,
519
529
  handle: readRoute(ctx => ({
520
530
  selfReview: (0, self_review_1.isSelfReviewAvailable)(),
531
+ readOnly: ctx.guard.readOnly,
521
532
  project: deriveProject(ctx.root),
522
533
  })),
523
534
  },
@@ -535,6 +546,7 @@ const API_ROUTES = [
535
546
  pattern: /^\/api\/session\/?$/,
536
547
  methods: ['GET'],
537
548
  sameOrigin: true,
549
+ issuesCapability: true,
538
550
  handle: (_req, res, ctx) => {
539
551
  sendJson(res, 200, { token: ctx.guard.capability }, { 'Cache-Control': 'no-store' });
540
552
  },
@@ -564,9 +576,9 @@ const API_ROUTES = [
564
576
  ];
565
577
  /**
566
578
  * Routes a guarded `/api/*` request through {@link API_ROUTES}. Check order,
567
- * after the Host guard that already ran: path, method, Origin and fetch
568
- * metadata, capability, media type, then the handler — which is the first thing
569
- * to read the body, touch a file, or launch a process.
579
+ * after the Host guard that already ran: path, method, read-only mode, Origin
580
+ * and fetch metadata, capability, media type, then the handler — which is the
581
+ * first thing to read the body, touch a file, or launch a process.
570
582
  */
571
583
  const routeApi = (req, res, ctx) => {
572
584
  const route = API_ROUTES.find(candidate => candidate.pattern.test(ctx.pathname));
@@ -578,6 +590,10 @@ const routeApi = (req, res, ctx) => {
578
590
  sendJson(res, 405, { error: 'Method not allowed.' }, { Allow: route.methods.join(', ') });
579
591
  return;
580
592
  }
593
+ if (ctx.guard.readOnly && (route.mutation || route.issuesCapability)) {
594
+ sendJson(res, exports.READ_ONLY.status, exports.READ_ONLY.body);
595
+ return;
596
+ }
581
597
  const rejection = (route.sameOrigin || route.mutation ? guardSameOrigin(req, ctx.guard) : null) ??
582
598
  (route.mutation ? guardCapability(req, ctx.guard) : null);
583
599
  if (rejection && !rejection.ok) {
@@ -615,6 +631,17 @@ const routeApi = (req, res, ctx) => {
615
631
  exports.CONTENT_SECURITY_POLICY = "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; " +
616
632
  "img-src 'self' data:; font-src 'self'; connect-src 'self'; object-src 'none'; " +
617
633
  "base-uri 'none'; form-action 'none'; frame-ancestors 'none'";
634
+ /**
635
+ * Sent on every response, API and static alike. `nosniff` and a same-origin
636
+ * resource policy stop another origin from loading a JSON or SSE response as a
637
+ * script, image, or style; `no-referrer` keeps plan URLs out of the `Referer`
638
+ * sent when a user follows an external link in rendered Markdown.
639
+ */
640
+ exports.SECURITY_HEADERS = {
641
+ 'X-Content-Type-Options': 'nosniff',
642
+ 'Cross-Origin-Resource-Policy': 'same-origin',
643
+ 'Referrer-Policy': 'no-referrer',
644
+ };
618
645
  /** Streams a static file with an appropriate content type and the CSP. */
619
646
  const sendFile = (res, filePath) => {
620
647
  res.writeHead(200, {
@@ -740,7 +767,11 @@ const startServer = async (opts) => {
740
767
  // `allowedHosts` is filled in once `listen` resolves (port 0 is ephemeral);
741
768
  // empty until then, which refuses everything — no request can arrive before
742
769
  // that anyway.
743
- const guardContext = { allowedHosts: new Set(), capability };
770
+ const guardContext = {
771
+ allowedHosts: new Set(),
772
+ capability,
773
+ readOnly: opts.readOnly === true,
774
+ };
744
775
  // One launch registry per instance, so self-review admission is bounded for
745
776
  // this server's lifetime; a test-supplied registry still wins.
746
777
  const selfReviewDeps = { registry: (0, self_review_1.createLaunchRegistry)(), ...opts.selfReviewDeps };
@@ -775,6 +806,8 @@ const startServer = async (opts) => {
775
806
  // bounded error response, never a dead process. Async handlers own their own
776
807
  // `.catch`, each of which ends in `sendError`.
777
808
  const server = http.createServer((req, res) => {
809
+ for (const [name, value] of Object.entries(exports.SECURITY_HEADERS))
810
+ res.setHeader(name, value);
778
811
  try {
779
812
  handleRequest(req, res);
780
813
  }
@@ -836,6 +869,7 @@ const startServer = async (opts) => {
836
869
  exposed: !(0, exports.isLoopbackAddress)(address.address),
837
870
  reachableUrls: authorities.map(a => `http://${a}`),
838
871
  events,
872
+ readOnly: guardContext.readOnly,
839
873
  capability,
840
874
  };
841
875
  };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/serve/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/serve/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"blueprint-parse.d.ts","sourceRoot":"","sources":["../../../src/skill-scripts/shared/blueprint-parse.ts"],"names":[],"mappings":"AAMA,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAWD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,cAAc,EAAE,GAAG,SA0C1E,CAAC"}
1
+ {"version":3,"file":"blueprint-parse.d.ts","sourceRoot":"","sources":["../../../src/skill-scripts/shared/blueprint-parse.ts"],"names":[],"mappings":"AAQA,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAWD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,cAAc,EAAE,GAAG,SA0C1E,CAAC"}
@@ -4,7 +4,9 @@ exports.parseBlueprintPhases = void 0;
4
4
  const BLUEPRINT_SECTION_RE = /^##[ \t]+Execution Blueprint[ \t]*$/m;
5
5
  /** The next peer-level `##` heading. `###` and deeper stay inside the section. */
6
6
  const PEER_HEADING_RE = /^##[ \t]/m;
7
- const PHASE_HEADING_RE = /^###[ \t]+(?:✅[ \t]*)?Phase[ \t]+(\d+)[ \t]*:?[ \t]*(.*?)[ \t]*$/gm;
7
+ // The name is captured greedily and trimmed in code: a lazy `(.*?)[ \t]*$` tail
8
+ // backtracks quadratically on a long run of trailing blanks.
9
+ const PHASE_HEADING_RE = /^###[ \t]+(?:✅[ \t]*)?Phase[ \t]+(\d+)[ \t]*:?[ \t]*(.*)$/gm;
8
10
  const TASK_REF_RE = /Task[ \t]+0*(\d+)/i;
9
11
  /** The section's text after its heading, cut at the next `##` heading. */
10
12
  const blueprintSection = (planBody) => {
@@ -1 +1 @@
1
- {"version":3,"file":"blueprint-parse.js","sourceRoot":"","sources":["../../../src/skill-scripts/shared/blueprint-parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blueprint-parse.js","sourceRoot":"","sources":["../../../src/skill-scripts/shared/blueprint-parse.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG,sCAAsC,CAAC;AACpE,kFAAkF;AAClF,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,gFAAgF;AAChF,6DAA6D;AAC7D,MAAM,gBAAgB,GAAG,6DAA6D,CAAC;AACvF,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAYzC,0EAA0E;AAC1E,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAsB,EAAE;IAChE,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC3C,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,QAAgB,EAAgC,EAAE;IACrF,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAE9C,MAAM,QAAQ,GAAiE,EAAE,CAAC;IAClF,gBAAgB,CAAC,SAAS,GAAG,CAAC,CAAC;IAC/B,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACvD,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;YACnC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE5C,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QACjD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YACnE,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACvC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,CAAC,GAAG,CAAC;YACZ,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACxD,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA1CW,QAAA,oBAAoB,wBA0C/B"}
@@ -63,6 +63,15 @@ export declare const DEFAULT_MAX_READ_BYTES: number;
63
63
  * expected kind (FIFOs, sockets, devices, and directories for `file`).
64
64
  */
65
65
  export declare const resolveContained: (root: string, input: string, options?: ResolveContainedOptions) => ContainedPath | SafeFsError;
66
+ /**
67
+ * Returns a contained directory, creating it and any missing parents below the
68
+ * root, one component at a time. An existing component must be a plain
69
+ * directory, and a link at any level (planted before or during the call) is
70
+ * refused.
71
+ */
72
+ export declare const ensureContainedDirectory: (root: string, input: string) => {
73
+ path: string;
74
+ } | SafeFsError;
66
75
  /**
67
76
  * Reads a contained regular file as UTF-8 with a size bound. Opens with
68
77
  * `O_NOFOLLOW` where available and `O_NONBLOCK` so a FIFO cannot block the
@@ -1 +1 @@
1
- {"version":3,"file":"safe-fs.d.ts","sourceRoot":"","sources":["../../../src/skill-scripts/shared/safe-fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAIzB,4EAA4E;AAC5E,MAAM,MAAM,eAAe,GACvB,cAAc,GACd,cAAc,GACd,SAAS,GACT,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,WAAW,GACX,UAAU,CAAC;AAEf,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,MAAM,EAAE,OAAO,CAAC;IAChB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,sBAAsB,QAAkB,CAAC;AAiBtD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,UAAS,uBAA4B,KACpC,aAAa,GAAG,WAgElB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,UAAS,oBAAyB,KACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,WA6CtC,CAAC;AAgDF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,SAAS,MAAM,GAAG,MAAM,EACxB,UAAS,sBAA2B,KACnC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CA4BxC,CAAC;AAEF,oGAAoG;AACpG,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,SAAS,MAAM,GAAG,MAAM,EACxB,UAAS,sBAA2B,KACnC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,WAuCrB,CAAC"}
1
+ {"version":3,"file":"safe-fs.d.ts","sourceRoot":"","sources":["../../../src/skill-scripts/shared/safe-fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAIzB,4EAA4E;AAC5E,MAAM,MAAM,eAAe,GACvB,cAAc,GACd,cAAc,GACd,SAAS,GACT,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,WAAW,GACX,UAAU,CAAC;AAEf,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,MAAM,EAAE,OAAO,CAAC;IAChB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,sBAAsB,QAAkB,CAAC;AAiBtD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,UAAS,uBAA4B,KACpC,aAAa,GAAG,WAgElB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,MAAM,EACZ,OAAO,MAAM,KACZ;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,WA0BrB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,UAAS,oBAAyB,KACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,WA6CtC,CAAC;AAgDF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,SAAS,MAAM,GAAG,MAAM,EACxB,UAAS,sBAA2B,KACnC,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CA4BxC,CAAC;AAEF,oGAAoG;AACpG,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,SAAS,MAAM,GAAG,MAAM,EACxB,UAAS,sBAA2B,KACnC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,WAuCrB,CAAC"}
@@ -56,7 +56,7 @@ var __importStar = (this && this.__importStar) || (function () {
56
56
  };
57
57
  })();
58
58
  Object.defineProperty(exports, "__esModule", { value: true });
59
- exports.writeFileAtomicSync = exports.writeFileAtomic = exports.readContainedFile = exports.resolveContained = exports.DEFAULT_MAX_READ_BYTES = void 0;
59
+ exports.writeFileAtomicSync = exports.writeFileAtomic = exports.readContainedFile = exports.ensureContainedDirectory = exports.resolveContained = exports.DEFAULT_MAX_READ_BYTES = void 0;
60
60
  const fs = __importStar(require("fs"));
61
61
  const path = __importStar(require("path"));
62
62
  const crypto_1 = require("crypto");
@@ -142,6 +142,47 @@ const resolveContained = (root, input, options = {}) => {
142
142
  return { path: current, relative, exists: true, stats };
143
143
  };
144
144
  exports.resolveContained = resolveContained;
145
+ /**
146
+ * Returns a contained directory, creating it and any missing parents below the
147
+ * root, one component at a time. An existing component must be a plain
148
+ * directory, and a link at any level (planted before or during the call) is
149
+ * refused.
150
+ */
151
+ const ensureContainedDirectory = (root, input) => {
152
+ const resolved = (0, exports.resolveContained)(root, input, { expect: 'directory', allowMissingLeaf: true });
153
+ if ('error' in resolved) {
154
+ if (resolved.error !== 'not-found')
155
+ return resolved;
156
+ // A parent is missing: create it first, then retry this level.
157
+ const parent = path.dirname(input);
158
+ if (parent === input || path.resolve(root, parent) === path.resolve(root))
159
+ return resolved;
160
+ const ensuredParent = (0, exports.ensureContainedDirectory)(root, parent);
161
+ return 'error' in ensuredParent ? ensuredParent : (0, exports.ensureContainedDirectory)(root, input);
162
+ }
163
+ if (resolved.exists)
164
+ return { path: resolved.path };
165
+ try {
166
+ fs.mkdirSync(resolved.path);
167
+ }
168
+ catch (err) {
169
+ if (errno(err) !== 'EEXIST')
170
+ return fail('fs-error', 'Could not create directory.');
171
+ }
172
+ try {
173
+ const created = fs.lstatSync(resolved.path);
174
+ if (created.isSymbolicLink()) {
175
+ return fail('symlink', 'Symbolic links inside the workspace are not allowed.');
176
+ }
177
+ if (!created.isDirectory())
178
+ return fail('not-a-directory', 'Path is not a directory.');
179
+ }
180
+ catch {
181
+ return fail('fs-error', 'Could not inspect path.');
182
+ }
183
+ return { path: resolved.path };
184
+ };
185
+ exports.ensureContainedDirectory = ensureContainedDirectory;
145
186
  /**
146
187
  * Reads a contained regular file as UTF-8 with a size bound. Opens with
147
188
  * `O_NOFOLLOW` where available and `O_NONBLOCK` so a FIFO cannot block the
@@ -1 +1 @@
1
- {"version":3,"file":"safe-fs.js","sourceRoot":"","sources":["../../../src/skill-scripts/shared/safe-fs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"safe-fs.js","sourceRoot":"","sources":["../../../src/skill-scripts/shared/safe-fs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Text safe to print to a terminal. Workspace and profile strings (plan
3
+ * headings, task titles, manifest fields, file names) are untrusted, and raw
4
+ * escape sequences in them can rewrite the screen, retitle the window, or set
5
+ * the clipboard. JSON output does not need this: `JSON.stringify` escapes them.
6
+ */
7
+ export declare const toTerminalText: (text: string) => string;
8
+ //# sourceMappingURL=terminal-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-text.d.ts","sourceRoot":"","sources":["../../../src/skill-scripts/shared/terminal-text.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAA8C,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toTerminalText = void 0;
4
+ /**
5
+ * C0 controls other than tab and newline, DEL, and C1 controls. Removing ESC
6
+ * and the 8-bit CSI/OSC introducers leaves any escape sequence as inert text.
7
+ */
8
+ // eslint-disable-next-line no-control-regex
9
+ const CONTROL_CHARACTERS = /[\u0000-\u0008\u000b-\u001f\u007f-\u009f]/g;
10
+ /**
11
+ * Text safe to print to a terminal. Workspace and profile strings (plan
12
+ * headings, task titles, manifest fields, file names) are untrusted, and raw
13
+ * escape sequences in them can rewrite the screen, retitle the window, or set
14
+ * the clipboard. JSON output does not need this: `JSON.stringify` escapes them.
15
+ */
16
+ const toTerminalText = (text) => text.replace(CONTROL_CHARACTERS, '');
17
+ exports.toTerminalText = toTerminalText;
18
+ //# sourceMappingURL=terminal-text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-text.js","sourceRoot":"","sources":["../../../src/skill-scripts/shared/terminal-text.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,4CAA4C;AAC5C,MAAM,kBAAkB,GAAG,4CAA4C,CAAC;AAExE;;;;;GAKG;AACI,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;AAAhF,QAAA,cAAc,kBAAkE"}
@@ -1 +1 @@
1
- import{m as e,t}from"./mermaid-parser.core-DzJhgjV2.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-CGp3bfio.js";import"./chunk-DU6HZSFF-CTqk1VQb.js";import{n as i,r as a,t as o}from"./chunk-SVP7TREG-B2xVgR-D.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-BN8HV7um.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
1
+ import{m as e,t}from"./mermaid-parser.core-DCh9vaqa.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-CGp3bfio.js";import"./chunk-DU6HZSFF-DkIrl6EA.js";import{n as i,r as a,t as o}from"./chunk-SVP7TREG-DAFJKfg_.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-jjgqBRWz.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
@@ -1 +1 @@
1
- import"./chunk-FOHPRMQF-COOliuUh.js";export{M as createArchitectureServices}from"./mermaid-parser.core-DzJhgjV2.js";
1
+ import"./chunk-FOHPRMQF-COOliuUh.js";export{M as createArchitectureServices}from"./mermaid-parser.core-DCh9vaqa.js";