markdown-markdown 0.2.2 → 0.2.4

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 (94) hide show
  1. package/README.md +17 -3
  2. package/dist/lib/asset-url.d.ts +3 -0
  3. package/dist/lib/asset-url.d.ts.map +1 -0
  4. package/dist/lib/asset-url.js +18 -0
  5. package/dist/lib/asset-url.js.map +1 -0
  6. package/dist/lib/document-title.js +9 -9
  7. package/dist/lib/document-title.js.map +1 -1
  8. package/dist/lib/figure-placeholder.d.ts +3 -0
  9. package/dist/lib/figure-placeholder.d.ts.map +1 -0
  10. package/dist/lib/figure-placeholder.js +16 -0
  11. package/dist/lib/figure-placeholder.js.map +1 -0
  12. package/dist/lib/markdown-content.d.ts +2 -0
  13. package/dist/lib/markdown-content.d.ts.map +1 -0
  14. package/dist/lib/markdown-content.js +40 -0
  15. package/dist/lib/markdown-content.js.map +1 -0
  16. package/dist/lib/markdown-layout.d.ts +7 -0
  17. package/dist/lib/markdown-layout.d.ts.map +1 -0
  18. package/dist/lib/markdown-layout.js +7 -0
  19. package/dist/lib/markdown-layout.js.map +1 -0
  20. package/dist/lib/review.d.ts +2 -1
  21. package/dist/lib/review.d.ts.map +1 -1
  22. package/dist/lib/review.js +8 -3
  23. package/dist/lib/review.js.map +1 -1
  24. package/dist/server/asset-path.d.ts +8 -0
  25. package/dist/server/asset-path.d.ts.map +1 -0
  26. package/dist/server/asset-path.js +23 -0
  27. package/dist/server/asset-path.js.map +1 -0
  28. package/dist/server/host.d.ts.map +1 -1
  29. package/dist/server/host.js +33 -1
  30. package/dist/server/host.js.map +1 -1
  31. package/dist/server/tunnel.d.ts +9 -0
  32. package/dist/server/tunnel.d.ts.map +1 -1
  33. package/dist/server/tunnel.js +34 -0
  34. package/dist/server/tunnel.js.map +1 -1
  35. package/dist/types.d.ts +1 -0
  36. package/dist/types.d.ts.map +1 -1
  37. package/dist/web/assets/{_baseUniq-BeWnGfR8.js → _baseUniq-vz0kjUDO.js} +1 -1
  38. package/dist/web/assets/{arc-suYjphRL.js → arc-DVk1cbBs.js} +1 -1
  39. package/dist/web/assets/{architectureDiagram-Q4EWVU46-Dun0g_LP.js → architectureDiagram-Q4EWVU46-3VShEZo6.js} +1 -1
  40. package/dist/web/assets/{blockDiagram-DXYQGD6D-B8KWi0ek.js → blockDiagram-DXYQGD6D-D8B1KDUN.js} +1 -1
  41. package/dist/web/assets/{c4Diagram-AHTNJAMY-DH-kEaf-.js → c4Diagram-AHTNJAMY-dEbQ9QJp.js} +1 -1
  42. package/dist/web/assets/channel-DnkWn0WG.js +1 -0
  43. package/dist/web/assets/{chunk-4BX2VUAB-DZzS8Oum.js → chunk-4BX2VUAB-BGurz3w5.js} +1 -1
  44. package/dist/web/assets/{chunk-4TB4RGXK-r3tH5W7U.js → chunk-4TB4RGXK-CdfqsxwR.js} +1 -1
  45. package/dist/web/assets/{chunk-55IACEB6-Cpbpjr04.js → chunk-55IACEB6-CYiUXTZP.js} +1 -1
  46. package/dist/web/assets/{chunk-EDXVE4YY-Bh5LY5hG.js → chunk-EDXVE4YY-DF36_MVU.js} +1 -1
  47. package/dist/web/assets/{chunk-FMBD7UC4-BsyHJJbd.js → chunk-FMBD7UC4-TZQnRXUC.js} +1 -1
  48. package/dist/web/assets/{chunk-OYMX7WX6-c5e-q_wa.js → chunk-OYMX7WX6-BWUVcC2i.js} +1 -1
  49. package/dist/web/assets/{chunk-QZHKN3VN-B247zH78.js → chunk-QZHKN3VN-CiGlras9.js} +1 -1
  50. package/dist/web/assets/{chunk-YZCP3GAM-Cfm-rXjN.js → chunk-YZCP3GAM-Dd_5umjV.js} +1 -1
  51. package/dist/web/assets/classDiagram-6PBFFD2Q-Fb0iXXxK.js +1 -0
  52. package/dist/web/assets/classDiagram-v2-HSJHXN6E-Fb0iXXxK.js +1 -0
  53. package/dist/web/assets/clone-DeacVf-q.js +1 -0
  54. package/dist/web/assets/{cose-bilkent-S5V4N54A-DqxVLdHa.js → cose-bilkent-S5V4N54A-Cy15oRUv.js} +1 -1
  55. package/dist/web/assets/{dagre-KV5264BT-uESNxmxB.js → dagre-KV5264BT-CBpOuHsZ.js} +1 -1
  56. package/dist/web/assets/{diagram-5BDNPKRD-BR2-mp52.js → diagram-5BDNPKRD-BknNx3MZ.js} +1 -1
  57. package/dist/web/assets/{diagram-G4DWMVQ6-WKF0sInv.js → diagram-G4DWMVQ6-DuuY7D4J.js} +1 -1
  58. package/dist/web/assets/{diagram-MMDJMWI5-FmHCVuiV.js → diagram-MMDJMWI5-BKK-AoCf.js} +1 -1
  59. package/dist/web/assets/{diagram-TYMM5635-DRfXSa3H.js → diagram-TYMM5635-RIIeffz_.js} +1 -1
  60. package/dist/web/assets/{erDiagram-SMLLAGMA-CIaSeJrL.js → erDiagram-SMLLAGMA-dcy2jwNQ.js} +1 -1
  61. package/dist/web/assets/{flowDiagram-DWJPFMVM-sxEQwCxD.js → flowDiagram-DWJPFMVM-KGm61tBi.js} +1 -1
  62. package/dist/web/assets/{ganttDiagram-T4ZO3ILL-CkcF9O8o.js → ganttDiagram-T4ZO3ILL-BpjYiOnX.js} +1 -1
  63. package/dist/web/assets/{gitGraphDiagram-UUTBAWPF-BMl-eEdv.js → gitGraphDiagram-UUTBAWPF-COoQs5Py.js} +1 -1
  64. package/dist/web/assets/{graph-Dvb83lTL.js → graph-slJujSP3.js} +1 -1
  65. package/dist/web/assets/{index-CDiKEXNm.js → index-B3sdQzp-.js} +196 -197
  66. package/dist/web/assets/index-ByBrbBFQ.css +1 -0
  67. package/dist/web/assets/{infoDiagram-42DDH7IO-BErZMnZ_.js → infoDiagram-42DDH7IO-C_7g68JI.js} +1 -1
  68. package/dist/web/assets/{ishikawaDiagram-UXIWVN3A-ByOhD_Q_.js → ishikawaDiagram-UXIWVN3A-B-SFHLkD.js} +1 -1
  69. package/dist/web/assets/{journeyDiagram-VCZTEJTY-tvYu0tQA.js → journeyDiagram-VCZTEJTY-BVgzaLel.js} +1 -1
  70. package/dist/web/assets/{kanban-definition-6JOO6SKY-bOg9bXmu.js → kanban-definition-6JOO6SKY-CxpGkSmg.js} +1 -1
  71. package/dist/web/assets/{layout-QKJyhC2Z.js → layout-BP2q7n-Y.js} +1 -1
  72. package/dist/web/assets/{linear-CIIOLDtW.js → linear-N_yUZqpz.js} +1 -1
  73. package/dist/web/assets/{min-BN_T5qY9.js → min-dd7tRo1R.js} +1 -1
  74. package/dist/web/assets/{mindmap-definition-QFDTVHPH-BtrZH91G.js → mindmap-definition-QFDTVHPH-DxFGKjLg.js} +1 -1
  75. package/dist/web/assets/{pieDiagram-DEJITSTG-Dnq_4keb.js → pieDiagram-DEJITSTG-BU3cN1bS.js} +1 -1
  76. package/dist/web/assets/{quadrantDiagram-34T5L4WZ-H0k8Hqni.js → quadrantDiagram-34T5L4WZ-DNEPjmaG.js} +1 -1
  77. package/dist/web/assets/{requirementDiagram-MS252O5E-hB2GEO0i.js → requirementDiagram-MS252O5E-BQgCYotG.js} +1 -1
  78. package/dist/web/assets/{sankeyDiagram-XADWPNL6-Dz1v5jHa.js → sankeyDiagram-XADWPNL6-D7mjdo0e.js} +1 -1
  79. package/dist/web/assets/{sequenceDiagram-FGHM5R23-DkjFesyC.js → sequenceDiagram-FGHM5R23-B22Onj0b.js} +1 -1
  80. package/dist/web/assets/{stateDiagram-FHFEXIEX-O3tFHR2C.js → stateDiagram-FHFEXIEX-BPCrqHFb.js} +1 -1
  81. package/dist/web/assets/stateDiagram-v2-QKLJ7IA2-B4qdwuMU.js +1 -0
  82. package/dist/web/assets/{timeline-definition-GMOUNBTQ-DfZTgHu_.js → timeline-definition-GMOUNBTQ-DfaT0XIV.js} +1 -1
  83. package/dist/web/assets/{vennDiagram-DHZGUBPP-lkZm2iF1.js → vennDiagram-DHZGUBPP-BbhgT_iA.js} +1 -1
  84. package/dist/web/assets/{wardley-RL74JXVD-BI3M_xu_.js → wardley-RL74JXVD-C8NzLPTB.js} +1 -1
  85. package/dist/web/assets/{wardleyDiagram-NUSXRM2D-BHWV3Mta.js → wardleyDiagram-NUSXRM2D-CaIRDXYy.js} +1 -1
  86. package/dist/web/assets/{xychartDiagram-5P7HB3ND-YYAt89Gd.js → xychartDiagram-5P7HB3ND-DxAvUodR.js} +1 -1
  87. package/dist/web/index.html +2 -2
  88. package/package.json +4 -2
  89. package/dist/web/assets/channel-eADqIRXc.js +0 -1
  90. package/dist/web/assets/classDiagram-6PBFFD2Q-DS-vDmh2.js +0 -1
  91. package/dist/web/assets/classDiagram-v2-HSJHXN6E-DS-vDmh2.js +0 -1
  92. package/dist/web/assets/clone-Wzjy1jSR.js +0 -1
  93. package/dist/web/assets/index-D6JW8WNw.css +0 -1
  94. package/dist/web/assets/stateDiagram-v2-QKLJ7IA2-C1nL4I8b.js +0 -1
