@straiffi/archon 1.8.8 → 1.8.10

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 (182) hide show
  1. package/dist/client/assets/{ActivityView--4X_m6mR.js → ActivityView-ew2HI3iv.js} +1 -1
  2. package/dist/client/assets/{GitHubActionsDialog-DZ1lHM01.js → GitHubActionsDialog-C9lg87qK.js} +1 -1
  3. package/dist/client/assets/RepositoryGraphDialog-CnED9oZO.js +1 -0
  4. package/dist/client/assets/VerificationDialog-BFEA4LcO.js +4 -0
  5. package/dist/client/assets/{architectureDiagram-3BPJPVTR-CY5xTOZJ.js → architectureDiagram-3BPJPVTR-B468SqWl.js} +1 -1
  6. package/dist/client/assets/{blockDiagram-GPEHLZMM-DkMi7gMh.js → blockDiagram-GPEHLZMM-CcuVr5zL.js} +1 -1
  7. package/dist/client/assets/{c4Diagram-AAUBKEIU-ZZxXBBU4.js → c4Diagram-AAUBKEIU-CIVHHAmy.js} +1 -1
  8. package/dist/client/assets/channel-i8pCfCxf.js +1 -0
  9. package/dist/client/assets/{chunk-2J33WTMH-C9PiKMs-.js → chunk-2J33WTMH-BdX4DCtG.js} +1 -1
  10. package/dist/client/assets/{chunk-3OPIFGDE-B81aUmvi.js → chunk-3OPIFGDE-skObTH8f.js} +1 -1
  11. package/dist/client/assets/{chunk-5ZQYHXKU-Bk2Owm90.js → chunk-5ZQYHXKU-DgfXNdzK.js} +1 -1
  12. package/dist/client/assets/{chunk-727SXJPM-Bx-79aJk.js → chunk-727SXJPM-mnXVo2HU.js} +1 -1
  13. package/dist/client/assets/{chunk-AQP2D5EJ-GQNXYOf0.js → chunk-AQP2D5EJ-C3mXtCLv.js} +1 -1
  14. package/dist/client/assets/{chunk-CSCIHK7Q-BV22j6vn.js → chunk-CSCIHK7Q-BrUDaK4w.js} +1 -1
  15. package/dist/client/assets/{chunk-KSCS5N6A-C9LlcbWv.js → chunk-KSCS5N6A-B7ZXhQZZ.js} +1 -1
  16. package/dist/client/assets/{chunk-L5ZTLDWV-D8PJqJnh.js → chunk-L5ZTLDWV-CfWv4E3P.js} +1 -1
  17. package/dist/client/assets/{chunk-LZXEDZCA-DcbPPozR.js → chunk-LZXEDZCA-ByKWnYgl.js} +2 -2
  18. package/dist/client/assets/{chunk-ND2GUHAM-NV-_2KqZ.js → chunk-ND2GUHAM-C3xamRop.js} +1 -1
  19. package/dist/client/assets/{chunk-NZK2D7GU-CbqA26gb.js → chunk-NZK2D7GU-CMbTC0VA.js} +1 -1
  20. package/dist/client/assets/{chunk-O5CBEL6O-B0DMN44B.js → chunk-O5CBEL6O-IrjlcgnD.js} +1 -1
  21. package/dist/client/assets/{chunk-WU5MYG2G-CYpcnwf9.js → chunk-WU5MYG2G-WPjA4G6U.js} +1 -1
  22. package/dist/client/assets/classDiagram-4FO5ZUOK-CZ3Y7ahg.js +1 -0
  23. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-eRiSIrc8.js +1 -0
  24. package/dist/client/assets/{dagre-BM42HDAG-B5HD9fyK.js → dagre-BM42HDAG-B8MWc9Vt.js} +1 -1
  25. package/dist/client/assets/{diagram-2AECGRRQ-BCXvWFpM.js → diagram-2AECGRRQ-CUG9b88X.js} +1 -1
  26. package/dist/client/assets/{diagram-5GNKFQAL-CSpWGfAO.js → diagram-5GNKFQAL-C0sLSoID.js} +1 -1
  27. package/dist/client/assets/{diagram-KO2AKTUF-CFECGppT.js → diagram-KO2AKTUF-D5tls_Ye.js} +1 -1
  28. package/dist/client/assets/{diagram-LMA3HP47-Dpb99QbZ.js → diagram-LMA3HP47-B4X4DO9t.js} +1 -1
  29. package/dist/client/assets/{diagram-OG6HWLK6-DJcTGnx0.js → diagram-OG6HWLK6--Fkpu1xR.js} +1 -1
  30. package/dist/client/assets/{erDiagram-TEJ5UH35-jWArJxNU.js → erDiagram-TEJ5UH35-BcbdxB1u.js} +1 -1
  31. package/dist/client/assets/{flowDiagram-I6XJVG4X-DDF3P1hY.js → flowDiagram-I6XJVG4X-DwNYkjtu.js} +1 -1
  32. package/dist/client/assets/{ganttDiagram-6RSMTGT7-Corwr_18.js → ganttDiagram-6RSMTGT7-Sh_eU-Z9.js} +1 -1
  33. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-WzlpszWn.js → gitGraphDiagram-PVQCEYII-C5FDjOX5.js} +1 -1
  34. package/dist/client/assets/index-BqrNPQ_0.js +274 -0
  35. package/dist/client/assets/index-BsjoiBxI.css +2 -0
  36. package/dist/client/assets/{infoDiagram-5YYISTIA-C0VwTwNC.js → infoDiagram-5YYISTIA-Ck9OJOWG.js} +1 -1
  37. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-m9l3k2qX.js → ishikawaDiagram-YF4QCWOH-DYXgrkHN.js} +1 -1
  38. package/dist/client/assets/{journeyDiagram-JHISSGLW-DMhT8HTW.js → journeyDiagram-JHISSGLW-BwNJvlUR.js} +1 -1
  39. package/dist/client/assets/{kanban-definition-UN3LZRKU-C2ZkcOi0.js → kanban-definition-UN3LZRKU-CQPcarO3.js} +1 -1
  40. package/dist/client/assets/{line-gKkUdUWR.js → line-C0_WiC76.js} +1 -1
  41. package/dist/client/assets/{mermaid-parser.core-DdBfJWbP.js → mermaid-parser.core-DZFY-NQY.js} +1 -1
  42. package/dist/client/assets/{mermaid.core-DXnhq-eu.js → mermaid.core-CQd5d2Vh.js} +3 -3
  43. package/dist/client/assets/{mindmap-definition-RKZ34NQL-B0gX4aJy.js → mindmap-definition-RKZ34NQL-DM1_aBMT.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-4H26LBE5-BHYdLmpx.js → pieDiagram-4H26LBE5-CsErXHmB.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-C-H-yQwU.js → quadrantDiagram-W4KKPZXB-Dbvx_hzM.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-4Y6WPE33-DY_pSCFy.js → requirementDiagram-4Y6WPE33-DKjfBx4s.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-CC61HRGf.js → sankeyDiagram-5OEKKPKP-BoZ5QkYh.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-B8fXWNxw.js → sequenceDiagram-3UESZ5HK-zx3eTqJo.js} +1 -1
  49. package/dist/client/assets/{stateDiagram-AJRCARHV-C_VYKsXW.js → stateDiagram-AJRCARHV-CwjCCvKl.js} +1 -1
  50. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-B0RJBNmi.js +1 -0
  51. package/dist/client/assets/{timeline-definition-PNZ67QCA-0fB4PIIX.js → timeline-definition-PNZ67QCA-_vAeRe5B.js} +1 -1
  52. package/dist/client/assets/{vennDiagram-CIIHVFJN-CfpVF7Aa.js → vennDiagram-CIIHVFJN-BrY9ZFi8.js} +1 -1
  53. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CgdK4FcC.js → wardleyDiagram-YWT4CUSO-ffsNUFbG.js} +1 -1
  54. package/dist/client/assets/{xychartDiagram-2RQKCTM6-BEfatQYR.js → xychartDiagram-2RQKCTM6-Cwg8OKEm.js} +1 -1
  55. package/dist/client/index.html +2 -2
  56. package/dist/server/db.js +481 -37
  57. package/dist/server/db.js.map +1 -1
  58. package/dist/server/index.js +72 -18
  59. package/dist/server/index.js.map +1 -1
  60. package/dist/server/lib/activeAutomationChild.js +1 -0
  61. package/dist/server/lib/activeAutomationChild.js.map +1 -1
  62. package/dist/server/lib/agent.js +127 -15
  63. package/dist/server/lib/agent.js.map +1 -1
  64. package/dist/server/lib/agentRuns.js +12 -0
  65. package/dist/server/lib/agentRuns.js.map +1 -1
  66. package/dist/server/lib/agentSpawnPermits.js +37 -0
  67. package/dist/server/lib/agentSpawnPermits.js.map +1 -0
  68. package/dist/server/lib/automationCheckGate.js +94 -32
  69. package/dist/server/lib/automationCheckGate.js.map +1 -1
  70. package/dist/server/lib/automationProgression.js +19 -5
  71. package/dist/server/lib/automationProgression.js.map +1 -1
  72. package/dist/server/lib/automationReviewGate.js +1 -0
  73. package/dist/server/lib/automationReviewGate.js.map +1 -1
  74. package/dist/server/lib/buildCompletionContinuation.js +144 -4
  75. package/dist/server/lib/buildCompletionContinuation.js.map +1 -1
  76. package/dist/server/lib/buildSequences.js +13 -1
  77. package/dist/server/lib/buildSequences.js.map +1 -1
  78. package/dist/server/lib/bundleActivity.js +19 -0
  79. package/dist/server/lib/bundleActivity.js.map +1 -1
  80. package/dist/server/lib/chatOperations.js +86 -4
  81. package/dist/server/lib/chatOperations.js.map +1 -1
  82. package/dist/server/lib/chatPostBuildRuns.js +98 -0
  83. package/dist/server/lib/chatPostBuildRuns.js.map +1 -0
  84. package/dist/server/lib/chats.js +13 -0
  85. package/dist/server/lib/chats.js.map +1 -1
  86. package/dist/server/lib/checkAutoFix.js +604 -0
  87. package/dist/server/lib/checkAutoFix.js.map +1 -0
  88. package/dist/server/lib/checkAutoFixDetails.js +83 -0
  89. package/dist/server/lib/checkAutoFixDetails.js.map +1 -0
  90. package/dist/server/lib/checkAutoFixPolicy.js +59 -0
  91. package/dist/server/lib/checkAutoFixPolicy.js.map +1 -0
  92. package/dist/server/lib/checkGateEvaluations.js +41 -16
  93. package/dist/server/lib/checkGateEvaluations.js.map +1 -1
  94. package/dist/server/lib/checkRepair.js +158 -63
  95. package/dist/server/lib/checkRepair.js.map +1 -1
  96. package/dist/server/lib/checkRepairDispatch.js +91 -0
  97. package/dist/server/lib/checkRepairDispatch.js.map +1 -0
  98. package/dist/server/lib/checkRepairEvidence.js +84 -0
  99. package/dist/server/lib/checkRepairEvidence.js.map +1 -0
  100. package/dist/server/lib/checkRepairParent.js +21 -0
  101. package/dist/server/lib/checkRepairParent.js.map +1 -0
  102. package/dist/server/lib/checkRepairReconciliation.js +14 -5
  103. package/dist/server/lib/checkRepairReconciliation.js.map +1 -1
  104. package/dist/server/lib/checkRunner.js +27 -8
  105. package/dist/server/lib/checkRunner.js.map +1 -1
  106. package/dist/server/lib/checkRuns.js +63 -4
  107. package/dist/server/lib/checkRuns.js.map +1 -1
  108. package/dist/server/lib/executionReconciliation.js +417 -8
  109. package/dist/server/lib/executionReconciliation.js.map +1 -1
  110. package/dist/server/lib/executionRuns.js +25 -2
  111. package/dist/server/lib/executionRuns.js.map +1 -1
  112. package/dist/server/lib/integrations/github.js +10 -7
  113. package/dist/server/lib/integrations/github.js.map +1 -1
  114. package/dist/server/lib/postBuildCheckRuns.js +200 -5
  115. package/dist/server/lib/postBuildCheckRuns.js.map +1 -1
  116. package/dist/server/lib/postBuildChecks.js +107 -21
  117. package/dist/server/lib/postBuildChecks.js.map +1 -1
  118. package/dist/server/lib/projects.js +25 -1
  119. package/dist/server/lib/projects.js.map +1 -1
  120. package/dist/server/lib/queue.js +9 -3
  121. package/dist/server/lib/queue.js.map +1 -1
  122. package/dist/server/lib/repositoryGraphQueries.js +5 -3
  123. package/dist/server/lib/repositoryGraphQueries.js.map +1 -1
  124. package/dist/server/lib/repositoryGraphScan.js +13 -2
  125. package/dist/server/lib/repositoryGraphScan.js.map +1 -1
  126. package/dist/server/lib/repositoryGraphStore.js +61 -1
  127. package/dist/server/lib/repositoryGraphStore.js.map +1 -1
  128. package/dist/server/lib/specArtifact.js +10 -1
  129. package/dist/server/lib/specArtifact.js.map +1 -1
  130. package/dist/server/lib/specDraft.js +10 -2
  131. package/dist/server/lib/specDraft.js.map +1 -1
  132. package/dist/server/lib/specExport.js +70 -6
  133. package/dist/server/lib/specExport.js.map +1 -1
  134. package/dist/server/lib/specFormatting.js +3 -2
  135. package/dist/server/lib/specFormatting.js.map +1 -1
  136. package/dist/server/lib/specRepositoryEvidenceFormatting.js +75 -0
  137. package/dist/server/lib/specRepositoryEvidenceFormatting.js.map +1 -0
  138. package/dist/server/lib/specRepositoryImpact.js +447 -0
  139. package/dist/server/lib/specRepositoryImpact.js.map +1 -0
  140. package/dist/server/lib/specRepositoryImpactLimits.js +6 -0
  141. package/dist/server/lib/specRepositoryImpactLimits.js.map +1 -0
  142. package/dist/server/lib/specReviewContext.js +15 -5
  143. package/dist/server/lib/specReviewContext.js.map +1 -1
  144. package/dist/server/lib/specReviewValidation.js +1 -1
  145. package/dist/server/lib/specReviewValidation.js.map +1 -1
  146. package/dist/server/lib/specSections.js +28 -3
  147. package/dist/server/lib/specSections.js.map +1 -1
  148. package/dist/server/lib/specSnapshotEvidence.js +162 -0
  149. package/dist/server/lib/specSnapshotEvidence.js.map +1 -0
  150. package/dist/server/lib/specSnapshotEvidenceSerialization.js +202 -0
  151. package/dist/server/lib/specSnapshotEvidenceSerialization.js.map +1 -0
  152. package/dist/server/lib/specs.js +31 -5
  153. package/dist/server/lib/specs.js.map +1 -1
  154. package/dist/server/lib/ticketAutomationCommit.js +3 -1
  155. package/dist/server/lib/ticketAutomationCommit.js.map +1 -1
  156. package/dist/server/lib/ticketFollowUpOperations.js +16 -12
  157. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  158. package/dist/server/lib/ticketRunOperations.js +13 -1
  159. package/dist/server/lib/ticketRunOperations.js.map +1 -1
  160. package/dist/server/lib/ticketWorkflowOperations.js +5 -2
  161. package/dist/server/lib/ticketWorkflowOperations.js.map +1 -1
  162. package/dist/server/lib/types.js +1 -0
  163. package/dist/server/lib/types.js.map +1 -1
  164. package/dist/server/workers/build.js +46 -148
  165. package/dist/server/workers/build.js.map +1 -1
  166. package/dist/server/workers/chat.js +185 -43
  167. package/dist/server/workers/chat.js.map +1 -1
  168. package/dist/server/workers/followUp.js +210 -48
  169. package/dist/server/workers/followUp.js.map +1 -1
  170. package/dist/server/workers/specReview.js +17 -4
  171. package/dist/server/workers/specReview.js.map +1 -1
  172. package/dist/server/workers/specSession.js +127 -22
  173. package/dist/server/workers/specSession.js.map +1 -1
  174. package/package.json +1 -1
  175. package/dist/client/assets/RepositoryGraphDialog-B--YlQcV.js +0 -1
  176. package/dist/client/assets/VerificationDialog-BIWPtBg3.js +0 -4
  177. package/dist/client/assets/channel-b2AN-U3x.js +0 -1
  178. package/dist/client/assets/classDiagram-4FO5ZUOK-C0exS5oM.js +0 -1
  179. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DkB9dQZ1.js +0 -1
  180. package/dist/client/assets/index-Bs5SQZhz.css +0 -2
  181. package/dist/client/assets/index-Dy-7h3lN.js +0 -274
  182. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-Ctk1r914.js +0 -1
