@straiffi/archon 1.8.5 → 1.8.7

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 (185) hide show
  1. package/dist/client/assets/ActivityView-D4Qh96zr.js +1 -0
  2. package/dist/client/assets/GitHubActionsDialog-Bg03OmVv.js +1 -0
  3. package/dist/client/assets/RepositoryGraphDialog-CS_hOqPw.js +1 -0
  4. package/dist/client/assets/VerificationDialog-BYH-Ek8n.js +4 -0
  5. package/dist/client/assets/{arc-D2Nn9xIj.js → arc-C83vRtlz.js} +1 -1
  6. package/dist/client/assets/architecture-7EHR7CIX-Dm8H7N6Z.js +1 -0
  7. package/dist/client/assets/{architectureDiagram-3BPJPVTR-BB0biSU2.js → architectureDiagram-3BPJPVTR-2lxabjSl.js} +1 -1
  8. package/dist/client/assets/{blockDiagram-GPEHLZMM-Bxm9GAiX.js → blockDiagram-GPEHLZMM-C80HvJmb.js} +1 -1
  9. package/dist/client/assets/{c4Diagram-AAUBKEIU-CC3YHLX3.js → c4Diagram-AAUBKEIU-BM3k_lKz.js} +1 -1
  10. package/dist/client/assets/channel-HjENOCZ0.js +1 -0
  11. package/dist/client/assets/{chunk-2J33WTMH-ComBHKwP.js → chunk-2J33WTMH-BTk3lX07.js} +1 -1
  12. package/dist/client/assets/{chunk-3OPIFGDE-DSpFzCXF.js → chunk-3OPIFGDE-DAxdBZ_4.js} +1 -1
  13. package/dist/client/assets/{chunk-4BX2VUAB-CtLS8D71.js → chunk-4BX2VUAB-C5pU9ApX.js} +1 -1
  14. package/dist/client/assets/{chunk-4EGX6M5U-Btnm0QNe.js → chunk-4EGX6M5U-CAjWPjND.js} +1 -1
  15. package/dist/client/assets/{chunk-55IACEB6-74CcJaub.js → chunk-55IACEB6-DhO4-AG4.js} +1 -1
  16. package/dist/client/assets/{chunk-5DO6E6H7-WLZ8L4ko.js → chunk-5DO6E6H7-BDKA-zHS.js} +1 -1
  17. package/dist/client/assets/{chunk-5ZQYHXKU-pL2M3Ax3.js → chunk-5ZQYHXKU-BYm9s62a.js} +1 -1
  18. package/dist/client/assets/{chunk-727SXJPM-BPi_lguN.js → chunk-727SXJPM-iVUM8xuV.js} +1 -1
  19. package/dist/client/assets/{chunk-AQP2D5EJ-Coc6laVv.js → chunk-AQP2D5EJ-DVM7riMJ.js} +1 -1
  20. package/dist/client/assets/{chunk-BR22UD5L-Cou5beGe.js → chunk-BR22UD5L-12D2GWh4.js} +1 -1
  21. package/dist/client/assets/{chunk-BSJP7CBP-DJ57XcV5.js → chunk-BSJP7CBP-DMi77e84.js} +1 -1
  22. package/dist/client/assets/{chunk-CSCIHK7Q-CpaX09-x.js → chunk-CSCIHK7Q-_D1FzP9B.js} +2 -2
  23. package/dist/client/assets/{chunk-FHYWG6QK-Ba10e2kj.js → chunk-FHYWG6QK-BhSajKiB.js} +1 -1
  24. package/dist/client/assets/{chunk-FMBD7UC4-CEo2wZMx.js → chunk-FMBD7UC4-Drmlc0wM.js} +1 -1
  25. package/dist/client/assets/{chunk-KSCS5N6A-CLzz2KFY.js → chunk-KSCS5N6A-D3XouAHf.js} +1 -1
  26. package/dist/client/assets/{chunk-L5ZTLDWV-DyyDuDZm.js → chunk-L5ZTLDWV-B7NYWgT4.js} +1 -1
  27. package/dist/client/assets/{chunk-LZXEDZCA-Cm5npwZA.js → chunk-LZXEDZCA-Dgkkbb6A.js} +2 -2
  28. package/dist/client/assets/{chunk-MPE355IW-MqEt-J8G.js → chunk-MPE355IW-Cw8YmjTC.js} +1 -1
  29. package/dist/client/assets/{chunk-MZUSXYTE-DdNi9lhx.js → chunk-MZUSXYTE-jvxRCZ7x.js} +1 -1
  30. package/dist/client/assets/{chunk-N66VUXT2-CjemTW4E.js → chunk-N66VUXT2-00i4y0yD.js} +1 -1
  31. package/dist/client/assets/{chunk-ND2GUHAM-CaopONUA.js → chunk-ND2GUHAM-CzO1oVCi.js} +1 -1
  32. package/dist/client/assets/{chunk-NZK2D7GU-DIzt4PM_.js → chunk-NZK2D7GU-re0VVZne.js} +1 -1
  33. package/dist/client/assets/{chunk-O5CBEL6O-C7Re_6FB.js → chunk-O5CBEL6O-BwsS59iy.js} +1 -1
  34. package/dist/client/assets/{chunk-PUPMXCY4-ZvwTw0To.js → chunk-PUPMXCY4-DfWourL7.js} +1 -1
  35. package/dist/client/assets/chunk-QZHKN3VN-CtbsU1Bj.js +1 -0
  36. package/dist/client/assets/{chunk-UIBZB4QT-BTY9be9s.js → chunk-UIBZB4QT-v-a5ZfN6.js} +1 -1
  37. package/dist/client/assets/{chunk-WCWK7LTN-Db1n3n3-.js → chunk-WCWK7LTN-CtYzhvvb.js} +1 -1
  38. package/dist/client/assets/chunk-WU5MYG2G-CLyh-xCA.js +1 -0
  39. package/dist/client/assets/{chunk-XPW4576I-DObFPxjB.js → chunk-XPW4576I-CvnAuXH2.js} +1 -1
  40. package/dist/client/assets/classDiagram-4FO5ZUOK-DnhdaVrK.js +1 -0
  41. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-C-BjeSGJ.js +1 -0
  42. package/dist/client/assets/{cose-bilkent-S5V4N54A-MlOPiG6P.js → cose-bilkent-S5V4N54A-fchD-dH2.js} +1 -1
  43. package/dist/client/assets/{dagre-BM42HDAG-BdFEW6fG.js → dagre-BM42HDAG-x71fYlqQ.js} +1 -1
  44. package/dist/client/assets/{dagre-BWNHuDdf.js → dagre-DSrzm-Gq.js} +1 -1
  45. package/dist/client/assets/{diagram-2AECGRRQ-D2ZuWfhH.js → diagram-2AECGRRQ-CMdwzuYj.js} +1 -1
  46. package/dist/client/assets/{diagram-5GNKFQAL-Cs_AmUDw.js → diagram-5GNKFQAL-B3l6I4qJ.js} +1 -1
  47. package/dist/client/assets/{diagram-KO2AKTUF-DICE0UrL.js → diagram-KO2AKTUF-BNhypLBW.js} +1 -1
  48. package/dist/client/assets/{diagram-LMA3HP47-MwtTXZWl.js → diagram-LMA3HP47-CmrhbiDt.js} +1 -1
  49. package/dist/client/assets/{diagram-OG6HWLK6-CxDJ75F5.js → diagram-OG6HWLK6-CRobDMLl.js} +1 -1
  50. package/dist/client/assets/{erDiagram-TEJ5UH35-XgZtP-BK.js → erDiagram-TEJ5UH35-CqO7K0TS.js} +1 -1
  51. package/dist/client/assets/eventmodeling-FCH6USID-BWhw0UJ8.js +1 -0
  52. package/dist/client/assets/{flowDiagram-I6XJVG4X-B8uIExT5.js → flowDiagram-I6XJVG4X-CuLTJZU0.js} +1 -1
  53. package/dist/client/assets/{ganttDiagram-6RSMTGT7-B6TrSB4S.js → ganttDiagram-6RSMTGT7-Bm7v1eRG.js} +1 -1
  54. package/dist/client/assets/gitGraph-WXDBUCRP-BSnxAa1J.js +1 -0
  55. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-qfMWSncV.js → gitGraphDiagram-PVQCEYII-CNHZr-5i.js} +1 -1
  56. package/dist/client/assets/index-Bs5SQZhz.css +2 -0
  57. package/dist/client/assets/index-LGNsdNYM.js +274 -0
  58. package/dist/client/assets/info-J43DQDTF-DcFwF1-h.js +1 -0
  59. package/dist/client/assets/{infoDiagram-5YYISTIA-CuOimNjJ.js → infoDiagram-5YYISTIA-z27pUr2X.js} +1 -1
  60. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-BWHbLru4.js → ishikawaDiagram-YF4QCWOH-CDocZ0jf.js} +1 -1
  61. package/dist/client/assets/{journeyDiagram-JHISSGLW-SAbFsYxI.js → journeyDiagram-JHISSGLW-CgP31lsU.js} +1 -1
  62. package/dist/client/assets/{kanban-definition-UN3LZRKU-m4ZsWr_S.js → kanban-definition-UN3LZRKU-DxTm1_fc.js} +1 -1
  63. package/dist/client/assets/{line-C4dSESbS.js → line-hrZ7m44_.js} +1 -1
  64. package/dist/client/assets/{linear-DT4rSZvy.js → linear-BOwW57yX.js} +1 -1
  65. package/dist/client/assets/{mermaid-parser.core-CstDlNL1.js → mermaid-parser.core-BThJAIK-.js} +2 -2
  66. package/dist/client/assets/{mermaid.core-B-Yj5Lxm.js → mermaid.core-CfVyP_kK.js} +3 -3
  67. package/dist/client/assets/{mindmap-definition-RKZ34NQL-Bzf9o0Md.js → mindmap-definition-RKZ34NQL-CuISnLgW.js} +1 -1
  68. package/dist/client/assets/{ordinal-k--hYEme.js → ordinal-CZ33lFpK.js} +1 -1
  69. package/dist/client/assets/packet-YPE3B663-1VZiO_9r.js +1 -0
  70. package/dist/client/assets/pie-LRSECV5Y-BX1-tQCu.js +1 -0
  71. package/dist/client/assets/{pieDiagram-4H26LBE5-C8c0F0hh.js → pieDiagram-4H26LBE5-DnWAdd44.js} +1 -1
  72. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-BewK5Lws.js → quadrantDiagram-W4KKPZXB-Cb-RVl5A.js} +1 -1
  73. package/dist/client/assets/radar-GUYGQ44K-B2HRrCR4.js +1 -0
  74. package/dist/client/assets/{requirementDiagram-4Y6WPE33-C_gYL5ls.js → requirementDiagram-4Y6WPE33-DrXg_gCS.js} +1 -1
  75. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-Dt8OrhUl.js → sankeyDiagram-5OEKKPKP-DzZjp_ZP.js} +1 -1
  76. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-Z578DkVy.js → sequenceDiagram-3UESZ5HK-CQJ3PhQD.js} +1 -1
  77. package/dist/client/assets/{stateDiagram-AJRCARHV-CyQ5eQTE.js → stateDiagram-AJRCARHV-B16j9pg1.js} +1 -1
  78. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-vNiFfHwm.js +1 -0
  79. package/dist/client/assets/{timeline-definition-PNZ67QCA-DMtbr-l6.js → timeline-definition-PNZ67QCA-bUG3mZQt.js} +1 -1
  80. package/dist/client/assets/treeView-BLDUP644-CDfUVbUi.js +1 -0
  81. package/dist/client/assets/treemap-LRROVOQU-DUWqu8sK.js +1 -0
  82. package/dist/client/assets/{vennDiagram-CIIHVFJN-BToePHO4.js → vennDiagram-CIIHVFJN-DALCJcZD.js} +1 -1
  83. package/dist/client/assets/wardley-L42UT6IY-BEFuPUCy.js +1 -0
  84. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-FAzbTjvI.js → wardleyDiagram-YWT4CUSO-DPQd3l9A.js} +1 -1
  85. package/dist/client/assets/{xychartDiagram-2RQKCTM6-BrlUCOgp.js → xychartDiagram-2RQKCTM6-BIv1FqXG.js} +1 -1
  86. package/dist/client/index.html +2 -2
  87. package/dist/server/db.js +399 -0
  88. package/dist/server/db.js.map +1 -1
  89. package/dist/server/index.js +183 -20
  90. package/dist/server/index.js.map +1 -1
  91. package/dist/server/lib/agent.js +9 -6
  92. package/dist/server/lib/agent.js.map +1 -1
  93. package/dist/server/lib/automationResumeDecision.js +6 -0
  94. package/dist/server/lib/automationResumeDecision.js.map +1 -1
  95. package/dist/server/lib/bundleReviewOperations.js +81 -2
  96. package/dist/server/lib/bundleReviewOperations.js.map +1 -1
  97. package/dist/server/lib/checkWorkspaceIdentity.js +2 -206
  98. package/dist/server/lib/checkWorkspaceIdentity.js.map +1 -1
  99. package/dist/server/lib/executionReconciliation.js +73 -0
  100. package/dist/server/lib/executionReconciliation.js.map +1 -1
  101. package/dist/server/lib/figmaResources.js +15 -1
  102. package/dist/server/lib/figmaResources.js.map +1 -1
  103. package/dist/server/lib/git.js +312 -32
  104. package/dist/server/lib/git.js.map +1 -1
  105. package/dist/server/lib/integrations/github.js +10 -1
  106. package/dist/server/lib/integrations/github.js.map +1 -1
  107. package/dist/server/lib/postBuildChecks.js +20 -12
  108. package/dist/server/lib/postBuildChecks.js.map +1 -1
  109. package/dist/server/lib/repositoryGraphAnalyzer.js +392 -0
  110. package/dist/server/lib/repositoryGraphAnalyzer.js.map +1 -0
  111. package/dist/server/lib/repositoryGraphGitHistory.js +371 -0
  112. package/dist/server/lib/repositoryGraphGitHistory.js.map +1 -0
  113. package/dist/server/lib/repositoryGraphIdentity.js +134 -0
  114. package/dist/server/lib/repositoryGraphIdentity.js.map +1 -0
  115. package/dist/server/lib/repositoryGraphManifest.js +386 -0
  116. package/dist/server/lib/repositoryGraphManifest.js.map +1 -0
  117. package/dist/server/lib/repositoryGraphQueries.js +370 -0
  118. package/dist/server/lib/repositoryGraphQueries.js.map +1 -0
  119. package/dist/server/lib/repositoryGraphRetention.js +104 -0
  120. package/dist/server/lib/repositoryGraphRetention.js.map +1 -0
  121. package/dist/server/lib/repositoryGraphRoutes.js +145 -0
  122. package/dist/server/lib/repositoryGraphRoutes.js.map +1 -0
  123. package/dist/server/lib/repositoryGraphScan.js +370 -0
  124. package/dist/server/lib/repositoryGraphScan.js.map +1 -0
  125. package/dist/server/lib/repositoryGraphStore.js +352 -0
  126. package/dist/server/lib/repositoryGraphStore.js.map +1 -0
  127. package/dist/server/lib/repositoryGraphTargets.js +30 -0
  128. package/dist/server/lib/repositoryGraphTargets.js.map +1 -0
  129. package/dist/server/lib/repositoryGraphTypeScript.js +288 -0
  130. package/dist/server/lib/repositoryGraphTypeScript.js.map +1 -0
  131. package/dist/server/lib/reviewFindings.js +31 -5
  132. package/dist/server/lib/reviewFindings.js.map +1 -1
  133. package/dist/server/lib/specArtifact.js +5 -1
  134. package/dist/server/lib/specArtifact.js.map +1 -1
  135. package/dist/server/lib/terminal.js +25 -1
  136. package/dist/server/lib/terminal.js.map +1 -1
  137. package/dist/server/lib/types.js +1 -0
  138. package/dist/server/lib/types.js.map +1 -1
  139. package/dist/server/lib/workspaceIdentity.js +433 -0
  140. package/dist/server/lib/workspaceIdentity.js.map +1 -0
  141. package/dist/server/workers/build.js +2 -2
  142. package/dist/server/workers/build.js.map +1 -1
  143. package/dist/server/workers/followUp.js +1 -1
  144. package/dist/server/workers/followUp.js.map +1 -1
  145. package/dist/server/workers/plan.js +9 -7
  146. package/dist/server/workers/plan.js.map +1 -1
  147. package/dist/server/workers/repositoryGraphAnalyzer.js +282 -0
  148. package/dist/server/workers/repositoryGraphAnalyzer.js.map +1 -0
  149. package/dist/server/workers/review.js +72 -6
  150. package/dist/server/workers/review.js.map +1 -1
  151. package/dist/server/workers/specSession.js +4 -1
  152. package/dist/server/workers/specSession.js.map +1 -1
  153. package/package.json +2 -1
  154. package/dist/client/assets/ActivityView-DGP4Juye.js +0 -1
  155. package/dist/client/assets/GitHubActionsDialog-P_mpYAOO.js +0 -1
  156. package/dist/client/assets/VerificationDialog-C6FVSzcF.js +0 -4
  157. package/dist/client/assets/architecture-7EHR7CIX-C-4Cp4ml.js +0 -1
  158. package/dist/client/assets/channel-CQOfjP3q.js +0 -1
  159. package/dist/client/assets/chunk-QZHKN3VN-LI_RZca2.js +0 -1
  160. package/dist/client/assets/chunk-WU5MYG2G-D5lmGfNl.js +0 -1
  161. package/dist/client/assets/classDiagram-4FO5ZUOK-DGUeerOX.js +0 -1
  162. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Cnum-Tdt.js +0 -1
  163. package/dist/client/assets/eventmodeling-FCH6USID-Dqb6QKoI.js +0 -1
  164. package/dist/client/assets/gitGraph-WXDBUCRP-DYEsqh93.js +0 -1
  165. package/dist/client/assets/index-CzRhzdmk.js +0 -274
  166. package/dist/client/assets/index-DZqqZx53.css +0 -2
  167. package/dist/client/assets/info-J43DQDTF-CfjXFZai.js +0 -1
  168. package/dist/client/assets/packet-YPE3B663-Dv0HkRHU.js +0 -1
  169. package/dist/client/assets/pie-LRSECV5Y-S5zPzZFN.js +0 -1
  170. package/dist/client/assets/radar-GUYGQ44K-B7psLv22.js +0 -1
  171. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-C9e0OccX.js +0 -1
  172. package/dist/client/assets/treeView-BLDUP644-B8H0kT67.js +0 -1
  173. package/dist/client/assets/treemap-LRROVOQU-DPLhFHnh.js +0 -1
  174. package/dist/client/assets/wardley-L42UT6IY-B5-Vb08V.js +0 -1
  175. /package/dist/client/assets/{array-BNor45A1.js → array-B2f2amhX.js} +0 -0
  176. /package/dist/client/assets/{chunk-NNHCCRGN-CZB-V-Gv.js → chunk-NNHCCRGN-DgKrp8T-.js} +0 -0
  177. /package/dist/client/assets/{cytoscape.esm-B2lJcMSI.js → cytoscape.esm-BInZCgaJ.js} +0 -0
  178. /package/dist/client/assets/{defaultLocale-DPzUsThw.js → defaultLocale-sPXJ5urm.js} +0 -0
  179. /package/dist/client/assets/{dist-CERhmQhR.js → dist-DfHDMDTt.js} +0 -0
  180. /package/dist/client/assets/{graphlib-BHOW-eWz.js → graphlib-DacNv4Jd.js} +0 -0
  181. /package/dist/client/assets/{init-C0L3woqb.js → init-BVCnG1lj.js} +0 -0
  182. /package/dist/client/assets/{katex-CpjQsUQe.js → katex-BlkrXOwm.js} +0 -0
  183. /package/dist/client/assets/{path-sMK4d_s9.js → path-Bw5AvBNC.js} +0 -0
  184. /package/dist/client/assets/{rough.esm-BoTisKeL.js → rough.esm-DeLgKbOI.js} +0 -0
  185. /package/dist/client/assets/{src-BRjoYtUW.js → src-CFGsdLiG.js} +0 -0