package/README.md CHANGED
@@ -10,6 +10,18 @@ If you want agent instructions for using this CLI, install the separate [`markdo
10
10
 
11
11
  ## Install
12
12
 
13
+ ```bash
14
+ npm install markdown-markdown
15
+ ```
16
+
17
+ Or run it without a permanent install:
18
+
19
+ ```bash
20
+ npx markdown-markdown review create --browser system ./docs/spec.md
21
+ ```
22
+
23
+ ## Development Setup
24
+
13
25
  ```bash
14
26
  npm install
15
27
  ```
@@ -57,9 +69,9 @@ Then the agent waits for user action:
57
69
  npx markdown-markdown review wait
58
70
  ```
59
71
 
60
- When the user clicks `结束 review`, `review wait` returns a `finish_review` payload.
72
+ When the user clicks `Finish review`, `review wait` returns a `finish_review` payload.
61
73
 
62
- When the user clicks `吸收修改后再给我看`, `review wait` returns a `continue_review` payload. After the agent edits files, it should request the next round:
74
+ When the user clicks `Continue reviewing after changes`, `review wait` returns a `continue_review` payload. After the agent edits files, it should request the next round:
63
75
 
64
76
  ```bash
65
77
  npx markdown-markdown review refresh
@@ -73,6 +85,8 @@ npx markdown-markdown review close
73
85
 
74
86
  The browser UI keeps the document readable during `continue_review`, but it locks annotation edits until the next round is refreshed. The browser tab title also follows the current file name and review status, which helps when you have multiple tabs open.
75
87
 
88
+ Markdown image assets can be local relative paths or remote URLs. Local assets are served through the review host so regular Markdown image references keep working in directory mode. Placeholder figure markers such as `![Figure 4](assets/figure-placeholder.svg)` are rendered as centered text labels instead of oversized preview art.
89
+
76
90
  ### Legacy one-shot mode
77
91
 
78
92
  ```bash
@@ -116,7 +130,7 @@ The CLI will:
116
130
  - use a public Cloudflare tunnel when `cloudflared` is installed, unless you pass `--no-cloudflare`
117
131
  - fail fast with a clear install message when you pass `--cloudflare` but `cloudflared` is missing
118
132
  - let you annotate headings, paragraphs, blockquotes, lists, tables, code blocks, images, and horizontal rules
119
- - support two review actions in the browser: `结束 review` and `吸收修改后再给我看`
133
+ - support two review actions in the browser: `Finish review` and `Continue reviewing after changes`
120
134
  - print the structured review result to stdout
121
135
  - optionally write the final JSON to `--output`
122
136
  - optionally write running/completed/failed status snapshots to `--status-file`
@@ -0,0 +1,3 @@
1
+ export declare function isRemoteAssetSrc(src: string): boolean;
2
+ export declare function buildAssetRequestUrl(sourceFilePath: string, src: string): string;
3
+ //# sourceMappingURL=asset-url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-url.d.ts","sourceRoot":"","sources":["../../src/lib/asset-url.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAYrD;AAED,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAOhF"}
@@ -0,0 +1,18 @@
1
+ export function isRemoteAssetSrc(src) {
2
+ const trimmed = src.trim();
3
+ return (trimmed.startsWith('data:') ||
4
+ trimmed.startsWith('blob:') ||
5
+ trimmed.startsWith('file:') ||
6
+ trimmed.startsWith('mailto:') ||
7
+ trimmed.startsWith('tel:') ||
8
+ /^\/\//.test(trimmed) ||
9
+ /^[a-z][a-z0-9+.-]*:\/\//i.test(trimmed));
10
+ }
11
+ export function buildAssetRequestUrl(sourceFilePath, src) {
12
+ const params = new URLSearchParams({
13
+ source: sourceFilePath,
14
+ src,
15
+ });
16
+ return `/api/assets?${params.toString()}`;
17
+ }
18
+ //# sourceMappingURL=asset-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-url.js","sourceRoot":"","sources":["../../src/lib/asset-url.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAE3B,OAAO,CACL,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;QAC3B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;QAC3B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;QAC3B,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QACrB,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CACzC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,cAAsB,EAAE,GAAW;IACtE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,MAAM,EAAE,cAAc;QACtB,GAAG;KACJ,CAAC,CAAC;IAEH,OAAO,eAAe,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC5C,CAAC"}
@@ -1,13 +1,13 @@
1
1
  const STATUS_LABELS = {
2
- abandoned: '已放弃',
3
- awaiting_refresh: '等待修改',
4
- completed: '已完成',
5
- failed: '失败',
6
- idle: '空闲',
7
- running: '启动中',
8
- submitted_continue: '等待修改',
9
- submitted_finish: '提交中',
10
- waiting_for_review: '待审阅',
2
+ abandoned: 'Abandoned',
3
+ awaiting_refresh: 'Waiting for changes',
4
+ completed: 'Completed',
5
+ failed: 'Failed',
6
+ idle: 'Idle',
7
+ running: 'Starting',
8
+ submitted_continue: 'Waiting for changes',
9
+ submitted_finish: 'Submitting',
10
+ waiting_for_review: 'Waiting for review',
11
11
  };
12
12
  export function getReviewPhaseLabel(phase = 'waiting_for_review') {
13
13
  return STATUS_LABELS[phase] ?? STATUS_LABELS.waiting_for_review;
@@ -1 +1 @@
1
- {"version":3,"file":"document-title.js","sourceRoot":"","sources":["../../src/lib/document-title.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAyC;IAC1D,SAAS,EAAE,KAAK;IAChB,gBAAgB,EAAE,MAAM;IACxB,SAAS,EAAE,KAAK;IAChB,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,KAAK;IACd,kBAAkB,EAAE,MAAM;IAC1B,gBAAgB,EAAE,KAAK;IACvB,kBAAkB,EAAE,KAAK;CAC1B,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,QAA8B,oBAAoB;IACpF,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,kBAAkB,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,QAA8B,oBAAoB;IAC3G,OAAO,GAAG,QAAQ,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"document-title.js","sourceRoot":"","sources":["../../src/lib/document-title.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAyC;IAC1D,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,qBAAqB;IACvC,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,UAAU;IACnB,kBAAkB,EAAE,qBAAqB;IACzC,gBAAgB,EAAE,YAAY;IAC9B,kBAAkB,EAAE,oBAAoB;CACzC,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,QAA8B,oBAAoB;IACpF,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,kBAAkB,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,QAA8B,oBAAoB;IAC3G,OAAO,GAAG,QAAQ,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;AACvD,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function isFigureLabelPlaceholder(src: unknown, alt: unknown): boolean;
2
+ export declare function getFigureLabelText(alt: unknown): string;
3
+ //# sourceMappingURL=figure-placeholder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"figure-placeholder.d.ts","sourceRoot":"","sources":["../../src/lib/figure-placeholder.ts"],"names":[],"mappings":"AAIA,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAS5E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAGvD"}
@@ -0,0 +1,16 @@
1
+ function normalize(value) {
2
+ return typeof value === 'string' ? value.trim() : '';
3
+ }
4
+ export function isFigureLabelPlaceholder(src, alt) {
5
+ const normalizedSrc = normalize(src);
6
+ const normalizedAlt = normalize(alt);
7
+ if (!normalizedSrc || !normalizedAlt) {
8
+ return false;
9
+ }
10
+ return /(^|\/)figure-placeholder\.svg(?:[?#].*)?$/i.test(normalizedSrc) && /^Figure\s+\d+$/i.test(normalizedAlt);
11
+ }
12
+ export function getFigureLabelText(alt) {
13
+ const normalizedAlt = normalize(alt);
14
+ return normalizedAlt || 'Figure';
15
+ }
16
+ //# sourceMappingURL=figure-placeholder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"figure-placeholder.js","sourceRoot":"","sources":["../../src/lib/figure-placeholder.ts"],"names":[],"mappings":"AAAA,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,GAAY,EAAE,GAAY;IACjE,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,4CAA4C,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,aAAa,IAAI,QAAQ,CAAC;AACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function normalizeRenderableMarkdown(content: string): string;
2
+ //# sourceMappingURL=markdown-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-content.d.ts","sourceRoot":"","sources":["../../src/lib/markdown-content.ts"],"names":[],"mappings":"AA+CA,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnE"}
@@ -0,0 +1,40 @@
1
+ function normalizeWhitespace(text) {
2
+ return text.replace(/\s+/g, ' ').trim();
3
+ }
4
+ function stripHtmlTags(text) {
5
+ return normalizeWhitespace(text.replace(/<[^>]+>/g, ' '));
6
+ }
7
+ function extractAttribute(tag, attributeName) {
8
+ const match = tag.match(new RegExp(`${attributeName}\\s*=\\s*["']([^"']+)["']`, 'i'));
9
+ return match?.[1] ?? null;
10
+ }
11
+ function padLines(rendered, targetLineCount) {
12
+ const lines = rendered.split('\n');
13
+ while (lines.length < targetLineCount) {
14
+ lines.push('');
15
+ }
16
+ return lines.slice(0, targetLineCount).join('\n');
17
+ }
18
+ function convertFigureBlock(block) {
19
+ const imgMatch = block.match(/<img\b[^>]*>/i);
20
+ if (!imgMatch) {
21
+ return block;
22
+ }
23
+ const src = extractAttribute(imgMatch[0], 'src');
24
+ if (!src) {
25
+ return block;
26
+ }
27
+ const captionMatch = block.match(/<figcaption\b[^>]*>([\s\S]*?)<\/figcaption>/i);
28
+ const caption = captionMatch ? stripHtmlTags(captionMatch[1]) : '';
29
+ const alt = extractAttribute(imgMatch[0], 'alt') ?? caption ?? '';
30
+ const normalizedAlt = normalizeWhitespace(alt) || 'Figure';
31
+ const lines = [`![${normalizedAlt}](${src})`];
32
+ if (caption) {
33
+ lines.push('', `*${caption}*`);
34
+ }
35
+ return padLines(lines.join('\n'), block.split('\n').length);
36
+ }
37
+ export function normalizeRenderableMarkdown(content) {
38
+ return content.replace(/<figure\b[^>]*>[\s\S]*?<\/figure>/gi, (block) => convertFigureBlock(block));
39
+ }
40
+ //# sourceMappingURL=markdown-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-content.js","sourceRoot":"","sources":["../../src/lib/markdown-content.ts"],"names":[],"mappings":"AAAA,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW,EAAE,aAAqB;IAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,aAAa,2BAA2B,EAAE,GAAG,CAAC,CAAC,CAAC;IACtF,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAC5B,CAAC;AAED,SAAS,QAAQ,CAAC,QAAgB,EAAE,eAAuB;IACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACjF,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,IAAI,EAAE,CAAC;IAClE,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC;IAC3D,MAAM,KAAK,GAAG,CAAC,KAAK,aAAa,KAAK,GAAG,GAAG,CAAC,CAAC;IAE9C,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,OAAO,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO,OAAO,CAAC,OAAO,CAAC,qCAAqC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AACtG,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const ACTIVE_FILE_PANE_CLASS_NAME = "flex h-full min-h-0 w-full flex-1 justify-center";
2
+ export declare const MARKDOWN_VIEWER_CONTAINER_CLASS_NAME = "h-full min-h-0 w-full overflow-y-auto p-4 md:p-8 relative [-webkit-overflow-scrolling:touch]";
3
+ export declare const MARKDOWN_VIEWER_CONTENT_CLASS_NAME = "mx-auto min-h-0 w-full max-w-3xl markdown-body prose prose-slate prose-a:text-blue-600 relative";
4
+ export declare const MARKDOWN_IMAGE_WRAPPER_CLASS_NAME = "my-6 mx-auto w-fit max-w-full";
5
+ export declare const MARKDOWN_IMAGE_CLASS_NAME = "block h-auto max-h-[24rem] w-auto max-w-[min(100%,36rem)] rounded-xl shadow-md";
6
+ export declare const MARKDOWN_FIGURE_LABEL_CLASS_NAME = "my-8 mx-auto w-fit text-center text-sm font-semibold uppercase tracking-[0.28em] text-slate-400";
7
+ //# sourceMappingURL=markdown-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-layout.d.ts","sourceRoot":"","sources":["../../src/lib/markdown-layout.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,qDAAqD,CAAC;AAE9F,eAAO,MAAM,oCAAoC,iGAC+C,CAAC;AAEjG,eAAO,MAAM,kCAAkC,oGACoD,CAAC;AAEpG,eAAO,MAAM,iCAAiC,kCAAkC,CAAC;AAEjF,eAAO,MAAM,yBAAyB,mFAC4C,CAAC;AAEnF,eAAO,MAAM,gCAAgC,oGACsD,CAAC"}
@@ -0,0 +1,7 @@
1
+ export const ACTIVE_FILE_PANE_CLASS_NAME = 'flex h-full min-h-0 w-full flex-1 justify-center';
2
+ export const MARKDOWN_VIEWER_CONTAINER_CLASS_NAME = 'h-full min-h-0 w-full overflow-y-auto p-4 md:p-8 relative [-webkit-overflow-scrolling:touch]';
3
+ export const MARKDOWN_VIEWER_CONTENT_CLASS_NAME = 'mx-auto min-h-0 w-full max-w-3xl markdown-body prose prose-slate prose-a:text-blue-600 relative';
4
+ export const MARKDOWN_IMAGE_WRAPPER_CLASS_NAME = 'my-6 mx-auto w-fit max-w-full';
5
+ export const MARKDOWN_IMAGE_CLASS_NAME = 'block h-auto max-h-[24rem] w-auto max-w-[min(100%,36rem)] rounded-xl shadow-md';
6
+ export const MARKDOWN_FIGURE_LABEL_CLASS_NAME = 'my-8 mx-auto w-fit text-center text-sm font-semibold uppercase tracking-[0.28em] text-slate-400';
7
+ //# sourceMappingURL=markdown-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-layout.js","sourceRoot":"","sources":["../../src/lib/markdown-layout.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,kDAAkD,CAAC;AAE9F,MAAM,CAAC,MAAM,oCAAoC,GAC/C,8FAA8F,CAAC;AAEjG,MAAM,CAAC,MAAM,kCAAkC,GAC7C,iGAAiG,CAAC;AAEpG,MAAM,CAAC,MAAM,iCAAiC,GAAG,+BAA+B,CAAC;AAEjF,MAAM,CAAC,MAAM,yBAAyB,GACpC,gFAAgF,CAAC;AAEnF,MAAM,CAAC,MAAM,gCAAgC,GAC3C,iGAAiG,CAAC"}
@@ -22,6 +22,7 @@ export interface ReviewPromptInput {
22
22
  rootPath: string;
23
23
  files: ReviewPromptFile[];
24
24
  annotations: ReviewPromptAnnotation[];
25
+ extraInstructions?: string;
25
26
  }
26
- export declare function buildReviewPrompt({ rootPath, files, annotations }: ReviewPromptInput): string;
27
+ export declare function buildReviewPrompt({ rootPath, files, annotations, extraInstructions }: ReviewPromptInput): string;
27
28
  //# sourceMappingURL=review.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/lib/review.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,WAAW,EAAE,sBAAsB,EAAE,CAAC;CACvC;AAiID,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,iBAAiB,GAAG,MAAM,CAsC7F"}
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/lib/review.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAiID,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,EAAE,iBAAiB,GAAG,MAAM,CA6ChH"}
@@ -92,7 +92,7 @@ function formatSnippet(selectedText, kind) {
92
92
  }
93
93
  return `${truncateMiddle(firstLine, 34)} … ${truncateMiddle(lastLine, 34)}`;
94
94
  }
95
- export function buildReviewPrompt({ rootPath, files, annotations }) {
95
+ export function buildReviewPrompt({ rootPath, files, annotations, extraInstructions }) {
96
96
  const sections = files
97
97
  .map((file) => {
98
98
  const fileAnnotations = annotations.filter((annotation) => annotation.filePath === file.relativePath);
@@ -116,9 +116,14 @@ export function buildReviewPrompt({ rootPath, files, annotations }) {
116
116
  'Use the file path, line range, and short anchor text to update the markdown files. Keep edits surgical.',
117
117
  '',
118
118
  ];
119
+ const extraInstructionsBlock = extraInstructions?.trim();
120
+ const promptParts = [...header];
121
+ if (extraInstructionsBlock) {
122
+ promptParts.push('Additional instructions for the reviewer:', extraInstructionsBlock, '');
123
+ }
119
124
  if (sections.length === 0) {
120
- return [...header, 'No annotations were submitted.'].join('\n');
125
+ return [...promptParts, 'No annotations were submitted.'].join('\n');
121
126
  }
122
- return [...header, ...sections].join('\n');
127
+ return [...promptParts, ...sections].join('\n');
123
128
  }
124
129
  //# sourceMappingURL=review.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/lib/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/lib/review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface AssetRequest {
2
+ sourceFilePath: string;
3
+ src: string;
4
+ rootPath: string;
5
+ mode: 'file' | 'directory';
6
+ }
7
+ export declare function resolveAssetPath({ sourceFilePath, src, rootPath, mode }: AssetRequest): string | null;
8
+ //# sourceMappingURL=asset-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-path.d.ts","sourceRoot":"","sources":["../../src/server/asset-path.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5B;AAWD,wBAAgB,gBAAgB,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI,CAiBrG"}
@@ -0,0 +1,23 @@
1
+ import path from 'node:path';
2
+ function getAssetRoot(rootPath, mode) {
3
+ return path.resolve(mode === 'directory' ? rootPath : path.dirname(rootPath));
4
+ }
5
+ function stripQueryAndHash(src) {
6
+ const [cleaned] = src.split(/[?#]/, 1);
7
+ return cleaned.trim();
8
+ }
9
+ export function resolveAssetPath({ sourceFilePath, src, rootPath, mode }) {
10
+ const cleanedSrc = stripQueryAndHash(src);
11
+ if (!cleanedSrc) {
12
+ return null;
13
+ }
14
+ const assetRoot = getAssetRoot(rootPath, mode);
15
+ const sourceDirectory = path.dirname(sourceFilePath);
16
+ const resolvedPath = path.resolve(sourceDirectory, cleanedSrc);
17
+ const relativePath = path.relative(assetRoot, resolvedPath);
18
+ if (relativePath.startsWith('..') || path.isAbsolute(relativePath)) {
19
+ return null;
20
+ }
21
+ return resolvedPath;
22
+ }
23
+ //# sourceMappingURL=asset-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-path.js","sourceRoot":"","sources":["../../src/server/asset-path.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAS7B,SAAS,YAAY,CAAC,QAAgB,EAAE,IAA0B;IAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAgB;IACpF,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAE1C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAE5D,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/server/host.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,YAAY,EAIb,MAAM,aAAa,CAAC;AACrB,OAAO,EAQL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AA0BD,wBAAsB,eAAe,CAAC,EACpC,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,SAAS,EACT,SAAS,EACT,GAAG,YAAY,EAChB,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAwM/C"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/server/host.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,YAAY,EAIb,MAAM,aAAa,CAAC;AACrB,OAAO,EAQL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AA0BD,wBAAsB,eAAe,CAAC,EACpC,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,SAAS,EACT,SAAS,EACT,GAAG,YAAY,EAChB,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA2O/C"}
@@ -1,7 +1,9 @@
1
1
  import express from 'express';
2
2
  import { createServer } from 'node:http';
3
+ import { stat } from 'node:fs/promises';
3
4
  import path from 'node:path';
4
5
  import { buildReviewPrompt } from '../lib/review.js';
6
+ import { resolveAssetPath } from './asset-path.js';
5
7
  import { closeSession, createSession, getActiveSession, incrementSessionRound, readSessionResult, setSessionPhase, writeSessionResult, } from './session-store.js';
6
8
  import { discoverMarkdownFiles } from './session.js';
7
9
  function listen(server) {
@@ -91,8 +93,9 @@ export async function startReviewHost({ rootPath, mode, files, sessionId, static
91
93
  const body = request.body;
92
94
  const action = body?.action ?? 'finish_review';
93
95
  const annotations = Array.isArray(body?.annotations) ? body.annotations : [];
96
+ const extraInstructions = typeof body?.extraInstructions === 'string' ? body.extraInstructions : '';
94
97
  const submittedAt = new Date().toISOString();
95
- const prompt = buildReviewPrompt({ rootPath, files: current.files, annotations });
98
+ const prompt = buildReviewPrompt({ rootPath, files: current.files, annotations, extraInstructions });
96
99
  const submittedPhase = action === 'finish_review' ? 'submitted_finish' : 'submitted_continue';
97
100
  const finalPhase = action === 'finish_review' ? 'completed' : 'awaiting_refresh';
98
101
  await setSessionPhase(session.sessionId, submittedPhase, storeOptions, {
@@ -168,6 +171,35 @@ export async function startReviewHost({ rootPath, mode, files, sessionId, static
168
171
  response.status(500).json({ error: error instanceof Error ? error.message : 'Failed to refresh review session.' });
169
172
  }
170
173
  });
174
+ app.get('/api/assets', async (request, response) => {
175
+ try {
176
+ const source = typeof request.query.source === 'string' ? request.query.source : '';
177
+ const src = typeof request.query.src === 'string' ? request.query.src : '';
178
+ if (!source || !src) {
179
+ response.status(400).json({ error: 'Missing source or src query parameter.' });
180
+ return;
181
+ }
182
+ const resolvedPath = resolveAssetPath({
183
+ mode,
184
+ rootPath,
185
+ sourceFilePath: source,
186
+ src,
187
+ });
188
+ if (!resolvedPath) {
189
+ response.status(403).json({ error: 'Requested asset is outside the review root.' });
190
+ return;
191
+ }
192
+ const assetStat = await stat(resolvedPath);
193
+ if (!assetStat.isFile()) {
194
+ response.status(404).json({ error: 'Requested asset was not found.' });
195
+ return;
196
+ }
197
+ response.sendFile(resolvedPath);
198
+ }
199
+ catch (error) {
200
+ response.status(500).json({ error: error instanceof Error ? error.message : 'Failed to load asset.' });
201
+ }
202
+ });
171
203
  app.post('/api/control/close', async (_request, response) => {
172
204
  await closeSession(session.sessionId, storeOptions);
173
205
  response.json({ closed: true, sessionId: session.sessionId });
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/server/host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/server/host.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,16 @@ export interface CloudflaredTunnelHandle {
7
7
  export interface LaunchCloudflaredTunnelOptions {
8
8
  executableCandidates?: string[];
9
9
  timeoutMs?: number;
10
+ readyPath?: string;
11
+ readyTimeoutMs?: number;
12
+ readyIntervalMs?: number;
13
+ }
14
+ export interface WaitForReviewUrlReadyOptions {
15
+ path?: string;
16
+ timeoutMs?: number;
17
+ intervalMs?: number;
10
18
  }
11
19
  export declare function hasCloudflaredExecutable(): boolean;
20
+ export declare function waitForReviewUrlReady(baseUrl: string, options?: WaitForReviewUrlReadyOptions): Promise<void>;
12
21
  export declare function launchCloudflaredTunnel(localUrl: string, options?: LaunchCloudflaredTunnelOptions): Promise<CloudflaredTunnelHandle | null>;
13
22
  //# sourceMappingURL=tunnel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../src/server/tunnel.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGzE,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,wBAAwB,IAAI,OAAO,CAElD;AAwDD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAqEzC"}
1
+ {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../src/server/tunnel.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGzE,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA6BD,wBAAgB,wBAAwB,IAAI,OAAO,CAElD;AAaD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAmDD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CA0EzC"}
@@ -31,6 +31,35 @@ function extractPublicUrl(output) {
31
31
  const match = output.match(/https:\/\/[^\s"'`]+\.trycloudflare\.com/);
32
32
  return match?.[0] ?? null;
33
33
  }
34
+ function sleep(milliseconds) {
35
+ return new Promise((resolve) => {
36
+ setTimeout(resolve, milliseconds);
37
+ });
38
+ }
39
+ export async function waitForReviewUrlReady(baseUrl, options = {}) {
40
+ const path = options.path ?? '/api/session';
41
+ const timeoutMs = options.timeoutMs ?? 15_000;
42
+ const intervalMs = options.intervalMs ?? 250;
43
+ const deadline = Date.now() + timeoutMs;
44
+ let lastError = null;
45
+ while (Date.now() < deadline) {
46
+ try {
47
+ const response = await fetch(new URL(path, baseUrl).toString(), {
48
+ method: 'GET',
49
+ });
50
+ if (response.ok) {
51
+ return;
52
+ }
53
+ lastError = new Error(`Unexpected status ${response.status} from ${baseUrl}${path}`);
54
+ }
55
+ catch (error) {
56
+ lastError = error;
57
+ }
58
+ await sleep(intervalMs);
59
+ }
60
+ const suffix = lastError instanceof Error ? ` Last error: ${lastError.message}` : '';
61
+ throw new Error(`Timed out waiting for review URL to become ready at ${baseUrl}${path}.${suffix}`);
62
+ }
34
63
  function stopProcess(childProcess) {
35
64
  return new Promise((resolve) => {
36
65
  if (!childProcess?.pid) {
@@ -117,6 +146,11 @@ export async function launchCloudflaredTunnel(localUrl, options = {}) {
117
146
  });
118
147
  try {
119
148
  const publicUrl = await publicUrlPromise;
149
+ await waitForReviewUrlReady(publicUrl, {
150
+ path: options.readyPath,
151
+ timeoutMs: options.readyTimeoutMs,
152
+ intervalMs: options.readyIntervalMs,
153
+ });
120
154
  return {
121
155
  process: childProcess,
122
156
  publicUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../src/server/tunnel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../src/server/tunnel.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -74,6 +74,7 @@ export type ReviewLifecycleStatus = (ReviewLifecycleStatusBase & {
74
74
  export interface ReviewSubmissionPayload {
75
75
  annotations: Annotation[];
76
76
  action?: ReviewAction;
77
+ extraInstructions?: string;
77
78
  }
78
79
  export interface ReviewSubmissionResult extends ReviewSessionData {
79
80
  action: ReviewAction;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC;AAEzD,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,iBAAiB,CAAC;AAE/D,MAAM,MAAM,oBAAoB,GAC5B,MAAM,GACN,SAAS,GACT,oBAAoB,GACpB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,WAAW,GACX,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,qBAAqB,GAC7B,CAAC,yBAAyB,GAAG;IAC3B,KAAK,EACD,MAAM,GACN,SAAS,GACT,oBAAoB,GACpB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,WAAW,CAAC;CACjB,CAAC,GACF,CAAC,yBAAyB,GAAG;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,GACF,CAAC,yBAAyB,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC,CAAC;AAEP,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,YAAY,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE1E,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,oBAAoB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B"}