@@ -1,23 +1,27 @@
1
- import { formatAgentErrorForTranscript, getAgentErrorTranscriptRuns, registerChatProcessPlaceholder, runChatAgent, untrackChatProcessById } from '../lib/agent.js';
1
+ import { formatAgentErrorForTranscript, getAgentErrorTranscriptRuns, isAgentContinuationRejectedError, registerChatProcessPlaceholder, runChatAgent, untrackChatProcessById } from '../lib/agent.js';
2
2
  import { createAgentRun, emitAgentRunsUpdated, finalizeAgentRun, getNextAgentRunIndex, terminalizeAgentRunsForExecutionRun } from '../lib/agentRuns.js';
3
3
  import { deleteStagedChatAttachments, linkChatAttachmentsToMessage, stageChatAttachmentsForAgent } from '../lib/attachments.js';
4
4
  import { createChatMessage } from '../lib/chatMessages.js';
5
5
  import { createAskQuestionMetadata, extractAskQuestionFromOutput, formatAskQuestionMessage } from '../lib/planQuestions.js';
6
6
  import { beginChatSessionThinkingRun, bindChatSessionThinkingMessage } from '../lib/thinkingState.js';
7
- import { deriveChatSessionTitle, deriveChatSessionTitleFromResponse, getChatSession, getDefaultChatSessionTitle, updateChatSessionUsageSnapshot, updateChatSessionRunConfig, updateChatSessionStatus, updateChatSessionTitle, } from '../lib/chats.js';
7
+ import { deriveChatSessionTitle, deriveChatSessionTitleFromResponse, getChatPostBuildSourceRunId, getChatSession, getDefaultChatSessionTitle, updateChatSessionUsageSnapshot, updateChatSessionRunConfig, updateChatSessionStatus, updateChatSessionTitle, } from '../lib/chats.js';
8
8
  import { resolveChatSessionTarget } from '../lib/chatTargets.js';