@@ -0,0 +1,288 @@
1
+ import { basename, dirname, extname, isAbsolute, relative, resolve, sep } from 'node:path';
2
+ import ts from 'typescript';
3
+ const SOURCE_EXTENSIONS = new Set(['.cjs', '.cts', '.js', '.jsx', '.mjs', '.mts', '.ts', '.tsx']);
4
+ const throwIfCancelled = (signal, deadline) => {
5
+ if (signal?.aborted) {
6
+ throw new Error('Repository graph analysis cancelled');
7
+ }
8
+ if (deadline !== undefined && Date.now() >= deadline) {
9
+ throw new Error('Repository graph analysis timed out');
10
+ }
11
+ };
12
+ const toRepositoryPath = (root, absolutePath) => {
13
+ const path = relative(root, absolutePath).split(sep).join('/');
14
+ if (!path || path === '..' || path.startsWith('../') || isAbsolute(path)) {
15
+ return null;
16
+ }
17
+ return path;
18
+ };
19
+ const scriptKindForPath = (path) => {
20
+ const extension = extname(path).toLowerCase();
21
+ if (extension === '.tsx') {
22
+ return ts.ScriptKind.TSX;
23
+ }
24
+ if (extension === '.jsx') {
25
+ return ts.ScriptKind.JSX;
26
+ }
27
+ if (['.js', '.mjs', '.cjs'].includes(extension)) {
28
+ return ts.ScriptKind.JS;
29
+ }
30
+ return ts.ScriptKind.TS;
31
+ };
32
+ const getStringLiteral = (node) => {
33
+ return node && (ts.isStringLiteral(node) || ts.isNoSubstitutionTemplateLiteral(node)) ? node.text : null;
34
+ };
35
+ const packageNameFromSpecifier = (specifier) => {
36
+ if (specifier.startsWith('@')) {
37
+ return specifier.split('/').slice(0, 2).join('/');
38
+ }
39
+ return specifier.split('/')[0] ?? specifier;
40
+ };
41
+ const parseConfigs = (root, manifest, host, addDiagnostic) => {
42
+ const configEntries = manifest.entries.filter(entry => entry.kind === 'typescript_config' && entry.content !== null);
43
+ const admittedPaths = new Set(manifest.entries
44
+ .filter(entry => entry.admission === 'admitted')
45
+ .map(entry => entry.path));
46
+ return configEntries.map((entry) => {
47
+ const parsed = ts.parseConfigFileTextToJson(entry.path, entry.content ?? '');
48
+ if (parsed.error) {
49
+ addDiagnostic({
50
+ code: 'malformed_typescript_config', severity: 'warning',
51
+ message: ts.flattenDiagnosticMessageText(parsed.error.messageText, '\n'), path: entry.path,
52
+ });
53
+ }
54
+ const raw = parsed.config && typeof parsed.config === 'object' ? parsed.config : {};
55
+ const parsedConfig = ts.parseJsonConfigFileContent(raw, host, resolve(root, dirname(entry.path)), undefined, resolve(root, entry.path));
56
+ for (const error of parsedConfig.errors.filter(error => error.code !== 18003)) {
57
+ addDiagnostic({
58
+ code: 'invalid_typescript_config', severity: 'warning',
59
+ message: ts.flattenDiagnosticMessageText(error.messageText, '\n'), path: entry.path,
60
+ });
61
+ }
62
+ return {
63
+ path: entry.path,
64
+ directory: dirname(entry.path) === '.' ? '' : dirname(entry.path),
65
+ options: {
66
+ ...parsedConfig.options,
67
+ allowJs: true,
68
+ module: parsedConfig.options.module ?? ts.ModuleKind.NodeNext,
69
+ moduleResolution: parsedConfig.options.moduleResolution ?? ts.ModuleResolutionKind.NodeNext,
70
+ resolvePackageJsonExports: true,
71
+ resolvePackageJsonImports: true,
72
+ },
73
+ references: (parsedConfig.projectReferences ?? []).flatMap(reference => {
74
+ const repositoryPath = toRepositoryPath(root, ts.resolveProjectReferencePath(reference));
75
+ return repositoryPath ? [repositoryPath] : [];
76
+ }),
77
+ memberPaths: new Set(parsedConfig.fileNames.flatMap(fileName => {
78
+ const repositoryPath = toRepositoryPath(root, fileName);
79
+ return repositoryPath && admittedPaths.has(repositoryPath) ? [repositoryPath] : [];
80
+ })),
81
+ };
82
+ }).sort((left, right) => left.path.localeCompare(right.path));
83
+ };
84
+ const configForPath = (path, configs, addDiagnostic) => {
85
+ const matches = configs
86
+ .filter(config => config.memberPaths.has(path))
87
+ .sort((left, right) => {
88
+ const depthDifference = right.directory.split('/').filter(Boolean).length - left.directory.split('/').filter(Boolean).length;
89
+ return depthDifference || left.path.localeCompare(right.path);
90
+ });
91
+ const selected = matches[0];
92
+ const alternative = matches[1];
93
+ if (selected && alternative && selected.directory === alternative.directory) {
94
+ addDiagnostic({
95
+ code: 'ambiguous_typescript_config',
96
+ severity: 'info',
97
+ message: `Source file is included by multiple TypeScript configurations; using '${selected.path}'`,
98
+ path,
99
+ });
100
+ }
101
+ return selected;
102
+ };
103
+ export const analyzeRepositoryGraphTypeScript = (cwd, manifest, { limits, signal, deadline }) => {
104
+ const root = resolve(cwd);
105
+ const diagnostics = [];
106
+ let diagnosticsOmitted = false;
107
+ const addDiagnostic = (diagnostic) => {
108
+ if (diagnostics.length < limits.maxDiagnostics) {
109
+ diagnostics.push(diagnostic);
110
+ }
111
+ else {
112
+ diagnosticsOmitted = true;
113
+ }
114
+ };
115
+ const entries = manifest.entries.filter(entry => entry.admission === 'admitted' && entry.content !== null);
116
+ const sourceEntries = entries.filter(entry => SOURCE_EXTENSIONS.has(extname(entry.path).toLowerCase()));
117
+ const useCaseSensitiveFileNames = ts.sys.useCaseSensitiveFileNames;
118
+ const canonicalPath = (path) => {
119
+ const absolutePath = resolve(path);
120
+ return useCaseSensitiveFileNames ? absolutePath : absolutePath.toLowerCase();
121
+ };
122
+ const contentByAbsolutePath = new Map(entries.map(entry => [canonicalPath(resolve(root, entry.path)), entry.content ?? '']));
123
+ const admittedPathByAbsolutePath = new Map(entries.map(entry => [canonicalPath(resolve(root, entry.path)), entry.path]));
124
+ const directories = new Set([canonicalPath(root)]);
125
+ for (const entry of entries) {
126
+ const absolutePath = resolve(root, entry.path);
127
+ let directory = dirname(absolutePath);
128
+ while (directory.startsWith(root)) {
129
+ directories.add(canonicalPath(directory));
130
+ if (directory === root) {
131
+ break;
132
+ }
133
+ directory = dirname(directory);
134
+ }
135
+ }
136
+ const directoryEntries = new Map();
137
+ const getDirectoryEntry = (path) => {
138
+ const key = canonicalPath(path);
139
+ const existing = directoryEntries.get(key);
140
+ if (existing) {
141
+ return existing;
142
+ }
143
+ const created = { files: new Set(), directories: new Set() };
144
+ directoryEntries.set(key, created);
145
+ return created;
146
+ };
147
+ for (const entry of entries) {
148
+ const absolutePath = resolve(root, entry.path);
149
+ let directory = dirname(absolutePath);
150
+ getDirectoryEntry(directory).files.add(basename(absolutePath));
151
+ while (directory !== root && directory.startsWith(root)) {
152
+ const parent = dirname(directory);
153
+ getDirectoryEntry(parent).directories.add(basename(directory));
154
+ directory = parent;
155
+ }
156
+ }
157
+ const matchFiles = ts.matchFiles;
158
+ if (!matchFiles) {
159
+ throw new Error('Installed TypeScript does not expose manifest-backed file matching');
160
+ }
161
+ const host = {
162
+ fileExists: fileName => contentByAbsolutePath.has(canonicalPath(fileName)),
163
+ readFile: fileName => contentByAbsolutePath.get(canonicalPath(fileName)),
164
+ directoryExists: directoryName => directories.has(canonicalPath(directoryName)),
165
+ readDirectory: (directory, extensions, excludes, includes, depth) => matchFiles(directory, extensions, excludes, includes, useCaseSensitiveFileNames, root, depth, path => {
166
+ const entry = directoryEntries.get(canonicalPath(path));
167
+ return {
168
+ files: [...(entry?.files ?? [])].sort((left, right) => left.localeCompare(right)),
169
+ directories: [...(entry?.directories ?? [])].sort((left, right) => left.localeCompare(right)),
170
+ };
171
+ }, path => resolve(path)),
172
+ getCurrentDirectory: () => root,
173
+ realpath: path => resolve(path),
174
+ useCaseSensitiveFileNames,
175
+ };
176
+ const configs = parseConfigs(root, manifest, host, addDiagnostic);
177
+ const edges = [];
178
+ let resolutions = 0;
179
+ let truncated = sourceEntries.length > limits.maxSourceFiles;
180
+ for (const config of configs) {
181
+ for (const reference of config.references) {
182
+ if (manifest.entries.some(entry => entry.path === reference)) {
183
+ edges.push({ sourcePath: config.path, target: reference, targetKind: 'config', kind: 'config_reference', specifier: reference });
184
+ }
185
+ else {
186
+ addDiagnostic({ code: 'unresolved_config_reference', severity: 'warning', message: `Cannot resolve project reference '${reference}'`, path: config.path });
187
+ }
188
+ }
189
+ }
190
+ for (const entry of sourceEntries.slice(0, limits.maxSourceFiles)) {
191
+ throwIfCancelled(signal, deadline);
192
+ const sourceFile = ts.createSourceFile(entry.path, entry.content ?? '', ts.ScriptTarget.Latest, false, scriptKindForPath(entry.path));
193
+ const parseDiagnostics = sourceFile.parseDiagnostics ?? [];
194
+ const parseDiagnosticBudget = Math.max(0, limits.maxDiagnostics - diagnostics.length + 1);
195
+ for (const diagnostic of parseDiagnostics.slice(0, parseDiagnosticBudget)) {
196
+ addDiagnostic({
197
+ code: 'typescript_parse_error', severity: 'warning',
198
+ message: ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'), path: entry.path,
199
+ });
200
+ }
201
+ const config = configForPath(entry.path, configs, addDiagnostic);
202
+ const compilerOptions = config?.options ?? {
203
+ allowJs: true,
204
+ module: ts.ModuleKind.NodeNext,
205
+ moduleResolution: ts.ModuleResolutionKind.NodeNext,
206
+ resolvePackageJsonExports: true,
207
+ resolvePackageJsonImports: true,
208
+ };
209
+ const relationships = [];
210
+ const visit = (node) => {
211
+ if (relationships.length >= limits.maxModuleResolutions - resolutions + 1) {
212
+ truncated = true;
213
+ return;
214
+ }
215
+ if (ts.isImportDeclaration(node)) {
216
+ const specifier = getStringLiteral(node.moduleSpecifier);
217
+ if (specifier) {
218
+ relationships.push({ kind: 'imports', specifier });
219
+ }
220
+ }
221
+ else if (ts.isExportDeclaration(node) && node.moduleSpecifier) {
222
+ const specifier = getStringLiteral(node.moduleSpecifier);
223
+ if (specifier) {
224
+ relationships.push({ kind: 're_exports', specifier });
225
+ }
226
+ }
227
+ else if (ts.isImportEqualsDeclaration(node) && ts.isExternalModuleReference(node.moduleReference)) {
228
+ const specifier = getStringLiteral(node.moduleReference.expression);
229
+ if (specifier) {
230
+ relationships.push({ kind: 'requires', specifier });
231
+ }
232
+ }
233
+ else if (ts.isCallExpression(node)) {
234
+ const dynamicImport = node.expression.kind === ts.SyntaxKind.ImportKeyword;
235
+ const commonJsRequire = ts.isIdentifier(node.expression) && node.expression.text === 'require';
236
+ if (dynamicImport || commonJsRequire) {
237
+ const specifier = getStringLiteral(node.arguments[0]);
238
+ if (specifier) {
239
+ relationships.push({ kind: dynamicImport ? 'dynamic_imports' : 'requires', specifier });
240
+ }
241
+ else {
242
+ addDiagnostic({
243
+ code: dynamicImport ? 'non_literal_dynamic_import' : 'non_literal_require', severity: 'info',
244
+ message: `${dynamicImport ? 'Dynamic import' : 'CommonJS require'} is not a string literal`, path: entry.path,
245
+ });
246
+ }
247
+ }
248
+ }
249
+ ts.forEachChild(node, visit);
250
+ };
251
+ visit(sourceFile);
252
+ for (const relationship of relationships) {
253
+ if (resolutions >= limits.maxModuleResolutions) {
254
+ truncated = true;
255
+ break;
256
+ }
257
+ resolutions += 1;
258
+ const resolved = ts.resolveModuleName(relationship.specifier, resolve(root, entry.path), compilerOptions, host).resolvedModule;
259
+ const resolvedPath = resolved
260
+ ? admittedPathByAbsolutePath.get(canonicalPath(resolved.resolvedFileName)) ?? null
261
+ : null;
262
+ if (resolvedPath) {
263
+ edges.push({ sourcePath: entry.path, target: resolvedPath, targetKind: 'file', ...relationship });
264
+ continue;
265
+ }
266
+ if (!relationship.specifier.startsWith('.') && !relationship.specifier.startsWith('/') && !relationship.specifier.startsWith('#')) {
267
+ edges.push({
268
+ sourcePath: entry.path,
269
+ target: packageNameFromSpecifier(relationship.specifier),
270
+ targetKind: 'package',
271
+ ...relationship,
272
+ });
273
+ continue;
274
+ }
275
+ addDiagnostic({
276
+ code: 'unresolved_module', severity: 'warning',
277
+ message: `Cannot resolve module '${relationship.specifier}'`, path: entry.path,
278
+ });
279
+ }
280
+ }
281
+ if (diagnosticsOmitted && diagnostics.length > 0) {
282
+ diagnostics[diagnostics.length - 1] = {
283
+ code: 'diagnostic_limit', severity: 'warning', message: 'Additional TypeScript diagnostics were omitted', path: null,
284
+ };
285
+ }
286
+ return { edges, diagnostics, diagnosticsOmitted, parsedFiles: Math.min(sourceEntries.length, limits.maxSourceFiles), truncated };
287
+ };
288
+ //# sourceMappingURL=repositoryGraphTypeScript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repositoryGraphTypeScript.js","sourceRoot":"","sources":["../../../server/lib/repositoryGraphTypeScript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC1F,OAAO,EAAE,MAAM,YAAY,CAAA;AAsD3B,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;AAEjG,MAAM,gBAAgB,GAAG,CAAC,MAAoB,EAAE,QAAiB,EAAE,EAAE;IACnE,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,YAAoB,EAAE,EAAE;IAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9D,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IAC7C,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAA;IAC1B,CAAC;IACD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAA;IAC1B,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAA;AACzB,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,IAA+B,EAAE,EAAE;IAC3D,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC1G,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,SAAiB,EAAE,EAAE;IACrD,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnD,CAAC;IACD,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAA;AAC7C,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CACnB,IAAY,EACZ,QAAiC,EACjC,IAAwB,EACxB,aAA8D,EAC9D,EAAE;IACF,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAA;IACpH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO;SAC3C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC;SAC/C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAE5B,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAU,EAAE;QACzC,MAAM,MAAM,GAAG,EAAE,CAAC,yBAAyB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;QAC5E,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,aAAa,CAAC;gBACZ,IAAI,EAAE,6BAA6B,EAAE,QAAQ,EAAE,SAAS;gBACxD,OAAO,EAAE,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;aAC3F,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9G,MAAM,YAAY,GAAG,EAAE,CAAC,0BAA0B,CAChD,GAAG,EACH,IAAI,EACJ,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAClC,SAAS,EACT,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAC1B,CAAA;QACD,KAAK,MAAM,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC9E,aAAa,CAAC;gBACZ,IAAI,EAAE,2BAA2B,EAAE,QAAQ,EAAE,SAAS;gBACtD,OAAO,EAAE,EAAE,CAAC,4BAA4B,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;aACpF,CAAC,CAAA;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACjE,OAAO,EAAE;gBACP,GAAG,YAAY,CAAC,OAAO;gBACvB,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ;gBAC7D,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC,oBAAoB,CAAC,QAAQ;gBAC3F,yBAAyB,EAAE,IAAI;gBAC/B,yBAAyB,EAAE,IAAI;aAChC;YACD,UAAU,EAAE,CAAC,YAAY,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACrE,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAA;gBACxF,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC/C,CAAC,CAAC;YACF,WAAW,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC7D,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;gBACvD,OAAO,cAAc,IAAI,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACpF,CAAC,CAAC,CAAC;SACJ,CAAA;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/D,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CACpB,IAAY,EACZ,OAAiB,EACjB,aAA8D,EAC9D,EAAE;IACF,MAAM,OAAO,GAAG,OAAO;SACpB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SAC9C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;QAC5H,OAAO,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IACJ,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAC3B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAC9B,IAAI,QAAQ,IAAI,WAAW,IAAI,QAAQ,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;QAC5E,aAAa,CAAC;YACZ,IAAI,EAAE,6BAA6B;YACnC,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,yEAAyE,QAAQ,CAAC,IAAI,GAAG;YAClG,IAAI;SACL,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,GAAW,EACX,QAAiC,EACjC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAkB,EACX,EAAE;IACnC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzB,MAAM,WAAW,GAAgC,EAAE,CAAA;IACnD,IAAI,kBAAkB,GAAG,KAAK,CAAA;IAC9B,MAAM,aAAa,GAAG,CAAC,UAAqC,EAAE,EAAE;QAC9D,IAAI,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/C,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,kBAAkB,GAAG,IAAI,CAAA;QAC3B,CAAC;IACH,CAAC,CAAA;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,UAAU,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAA;IAC1G,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IACvG,MAAM,yBAAyB,GAAG,EAAE,CAAC,GAAG,CAAC,yBAAyB,CAAA;IAClE,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,yBAAyB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,CAAA;IAC9E,CAAC,CAAA;IACD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5H,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACxH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC1D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACrC,OAAO,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;YACzC,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAK;YACP,CAAC;YACD,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IACD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA4D,CAAA;IAC5F,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE;QACzC,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;QAC/B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,IAAI,GAAG,EAAU,EAAE,WAAW,EAAE,IAAI,GAAG,EAAU,EAAE,CAAA;QAC5E,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QAClC,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACrC,iBAAiB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;QAC9D,OAAO,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;YACjC,iBAAiB,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;YAC9D,SAAS,GAAG,MAAM,CAAA;QACpB,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAI,EAA8C,CAAC,UAAU,CAAA;IAC7E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;IACvF,CAAC;IACD,MAAM,IAAI,GAAuB;QAC/B,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1E,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxE,eAAe,EAAE,aAAa,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC/E,aAAa,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAC7E,SAAS,EACT,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,yBAAyB,EACzB,IAAI,EACJ,KAAK,EACL,IAAI,CAAC,EAAE;YACL,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YACvD,OAAO;gBACL,KAAK,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACjF,WAAW,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aAC9F,CAAA;QACH,CAAC,EACD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CACtB;QACD,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC/B,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,yBAAyB;KAC1B,CAAA;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IACjE,MAAM,KAAK,GAAoC,EAAE,CAAA;IACjD,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,SAAS,GAAG,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,cAAc,CAAA;IAE5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1C,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;YAClI,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,qCAAqC,SAAS,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;YAC5J,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QAClE,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAClC,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;QACrI,MAAM,gBAAgB,GAAI,UAA8E,CAAC,gBAAgB,IAAI,EAAE,CAAA;QAC/H,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,cAAc,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACzF,KAAK,MAAM,UAAU,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC;YAC1E,aAAa,CAAC;gBACZ,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,SAAS;gBACnD,OAAO,EAAE,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;aACzF,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;QAChE,MAAM,eAAe,GAAuB,MAAM,EAAE,OAAO,IAAI;YAC7D,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;YAC9B,gBAAgB,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ;YAClD,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,IAAI;SAChC,CAAA;QACD,MAAM,aAAa,GAA+G,EAAE,CAAA;QACpI,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,EAAE;YAC9B,IAAI,aAAa,CAAC,MAAM,IAAI,MAAM,CAAC,oBAAoB,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1E,SAAS,GAAG,IAAI,CAAA;gBAChB,OAAM;YACR,CAAC;YACD,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;gBACxD,IAAI,SAAS,EAAE,CAAC;oBACd,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;gBACpD,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBAChE,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;gBACxD,IAAI,SAAS,EAAE,CAAC;oBACd,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBACpG,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;gBACnE,IAAI,SAAS,EAAE,CAAC;oBACd,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAA;gBACrD,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAA;gBAC1E,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,CAAA;gBAC9F,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;oBACrC,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;oBACrD,IAAI,SAAS,EAAE,CAAC;wBACd,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAA;oBACzF,CAAC;yBAAM,CAAC;wBACN,aAAa,CAAC;4BACZ,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,qBAAqB,EAAE,QAAQ,EAAE,MAAM;4BAC5F,OAAO,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAAkB,0BAA0B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;yBAC9G,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC9B,CAAC,CAAA;QACD,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,WAAW,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;gBAC/C,SAAS,GAAG,IAAI,CAAA;gBAChB,MAAK;YACP,CAAC;YACD,WAAW,IAAI,CAAC,CAAA;YAChB,MAAM,QAAQ,GAAG,EAAE,CAAC,iBAAiB,CACnC,YAAY,CAAC,SAAS,EACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EACzB,eAAe,EACf,IAAI,CACL,CAAC,cAAc,CAAA;YAChB,MAAM,YAAY,GAAG,QAAQ;gBAC3B,CAAC,CAAC,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,IAAI,IAAI;gBAClF,CAAC,CAAC,IAAI,CAAA;YACR,IAAI,YAAY,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC,CAAA;gBACjG,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClI,KAAK,CAAC,IAAI,CAAC;oBACT,UAAU,EAAE,KAAK,CAAC,IAAI;oBACtB,MAAM,EAAE,wBAAwB,CAAC,YAAY,CAAC,SAAS,CAAC;oBACxD,UAAU,EAAE,SAAS;oBACrB,GAAG,YAAY;iBAChB,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,aAAa,CAAC;gBACZ,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,SAAS;gBAC9C,OAAO,EAAE,0BAA0B,YAAY,CAAC,SAAS,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;aAC/E,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,IAAI,kBAAkB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG;YACpC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,gDAAgD,EAAE,IAAI,EAAE,IAAI;SACrH,CAAA;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,CAAA;AAClI,CAAC,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { randomUUID } from 'crypto';
2
2
  import db from '../db.js';
