@straiffi/archon 1.10.12 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/README.md +9 -2
  2. package/dist/client/assets/{ActivityView-BFn_Nhj4.js → ActivityView-BvXSn9Jw.js} +1 -1
  3. package/dist/client/assets/{GitHubActionsDialog-iZD86Yju.js → GitHubActionsDialog-BPZg_Wy3.js} +1 -1
  4. package/dist/client/assets/{VerificationDialog-CqKE8t1d.js → VerificationDialog-D3mOY3z9.js} +1 -1
  5. package/dist/client/assets/{architectureDiagram-3BPJPVTR-C8KefY67.js → architectureDiagram-3BPJPVTR-Bj7m5nzx.js} +1 -1
  6. package/dist/client/assets/{blockDiagram-GPEHLZMM-BO2Q_Osr.js → blockDiagram-GPEHLZMM-Dv4SrhZg.js} +1 -1
  7. package/dist/client/assets/{c4Diagram-AAUBKEIU-DGPkhbrK.js → c4Diagram-AAUBKEIU-BKGsMo_n.js} +1 -1
  8. package/dist/client/assets/channel-DmiHuOD2.js +1 -0
  9. package/dist/client/assets/{chunk-2J33WTMH-Dtb7Xu8C.js → chunk-2J33WTMH-oppoEflV.js} +1 -1
  10. package/dist/client/assets/{chunk-3OPIFGDE-Bnf4GbOF.js → chunk-3OPIFGDE-FoeHxEDL.js} +1 -1
  11. package/dist/client/assets/{chunk-5ZQYHXKU-BWGid3g7.js → chunk-5ZQYHXKU-DFo7Hn8f.js} +1 -1
  12. package/dist/client/assets/{chunk-727SXJPM-ScA8IRGP.js → chunk-727SXJPM-BbM0ijwZ.js} +1 -1
  13. package/dist/client/assets/{chunk-AQP2D5EJ-Bygg04Ip.js → chunk-AQP2D5EJ-hGswj21x.js} +1 -1
  14. package/dist/client/assets/{chunk-CSCIHK7Q-CxdDDtfN.js → chunk-CSCIHK7Q-k3Y3HBPl.js} +1 -1
  15. package/dist/client/assets/{chunk-KSCS5N6A-BgpZFsB5.js → chunk-KSCS5N6A-D-fMWFHX.js} +1 -1
  16. package/dist/client/assets/{chunk-L5ZTLDWV-CKSew0OL.js → chunk-L5ZTLDWV-Cp8034Xo.js} +1 -1
  17. package/dist/client/assets/{chunk-LZXEDZCA-DVG9Rx0K.js → chunk-LZXEDZCA-DCmWwuZY.js} +2 -2
  18. package/dist/client/assets/{chunk-ND2GUHAM-CHBqNmuF.js → chunk-ND2GUHAM-CPxoYLrb.js} +1 -1
  19. package/dist/client/assets/{chunk-NZK2D7GU-DvZYWn7V.js → chunk-NZK2D7GU-B1xsQ-Ge.js} +1 -1
  20. package/dist/client/assets/{chunk-O5CBEL6O-BL7lRTSe.js → chunk-O5CBEL6O-CP_QLulv.js} +1 -1
  21. package/dist/client/assets/{chunk-WU5MYG2G-C-il2wHZ.js → chunk-WU5MYG2G-CqDmmASz.js} +1 -1
  22. package/dist/client/assets/classDiagram-4FO5ZUOK-GuChK9KD.js +1 -0
  23. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ezsQe4jc.js +1 -0
  24. package/dist/client/assets/{dagre-BM42HDAG-B00l5tLi.js → dagre-BM42HDAG-I60HgRr5.js} +1 -1
  25. package/dist/client/assets/{diagram-2AECGRRQ-Tum6g1_5.js → diagram-2AECGRRQ-DH7489lu.js} +1 -1
  26. package/dist/client/assets/{diagram-5GNKFQAL-BK1GX5jc.js → diagram-5GNKFQAL-UG5kJveS.js} +1 -1
  27. package/dist/client/assets/{diagram-KO2AKTUF-BrzmD5NB.js → diagram-KO2AKTUF-DLPd9cl-.js} +1 -1
  28. package/dist/client/assets/{diagram-LMA3HP47-BhrlgXiJ.js → diagram-LMA3HP47-gfoMHIE-.js} +1 -1
  29. package/dist/client/assets/{diagram-OG6HWLK6-K-fWsJ3a.js → diagram-OG6HWLK6-D7zejHzo.js} +1 -1
  30. package/dist/client/assets/{erDiagram-TEJ5UH35-Der6PjHE.js → erDiagram-TEJ5UH35-DB1R9rUd.js} +1 -1
  31. package/dist/client/assets/{flowDiagram-I6XJVG4X-BVWgGhXe.js → flowDiagram-I6XJVG4X-rSasRun9.js} +1 -1
  32. package/dist/client/assets/{ganttDiagram-6RSMTGT7-DcoZ5ggj.js → ganttDiagram-6RSMTGT7-ickt48MT.js} +1 -1
  33. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-BhhbMTBu.js → gitGraphDiagram-PVQCEYII-B2MWuej-.js} +1 -1
  34. package/dist/client/assets/index-4RQBXPuO.css +2 -0
  35. package/dist/client/assets/index-BN2UMUYo.js +276 -0
  36. package/dist/client/assets/{infoDiagram-5YYISTIA-Lwc-agyc.js → infoDiagram-5YYISTIA-ClB9-yBC.js} +1 -1
  37. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-B95U1Xcl.js → ishikawaDiagram-YF4QCWOH-CyUX0IyE.js} +1 -1
  38. package/dist/client/assets/{journeyDiagram-JHISSGLW-xFpigy5D.js → journeyDiagram-JHISSGLW-CvZv1SZ7.js} +1 -1
  39. package/dist/client/assets/{kanban-definition-UN3LZRKU-D3mudQnR.js → kanban-definition-UN3LZRKU-C3MgzQMY.js} +1 -1
  40. package/dist/client/assets/{line-DtTL3ZI2.js → line-Dpj7mkeR.js} +1 -1
  41. package/dist/client/assets/{mermaid-parser.core-Dau7K6zV.js → mermaid-parser.core-Ezn4UHHp.js} +1 -1
  42. package/dist/client/assets/{mermaid.core-B8qtvATu.js → mermaid.core-GVI7XZqR.js} +3 -3
  43. package/dist/client/assets/{mindmap-definition-RKZ34NQL-Cus04Yq3.js → mindmap-definition-RKZ34NQL-Bu2cgOo4.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-4H26LBE5-BCMGpBnn.js → pieDiagram-4H26LBE5-_WS41t2_.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CAmOr-PJ.js → quadrantDiagram-W4KKPZXB-Urvq-XqI.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-4Y6WPE33-kisD3jc4.js → requirementDiagram-4Y6WPE33-bkmWG0rM.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-CsCedmM0.js → sankeyDiagram-5OEKKPKP-DI0SArVz.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-B-dAi954.js → sequenceDiagram-3UESZ5HK-n7PKrHd3.js} +1 -1
  49. package/dist/client/assets/{stateDiagram-AJRCARHV-X0BnedIW.js → stateDiagram-AJRCARHV-CxnEzrQA.js} +1 -1
  50. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DXTMu4iJ.js +1 -0
  51. package/dist/client/assets/{timeline-definition-PNZ67QCA-DfFoSjhr.js → timeline-definition-PNZ67QCA-BFr88_A9.js} +1 -1
  52. package/dist/client/assets/{vennDiagram-CIIHVFJN-CKSCBwhG.js → vennDiagram-CIIHVFJN-BNYs6tfr.js} +1 -1
  53. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-DNIBQmHO.js → wardleyDiagram-YWT4CUSO-CaGZd3fe.js} +1 -1
  54. package/dist/client/assets/{xychartDiagram-2RQKCTM6-FvB55TQN.js → xychartDiagram-2RQKCTM6-CMyDrx2a.js} +1 -1
  55. package/dist/client/index.html +2 -2
  56. package/dist/server/db.js +153 -26
  57. package/dist/server/db.js.map +1 -1
  58. package/dist/server/index.js +93 -36
  59. package/dist/server/index.js.map +1 -1
  60. package/dist/server/lib/activeTool.js +23 -0
  61. package/dist/server/lib/activeTool.js.map +1 -0
  62. package/dist/server/lib/agent.js +291 -67
  63. package/dist/server/lib/agent.js.map +1 -1
  64. package/dist/server/lib/agentCatalog.js +92 -4
  65. package/dist/server/lib/agentCatalog.js.map +1 -1
  66. package/dist/server/lib/agentProvider.js +8 -11
  67. package/dist/server/lib/agentProvider.js.map +1 -1
  68. package/dist/server/lib/agentRuns.js +26 -2
  69. package/dist/server/lib/agentRuns.js.map +1 -1
  70. package/dist/server/lib/automationCheckGate.js +6 -0
  71. package/dist/server/lib/automationCheckGate.js.map +1 -1
  72. package/dist/server/lib/buildExecutionEnvironment.js +82 -29
  73. package/dist/server/lib/buildExecutionEnvironment.js.map +1 -1
  74. package/dist/server/lib/buildFlow.js +5 -4
  75. package/dist/server/lib/buildFlow.js.map +1 -1
  76. package/dist/server/lib/buildSequences.js +7 -29
  77. package/dist/server/lib/buildSequences.js.map +1 -1
  78. package/dist/server/lib/buildTicketCommit.js +82 -11
  79. package/dist/server/lib/buildTicketCommit.js.map +1 -1
  80. package/dist/server/lib/bundleReviewOperations.js +6 -0
  81. package/dist/server/lib/bundleReviewOperations.js.map +1 -1
  82. package/dist/server/lib/chatOperations.js +109 -93
  83. package/dist/server/lib/chatOperations.js.map +1 -1
  84. package/dist/server/lib/chatSessionTitle.js +66 -0
  85. package/dist/server/lib/chatSessionTitle.js.map +1 -0
  86. package/dist/server/lib/chats.js +20 -4
  87. package/dist/server/lib/chats.js.map +1 -1
  88. package/dist/server/lib/checkAutoFix.js +65 -61
  89. package/dist/server/lib/checkAutoFix.js.map +1 -1
  90. package/dist/server/lib/codexAgentProvider.js +320 -0
  91. package/dist/server/lib/codexAgentProvider.js.map +1 -0
  92. package/dist/server/lib/codexAppServer.js +678 -0
  93. package/dist/server/lib/codexAppServer.js.map +1 -0
  94. package/dist/server/lib/codexCatalogDiscoveryExecutionEnvironment.js +302 -0
  95. package/dist/server/lib/codexCatalogDiscoveryExecutionEnvironment.js.map +1 -0
  96. package/dist/server/lib/codexDiscovery.js +137 -0
  97. package/dist/server/lib/codexDiscovery.js.map +1 -0
  98. package/dist/server/lib/config.js.map +1 -1
  99. package/dist/server/lib/dockerSandboxEnvironmentOperations.js +2 -2
  100. package/dist/server/lib/dockerSandboxEnvironmentOperations.js.map +1 -1
  101. package/dist/server/lib/dockerSandboxExecutionEnvironment.js +39 -10
  102. package/dist/server/lib/dockerSandboxExecutionEnvironment.js.map +1 -1
  103. package/dist/server/lib/dockerSandboxExecutionProvider.js +3 -1
  104. package/dist/server/lib/dockerSandboxExecutionProvider.js.map +1 -1
  105. package/dist/server/lib/dockerSandboxReleaseProfiles.js +8 -0
  106. package/dist/server/lib/dockerSandboxReleaseProfiles.js.map +1 -1
  107. package/dist/server/lib/executionCredentialCapabilities.js +39 -14
  108. package/dist/server/lib/executionCredentialCapabilities.js.map +1 -1
  109. package/dist/server/lib/executionEnvironment.js.map +1 -1
  110. package/dist/server/lib/executionEnvironmentContexts.js +1 -1
  111. package/dist/server/lib/executionEnvironmentContexts.js.map +1 -1
  112. package/dist/server/lib/executionEnvironmentLifecycle.js +1 -1
  113. package/dist/server/lib/executionEnvironmentLifecycle.js.map +1 -1
  114. package/dist/server/lib/executionEnvironmentReconciliation.js +7 -7
  115. package/dist/server/lib/executionEnvironmentReconciliation.js.map +1 -1
  116. package/dist/server/lib/executionEnvironmentRoutes.js +29 -25
  117. package/dist/server/lib/executionEnvironmentRoutes.js.map +1 -1
  118. package/dist/server/lib/executionEnvironmentValidation.js +205 -20
  119. package/dist/server/lib/executionEnvironmentValidation.js.map +1 -1
  120. package/dist/server/lib/executionEnvironmentValidationOperations.js +34 -29
  121. package/dist/server/lib/executionEnvironmentValidationOperations.js.map +1 -1
  122. package/dist/server/lib/executionEnvironments.js +59 -1
  123. package/dist/server/lib/executionEnvironments.js.map +1 -1
  124. package/dist/server/lib/executionProfiles.js +6 -3
  125. package/dist/server/lib/executionProfiles.js.map +1 -1
  126. package/dist/server/lib/executionRetryPredicates.js +2 -1
  127. package/dist/server/lib/executionRetryPredicates.js.map +1 -1
  128. package/dist/server/lib/executionRunAuthority.js +6 -1
  129. package/dist/server/lib/executionRunAuthority.js.map +1 -1
  130. package/dist/server/lib/genericToolCall.js +131 -9
  131. package/dist/server/lib/genericToolCall.js.map +1 -1
  132. package/dist/server/lib/hostExecutionEnvironment.js +5 -0
  133. package/dist/server/lib/hostExecutionEnvironment.js.map +1 -1
  134. package/dist/server/lib/lightweightPrompt.js +258 -18
  135. package/dist/server/lib/lightweightPrompt.js.map +1 -1
  136. package/dist/server/lib/mobileAccess.js +21 -13
  137. package/dist/server/lib/mobileAccess.js.map +1 -1
  138. package/dist/server/lib/modelResolutionErrors.js +4 -2
  139. package/dist/server/lib/modelResolutionErrors.js.map +1 -1
  140. package/dist/server/lib/models.js +15 -2
  141. package/dist/server/lib/models.js.map +1 -1
  142. package/dist/server/lib/oneShotAgent.js +11 -0
  143. package/dist/server/lib/oneShotAgent.js.map +1 -0
  144. package/dist/server/lib/projectAutoConfig.js +11 -5
  145. package/dist/server/lib/projectAutoConfig.js.map +1 -1
  146. package/dist/server/lib/projectMemory.js +3 -1
  147. package/dist/server/lib/projectMemory.js.map +1 -1
  148. package/dist/server/lib/projectMemoryScan.js +13 -3
  149. package/dist/server/lib/projectMemoryScan.js.map +1 -1
  150. package/dist/server/lib/projectMemoryTransfer.js +5 -2
  151. package/dist/server/lib/projectMemoryTransfer.js.map +1 -1
  152. package/dist/server/lib/promptSkills.js +1 -1
  153. package/dist/server/lib/promptSkills.js.map +1 -1
  154. package/dist/server/lib/run.js +2 -0
  155. package/dist/server/lib/run.js.map +1 -1
  156. package/dist/server/lib/skills.js +21 -4
  157. package/dist/server/lib/skills.js.map +1 -1
  158. package/dist/server/lib/specOperations.js +14 -10
  159. package/dist/server/lib/specOperations.js.map +1 -1
  160. package/dist/server/lib/specReviewOperations.js +20 -11
  161. package/dist/server/lib/specReviewOperations.js.map +1 -1
  162. package/dist/server/lib/specs.js +14 -4
  163. package/dist/server/lib/specs.js.map +1 -1
  164. package/dist/server/lib/ticketAutomationCommit.js +23 -7
  165. package/dist/server/lib/ticketAutomationCommit.js.map +1 -1
  166. package/dist/server/lib/ticketFollowUpOperations.js +7 -0
  167. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  168. package/dist/server/lib/ticketRunOperations.js +11 -1
  169. package/dist/server/lib/ticketRunOperations.js.map +1 -1
  170. package/dist/server/lib/ticketSettingsOperations.js +4 -1
  171. package/dist/server/lib/ticketSettingsOperations.js.map +1 -1
  172. package/dist/server/lib/toolUpgrade.js +1 -0
  173. package/dist/server/lib/toolUpgrade.js.map +1 -1
  174. package/dist/server/lib/transcriptRuns.js +4 -1
  175. package/dist/server/lib/transcriptRuns.js.map +1 -1
  176. package/dist/server/lib/types.js.map +1 -1
  177. package/dist/server/workers/build.js +9 -4
  178. package/dist/server/workers/build.js.map +1 -1
  179. package/dist/server/workers/chat.js +55 -11
  180. package/dist/server/workers/chat.js.map +1 -1
  181. package/dist/server/workers/followUp.js +6 -1
  182. package/dist/server/workers/followUp.js.map +1 -1
  183. package/dist/server/workers/plan.js +235 -68
  184. package/dist/server/workers/plan.js.map +1 -1
  185. package/dist/server/workers/planFollowUp.js +11 -4
  186. package/dist/server/workers/planFollowUp.js.map +1 -1
  187. package/dist/server/workers/review.js +15 -18
  188. package/dist/server/workers/review.js.map +1 -1
  189. package/dist/server/workers/specReview.js +7 -7
  190. package/dist/server/workers/specReview.js.map +1 -1
  191. package/dist/server/workers/specSession.js +8 -12
  192. package/dist/server/workers/specSession.js.map +1 -1
  193. package/package.json +1 -1
  194. package/dist/client/assets/channel-DXKn3TOv.js +0 -1
  195. package/dist/client/assets/classDiagram-4FO5ZUOK-U0fU20hT.js +0 -1
  196. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-C6bQNSxL.js +0 -1
  197. package/dist/client/assets/index-B6BltHSr.css +0 -2
  198. package/dist/client/assets/index-CFOYm3j9.js +0 -276
  199. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-6B8YH8Y2.js +0 -1
