@straiffi/archon 1.7.3 → 1.7.5

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 (136) hide show
  1. package/dist/client/assets/ActivityView-CT9iCPyc.js +1 -0
  2. package/dist/client/assets/GitHubActionsDialog-BA6xyQeX.js +1 -0
  3. package/dist/client/assets/TestsDialog-D2qrW5Ug.js +4 -0
  4. package/dist/client/assets/{architectureDiagram-3BPJPVTR-BzzGotac.js → architectureDiagram-3BPJPVTR-R6v7w0Nl.js} +1 -1
  5. package/dist/client/assets/{blockDiagram-GPEHLZMM-DIcqLHKg.js → blockDiagram-GPEHLZMM-CHlBlnJq.js} +1 -1
  6. package/dist/client/assets/{c4Diagram-AAUBKEIU-Hc1Sqmhs.js → c4Diagram-AAUBKEIU-BvZKqUc6.js} +1 -1
  7. package/dist/client/assets/channel-Ckv8cPSf.js +1 -0
  8. package/dist/client/assets/{chunk-2J33WTMH-CWSwjsgk.js → chunk-2J33WTMH-2gsIkBeO.js} +1 -1
  9. package/dist/client/assets/{chunk-3OPIFGDE-BnX3DljN.js → chunk-3OPIFGDE-CcqPBjqx.js} +1 -1
  10. package/dist/client/assets/{chunk-5ZQYHXKU-EyyJlI-d.js → chunk-5ZQYHXKU-DX_wK5Rp.js} +1 -1
  11. package/dist/client/assets/{chunk-727SXJPM-Ci6CfxWj.js → chunk-727SXJPM-B9WUxzJL.js} +1 -1
  12. package/dist/client/assets/{chunk-AQP2D5EJ-RKZNsJTm.js → chunk-AQP2D5EJ-BG0s75_H.js} +1 -1
  13. package/dist/client/assets/{chunk-CSCIHK7Q-DBf0Euoj.js → chunk-CSCIHK7Q-CyNcvvqW.js} +1 -1
  14. package/dist/client/assets/{chunk-KSCS5N6A-BmLQI_2S.js → chunk-KSCS5N6A-CWVy_Wi0.js} +1 -1
  15. package/dist/client/assets/{chunk-L5ZTLDWV-DKwVAb8G.js → chunk-L5ZTLDWV-3dsXRB0X.js} +1 -1
  16. package/dist/client/assets/{chunk-LZXEDZCA-axotKkbz.js → chunk-LZXEDZCA-B09QSB9z.js} +2 -2
  17. package/dist/client/assets/{chunk-ND2GUHAM-BBlJ4nXC.js → chunk-ND2GUHAM-BxzAdxTN.js} +1 -1
  18. package/dist/client/assets/{chunk-NZK2D7GU-BKJGoZZt.js → chunk-NZK2D7GU-D4ZfFwbB.js} +1 -1
  19. package/dist/client/assets/{chunk-O5CBEL6O-C-Ghigo1.js → chunk-O5CBEL6O-BxQULuKS.js} +1 -1
  20. package/dist/client/assets/{chunk-WU5MYG2G-CCzVWYcd.js → chunk-WU5MYG2G-CEJwp0Ry.js} +1 -1
  21. package/dist/client/assets/classDiagram-4FO5ZUOK-B-N-arsi.js +1 -0
  22. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-PTX7YrlL.js +1 -0
  23. package/dist/client/assets/{dagre-BM42HDAG-rwIdPcjI.js → dagre-BM42HDAG-Dx_V7OMy.js} +1 -1
  24. package/dist/client/assets/{diagram-2AECGRRQ-DJWxOQsg.js → diagram-2AECGRRQ-Cc3VTg9P.js} +1 -1
  25. package/dist/client/assets/{diagram-5GNKFQAL-C-mQeFtd.js → diagram-5GNKFQAL-mJ1xhs2G.js} +1 -1
  26. package/dist/client/assets/{diagram-KO2AKTUF-BAu6u4sR.js → diagram-KO2AKTUF-CLyT9ac8.js} +1 -1
  27. package/dist/client/assets/{diagram-LMA3HP47-U6CbvBn0.js → diagram-LMA3HP47-CVr47yij.js} +1 -1
  28. package/dist/client/assets/{diagram-OG6HWLK6-DNTwFcs1.js → diagram-OG6HWLK6-Dp5TJ8lM.js} +1 -1
  29. package/dist/client/assets/{erDiagram-TEJ5UH35-DaHX6Xw5.js → erDiagram-TEJ5UH35-BBxwyu0r.js} +1 -1
  30. package/dist/client/assets/{flowDiagram-I6XJVG4X-B9hKqL2l.js → flowDiagram-I6XJVG4X-CuFYzVQ-.js} +1 -1
  31. package/dist/client/assets/{ganttDiagram-6RSMTGT7-BQ1HPHVO.js → ganttDiagram-6RSMTGT7-aRQarcQY.js} +1 -1
  32. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-BBRcsmMK.js → gitGraphDiagram-PVQCEYII-B3mHSkBv.js} +1 -1
  33. package/dist/client/assets/index-BJGHMaMz.css +2 -0
  34. package/dist/client/assets/index-Oz0S7bcT.js +273 -0
  35. package/dist/client/assets/{infoDiagram-5YYISTIA-DUoNiSGC.js → infoDiagram-5YYISTIA-BSyryQJ9.js} +1 -1
  36. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-DJN1y2w8.js → ishikawaDiagram-YF4QCWOH-BAGbrtSG.js} +1 -1
  37. package/dist/client/assets/{journeyDiagram-JHISSGLW-BxLLMT70.js → journeyDiagram-JHISSGLW-CDTht6k6.js} +1 -1
  38. package/dist/client/assets/{kanban-definition-UN3LZRKU-BdCPistJ.js → kanban-definition-UN3LZRKU-BDtuMp0H.js} +1 -1
  39. package/dist/client/assets/{line-4mIgXsZd.js → line-n0aNicmA.js} +1 -1
  40. package/dist/client/assets/{mermaid-parser.core-Pu1QGWJ-.js → mermaid-parser.core-CdE4vZ4k.js} +1 -1
  41. package/dist/client/assets/{mermaid.core-DnH9DrgZ.js → mermaid.core-C546CQj1.js} +3 -3
  42. package/dist/client/assets/{mindmap-definition-RKZ34NQL-DqE4ba3C.js → mindmap-definition-RKZ34NQL-BwO779am.js} +1 -1
  43. package/dist/client/assets/{pieDiagram-4H26LBE5-Crjy9ejf.js → pieDiagram-4H26LBE5-DU1k71kn.js} +1 -1
  44. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-BUSZ2VB7.js → quadrantDiagram-W4KKPZXB-CvM5lyQg.js} +1 -1
  45. package/dist/client/assets/{requirementDiagram-4Y6WPE33-CBhFKEoV.js → requirementDiagram-4Y6WPE33-DDBdSq0B.js} +1 -1
  46. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-CgdbY41v.js → sankeyDiagram-5OEKKPKP-ELM2mu81.js} +1 -1
  47. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-hkp_H7AE.js → sequenceDiagram-3UESZ5HK-D7uF-nRR.js} +1 -1
  48. package/dist/client/assets/{stateDiagram-AJRCARHV-C6x45RWp.js → stateDiagram-AJRCARHV-IhaGRCbG.js} +1 -1
  49. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-ceHFQMIT.js +1 -0
  50. package/dist/client/assets/{timeline-definition-PNZ67QCA-CjnZWttQ.js → timeline-definition-PNZ67QCA-zHJGFvZ8.js} +1 -1
  51. package/dist/client/assets/{vennDiagram-CIIHVFJN-DU5ZyYju.js → vennDiagram-CIIHVFJN-EG1HFfD7.js} +1 -1
  52. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CaCEnCB0.js → wardleyDiagram-YWT4CUSO-DdQevxXg.js} +1 -1
  53. package/dist/client/assets/{xychartDiagram-2RQKCTM6-Ce3xa37U.js → xychartDiagram-2RQKCTM6-BjihNG0E.js} +1 -1
  54. package/dist/client/index.html +2 -2
  55. package/dist/server/db.js +283 -0
  56. package/dist/server/db.js.map +1 -1
  57. package/dist/server/index.js +390 -117
  58. package/dist/server/index.js.map +1 -1
  59. package/dist/server/lib/attachments.js +40 -0
  60. package/dist/server/lib/attachments.js.map +1 -1
  61. package/dist/server/lib/buildOpenQuestionOperations.js +17 -2
  62. package/dist/server/lib/buildOpenQuestionOperations.js.map +1 -1
  63. package/dist/server/lib/buildSequences.js +25 -0
  64. package/dist/server/lib/buildSequences.js.map +1 -1
  65. package/dist/server/lib/bundleReviewOperations.js +9 -0
  66. package/dist/server/lib/bundleReviewOperations.js.map +1 -1
  67. package/dist/server/lib/chatOperations.js +40 -16
  68. package/dist/server/lib/chatOperations.js.map +1 -1
  69. package/dist/server/lib/executionArtifactCleanupState.js +12 -0
  70. package/dist/server/lib/executionArtifactCleanupState.js.map +1 -0
  71. package/dist/server/lib/executionArtifactRetention.js +405 -0
  72. package/dist/server/lib/executionArtifactRetention.js.map +1 -0
  73. package/dist/server/lib/executionArtifacts.js +705 -0
  74. package/dist/server/lib/executionArtifacts.js.map +1 -0
  75. package/dist/server/lib/executionRetry.js +702 -0
  76. package/dist/server/lib/executionRetry.js.map +1 -0
  77. package/dist/server/lib/executionRetryContext.js +510 -0
  78. package/dist/server/lib/executionRetryContext.js.map +1 -0
  79. package/dist/server/lib/executionRetryPredicates.js +74 -0
  80. package/dist/server/lib/executionRetryPredicates.js.map +1 -0
  81. package/dist/server/lib/executionRuns.js +203 -40
  82. package/dist/server/lib/executionRuns.js.map +1 -1
  83. package/dist/server/lib/executionTimeline.js +73 -0
  84. package/dist/server/lib/executionTimeline.js.map +1 -0
  85. package/dist/server/lib/lightweightPrompt.js +2 -2
  86. package/dist/server/lib/lightweightPrompt.js.map +1 -1
  87. package/dist/server/lib/projects.js +16 -3
  88. package/dist/server/lib/projects.js.map +1 -1
  89. package/dist/server/lib/pullRequestContent.js +148 -25
  90. package/dist/server/lib/pullRequestContent.js.map +1 -1
  91. package/dist/server/lib/queue.js +1 -0
  92. package/dist/server/lib/queue.js.map +1 -1
  93. package/dist/server/lib/runtimePaths.js +7 -0
  94. package/dist/server/lib/runtimePaths.js.map +1 -1
  95. package/dist/server/lib/specOperations.js +51 -16
  96. package/dist/server/lib/specOperations.js.map +1 -1
  97. package/dist/server/lib/specReviewContext.js +10 -4
  98. package/dist/server/lib/specReviewContext.js.map +1 -1
  99. package/dist/server/lib/specReviewOperations.js +33 -5
  100. package/dist/server/lib/specReviewOperations.js.map +1 -1
  101. package/dist/server/lib/testSessions.js +2 -5
  102. package/dist/server/lib/testSessions.js.map +1 -1
  103. package/dist/server/lib/ticketAutomationCommit.js +11 -4
  104. package/dist/server/lib/ticketAutomationCommit.js.map +1 -1
  105. package/dist/server/lib/ticketFollowUpOperations.js +74 -27
  106. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  107. package/dist/server/lib/ticketMessages.js +16 -0
  108. package/dist/server/lib/ticketMessages.js.map +1 -1
  109. package/dist/server/lib/types.js +12 -0
  110. package/dist/server/lib/types.js.map +1 -1
  111. package/dist/server/workers/build.js +1 -1
  112. package/dist/server/workers/build.js.map +1 -1
  113. package/dist/server/workers/chat.js +26 -20
  114. package/dist/server/workers/chat.js.map +1 -1
  115. package/dist/server/workers/followUp.js +118 -15
  116. package/dist/server/workers/followUp.js.map +1 -1
  117. package/dist/server/workers/plan.js +23 -4
  118. package/dist/server/workers/plan.js.map +1 -1
  119. package/dist/server/workers/planFollowUp.js +12 -9
  120. package/dist/server/workers/planFollowUp.js.map +1 -1
  121. package/dist/server/workers/review.js +2 -2
  122. package/dist/server/workers/review.js.map +1 -1
  123. package/dist/server/workers/specReview.js +2 -2
  124. package/dist/server/workers/specReview.js.map +1 -1
  125. package/dist/server/workers/specSession.js +29 -22
  126. package/dist/server/workers/specSession.js.map +1 -1
  127. package/package.json +1 -1
  128. package/dist/client/assets/ActivityView-DTEenQas.js +0 -1
  129. package/dist/client/assets/GitHubActionsDialog-BKWHonUS.js +0 -1
  130. package/dist/client/assets/TestsDialog-cBaoffCs.js +0 -4
  131. package/dist/client/assets/channel-Cym17waa.js +0 -1
  132. package/dist/client/assets/classDiagram-4FO5ZUOK-BcigvvIC.js +0 -1
  133. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-3AdSuE0N.js +0 -1
  134. package/dist/client/assets/index-CEMaJCPS.js +0 -273
  135. package/dist/client/assets/index-lWftq65U.css +0 -2
  136. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DVzPjRPN.js +0 -1