9
9
  import { normalizeClaudeModelId, normalizeModelId } from '../lib/models.js';
10
10
  import { appendPlanModeQuestionPromptRules, PLAN_MODE_RUNTIME_PROMPT_RULES } from '../lib/planModeQuestions.js';
11
11
  import { appendFigmaInspectionGuidance } from '../lib/figmaResources.js';
12
+ import { prependSkillPromptBlock } from '../lib/promptSkills.js';
12
13
  import { persistChatSessionProjectMemorySuggestions } from '../lib/projectMemory.js';
13
14
  import { runPostBuildChecks } from '../lib/postBuildChecks.js';
15
+ import { beginChatPostBuildCompletion, finalizeChatPostBuildCompletion } from '../lib/chatPostBuildRuns.js';
16
+ import { markPostBuildCheckFinalizationComplete, persistPendingPostBuildFinalization } from '../lib/postBuildCheckRuns.js';
14
17
  import { getProjectMemoryPromptBlock } from '../lib/projectMemoryPrompt.js';
15
18
  import { attachChatTicketProposalsToMessageContent, CHAT_TICKET_PROPOSAL_PROMPT_RULES, createPendingChatTicketProposals, extractChatTicketProposalsFromOutput, } from '../lib/chatTicketProposals.js';
16
19
  import { extractProjectMemorySuggestionsFromOutput, getProjectMemorySuggestionPromptRules, } from '../lib/projectMemorySuggestions.js';