@@ -3,6 +3,7 @@ import { stopChatAgent } from './agent.js';
3
3
  import { claimChatSessionResumeSourceRun, createChatSession, getChatPostBuildSourceRunId, getChatSession, getChatSessionResumeSourceRunId, updateChatSessionMode, updateChatSessionResumeSourceRunId } from './chats.js';
4
4
  import { doesChatSessionTargetMatchProjectTarget, resolveChatSessionTarget } from './chatTargets.js';
5
5
  import { getModelProvider, normalizeClaudeModelId, normalizeModelId } from './models.js';
6
+ import { agentSupportsVariants, getAgentModelProvider, normalizeAgentModelId } from './agentCatalog.js';
6
7
  import { getProjectById } from './projects.js';
7
8
  import { getPostBuildCheckSummary, hasActivePostBuildCheck } from './postBuildCheckRuns.js';
8
9
  import { getSpecSession, getSpecSnapshot } from './specs.js';
@@ -23,11 +24,38 @@ import { resolveChatLineage, resolveChatLineageForRun, resolvePlanChatProviderSe
23
24
  import { resolveHelperContinuationModelConfig, resolveHelperModelConfig } from './agentModelConfig.js';
24
25
  import { buildFreshSessionConversationContext } from './executionRetryContext.js';
25
26
  import { CHAT_RESUME_INSTRUCTION, ConversationResumeUnavailableError, resolveConversationResume } from './conversationResume.js';
27
+ import { getAgentSessionId, isAgentExecutable, isSupportedAgent } from './agentCatalog.js';
26
28
  class ChatConversationHandoffError extends Error {
27
29
  }
28
- const resolveChatBuildContinuation = ({ projectId, chatSession, projectPath, tool, model, requestedSessionId, lineageExecutionRunId, }) => {
29
- const requestedProvider = tool === 'claude' ? 'anthropic' : getModelProvider(model);
30
+ const resolveChatContinuation = ({ projectId, chatSession, projectPath, tool, model, executionMode, requestedSessionId, lineageExecutionRunId, }) => {
31
+ const requestedProvider = tool === 'opencode' ? getModelProvider(model) : getAgentModelProvider(tool, model);
32
+ const fresh = (selection) => ({
33
+ strategy: 'fresh',
34
+ providerSessionId: null,
35
+ buildLineageSessionId: null,
36
+ selection,
37
+ conversationContext: null,
38
+ });
39
+ const freshHandoff = (selection, message) => {
40
+ const context = buildFreshSessionConversationContext(chatSession.messages ?? []);
41
+ if (!context.ok) {
42
+ throw new ChatConversationHandoffError(message);
43
+ }
44
+ return {
45
+ strategy: 'fresh_handoff',
46
+ providerSessionId: null,
47
+ buildLineageSessionId: null,
48
+ selection,
49
+ conversationContext: context.context,
50
+ };
51
+ };
52
+ const currentBuildSelection = () => executionMode === 'build'
53
+ ? createExecutionProfileSelection(projectId)
54
+ : null;
30
55
  if (lineageExecutionRunId) {
56
+ if (executionMode !== 'build') {
57
+ throw new Error('Trusted Chat repair continuation is only available in Build mode.');
58
+ }
31
59
  const lineage = resolveChatLineageForRun(projectId, lineageExecutionRunId);
32
60
  if (!lineage
33
61
  || !requestedProvider
@@ -37,6 +65,7 @@ const resolveChatBuildContinuation = ({ projectId, chatSession, projectPath, too
37
65
  throw new Error('The trusted Chat repair no longer matches its causal execution authority.');
38
66
  }
39
67
  return {
68
+ strategy: 'reuse',
40
69
  providerSessionId: requestedSessionId,
41
70
  buildLineageSessionId: requestedSessionId,
42
71
  selection: getHistoricalChatExecutionProfileSelectionForRun(projectId, lineageExecutionRunId),
@@ -44,79 +73,64 @@ const resolveChatBuildContinuation = ({ projectId, chatSession, projectPath, too
44
73
  };
45
74
  }
46
75
  if (!requestedSessionId || !requestedProvider) {
47
- return {
48
- providerSessionId: null,
49
- buildLineageSessionId: null,
50
- selection: createExecutionProfileSelection(projectId),
51
- conversationContext: null,
52
- };
76
+ return fresh(currentBuildSelection());
53
77
  }
54
- try {
55
- const lineage = resolveChatLineage(projectId, chatSession.id, '', requestedSessionId);
56
- if (lineage) {
57
- if (lineage.agent !== tool
58
- || lineage.modelProvider !== requestedProvider
59
- || lineage.target.workspacePath !== projectPath) {
60
- return {
61
- providerSessionId: null,
78
+ const lineage = resolveChatLineage(projectId, chatSession.id, '', requestedSessionId);
79
+ if (lineage) {
80
+ if (lineage.agent !== tool
81
+ || lineage.modelProvider !== requestedProvider
82
+ || lineage.target.workspacePath !== projectPath) {
83
+ return fresh(currentBuildSelection());
84
+ }
85
+ if (executionMode === 'plan') {
86
+ return lineage.provider === 'host'
87
+ ? {
88
+ strategy: 'reuse',
89
+ providerSessionId: requestedSessionId,
62
90
  buildLineageSessionId: null,
63
- selection: createExecutionProfileSelection(projectId),
91
+ selection: null,
64
92
  conversationContext: null,
65
- };
66
- }
67
- return {
68
- providerSessionId: requestedSessionId,
69
- buildLineageSessionId: requestedSessionId,
70
- selection: getHistoricalChatExecutionProfileSelectionForSession(projectId, chatSession.id, requestedSessionId),
71
- conversationContext: null,
72
- };
73
- }
74
- const storedSessionId = tool === 'claude' ? chatSession.claude_session_id : chatSession.opencode_session_id;
75
- const planProvenance = storedSessionId === requestedSessionId && chatSession.tool === tool
76
- ? resolvePlanChatProviderSession(projectId, chatSession.id, requestedSessionId)
77
- : null;
78
- if (!planProvenance
79
- || planProvenance.agent !== tool
80
- || planProvenance.modelProvider !== requestedProvider) {
81
- return {
82
- providerSessionId: null,
83
- buildLineageSessionId: null,
84
- selection: createExecutionProfileSelection(projectId),
85
- conversationContext: null,
86
- };
87
- }
88
- const selection = createExecutionProfileSelection(projectId);
89
- const profileRevision = validateExecutionProfileSelection(projectId, selection);
90
- if (tool === 'claude' && profileRevision.profile.provider_preference === 'docker_sandbox') {
91
- const context = buildFreshSessionConversationContext(chatSession.messages ?? []);
92
- if (!context.ok) {
93
- throw new ChatConversationHandoffError('The Chat Plan conversation is too large to hand off safely to a fresh Docker Build session.');
94
- }
95
- return {
96
- providerSessionId: null,
97
- buildLineageSessionId: null,
98
- selection,
99
- conversationContext: context.context,
100
- };
93
+ }
94
+ : freshHandoff(null, 'The Chat Build conversation is too large to hand off safely to a fresh host Plan session.');
101
95
  }
102
96
  return {
97
+ strategy: 'reuse',
103
98
  providerSessionId: requestedSessionId,
104
- buildLineageSessionId: null,
105
- selection,
99
+ buildLineageSessionId: requestedSessionId,
100
+ selection: getHistoricalChatExecutionProfileSelectionForSession(projectId, chatSession.id, requestedSessionId),
106
101
  conversationContext: null,
107
102
  };
108
103
  }
109
- catch (error) {
110
- if (error instanceof ChatConversationHandoffError) {
111
- throw error;
112
- }
104
+ const storedSessionId = getAgentSessionId(tool, chatSession);
105
+ const planProvenance = storedSessionId === requestedSessionId && chatSession.tool === tool
106
+ ? resolvePlanChatProviderSession(projectId, chatSession.id, requestedSessionId)
107
+ : null;
108
+ if (!planProvenance
109
+ || planProvenance.agent !== tool
110
+ || planProvenance.modelProvider !== requestedProvider) {
111
+ return fresh(currentBuildSelection());
112
+ }
113
+ if (executionMode === 'plan') {
113
114
  return {
114
- providerSessionId: null,
115
+ strategy: 'reuse',
116
+ providerSessionId: requestedSessionId,
115
117
  buildLineageSessionId: null,
116
- selection: createExecutionProfileSelection(projectId),
118
+ selection: null,
117
119
  conversationContext: null,
118
120
  };
119
121
  }
122
+ const selection = currentBuildSelection();
123
+ const profileRevision = validateExecutionProfileSelection(projectId, selection);
124
+ if (profileRevision.profile.provider_preference === 'docker_sandbox') {
125
+ return freshHandoff(selection, 'The Chat Plan conversation is too large to hand off safely to a fresh Docker Build session.');
126
+ }
127
+ return {
128
+ strategy: 'reuse',
129
+ providerSessionId: requestedSessionId,
130
+ buildLineageSessionId: null,
131
+ selection,
132
+ conversationContext: null,
133
+ };
120
134
  };
121
135
  const getPayloadValue = (payload, key) => {
122
136
  return payload?.[key];
@@ -143,10 +157,10 @@ export const resolveChatMode = (value) => {
143
157
  return value === 'plan' ? 'plan' : 'build';
144
158
  };
145
159
  export const resolveChatTool = (value) => {
146
- if (value === 'claude') {
147
- return 'claude';
160
+ if (value === undefined) {
161
+ return 'opencode';
148
162
  }
149
- return 'opencode';
163
+ return isSupportedAgent(value) ? value : null;
150
164
  };
151
165
  export const createProjectChatSession = ({ projectId, payload, broadcaster, }) => {
152
166
  const project = getProjectById(projectId);
@@ -154,6 +168,9 @@ export const createProjectChatSession = ({ projectId, payload, broadcaster, }) =
154
168
  return { ok: false, status: 404, error: 'Not found' };
155
169
  }
156
170
  const tool = resolveChatTool(getPayloadValue(payload, 'tool'));
171
+ if (!tool) {
172
+ return { ok: false, status: 400, error: 'tool must be a supported agent' };
173
+ }
157
174
  const mode = resolveChatMode(getPayloadValue(payload, 'mode'));
158
175
  const requestedModel = getPayloadValue(payload, 'model');
159
176
  const helperConfig = resolveHelperModelConfig({
@@ -165,15 +182,11 @@ export const createProjectChatSession = ({ projectId, payload, broadcaster, }) =
165
182
  preferWorkflow: true,
166
183
  });
167
184
  const rawModel = helperConfig.model;
168
- const normalizedModel = tool === 'opencode'
169
- ? normalizeModelId(rawModel) || null
170
- : tool === 'claude'
171
- ? normalizeClaudeModelId(rawModel) || null
172
- : null;
185
+ const normalizedModel = normalizeAgentModelId(tool, rawModel) || null;
173
186
  const requestedVariant = getPayloadValue(payload, 'variant');
174
- const normalizedVariant = tool === 'opencode' && normalizedModel && typeof requestedVariant === 'string'
187
+ const normalizedVariant = agentSupportsVariants(tool) && normalizedModel && typeof requestedVariant === 'string'
175
188
  ? requestedVariant.trim() || null
176
- : tool === 'opencode' && normalizedModel
189
+ : agentSupportsVariants(tool) && normalizedModel
177
190
  ? helperConfig.variant ?? null
178
191
  : null;
179
192
  const originSpecSessionId = typeof getPayloadValue(payload, 'originSpecSessionId') === 'string' ? getPayloadValue(payload, 'originSpecSessionId') : null;
@@ -282,6 +295,9 @@ export const submitProjectChatSessionMessage = ({ projectId, chatSessionId, payl
282
295
  const requestedModel = getPayloadValue(payload, 'model');
283
296
  const requestedVariant = getPayloadValue(payload, 'variant');
284
297
  const resolvedTool = retryRunConfig?.tool ?? existing.tool;
298
+ if (!isAgentExecutable(resolvedTool)) {
299
+ return { ok: false, status: 409, error: `${resolvedTool} execution is not available` };
300
+ }
285
301
  const helperConfig = resolveHelperContinuationModelConfig({
286
302
  helperModelsJson: project.helper_models_json,
287
303
  agent: resolvedTool,
@@ -297,25 +313,22 @@ export const submitProjectChatSessionMessage = ({ projectId, chatSessionId, payl
297
313
  ? retryRunConfig.variant
298
314
  : helperConfig.variant ?? null;
299
315
  const resolvedSkills = retryRunConfig?.skills ?? normalizeSkillNames(getPayloadValue(payload, 'skills'));
300
- const requestedSessionId = providerContinuation === 'fresh' || executionMode === 'plan'
316
+ const requestedSessionId = providerContinuation === 'fresh'
301
317
  ? null
302
- : resolvedTool === 'claude'
303
- ? existing.claude_session_id
304
- : existing.opencode_session_id;
305
- let continuation = null;
318
+ : getAgentSessionId(resolvedTool, existing);
319
+ let continuation;
306
320
  let profileRevision = null;
307
321
  try {
308
- continuation = executionMode === 'build'
309
- ? resolveChatBuildContinuation({
310
- projectId: project.id,
311
- chatSession: existing,
312
- projectPath: targetResolution.cwd,
313
- tool: resolvedTool,
314
- model: typeof rawModel === 'string' ? rawModel : null,
315
- requestedSessionId,
316
- })
317
- : null;
318
- profileRevision = continuation
322
+ continuation = resolveChatContinuation({
323
+ projectId: project.id,
324
+ chatSession: existing,
325
+ projectPath: targetResolution.cwd,
326
+ tool: resolvedTool,
327
+ model: typeof rawModel === 'string' ? rawModel : null,
328
+ executionMode,
329
+ requestedSessionId,
330
+ });
331
+ profileRevision = continuation.selection
319
332
  ? validateExecutionProfileSelection(project.id, continuation.selection)
320
333
  : null;
321
334
  }
@@ -352,7 +365,8 @@ export const submitProjectChatSessionMessage = ({ projectId, chatSessionId, payl
352
365
  retry_variant: resolvedVariant,
353
366
  retry_skills: resolvedSkills,
354
367
  retry_attachment_count: resolvedAttachments.attachments.length,
355
- ...(continuation && profileRevision
368
+ continuation_strategy: continuation.strategy,
369
+ ...(profileRevision
356
370
  ? {
357
371
  build_execution_provider: profileRevision.profile.provider_preference,
358
372
  ...executionProfileSelectionMetadata(continuation.selection),
@@ -381,11 +395,11 @@ export const submitProjectChatSessionMessage = ({ projectId, chatSessionId, payl
381
395
  executionContext: context,
382
396
  existingTriggerMessageId,
383
397
  providerContinuation,
384
- providerSessionId: continuation?.providerSessionId,
385
- buildLineageSessionId: continuation?.buildLineageSessionId,
398
+ providerSessionId: continuation.providerSessionId,
399
+ buildLineageSessionId: continuation.buildLineageSessionId,
386
400
  conversationContext: conversationContext !== undefined
387
401
  ? conversationContext
388
- : continuation?.conversationContext,
402
+ : continuation.conversationContext,
389
403
  turnMode: turnMode ?? existing.mode,
390
404
  });
391
405
  if (!accepted) {
@@ -446,12 +460,13 @@ export const resumeProjectChatSessionResponse = ({ projectId, chatSessionId, bro
446
460
  let continuation = null;
447
461
  try {
448
462
  continuation = resumeMode === 'build'
449
- ? resolveChatBuildContinuation({
463
+ ? resolveChatContinuation({
450
464
  projectId,
451
465
  chatSession: existing,
452
466
  projectPath: targetResolution.cwd,
453
467
  tool: resume.tool,
454
468
  model: resume.model,
469
+ executionMode: 'build',
455
470
  requestedSessionId: resume.providerSessionId,
456
471
  lineageExecutionRunId: resume.sourceRun.id,
457
472
  })
@@ -560,12 +575,13 @@ export const submitTrustedChatRepairTurn = ({ projectId, chatSessionId, parentRu
560
575
  if (!target.target_available) {
561
576
  return { ok: false, status: 409, error: 'Trusted Chat repair workspace is unavailable', value: session };
562
577
  }
563
- const continuation = resolveChatBuildContinuation({
578
+ const continuation = resolveChatContinuation({
564
579
  projectId,
565
580
  chatSession: session,
566
581
  projectPath: target.cwd,
567
582
  tool: runConfig.tool,
568
583
  model: runConfig.model,
584
+ executionMode: 'build',
569
585
  requestedSessionId: resumeSessionId,
570
586
  lineageExecutionRunId,
571
587
  });
@@ -1 +1 @@
1
- {"version":3,"file":"chatOperations.js","sourceRoot":"","sources":["../../../server/lib/chatOperations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatOperations.js","sourceRoot":"","sources":["../../../server/lib/chatOperations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { resolveHelperModelConfig } from './agentModelConfig.js';
2
+ import { deriveChatSessionTitle, getChatSession, updateChatSessionTitleIfCurrent } from './chats.js';
3
+ import { runTrackedLightweightPrompt } from './lightweightPrompt.js';
4
+ const MAX_TITLE_CONTEXT_LENGTH = 2_000;
5
+ const buildTitlePrompt = (instruction, assistantResponse) => [
6
+ 'Create a concise title for this chat.',
7
+ 'Return only a plain-language title of 3 to 8 words. Do not use quotes, Markdown, or ending punctuation.',
8
+ `<user_instruction>\n${instruction.slice(0, MAX_TITLE_CONTEXT_LENGTH)}\n</user_instruction>`,
9
+ `<assistant_response>\n${assistantResponse.slice(0, MAX_TITLE_CONTEXT_LENGTH)}\n</assistant_response>`,
10
+ ].join('\n\n');
11
+ export const normalizeGeneratedChatSessionTitle = (value) => {
12
+ const firstLine = value
13
+ .split('\n')
14
+ .map(line => line.trim())
15
+ .find(Boolean);
16
+ if (!firstLine) {
17
+ return null;
18
+ }
19
+ const normalized = firstLine
20
+ .replace(/^#{1,6}\s*/, '')
21
+ .replace(/^[`'"*_]+|[`'"*_]+$/g, '')
22
+ .replace(/[.!?:;,]+$/g, '')
23
+ .replace(/\s+/g, ' ')
24
+ .trim();
25
+ if (!normalized) {
26
+ return null;
27
+ }
28
+ return deriveChatSessionTitle(normalized);
29
+ };
30
+ export const generateChatSessionTitle = async ({ project, chatSessionId, tool, instruction, assistantResponse, expectedTitle, target, parentRunId, io, }) => {
31
+ if (tool !== 'claude' && tool !== 'codex') {
32
+ return false;
33
+ }
34
+ const helper = resolveHelperModelConfig({
35
+ agent: tool,
36
+ helperModelsJson: project.helper_models_json,
37
+ });
38
+ if (!helper.model?.trim()) {
39
+ return false;
40
+ }
41
+ if (getChatSession(chatSessionId)?.title !== expectedTitle) {
42
+ return false;
43
+ }
44
+ const rawTitle = await runTrackedLightweightPrompt({
45
+ project,
46
+ execution: {
47
+ tool,
48
+ model: helper.model,
49
+ variant: helper.variant,
50
+ },
51
+ target,
52
+ initiatedBy: 'system',
53
+ parentRunId,
54
+ sourceReference: { kind: 'chat_session', id: chatSessionId, label: expectedTitle },
55
+ }, buildTitlePrompt(instruction, assistantResponse));
56
+ const title = normalizeGeneratedChatSessionTitle(rawTitle);
57
+ if (!title || !updateChatSessionTitleIfCurrent(chatSessionId, expectedTitle, title)) {
58
+ return false;
59
+ }
60
+ const updatedSession = getChatSession(chatSessionId, { includeMessages: true });
61
+ if (updatedSession) {
62
+ io.emit('chat-session:updated', updatedSession);
63
+ }
64
+ return true;
65
+ };
66
+ //# sourceMappingURL=chatSessionTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatSessionTitle.js","sourceRoot":"","sources":["../../../server/lib/chatSessionTitle.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ const activityAtSelect = `COALESCE(${lastMessageAtSelect}, chat_sessions.created
37
37
  const listChatSessionsStatement = db.prepare(`
38
38
  SELECT id, project_id, title, mode, tool, model, variant, skills_json, agent_status, agent_log, agent_message_id, previous_agent_log, previous_agent_message_id, streaming_response,
39
39
  target_kind, target_bundle_id, target_branch_snapshot, target_label_snapshot,
40
- claude_session_id, opencode_session_id, resume_source_run_id,
40
+ claude_session_id, codex_session_id, opencode_session_id, resume_source_run_id,
41
41
  usage_snapshot_context_window, usage_snapshot_max_output_tokens, usage_snapshot_total_tokens,
42
42
  usage_snapshot_input_tokens, usage_snapshot_output_tokens, usage_snapshot_cache_read_tokens,
43
43
  usage_snapshot_reasoning_tokens, usage_snapshot_cost, ${firstUserMessagePreviewSelect} AS first_user_message_preview,
@@ -53,7 +53,7 @@ const listChatSessionsStatement = db.prepare(`
53
53
  const getChatSessionStatement = db.prepare(`
54
54
  SELECT id, project_id, title, mode, tool, model, variant, skills_json, agent_status, agent_log, agent_message_id, previous_agent_log, previous_agent_message_id, streaming_response,
55
55
  target_kind, target_bundle_id, target_branch_snapshot, target_label_snapshot,
56
- claude_session_id, opencode_session_id, resume_source_run_id,
56
+ claude_session_id, codex_session_id, opencode_session_id, resume_source_run_id,
57
57
  usage_snapshot_context_window, usage_snapshot_max_output_tokens, usage_snapshot_total_tokens,
58
58
  usage_snapshot_input_tokens, usage_snapshot_output_tokens, usage_snapshot_cache_read_tokens,
59
59
  usage_snapshot_reasoning_tokens, usage_snapshot_cost, ${firstUserMessagePreviewSelect} AS first_user_message_preview,
@@ -78,11 +78,11 @@ const insertChatSessionStatement = db.prepare(`
78
78
  INSERT INTO chat_sessions (
79
79
  id, project_id, title, mode, tool, model, variant, skills_json,
80
80
  agent_status, agent_log, streaming_response, target_kind, target_bundle_id, target_branch_snapshot,
81
- target_label_snapshot, claude_session_id, opencode_session_id,
81
+ target_label_snapshot, claude_session_id, codex_session_id, opencode_session_id,
82
82
  origin_spec_session_id, origin_spec_snapshot_id,
83
83
  external_provider, external_id, external_key, external_url, external_metadata_json
84
84
  )
85
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, NULL, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, ?, ?, ?, ?)
85
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, NULL, ?, ?, ?, ?, NULL, NULL, NULL, ?, ?, ?, ?, ?, ?, ?)
86
86
  `);
87
87
  const updateChatSessionModeStatement = db.prepare(`
88
88
  UPDATE chat_sessions
@@ -94,6 +94,11 @@ const updateChatSessionTitleStatement = db.prepare(`
94
94
  SET title = ?, updated_at = CURRENT_TIMESTAMP
95
95
  WHERE id = ?
96
96
  `);
97
+ const updateChatSessionTitleIfCurrentStatement = db.prepare(`
98
+ UPDATE chat_sessions
99
+ SET title = ?, updated_at = CURRENT_TIMESTAMP
100
+ WHERE id = ? AND title = ?
101
+ `);
97
102
  const updateChatSessionRunConfigStatement = db.prepare(`
98
103
  UPDATE chat_sessions
99
104
  SET tool = ?, model = ?, variant = ?, skills_json = ?, updated_at = CURRENT_TIMESTAMP
@@ -114,6 +119,11 @@ const updateOpencodeSessionIdStatement = db.prepare(`
114
119
  SET opencode_session_id = ?, updated_at = CURRENT_TIMESTAMP
115
120
  WHERE id = ?
116
121
  `);
122
+ const updateCodexSessionIdStatement = db.prepare(`
123
+ UPDATE chat_sessions
124
+ SET codex_session_id = ?, updated_at = CURRENT_TIMESTAMP
125
+ WHERE id = ?
126
+ `);
117
127
  const updateChatSessionUsageSnapshotStatement = db.prepare(`
118
128
  UPDATE chat_sessions
119
129
  SET usage_snapshot_context_window = ?,
@@ -229,6 +239,7 @@ const serializeChatSession = (row, options = {}) => {
229
239
  target_available: targetResolution.target_available,
230
240
  target_unavailable_reason: targetResolution.target_unavailable_reason,
231
241
  claude_session_id: row.claude_session_id,
242
+ codex_session_id: row.codex_session_id ?? null,
232
243
  opencode_session_id: row.opencode_session_id,
233
244
  origin_spec_session_id: row.origin_spec_session_id ?? null,
234
245
  origin_spec_snapshot_id: row.origin_spec_snapshot_id ?? null,
@@ -307,6 +318,7 @@ export const updateChatSessionMode = (chatSessionId, mode) => {
307
318
  export const updateChatSessionTitle = (chatSessionId, title) => {
308
319
  updateChatSessionTitleStatement.run(title.trim() || DEFAULT_CHAT_SESSION_TITLE, chatSessionId);
309
320
  };
321
+ export const updateChatSessionTitleIfCurrent = (chatSessionId, expectedTitle, title) => updateChatSessionTitleIfCurrentStatement.run(title.trim() || DEFAULT_CHAT_SESSION_TITLE, chatSessionId, expectedTitle).changes === 1;
310
322
  export const updateChatSessionRunConfig = ({ chatSessionId, tool, model, variant, skills, }) => {
311
323
  updateChatSessionRunConfigStatement.run(tool, model, variant, JSON.stringify(skills), chatSessionId);
312
324
  };
@@ -353,6 +365,10 @@ export const updateChatSessionResumeId = (chatSessionId, tool, sessionId) => {
353
365
  updateClaudeSessionIdStatement.run(sessionId, chatSessionId);
354
366
  return;
355
367
  }
368
+ if (tool === 'codex') {
369
+ updateCodexSessionIdStatement.run(sessionId, chatSessionId);
370
+ return;
371
+ }
356
372
  updateOpencodeSessionIdStatement.run(sessionId, chatSessionId);
357
373
  };
358
374
  export const updateChatSessionUsageSnapshot = (chatSessionId, usage) => {