3
- const ARCHON_REVIEW_MARKER_PATTERN = /<archon-review-findings>([\s\S]*?)<\\?\/archon-review-findings>/i;
3
+ const ARCHON_REVIEW_OPENING_PATTERN = /^[ \t]*<archon-review-findings>[ \t]*$/gim;
4
+ const ARCHON_REVIEW_CLOSING_PATTERN = /^[ \t]*<\\?\/archon-review-findings>[ \t]*$/im;
4
5
  const TERMINAL_REVIEW_RUN_STATUSES = ['completed', 'parse_failed'];
5
6
  const insertReviewRunStatement = db.prepare(`
6
7
  INSERT INTO review_runs (id, ticket_id, project_id, worktree_bundle_id, stage, diff_signature, workspace_signature, message_id, status)
@@ -146,8 +147,33 @@ const serializeReviewRun = (row) => {
146
147
  }
147
148
  return row;
148
149
  };
150
+ const findReviewFindingsBlock = (output) => {
151
+ const openings = [...output.matchAll(ARCHON_REVIEW_OPENING_PATTERN)];
152
+ for (let index = openings.length - 1; index >= 0; index -= 1) {
153
+ const opening = openings[index];
154
+ if (opening.index === undefined) {
155
+ continue;
156
+ }
157
+ const contentStart = opening.index + opening[0].length;
158
+ const remainder = output.slice(contentStart);
159
+ const closing = remainder.match(ARCHON_REVIEW_CLOSING_PATTERN);
160
+ if (!closing || closing.index === undefined) {
161
+ continue;
162
+ }
163
+ return {
164
+ start: opening.index,
165
+ end: contentStart + closing.index + closing[0].length,
166
+ content: remainder.slice(0, closing.index),
167
+ };
168
+ }
169
+ return null;
170
+ };
149
171
  const stripReviewFindingsBlock = (output) => {
150
- return output.replace(ARCHON_REVIEW_MARKER_PATTERN, '').trim();
172
+ const block = findReviewFindingsBlock(output);
173
+ if (!block) {
174
+ return output.trim();
175
+ }
176
+ return `${output.slice(0, block.start)}${output.slice(block.end)}`.trim();
151
177
  };
152
178
  const parseReviewFinding = (value, index) => {
153
179
  if (!value || typeof value !== 'object' || Array.isArray(value)) {
@@ -300,8 +326,8 @@ export const computeDiffSignature = (diffText) => {
300
326
  export const parseStructuredReviewOutput = (output) => {
301
327
  const cleanedMarkdown = stripReviewFindingsBlock(output);
302
328
  const markdownFindings = parseMarkdownReviewFindings(cleanedMarkdown);
303
- const blockMatch = output.match(ARCHON_REVIEW_MARKER_PATTERN);
304
- if (!blockMatch) {
329
+ const block = findReviewFindingsBlock(output);
330
+ if (!block) {
305
331
  if (markdownFindings) {
306
332
  return {
307
333
  cleanedMarkdown,
@@ -315,7 +341,7 @@ export const parseStructuredReviewOutput = (output) => {
315
341
  status: 'parse_failed',
316
342
  };
317
343
  }
318
- const findings = parseReviewFindingsJson(blockMatch[1]?.trim() ?? '');
344
+ const findings = parseReviewFindingsJson(block.content.trim());
319
345
  if (findings) {
320
346
  return {
321
347
  cleanedMarkdown,
@@ -1 +1 @@
1
- {"version":3,"file":"reviewFindings.js","sourceRoot":"","sources":["../../../server/lib/reviewFindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewFindings.js","sourceRoot":"","sources":["../../../server/lib/reviewFindings.ts"],"names":[],"mappings":"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"}
@@ -141,6 +141,10 @@ const sanitizeJsonControlChars = (raw) => {
141
141
  }
142
142
  return result;
143
143
  };
144
+ const sanitizeGrillQuestionJson = (raw) => {
145
+ // Some providers omit `recommended` by leaving a phantom quoted property after `value`.
146
+ return sanitizeJsonControlChars(raw).replace(/("value"\s*:\s*"(?:\\.|[^"\\])*")\s*,\s*"\s*}/g, '$1}');
147
+ };
144
148
  export const extractSpecArtifactFromOutput = (output) => {
145
149
  const match = output.match(new RegExp(`<\\s*${SPEC_ARTIFACT_TAG}\\s*>([\\s\\S]*?)<\\s*/\\s*${SPEC_ARTIFACT_TAG}\\s*>`));
146
150
  if (!match) {
@@ -342,7 +346,7 @@ export const extractGrillQuestionFromOutput = (output) => {
342
346
  const cleanedOutput = output.slice(0, match.index).trim();
343
347
  let parsed;
344
348
  try {
345
- const sanitized = sanitizeJsonControlChars(match[1].trim());
349
+ const sanitized = sanitizeGrillQuestionJson(match[1].trim());
346
350
  parsed = JSON.parse(sanitized);
347
351
  }
348
352
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"specArtifact.js","sourceRoot":"","sources":["../../../server/lib/specArtifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specArtifact.js","sourceRoot":"","sources":["../../../server/lib/specArtifact.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,30 @@ const IDLE_TIMEOUT_MS = 120_000;
15
15
  const OUTPUT_FLUSH_INTERVAL_MS = 16;
16
16
  const MAX_DETACHED_OUTPUT_BUFFER_BYTES = 32 * 1024;
17
17
  const require = createRequire(import.meta.url);
18
+ const utf8Suffix = (value, maxBytes) => {
19
+ const suffix = [];
20
+ let bytes = 0;
21
+ let end = value.length;
22
+ while (end > 0) {
23
+ let start = end - 1;
24
+ const lastCodeUnit = value.charCodeAt(start);
25
+ if (lastCodeUnit >= 0xDC00 && lastCodeUnit <= 0xDFFF && start > 0) {
26
+ const previousCodeUnit = value.charCodeAt(start - 1);
27
+ if (previousCodeUnit >= 0xD800 && previousCodeUnit <= 0xDBFF) {
28
+ start -= 1;
29
+ }
30
+ }
31
+ const character = value.slice(start, end);
32
+ const characterBytes = Buffer.byteLength(character);
33
+ if (bytes + characterBytes > maxBytes) {
34
+ break;
35
+ }
36
+ suffix.push(character);
37
+ bytes += characterBytes;
38
+ end = start;
39
+ }
40
+ return suffix.reverse().join('');
41
+ };
18
42
  const sessionsById = new Map();
19
43
  const sessionIdByContextKey = new Map();
20
44
  const sessionIdsBySocketId = new Map();
@@ -140,7 +164,7 @@ const scheduleIdleCleanup = (sessionId) => {
140
164
  const appendDetachedOutput = (session, data) => {
141
165
  const dataBytes = Buffer.byteLength(data);
142
166
  const boundedData = dataBytes > MAX_DETACHED_OUTPUT_BUFFER_BYTES
143
- ? Buffer.from(data).subarray(-MAX_DETACHED_OUTPUT_BUFFER_BYTES).toString('utf8')
167
+ ? utf8Suffix(data, MAX_DETACHED_OUTPUT_BUFFER_BYTES)
144
168
  : data;
145
169
  const boundedDataBytes = Buffer.byteLength(boundedData);
146
170
  if (boundedDataBytes >= MAX_DETACHED_OUTPUT_BUFFER_BYTES) {