17
20
  import { enqueue, isRunning } from '../lib/queue.js';
18
21
  import { getProjectById } from '../lib/projects.js';
19
- import { addExecutionRunLink, transitionExecutionRun } from '../lib/executionRuns.js';
22
+ import { addExecutionRunLink, appendLifecycleEvent, getExecutionRun, transitionExecutionRun, withExecutionRunTransaction } from '../lib/executionRuns.js';
20
23
  import { TurnStartError } from '../lib/turnExecutionErrors.js';
24
+ import { acquireAgentSpawnPermit } from '../lib/agentSpawnPermits.js';
21
25
  const ATTACHMENT_ONLY_EMPTY_RESPONSE_FALLBACK = 'I reviewed the attached image input, but I could not produce a textual response. Please try again with a short note about what you want me to focus on in the image.';
22
26
  const getErrorMessage = (error) => {
23
27
  return error instanceof Error ? error.message : String(error);
@@ -74,7 +78,7 @@ const emitUpdatedChatSession = (chatSessionId, io) => {
74
78
  io.emit('chat-session:updated', chatSession);
75
79
  }
76
80
  };
77
- const failChatTurn = ({ chatSessionId, executionContext, existingTriggerMessageId, providerContinuation, conversationContext, turnMode, mainRunId, error, io, }) => {
81
+ const failChatTurn = ({ chatSessionId, executionContext, existingTriggerMessageId, providerContinuation, conversationContext, turnMode, mainRunId, error, io, restoreOwnerProjection, }) => {
78
82
  const failureMessage = getErrorMessage(error);
79
83
  untrackChatProcessById(chatSessionId);
80
84
  try {
@@ -114,7 +118,7 @@ const failChatTurn = ({ chatSessionId, executionContext, existingTriggerMessageI
114
118
  // Terminal state must not depend on secondary error-message persistence.
115
119
  }
116
120
  try {
117
- updateChatSessionStatus(chatSessionId, 'error', failureMessage, null);
121
+ updateChatSessionStatus(chatSessionId, restoreOwnerProjection ? restoreOwnerProjection.agent_status : 'error', restoreOwnerProjection ? restoreOwnerProjection.agent_log : failureMessage, restoreOwnerProjection ? restoreOwnerProjection.streaming_response : null);
118
122
  emitUpdatedChatSession(chatSessionId, io);
119
123
  }
120
124
  catch {
@@ -130,7 +134,7 @@ const failChatTurn = ({ chatSessionId, executionContext, existingTriggerMessageI
130
134
  }, io);
131
135
  emitAgentRunsUpdated(io, 'chat', chatSessionId);
132
136
  };
133
- export const startChatSessionTurn = ({ chatSessionId, instruction, attachments = [], tool, model, variant, skills = [], io, executionContext, existingTriggerMessageId, providerContinuation, conversationContext, turnMode, }) => {
137
+ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments = [], tool, model, variant, skills = [], io, executionContext, existingTriggerMessageId, providerContinuation, conversationContext, turnMode, resumeSessionId, trustedOrchestration, }) => {
134
138
  const chatSession = getChatSession(chatSessionId, { includeMessages: true });
135
139
  if (!chatSession) {
136
140
  return false;
@@ -147,16 +151,17 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
147
151
  return false;
148
152
  }
149
153
  const jobKey = resolveChatWorkerKey(chatSessionId);
150
- if (chatSession.agent_status === 'running' || isRunning(jobKey)) {
154
+ const trustedPendingPostBuild = Boolean(trustedOrchestration && getChatPostBuildSourceRunId(chatSessionId));
155
+ if ((chatSession.agent_status === 'running' && !trustedPendingPostBuild) || isRunning(jobKey)) {
151
156
  return false;
152
157
  }
153
- const userMessageId = existingTriggerMessageId ?? createChatMessage({
158
+ const userMessageId = existingTriggerMessageId ?? (trustedOrchestration ? null : createChatMessage({
154
159
  chatSessionId,
155
160
  role: 'user',
156
161
  kind: 'prompt',
157
162
  content: trimmedInstruction,
158
- });
159
- if (!existingTriggerMessageId) {
163
+ }));
164
+ if (!existingTriggerMessageId && userMessageId) {
160
165
  addExecutionRunLink({
161
166
  projectId: executionContext.projectId,
162
167
  runId: executionContext.runId,
@@ -168,7 +173,7 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
168
173
  },
169
174
  });
170
175
  }
171
- if (!existingTriggerMessageId && attachments.length > 0) {
176
+ if (!existingTriggerMessageId && userMessageId && attachments.length > 0) {
172
177
  linkChatAttachmentsToMessage({
173
178
  chatMessageId: userMessageId,
174
179
  attachments,
@@ -182,22 +187,25 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
182
187
  : null;
183
188
  const resolvedVariant = resolvedTool === 'opencode' && resolvedModel ? variant ?? null : null;
184
189
  const resolvedSkills = skills;
185
- updateChatSessionRunConfig({
186
- chatSessionId,
187
- tool: resolvedTool,
188
- model: resolvedModel,
189
- variant: resolvedVariant,
190
- skills: resolvedSkills,
191
- });
190
+ if (!trustedOrchestration) {
191
+ updateChatSessionRunConfig({
192
+ chatSessionId,
193
+ tool: resolvedTool,
194
+ model: resolvedModel,
195
+ variant: resolvedVariant,
196
+ skills: resolvedSkills,
197
+ });
198
+ }
192
199
  beginChatSessionThinkingRun(chatSessionId);
193
200
  updateChatSessionStatus(chatSessionId, 'running', null, null);
194
201
  const chatCancellation = registerChatProcessPlaceholder(chatSessionId);
195
202
  emitUpdatedChatSession(chatSessionId, io);
196
203
  let queuedJob;
197
204
  try {
198
- queuedJob = enqueue(jobKey, async () => {
205
+ queuedJob = enqueue(jobKey, async (releaseQueueOwnership) => {
199
206
  let stagedAgentAttachmentsDirectoryPath = null;
200
207
  let mainRunId = null;
208
+ let activeMainRunId = null;
201
209
  try {
202
210
  transitionExecutionRun({
203
211
  projectId: executionContext.projectId,
@@ -214,6 +222,7 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
214
222
  label: 'Main agent',
215
223
  role: 'main',
216
224
  });
225
+ activeMainRunId = mainRunId;
217
226
  if (chatCancellation.stopRequested) {
218
227
  untrackChatProcessById(chatSessionId);
219
228
  finalizeAgentRun(mainRunId, 'stopped', null);
@@ -254,7 +263,11 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
254
263
  attachments,
255
264
  });
256
265
  stagedAgentAttachmentsDirectoryPath = stagedAgentAttachments.directoryPath;
257
- const chatPrompt = buildChatPrompt({
266
+ await trustedOrchestration?.beforeStart(executionContext);
267
+ const spawnPermitId = trustedOrchestration
268
+ ? acquireAgentSpawnPermit(executionContext.runId)
269
+ : undefined;
270
+ const chatPrompt = prependSkillPromptBlock(buildChatPrompt({
258
271
  projectName: project.name,
259
272
  projectPath: targetResolution.cwd,
260
273
  mode: resolvedTurnMode,
@@ -264,8 +277,15 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
264
277
  hasAttachments: attachments.length > 0,
265
278
  projectMemory,
266
279
  memoryEnabled: Boolean(project.memory_enabled),
267
- });
268
- const chatRunResult = await runChatAgent({
280
+ }), resolvedSkills);
281
+ const historicalSessionId = resumeSessionId !== undefined
282
+ ? resumeSessionId
283
+ : providerContinuation === 'fresh'
284
+ ? null
285
+ : resolvedTool === 'claude'
286
+ ? latestSession.claude_session_id
287
+ : latestSession.opencode_session_id;
288
+ const launch = (run, sessionId, permitId) => runChatAgent({
269
289
  chatSessionId,
270
290
  tool: resolvedTool,
271
291
  prompt: chatPrompt,
@@ -275,14 +295,70 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
275
295
  model: resolvedModel,
276
296
  variant: resolvedVariant,
277
297
  opencodeAgentMode: resolvedTurnMode,
278
- resumeSessionId: providerContinuation === 'fresh'
279
- ? null
280
- : resolvedTool === 'claude'
281
- ? latestSession.claude_session_id
282
- : latestSession.opencode_session_id,
298
+ resumeSessionId: sessionId,
283
299
  executionContext,
284
- mainRun: { id: mainRunId, label: 'Main agent', role: 'main', runIndex: mainRunIndex },
300
+ mainRun: run,
301
+ spawnPermitId: permitId,
285
302
  });
303
+ let chatRunResult;
304
+ if (trustedOrchestration && !historicalSessionId) {
305
+ appendLifecycleEvent({
306
+ projectId: executionContext.projectId,
307
+ runId: executionContext.runId,
308
+ domainStatus: 'running',
309
+ eventType: 'provider_fresh_without_historical_session',
310
+ }, io);
311
+ }
312
+ try {
313
+ chatRunResult = await launch({ id: mainRunId, label: 'Main agent', role: 'main', runIndex: mainRunIndex }, historicalSessionId, spawnPermitId);
314
+ if (trustedOrchestration && historicalSessionId) {
315
+ appendLifecycleEvent({
316
+ projectId: executionContext.projectId,
317
+ runId: executionContext.runId,
318
+ domainStatus: 'running',
319
+ eventType: 'provider_continuation_resumed',
320
+ }, io);
321
+ }
322
+ }
323
+ catch (error) {
324
+ if (!trustedOrchestration || !historicalSessionId || !isAgentContinuationRejectedError(error)) {
325
+ if (trustedOrchestration && historicalSessionId) {
326
+ appendLifecycleEvent({
327
+ projectId: executionContext.projectId,
328
+ runId: executionContext.runId,
329
+ domainStatus: 'continuation_unsafe_failure',
330
+ eventType: 'provider_continuation_unsafe_failure',
331
+ }, io);
332
+ }
333
+ throw error;
334
+ }
335
+ appendLifecycleEvent({
336
+ projectId: executionContext.projectId,
337
+ runId: executionContext.runId,
338
+ domainStatus: 'continuation_rejected_before_execution',
339
+ eventType: 'provider_continuation_rejected_before_execution',
340
+ }, io);
341
+ await trustedOrchestration.onContinuationFallback?.(executionContext);
342
+ finalizeAgentRun(mainRunId, 'error', null, getErrorMessage(error));
343
+ await trustedOrchestration.beforeStart(executionContext);
344
+ const fallbackPermitId = acquireAgentSpawnPermit(executionContext.runId);
345
+ const fallbackRunId = createAgentRun({
346
+ executionRunId: executionContext.runId,
347
+ parentType: 'chat',
348
+ parentId: chatSessionId,
349
+ label: 'Main agent (fresh fallback)',
350
+ role: 'main',
351
+ });
352
+ const fallbackRunIndex = getNextAgentRunIndex(executionContext.runId) - 1;
353
+ emitAgentRunsUpdated(io, 'chat', chatSessionId);
354
+ activeMainRunId = fallbackRunId;
355
+ chatRunResult = await launch({
356
+ id: fallbackRunId,
357
+ label: 'Main agent (fresh fallback)',
358
+ role: 'main',
359
+ runIndex: fallbackRunIndex,
360
+ }, null, fallbackPermitId);
361
+ }
286
362
  if (chatRunResult.completionStatus === 'stopped') {
287
363
  const interruptedSession = getChatSession(chatSessionId);
288
364
  const interruptedResponse = interruptedSession?.streaming_response?.trim()
@@ -316,9 +392,9 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
316
392
  }
317
393
  }
318
394
  updateChatSessionUsageSnapshot(chatSessionId, chatRunResult.usageSnapshot);
319
- updateChatSessionStatus(chatSessionId, 'stopped', interruptedSession?.agent_log ?? null, null);
395
+ updateChatSessionStatus(chatSessionId, trustedOrchestration && getChatPostBuildSourceRunId(chatSessionId) ? 'running' : 'stopped', interruptedSession?.agent_log ?? null, null);
320
396
  emitUpdatedChatSession(chatSessionId, io);
321
- finalizeAgentRun(mainRunId, 'stopped', interruptedResponse || null);
397
+ finalizeAgentRun(activeMainRunId, 'stopped', interruptedResponse || null);
322
398
  transitionExecutionRun({
323
399
  projectId: executionContext.projectId,
324
400
  runId: executionContext.runId,
@@ -327,6 +403,10 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
327
403
  eventType: 'chat_turn_cancelled',
328
404
  }, io);
329
405
  emitAgentRunsUpdated(io, 'chat', chatSessionId);
406
+ if (trustedOrchestration) {
407
+ releaseQueueOwnership();
408
+ await trustedOrchestration.onCancellation(executionContext);
409
+ }
330
410
  return;
331
411
  }
332
412
  const latestCompletedSession = getChatSession(chatSessionId);
@@ -367,7 +447,7 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
367
447
  updateChatSessionTitle(chatSessionId, deriveChatSessionTitleFromResponse(questionMessage, trimmedInstruction));
368
448
  }
369
449
  updateChatSessionStatus(chatSessionId, 'done', getChatSession(chatSessionId)?.agent_log ?? null, null);
370
- finalizeAgentRun(mainRunId, 'done', questionMessage);
450
+ finalizeAgentRun(activeMainRunId, 'done', questionMessage);
371
451
  transitionExecutionRun({
372
452
  projectId: executionContext.projectId,
373
453
  runId: executionContext.runId,
@@ -377,6 +457,9 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
377
457
  }, io);
378
458
  emitUpdatedChatSession(chatSessionId, io);
379
459
  emitAgentRunsUpdated(io, 'chat', chatSessionId);
460
+ if (trustedOrchestration) {
461
+ await trustedOrchestration.onCompletion(executionContext);
462
+ }
380
463
  return;
381
464
  }
382
465
  const ticketProposalResponse = typeof askQuestion.cleanedOutput === 'string'
@@ -420,37 +503,96 @@ export const startChatSessionTurn = ({ chatSessionId, instruction, attachments =
420
503
  if (latestCompletedSession?.title === getDefaultChatSessionTitle()) {
421
504
  updateChatSessionTitle(chatSessionId, deriveChatSessionTitleFromResponse(assistantMessage, trimmedInstruction));
422
505
  }
423
- updateChatSessionStatus(chatSessionId, 'done', getChatSession(chatSessionId)?.agent_log ?? null, null);
506
+ const shouldDeferPostBuildCompletion = resolvedTurnMode === 'build' && !trustedOrchestration;
507
+ updateChatSessionStatus(chatSessionId, shouldDeferPostBuildCompletion
508
+ || (trustedOrchestration && getChatPostBuildSourceRunId(chatSessionId))
509
+ ? 'running'
510
+ : 'done', getChatSession(chatSessionId)?.agent_log ?? null, null);
511
+ finalizeAgentRun(activeMainRunId, 'done', assistantMessage || chatRunResult.finalResponse || null);
512
+ if (shouldDeferPostBuildCompletion) {
513
+ withExecutionRunTransaction(transaction => {
514
+ persistPendingPostBuildFinalization(executionContext.projectId, executionContext.runId, []);
515
+ beginChatPostBuildCompletion(executionContext.projectId, chatSessionId, executionContext.runId);
516
+ transaction.transitionExecutionRun({
517
+ projectId: executionContext.projectId,
518
+ runId: executionContext.runId,
519
+ status: 'completed',
520
+ domainStatus: 'done',
521
+ eventType: 'chat_turn_completed',
522
+ });
523
+ }, io);
524
+ }
525
+ else {
526
+ transitionExecutionRun({
527
+ projectId: executionContext.projectId,
528
+ runId: executionContext.runId,
529
+ status: 'completed',
530
+ domainStatus: 'done',
531
+ eventType: 'chat_turn_completed',
532
+ }, io);
533
+ }
424
534
  emitUpdatedChatSession(chatSessionId, io);
425
- finalizeAgentRun(mainRunId, 'done', assistantMessage || chatRunResult.finalResponse || null);
426
- transitionExecutionRun({
427
- projectId: executionContext.projectId,
428
- runId: executionContext.runId,
429
- status: 'completed',
430
- domainStatus: 'done',
431
- eventType: 'chat_turn_completed',
432
- }, io);
433
- if (resolvedTurnMode === 'build') {
535
+ if (shouldDeferPostBuildCompletion) {
434
536
  const completedSession = getChatSession(chatSessionId);
537
+ let postBuildResult = null;
435
538
  if (completedSession) {
436
- await runPostBuildChecks({
539
+ postBuildResult = await runPostBuildChecks({
437
540
  project,
438
541
  sourceRunId: executionContext.runId,
439
542
  owner: { kind: 'chat_session', chatSession: completedSession },
440
543
  onStatusChange: () => emitUpdatedChatSession(chatSessionId, io),
441
544
  emitter: io,
545
+ releaseOwnerQueue: releaseQueueOwnership,
442
546
  });
443
547
  }
548
+ const finalization = finalizeChatPostBuildCompletion({
549
+ projectId: executionContext.projectId,
550
+ sourceRunId: executionContext.runId,
551
+ batch: postBuildResult?.batch ?? null,
552
+ getChatSession,
553
+ });
554
+ if (finalization.finalized) {
555
+ markPostBuildCheckFinalizationComplete(executionContext.projectId, executionContext.runId);
556
+ }
444
557
  }
445
558
  emitUpdatedChatSession(chatSessionId, io);
446
559
  emitAgentRunsUpdated(io, 'chat', chatSessionId);
560
+ if (trustedOrchestration) {
561
+ await trustedOrchestration.onCompletion(executionContext);
562
+ }
447
563
  }
448
564
  catch (error) {
565
+ const currentExecution = getExecutionRun(executionContext.projectId, executionContext.runId);
566
+ if (currentExecution?.status === 'cancelled') {
567
+ untrackChatProcessById(chatSessionId);
568
+ updateChatSessionStatus(chatSessionId, trustedOrchestration && getChatPostBuildSourceRunId(chatSessionId) ? 'running' : 'stopped', null, null);
569
+ emitUpdatedChatSession(chatSessionId, io);
570
+ emitAgentRunsUpdated(io, 'chat', chatSessionId);
571
+ if (trustedOrchestration) {
572
+ releaseQueueOwnership();
573
+ await trustedOrchestration.onCancellation(executionContext);
574
+ }
575
+ return;
576
+ }
449
577
  const latestSession = getChatSession(chatSessionId);
450
578
  if (latestSession?.title === getDefaultChatSessionTitle()) {
451
579
  updateChatSessionTitle(chatSessionId, deriveChatSessionTitle(trimmedInstruction));
452
580
  }
453
- failChatTurn({ chatSessionId, executionContext, turnMode: resolvedTurnMode, mainRunId, error, io });
581
+ failChatTurn({
582
+ chatSessionId,
583
+ executionContext,
584
+ turnMode: resolvedTurnMode,
585
+ mainRunId: activeMainRunId,
586
+ error,
587
+ io,
588
+ restoreOwnerProjection: trustedOrchestration?.preserveOwnerOnFailure
589
+ ? chatSession
590
+ : undefined,
591
+ });
592
+ if (trustedOrchestration) {
593
+ releaseQueueOwnership();
594
+ await trustedOrchestration.onFailure(executionContext, getErrorMessage(error));
595
+ }
454
596
  }
455
597
  finally {
456
598
  deleteStagedChatAttachments(stagedAgentAttachmentsDirectoryPath);
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../server/workers/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../server/workers/chat.ts"],"names":[],"mappings":"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"}