@@ -7,13 +7,121 @@ const stripMarkdownCodeFence = (output) => {
7
7
  const fencedMatch = trimmedOutput.match(/^```(?:json)?\s*([\s\S]*?)\s*```$/i);
8
8
  return fencedMatch ? fencedMatch[1].trim() : trimmedOutput;
9
9
  };
10
- const findLastNonEmptyLineIndex = (lines) => {
11
- for (let index = lines.length - 1; index >= 0; index -= 1) {
12
- if (lines[index].trim()) {
13
- return index;
10
+ const sanitizeJsonArtifacts = (body) => {
11
+ let result = '';
12
+ let i = 0;
13
+ while (i < body.length) {
14
+ if (body[i] === '{') {
15
+ let depth = 1;
16
+ let j = i + 1;
17
+ let inString = false;
18
+ while (j < body.length && depth > 0) {
19
+ if (inString) {
20
+ if (body[j] === '\\') {
21
+ j += 2;
22
+ continue;
23
+ }
24
+ if (body[j] === '"') {
25
+ inString = false;
26
+ }
27
+ }
28
+ else {
29
+ if (body[j] === '"') {
30
+ inString = true;
31
+ }
32
+ else if (body[j] === '{') {
33
+ depth++;
34
+ }
35
+ else if (body[j] === '}') {
36
+ depth--;
37
+ }
38
+ }
39
+ j++;
40
+ }
41
+ if (depth === 0) {
42
+ const block = body.slice(i, j);
43
+ if (/"title"\s*:/.test(block)) {
44
+ i = j;
45
+ continue;
46
+ }
47
+ }
48
+ }
49
+ result += body[i];
50
+ i++;
51
+ }
52
+ return result.trim();
53
+ };
54
+ const findJsonObjectWithKey = (text, key) => {
55
+ const keyPattern = new RegExp(`"${key}"\\s*:`);
56
+ let i = 0;
57
+ while (i < text.length) {
58
+ if (text[i] === '{') {
59
+ let depth = 1;
60
+ let j = i + 1;
61
+ let inString = false;
62
+ while (j < text.length && depth > 0) {
63
+ if (inString) {
64
+ if (text[j] === '\\') {
65
+ j += 2;
66
+ continue;
67
+ }
68
+ if (text[j] === '"') {
69
+ inString = false;
70
+ }
71
+ }
72
+ else {
73
+ if (text[j] === '"') {
74
+ inString = true;
75
+ }
76
+ else if (text[j] === '{') {
77
+ depth++;
78
+ }
79
+ else if (text[j] === '}') {
80
+ depth--;
81
+ }
82
+ }
83
+ j++;
84
+ }
85
+ if (depth === 0) {
86
+ const block = text.slice(i, j);
87
+ if (keyPattern.test(block)) {
88
+ return block;
89
+ }
90
+ i = j;
91
+ continue;
92
+ }
93
+ }
94
+ i++;
95
+ }
96
+ return null;
97
+ };
98
+ const tryParseContent = (json) => {
99
+ try {
100
+ const parsed = JSON.parse(json);
101
+ if (typeof parsed.title === 'string' && parsed.title.trim() !== '' && typeof parsed.body === 'string' && parsed.body.trim() !== '') {
102
+ return {
103
+ title: parsed.title.trim(),
104
+ body: sanitizeJsonArtifacts(parsed.body.trim()),
105
+ };
14
106
  }
15
107
  }
16
- return -1;
108
+ catch {
109
+ // Not valid JSON, skip
110
+ }
111
+ return null;
112
+ };
113
+ const extractCodeFenceContent = (text) => {
114
+ const fenceRegex = /```(?:json)?\s*\n([\s\S]*?)\n\s*```/g;
115
+ const completeMatches = [...text.matchAll(fenceRegex)];
116
+ const completeContent = completeMatches.map(m => m[1].trim()).filter(Boolean).join('\n');
117
+ if (completeContent) {
118
+ return completeContent;
119
+ }
120
+ const openFenceMatch = text.match(/```(?:json)?\s*\n([\s\S]*?)$/);
121
+ if (openFenceMatch && openFenceMatch[1].trim()) {
122
+ return openFenceMatch[1].trim();
123
+ }
124
+ return null;
17
125
  };
18
126
  export const parsePullRequestContent = (output) => {
19
127
  const cleaned = stripMarkdownCodeFence(stripSystemReminderBlocks(output));
@@ -21,33 +129,47 @@ export const parsePullRequestContent = (output) => {
21
129
  return null;
22
130
  }
23
131
  const lines = cleaned.split('\n');
24
- const lastNonEmptyLineIndex = findLastNonEmptyLineIndex(lines);
25
- if (lastNonEmptyLineIndex < 0) {
26
- return null;
27
- }
28
- const trailingLine = lines[lastNonEmptyLineIndex].trim();
29
- if (trailingLine.startsWith('{') && trailingLine.endsWith('}')) {
30
- try {
31
- const parsed = JSON.parse(trailingLine);
32
- if (typeof parsed.title === 'string' && parsed.title.trim() !== '' && typeof parsed.body === 'string' && parsed.body.trim() !== '') {
33
- return { title: parsed.title.trim(), body: parsed.body.trim() };
132
+ for (let i = lines.length - 1; i >= 0; i -= 1) {
133
+ const line = lines[i].trim();
134
+ if (line.startsWith('{') && line.endsWith('}')) {
135
+ const result = tryParseContent(line);
136
+ if (result) {
137
+ return result;
34
138
  }
35
139
  }
36
- catch {
37
- return null;
38
- }
39
140
  }
40
- try {
41
- const parsed = JSON.parse(cleaned);
42
- if (typeof parsed.title === 'string' && parsed.title.trim() !== '' && typeof parsed.body === 'string' && parsed.body.trim() !== '') {
43
- return { title: parsed.title.trim(), body: parsed.body.trim() };
141
+ const directResult = tryParseContent(cleaned);
142
+ if (directResult) {
143
+ return directResult;
144
+ }
145
+ const jsonCandidate = findJsonObjectWithKey(cleaned, 'title');
146
+ if (jsonCandidate) {
147
+ const result = tryParseContent(jsonCandidate);
148
+ if (result) {
149
+ return result;
44
150
  }
45
151
  }
46
- catch {
47
- return null;
152
+ const fencedContent = extractCodeFenceContent(cleaned);
153
+ if (fencedContent) {
154
+ const fencedResult = tryParseContent(fencedContent);
155
+ if (fencedResult) {
156
+ return fencedResult;
157
+ }
158
+ const fencedCandidate = findJsonObjectWithKey(fencedContent, 'title');
159
+ if (fencedCandidate) {
160
+ const result = tryParseContent(fencedCandidate);
161
+ if (result) {
162
+ return result;
163
+ }
164
+ }
48
165
  }
49
166
  return null;
50
167
  };
168
+ export const extractBodyFromRawOutput = (rawOutput) => {
169
+ const cleaned = stripMarkdownCodeFence(stripSystemReminderBlocks(rawOutput));
170
+ const sanitized = sanitizeJsonArtifacts(cleaned);
171
+ return sanitized.trim();
172
+ };
51
173
  export const buildPullRequestContentPrompt = ({ ticketTitle, ticketDescription, diff, baseBranch, }) => {
52
174
  const diffExcerpt = diff.length > PR_CONTENT_DIFF_CHAR_LIMIT
53
175
  ? `${diff.slice(0, PR_CONTENT_DIFF_CHAR_LIMIT)}\n\n[diff truncated for size]`
@@ -62,7 +184,8 @@ export const buildPullRequestContentPrompt = ({ ticketTitle, ticketDescription,
62
184
  [
63
185
  'Return a single JSON object on the last line: {"title":"<natural title>","body":"<markdown body>"}',
64
186
  'The JSON must be valid and must not be wrapped in code fences.',
65
- 'No other text after the JSON.',
187
+ 'Do NOT include JSON structure inside the body field.',
188
+ 'No text after the JSON line.',
66
189
  ].join('\n'),
67
190
  `Ticket title: ${ticketTitle}`,
68
191
  ticketDescription
@@ -1 +1 @@
1
- {"version":3,"file":"pullRequestContent.js","sourceRoot":"","sources":["../../../server/lib/pullRequestContent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pullRequestContent.js","sourceRoot":"","sources":["../../../server/lib/pullRequestContent.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,5 @@ export const enqueue = (jobKey, fn) => {
12
12
  return job;
13
13
  };
14
14
  export const isRunning = (jobKey) => jobs.has(jobKey);
15
+ export const getRunningJob = (jobKey) => jobs.get(jobKey) ?? null;
15
16
  //# sourceMappingURL=queue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../server/lib/queue.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,IAAI,GAAG,EAA4B,CAAA;AAEhD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,MAAc,EAAE,EAAoB,EAAE,EAAE;IACjE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,CAAC,OAAO,EAAE;iBACd,IAAI,CAAC,EAAE,CAAC;iBACR,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC1B,CAAC,EAAE,CAAC,CAAC,CAAA;IACP,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrB,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACtD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../server/lib/queue.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,IAAI,GAAG,EAA4B,CAAA;AAEhD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,MAAc,EAAE,EAAoB,EAAE,EAAE;IACjE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,CAAC,OAAO,EAAE;iBACd,IAAI,CAAC,EAAE,CAAC;iBACR,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC1B,CAAC,EAAE,CAAC,CAAC,CAAA;IACP,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrB,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACtD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAA"}
@@ -51,6 +51,13 @@ export const resolveArchonAttachmentsRoot = () => {
51
51
  }
52
52
  return join(resolveArchonAppDataDirectory(), 'attachments');
53
53
  };
54
+ export const resolveArchonArtifactsRoot = () => {
55
+ const configuredPath = process.env.ARCHON_ARTIFACTS_DIR?.trim();
56
+ if (configuredPath) {
57
+ return configuredPath;
58
+ }
59
+ return join(resolveArchonAppDataDirectory(), 'artifacts');
60
+ };
54
61
  export const resolveArchonStageSnapshotDir = () => {
55
62
  const configuredPath = process.env.ARCHON_STAGE_SNAPSHOT_DIR?.trim();
56
63
  if (configuredPath) {
@@ -1 +1 @@
1
- {"version":3,"file":"runtimePaths.js","sourceRoot":"","sources":["../../../server/lib/runtimePaths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtimePaths.js","sourceRoot":"","sources":["../../../server/lib/runtimePaths.ts"],"names":[],"mappings":"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"}
@@ -82,7 +82,7 @@ export const updateProjectSpecSessionMode = ({ projectId, specSessionId, payload
82
82
  broadcaster.emit('spec-session:updated', updatedSession);
83
83
  return { ok: true, status: 200, value: updatedSession };
84
84
  };
85
- export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payload, broadcaster, }) => {
85
+ export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payload, broadcaster, initiation, existingTriggerMessageId, existingAttachments, providerContinuation, conversationContext, priorSnapshotId, retryRunConfig, turnMode, }) => {
86
86
  const project = getProjectById(projectId);
87
87
  if (!project) {
88
88
  return { ok: false, status: 404, error: 'Not found' };
@@ -100,25 +100,54 @@ export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payl
100
100
  const attachmentIds = Array.isArray(requestedAttachmentIds)
101
101
  ? requestedAttachmentIds.map(value => value.trim()).filter(Boolean)
102
102
  : [];
103
- if (!instruction && attachmentIds.length === 0) {
104
- return { ok: false, status: 400, error: 'instruction or attachment_ids is required' };
105
- }
106
- const resolvedAttachments = resolveDraftSpecAttachmentsForSession({
107
- specSessionId: existing.id,
108
- attachmentIds,
109
- });
103
+ const resolvedAttachments = existingAttachments
104
+ ? { ok: true, attachments: existingAttachments }
105
+ : resolveDraftSpecAttachmentsForSession({ specSessionId: existing.id, attachmentIds });
110
106
  if (!resolvedAttachments.ok) {
111
107
  return { ok: false, status: 400, error: resolvedAttachments.error };
112
108
  }
109
+ if (!instruction && resolvedAttachments.attachments.length === 0) {
110
+ return { ok: false, status: 400, error: 'instruction or attachment_ids is required' };
111
+ }
113
112
  const requestedModel = getPayloadValue(payload, 'model');
114
- const rawModel = typeof requestedModel === 'string' ? requestedModel : project.helper_model;
113
+ const rawModel = retryRunConfig ? retryRunConfig.model : (typeof requestedModel === 'string' ? requestedModel : project.helper_model);
114
+ const resolvedTool = retryRunConfig?.tool ?? existing.tool;
115
+ const resolvedVariant = retryRunConfig ? retryRunConfig.variant : (typeof getPayloadValue(payload, 'variant') === 'string' ? getPayloadValue(payload, 'variant') : project.helper_variant);
116
+ const resolvedSkills = retryRunConfig?.skills ?? normalizeSkillNames(getPayloadValue(payload, 'skills'));
117
+ const resolvedPriorSnapshotId = priorSnapshotId === undefined ? existing.latest_snapshot_id : priorSnapshotId;
115
118
  let accepted = false;
116
119
  const executionRun = createExecutionRun({
117
120
  projectId: project.id,
118
121
  kind: 'spec_turn',
119
122
  domainStatus: 'queued',
120
123
  sourceReference: { kind: 'spec_session', id: existing.id, label: existing.title },
121
- eventType: 'spec_turn_created',
124
+ links: [
125
+ ...(existingTriggerMessageId ? [{
126
+ entityType: 'spec_message',
127
+ entityId: existingTriggerMessageId,
128
+ relationship: 'trigger',
129
+ expectedParent: { entityType: 'spec_session', entityId: existing.id },
130
+ }] : []),
131
+ ...(resolvedPriorSnapshotId ? [{
132
+ entityType: 'spec_snapshot',
133
+ entityId: resolvedPriorSnapshotId,
134
+ relationship: 'context',
135
+ expectedParent: { entityType: 'spec_session', entityId: existing.id },
136
+ }] : []),
137
+ ],
138
+ initiatedBy: initiation?.initiator,
139
+ parentRunId: initiation?.causalParentRunId,
140
+ retryOfRunId: initiation?.retrySourceRunId,
141
+ metadata: {
142
+ retry_mode: turnMode ?? existing.mode,
143
+ retry_tool: resolvedTool,
144
+ retry_model: typeof rawModel === 'string' ? rawModel : null,
145
+ retry_variant: resolvedVariant,
146
+ retry_skills: resolvedSkills,
147
+ retry_prior_snapshot_id: resolvedPriorSnapshotId ?? 'none',
148
+ retry_attachment_count: resolvedAttachments.attachments.length,
149
+ },
150
+ eventType: initiation?.retrySourceRunId ? 'retry_started' : 'spec_turn_created',
122
151
  }, broadcaster);
123
152
  const executionContext = {
124
153
  runId: executionRun.id,
@@ -133,12 +162,17 @@ export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payl
133
162
  specSessionId: existing.id,
134
163
  instruction,
135
164
  attachments: resolvedAttachments.attachments,
136
- tool: existing.tool,
165
+ tool: resolvedTool,
137
166
  model: typeof rawModel === 'string' ? rawModel : null,
138
- variant: typeof getPayloadValue(payload, 'variant') === 'string' ? getPayloadValue(payload, 'variant') : project.helper_variant,
139
- skills: normalizeSkillNames(getPayloadValue(payload, 'skills')),
167
+ variant: resolvedVariant,
168
+ skills: resolvedSkills,
140
169
  io: broadcaster,
141
170
  executionContext,
171
+ existingTriggerMessageId,
172
+ providerContinuation,
173
+ conversationContext,
174
+ priorSnapshotId: resolvedPriorSnapshotId,
175
+ turnMode: turnMode ?? existing.mode,
142
176
  });
143
177
  }
144
178
  catch (error) {
@@ -156,9 +190,10 @@ export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payl
156
190
  transitionExecutionRun({
157
191
  projectId: project.id,
158
192
  runId: executionRun.id,
159
- status: 'cancelled',
160
- domainStatus: 'not_started',
161
- eventType: 'spec_turn_cancelled',
193
+ status: 'failed',
194
+ domainStatus: 'rejected',
195
+ failure: { code: 'spec_turn_rejected', message: 'This spec session is already running.' },
196
+ eventType: 'spec_turn_failed',
162
197
  }, broadcaster);
163
198
  return { ok: false, status: 409, error: 'This spec session is already running.' };
164
199
  }
@@ -1 +1 @@
1
- {"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"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"}
@@ -66,8 +66,14 @@ export const formatSpecSnapshotForReview = (snapshot) => {
66
66
  }
67
67
  return lines.join('\n');
68
68
  };
69
- const formatTranscriptForReview = (specSession) => {
70
- const messages = specSession.messages ?? [];
69
+ const formatTranscriptForReview = (specSession, lastMessageId) => {
70
+ const allMessages = specSession.messages ?? [];
71
+ const boundaryIndex = typeof lastMessageId === 'string' ? allMessages.findIndex(message => message.id === lastMessageId) : -1;
72
+ const messages = lastMessageId === undefined
73
+ ? allMessages
74
+ : lastMessageId === null
75
+ ? []
76
+ : allMessages.slice(0, boundaryIndex + 1);
71
77
  if (messages.length === 0) {
72
78
  return '_(no transcript)_';
73
79
  }
@@ -80,9 +86,9 @@ const formatTranscriptForReview = (specSession) => {
80
86
  }
81
87
  return lines.join('\n');
82
88
  };
83
- export const buildSpecReviewContext = ({ specSession, snapshot, }) => {
89
+ export const buildSpecReviewContext = ({ specSession, snapshot, lastMessageId, }) => {
84
90
  return {
85
- transcriptBlock: formatTranscriptForReview(specSession),
91
+ transcriptBlock: formatTranscriptForReview(specSession, lastMessageId),
86
92
  snapshotBlock: formatSpecSnapshotForReview(snapshot),
87
93
  };
88
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"specReviewContext.js","sourceRoot":"","sources":["../../../server/lib/specReviewContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specReviewContext.js","sourceRoot":"","sources":["../../../server/lib/specReviewContext.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { getSpecSession, getSpecSnapshot } from './specs.js';
4
4
  import { buildSpecReviewFindingsResponse, getSpecReviewRun, listSpecReviewFindings, } from './specReviews.js';
5
5
  import { buildSpecReviewRevisionDraft } from './specReviewDraft.js';
6
6
  import { isSpecReviewRunning, startSpecReview } from '../workers/specReview.js';
7
- import { getQueuedSpecReviewExecutionRun, withExecutionRunTransaction } from './executionRuns.js';
7
+ import { getExecutionRun, getQueuedSpecReviewExecutionRun, transitionExecutionRun, withExecutionRunTransaction } from './executionRuns.js';
8
8
  const getPayloadValue = (payload, key) => {
9
9
  return payload?.[key];
10
10
  };
@@ -44,7 +44,7 @@ const resolveRunConfig = (payload, specSessionModel, specSessionVariant, specSes
44
44
  const skills = requestedSkills.length > 0 ? requestedSkills : specSessionSkills;
45
45
  return { tool, model, variant, skills };
46
46
  };
47
- export const startProjectSpecReview = ({ projectId, specSessionId, snapshotId, payload, broadcaster, }) => {
47
+ export const startProjectSpecReview = ({ projectId, specSessionId, snapshotId, payload, broadcaster, retrySourceRunId, retryRunConfig, transcriptBoundaryMessageId, }) => {
48
48
  const project = getProjectById(projectId);
49
49
  if (!project) {
50
50
  return { ok: false, status: 404, error: 'Not found' };
@@ -57,8 +57,11 @@ export const startProjectSpecReview = ({ projectId, specSessionId, snapshotId, p
57
57
  if (isSpecReviewRunning(snapshot.id)) {
58
58
  return { ok: false, status: 409, error: 'A spec review is already running for this snapshot.' };
59
59
  }
60
- const runConfig = resolveRunConfig(payload, specSession.model, specSession.variant, specSession.tool, specSession.skills);
61
- let executionContext;
60
+ const runConfig = retryRunConfig ?? resolveRunConfig(payload, specSession.model, specSession.variant, specSession.tool, specSession.skills);
61
+ const lastMessageId = transcriptBoundaryMessageId === undefined
62
+ ? specSession.messages?.at(-1)?.id ?? null
63
+ : transcriptBoundaryMessageId;
64
+ let executionContext = null;
62
65
  try {
63
66
  const executionRun = withExecutionRunTransaction(transaction => transaction.createExecutionRun({
64
67
  projectId: project.id,
@@ -71,7 +74,16 @@ export const startProjectSpecReview = ({ projectId, specSessionId, snapshotId, p
71
74
  relationship: 'context',
72
75
  expectedParent: { entityType: 'spec_session', entityId: specSession.id },
73
76
  }],
74
- eventType: 'spec_review_queued',
77
+ initiatedBy: 'user',
78
+ retryOfRunId: retrySourceRunId,
79
+ metadata: {
80
+ retry_tool: runConfig.tool,
81
+ retry_model: runConfig.model,
82
+ retry_variant: runConfig.variant,
83
+ retry_skills: runConfig.skills,
84
+ retry_transcript_boundary_message_id: lastMessageId ?? 'none',
85
+ },
86
+ eventType: retrySourceRunId ? 'retry_started' : 'spec_review_queued',
75
87
  }), broadcaster);
76
88
  executionContext = {
77
89
  runId: executionRun.id,
@@ -88,12 +100,28 @@ export const startProjectSpecReview = ({ projectId, specSessionId, snapshotId, p
88
100
  skills: runConfig.skills,
89
101
  io: broadcaster,
90
102
  executionContext,
103
+ lastMessageId,
91
104
  });
92
105
  if (!scheduling.accepted) {
93
106
  return { ok: false, status: scheduling.reason === 'busy' ? 409 : 500, error: scheduling.error };
94
107
  }
95
108
  }
96
109
  catch (error) {
110
+ if (executionContext && getExecutionRun(project.id, executionContext.runId)?.status === 'queued') {
111
+ try {
112
+ transitionExecutionRun({
113
+ projectId: project.id,
114
+ runId: executionContext.runId,
115
+ status: 'failed',
116
+ domainStatus: 'error',
117
+ failure: { code: 'spec_review_scheduling_failed', message: error instanceof Error ? error.message : String(error) },
118
+ eventType: 'spec_review_failed',
119
+ }, broadcaster);
120
+ }
121
+ catch {
122
+ // The worker may have terminalized the run between the status check and transition.
123
+ }
124
+ }
97
125
  return { ok: false, status: 500, error: error instanceof Error ? error.message : String(error) };
98
126
  }
99
127
  return { ok: true, status: 200, value: { ok: true } };
@@ -1 +1 @@
1
- {"version":3,"file":"specReviewOperations.js","sourceRoot":"","sources":["../../../server/lib/specReviewOperations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specReviewOperations.js","sourceRoot":"","sources":["../../../server/lib/specReviewOperations.ts"],"names":[],"mappings":"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"}