@straiffi/archon 1.10.10 → 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 (215) hide show
  1. package/README.md +9 -2
  2. package/dist/client/assets/{ActivityView-CRkM5TeN.js → ActivityView-BvXSn9Jw.js} +1 -1
  3. package/dist/client/assets/GitHubActionsDialog-BPZg_Wy3.js +1 -0
  4. package/dist/client/assets/VerificationDialog-D3mOY3z9.js +4 -0
  5. package/dist/client/assets/{architectureDiagram-3BPJPVTR-u0PSZlNP.js → architectureDiagram-3BPJPVTR-Bj7m5nzx.js} +1 -1
  6. package/dist/client/assets/{blockDiagram-GPEHLZMM-DFXLHRIk.js → blockDiagram-GPEHLZMM-Dv4SrhZg.js} +1 -1
  7. package/dist/client/assets/{c4Diagram-AAUBKEIU-Dvic8tCt.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-t5CxhRXJ.js → chunk-2J33WTMH-oppoEflV.js} +1 -1
  10. package/dist/client/assets/{chunk-3OPIFGDE-YHT1dP8Q.js → chunk-3OPIFGDE-FoeHxEDL.js} +1 -1
  11. package/dist/client/assets/{chunk-5ZQYHXKU-DcxuI7lb.js → chunk-5ZQYHXKU-DFo7Hn8f.js} +1 -1
  12. package/dist/client/assets/{chunk-727SXJPM-D1F6DmrT.js → chunk-727SXJPM-BbM0ijwZ.js} +1 -1
  13. package/dist/client/assets/{chunk-AQP2D5EJ-BIx6Ohbk.js → chunk-AQP2D5EJ-hGswj21x.js} +1 -1
  14. package/dist/client/assets/{chunk-CSCIHK7Q-B355h6HA.js → chunk-CSCIHK7Q-k3Y3HBPl.js} +1 -1
  15. package/dist/client/assets/{chunk-KSCS5N6A-CLHGYOLQ.js → chunk-KSCS5N6A-D-fMWFHX.js} +1 -1
  16. package/dist/client/assets/{chunk-L5ZTLDWV-DFLYcMx8.js → chunk-L5ZTLDWV-Cp8034Xo.js} +1 -1
  17. package/dist/client/assets/{chunk-LZXEDZCA-DtljFujX.js → chunk-LZXEDZCA-DCmWwuZY.js} +2 -2
  18. package/dist/client/assets/{chunk-ND2GUHAM-CIuUQ86K.js → chunk-ND2GUHAM-CPxoYLrb.js} +1 -1
  19. package/dist/client/assets/{chunk-NZK2D7GU-CIwqlxek.js → chunk-NZK2D7GU-B1xsQ-Ge.js} +1 -1
  20. package/dist/client/assets/{chunk-O5CBEL6O-W42BEPu4.js → chunk-O5CBEL6O-CP_QLulv.js} +1 -1
  21. package/dist/client/assets/{chunk-WU5MYG2G-C_zuaNxV.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-UKfIUJTP.js → dagre-BM42HDAG-I60HgRr5.js} +1 -1
  25. package/dist/client/assets/{diagram-2AECGRRQ-Xn6yojqq.js → diagram-2AECGRRQ-DH7489lu.js} +1 -1
  26. package/dist/client/assets/{diagram-5GNKFQAL-BzpY1ZEl.js → diagram-5GNKFQAL-UG5kJveS.js} +1 -1
  27. package/dist/client/assets/{diagram-KO2AKTUF-Dyrvzvsg.js → diagram-KO2AKTUF-DLPd9cl-.js} +1 -1
  28. package/dist/client/assets/{diagram-LMA3HP47-AqImKwAr.js → diagram-LMA3HP47-gfoMHIE-.js} +1 -1
  29. package/dist/client/assets/{diagram-OG6HWLK6-CaQQ46mi.js → diagram-OG6HWLK6-D7zejHzo.js} +1 -1
  30. package/dist/client/assets/{erDiagram-TEJ5UH35-Dkw4Aa5u.js → erDiagram-TEJ5UH35-DB1R9rUd.js} +1 -1
  31. package/dist/client/assets/{flowDiagram-I6XJVG4X-CJTuGX9h.js → flowDiagram-I6XJVG4X-rSasRun9.js} +1 -1
  32. package/dist/client/assets/{ganttDiagram-6RSMTGT7-CidgOdS-.js → ganttDiagram-6RSMTGT7-ickt48MT.js} +1 -1
  33. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-Bj02mIQj.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-GwJWfo_r.js → infoDiagram-5YYISTIA-ClB9-yBC.js} +1 -1
  37. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-rbrlWbUn.js → ishikawaDiagram-YF4QCWOH-CyUX0IyE.js} +1 -1
  38. package/dist/client/assets/{journeyDiagram-JHISSGLW-BLi_uzQM.js → journeyDiagram-JHISSGLW-CvZv1SZ7.js} +1 -1
  39. package/dist/client/assets/{kanban-definition-UN3LZRKU-ynlywm-_.js → kanban-definition-UN3LZRKU-C3MgzQMY.js} +1 -1
  40. package/dist/client/assets/{line-BNyTZBB4.js → line-Dpj7mkeR.js} +1 -1
  41. package/dist/client/assets/{mermaid-parser.core-CzUOsZAD.js → mermaid-parser.core-Ezn4UHHp.js} +1 -1
  42. package/dist/client/assets/{mermaid.core-K0QR6SzN.js → mermaid.core-GVI7XZqR.js} +3 -3
  43. package/dist/client/assets/{mindmap-definition-RKZ34NQL-BKcgqXm0.js → mindmap-definition-RKZ34NQL-Bu2cgOo4.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-4H26LBE5-Bjx0lvDI.js → pieDiagram-4H26LBE5-_WS41t2_.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CmUlgyUv.js → quadrantDiagram-W4KKPZXB-Urvq-XqI.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-4Y6WPE33-Dj2mzg1y.js → requirementDiagram-4Y6WPE33-bkmWG0rM.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DC--H6qf.js → sankeyDiagram-5OEKKPKP-DI0SArVz.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-BkNrt6Ra.js → sequenceDiagram-3UESZ5HK-n7PKrHd3.js} +1 -1
  49. package/dist/client/assets/{stateDiagram-AJRCARHV-BuxxRu1Y.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-Db3pCVSp.js → timeline-definition-PNZ67QCA-BFr88_A9.js} +1 -1
  52. package/dist/client/assets/{vennDiagram-CIIHVFJN-BgBSGThQ.js → vennDiagram-CIIHVFJN-BNYs6tfr.js} +1 -1
  53. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-BJhPdjYS.js → wardleyDiagram-YWT4CUSO-CaGZd3fe.js} +1 -1
  54. package/dist/client/assets/{xychartDiagram-2RQKCTM6-BY4Ra0kX.js → xychartDiagram-2RQKCTM6-CMyDrx2a.js} +1 -1
  55. package/dist/client/index.html +2 -2
  56. package/dist/server/db.js +181 -28
  57. package/dist/server/db.js.map +1 -1
  58. package/dist/server/index.js +118 -40
  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 +22 -9
  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 +74 -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/projectTargets.js +10 -2
  153. package/dist/server/lib/projectTargets.js.map +1 -1
  154. package/dist/server/lib/promptSkills.js +1 -1
  155. package/dist/server/lib/promptSkills.js.map +1 -1
  156. package/dist/server/lib/run.js +32 -12
  157. package/dist/server/lib/run.js.map +1 -1
  158. package/dist/server/lib/runProcesses.js +13 -1
  159. package/dist/server/lib/runProcesses.js.map +1 -1
  160. package/dist/server/lib/runServices.js +5 -3
  161. package/dist/server/lib/runServices.js.map +1 -1
  162. package/dist/server/lib/runSessionLifecycle.js +10 -1
  163. package/dist/server/lib/runSessionLifecycle.js.map +1 -1
  164. package/dist/server/lib/runStatus.js +2 -1
  165. package/dist/server/lib/runStatus.js.map +1 -1
  166. package/dist/server/lib/serviceRunCleanup.js +70 -0
  167. package/dist/server/lib/serviceRunCleanup.js.map +1 -0
  168. package/dist/server/lib/serviceRuns.js +194 -12
  169. package/dist/server/lib/serviceRuns.js.map +1 -1
  170. package/dist/server/lib/skills.js +21 -4
  171. package/dist/server/lib/skills.js.map +1 -1
  172. package/dist/server/lib/specOperations.js +14 -10
  173. package/dist/server/lib/specOperations.js.map +1 -1
  174. package/dist/server/lib/specReviewOperations.js +20 -11
  175. package/dist/server/lib/specReviewOperations.js.map +1 -1
  176. package/dist/server/lib/specs.js +14 -4
  177. package/dist/server/lib/specs.js.map +1 -1
  178. package/dist/server/lib/ticketAutomationCommit.js +23 -7
  179. package/dist/server/lib/ticketAutomationCommit.js.map +1 -1
  180. package/dist/server/lib/ticketFollowUpOperations.js +7 -0
  181. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  182. package/dist/server/lib/ticketRunOperations.js +11 -1
  183. package/dist/server/lib/ticketRunOperations.js.map +1 -1
  184. package/dist/server/lib/ticketSettingsOperations.js +4 -1
  185. package/dist/server/lib/ticketSettingsOperations.js.map +1 -1
  186. package/dist/server/lib/toolUpgrade.js +1 -0
  187. package/dist/server/lib/toolUpgrade.js.map +1 -1
  188. package/dist/server/lib/transcriptRuns.js +4 -1
  189. package/dist/server/lib/transcriptRuns.js.map +1 -1
  190. package/dist/server/lib/types.js.map +1 -1
  191. package/dist/server/workers/build.js +9 -4
  192. package/dist/server/workers/build.js.map +1 -1
  193. package/dist/server/workers/chat.js +55 -11
  194. package/dist/server/workers/chat.js.map +1 -1
  195. package/dist/server/workers/followUp.js +6 -1
  196. package/dist/server/workers/followUp.js.map +1 -1
  197. package/dist/server/workers/plan.js +235 -68
  198. package/dist/server/workers/plan.js.map +1 -1
  199. package/dist/server/workers/planFollowUp.js +11 -4
  200. package/dist/server/workers/planFollowUp.js.map +1 -1
  201. package/dist/server/workers/review.js +15 -18
  202. package/dist/server/workers/review.js.map +1 -1
  203. package/dist/server/workers/specReview.js +7 -7
  204. package/dist/server/workers/specReview.js.map +1 -1
  205. package/dist/server/workers/specSession.js +8 -12
  206. package/dist/server/workers/specSession.js.map +1 -1
  207. package/package.json +1 -1
  208. package/dist/client/assets/GitHubActionsDialog-KFUiR00H.js +0 -1
  209. package/dist/client/assets/VerificationDialog-BIDttgiW.js +0 -4
  210. package/dist/client/assets/channel-Dhv_uSKx.js +0 -1
  211. package/dist/client/assets/classDiagram-4FO5ZUOK-9XKvSSLq.js +0 -1
  212. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Dbr5_49Y.js +0 -1
  213. package/dist/client/assets/index-ClRB9YWJ.css +0 -2
  214. package/dist/client/assets/index-DBMdsTvy.js +0 -276
  215. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-Cyo85GPN.js +0 -1
@@ -4,6 +4,7 @@ import { randomUUID } from 'node:crypto';
4
4
  import { captureHostServiceProcessIdentity, cleanupHostServiceProcess, isHostServiceProcessIdentity } from './hostServiceRecovery.js';
5
5
  import { createExecutionProfileSelection, executionProfileSelectionMetadata, validateExecutionProfileSelection, } from './executionRunAuthority.js';
6
6
  import { appendLifecycleEvent, createExecutionRun, getExecutionRun, transitionExecutionRun } from './executionRuns.js';
7
+ import { appendExecutionEnvironmentEvent, getExecutionEnvironment, releaseExecutionRunFromEnvironment, requestExecutionEnvironmentRetirement, } from './executionEnvironments.js';
7
8
  const MAX_SERVICE_SNAPSHOT_BYTES = 16 * 1024;
8
9
  export const hasActiveProjectServiceRun = (projectId) => {
9
10
  if (projectId === undefined) {
@@ -11,6 +12,57 @@ export const hasActiveProjectServiceRun = (projectId) => {
11
12
  }
12
13
  return Boolean(db.prepare('SELECT 1 FROM active_project_service_authorities WHERE project_id = ? LIMIT 1').get(projectId));
13
14
  };
15
+ export const getActiveProjectServiceAuthority = (projectId) => {
16
+ try {
17
+ return db.prepare(`
18
+ SELECT active.execution_run_id, run.source_kind, details.target_kind,
19
+ COALESCE(details.provider_kind, environment.provider_kind) AS provider_kind,
20
+ details.cleanup_attempts, details.cleanup_retry_at, details.cleanup_error_message,
21
+ details.cleanup_claim_id, COALESCE(details.environment_id, binding.environment_id) AS environment_id,
22
+ COALESCE(details.environment_revision, binding.environment_revision) AS environment_revision
23
+ FROM active_project_service_authorities active
24
+ JOIN execution_runs run ON run.id = active.execution_run_id
25
+ LEFT JOIN service_run_details details ON details.execution_run_id = active.execution_run_id
26
+ LEFT JOIN execution_environment_run_bindings binding
27
+ ON binding.execution_run_id = active.execution_run_id AND binding.project_id = active.project_id
28
+ AND binding.relationship = 'execution' AND binding.released_at IS NULL
29
+ LEFT JOIN execution_environments environment
30
+ ON environment.id = binding.environment_id AND environment.project_id = binding.project_id
31
+ WHERE active.project_id = ?
32
+ LIMIT 1
33
+ `).get(projectId) ?? null;
34
+ }
35
+ catch {
36
+ const legacy = db.prepare(`SELECT active.execution_run_id, run.source_kind, details.target_kind, details.provider_kind
37
+ FROM active_project_service_authorities active
38
+ JOIN execution_runs run ON run.id = active.execution_run_id
39
+ LEFT JOIN service_run_details details ON details.execution_run_id = active.execution_run_id
40
+ WHERE active.project_id = ? LIMIT 1`).get(projectId);
41
+ return legacy ? {
42
+ ...legacy,
43
+ cleanup_attempts: 0,
44
+ cleanup_retry_at: null,
45
+ cleanup_error_message: 'Stored cleanup details are incomplete and cannot be verified automatically.',
46
+ cleanup_claim_id: null,
47
+ environment_id: null,
48
+ environment_revision: null,
49
+ } : null;
50
+ }
51
+ };
52
+ export const getProjectServiceCleanupStatus = (projectId) => {
53
+ const authority = getActiveProjectServiceAuthority(projectId);
54
+ if (!authority) {
55
+ return null;
56
+ }
57
+ return {
58
+ execution_run_id: authority.execution_run_id,
59
+ provider: authority.provider_kind,
60
+ attempts: authority.cleanup_attempts,
61
+ retry_at: authority.cleanup_retry_at,
62
+ error: authority.cleanup_error_message,
63
+ can_force_release: authority.cleanup_claim_id === null,
64
+ };
65
+ };
14
66
  const serializeBounded = (value, label) => {
15
67
  const serialized = JSON.stringify(value);
16
68
  if (Buffer.byteLength(serialized, 'utf8') > MAX_SERVICE_SNAPSHOT_BYTES) {
@@ -196,7 +248,20 @@ export const completeServiceRun = (input) => db.transaction(() => {
196
248
  `).run(input.executionRunId, input.projectId);
197
249
  return transitioned;
198
250
  })();
199
- export const recordServiceRunReleaseFailure = (input) => {
251
+ export const recordServiceRunFinalizationIntent = (input) => {
252
+ const updated = db.prepare(`
253
+ UPDATE service_run_details
254
+ SET intended_status = COALESCE(intended_status, ?),
255
+ intended_event_type = COALESCE(intended_event_type, ?),
256
+ intended_message = COALESCE(intended_message, ?),
257
+ updated_at = CURRENT_TIMESTAMP
258
+ WHERE project_id = ? AND execution_run_id = ? AND completed_at IS NULL
259
+ `).run(input.intendedStatus, input.intendedEventType, input.intendedMessage ?? null, input.projectId, input.executionRunId);
260
+ if (updated.changes !== 1) {
261
+ throw new Error('Active durable service run was not found');
262
+ }
263
+ };
264
+ export const recordServiceRunReleaseFailure = (input) => db.transaction(() => {
200
265
  const current = getExecutionRun(input.projectId, input.executionRunId);
201
266
  if (current && (current.kind !== 'service' || !getServiceRunDetails(input.projectId, input.executionRunId))) {
202
267
  throw new Error('Durable service run was not found');
@@ -209,6 +274,11 @@ export const recordServiceRunReleaseFailure = (input) => {
209
274
  intended_event_type: input.intendedEventType,
210
275
  lease_retained: true,
211
276
  };
277
+ recordServiceRunFinalizationIntent(input);
278
+ db.prepare(`UPDATE service_run_details
279
+ SET cleanup_error_message = ?, cleanup_retry_at = datetime('now', '+30 seconds'), updated_at = CURRENT_TIMESTAMP
280
+ WHERE project_id = ? AND execution_run_id = ? AND completed_at IS NULL`)
281
+ .run(input.message.slice(0, 4000), input.projectId, input.executionRunId);
212
282
  if (current.status === 'waiting' && current.domain_status === 'environment_release_pending') {
213
283
  appendLifecycleEvent({
214
284
  projectId: input.projectId,
@@ -229,7 +299,7 @@ export const recordServiceRunReleaseFailure = (input) => {
229
299
  eventMessage: input.message,
230
300
  eventMetadata: metadata,
231
301
  });
232
- };
302
+ }).immediate();
233
303
  export const getServiceRunDetails = (projectId, executionRunId) => {
234
304
  const row = db.prepare(`
235
305
  SELECT * FROM service_run_details WHERE project_id = ? AND execution_run_id = ?
@@ -288,7 +358,7 @@ export const prepareHostServiceProcessLaunch = (projectId, executionRunId) => {
288
358
  update(identity);
289
359
  };
290
360
  };
291
- export const retryInterruptedHostServiceRun = (projectId, executionRunId) => db.transaction(() => {
361
+ export const retryInterruptedHostServiceRun = (projectId, executionRunId) => {
292
362
  const details = getServiceRunDetails(projectId, executionRunId);
293
363
  if (!details || details.completed_at !== null || (details.provider_kind !== null && details.provider_kind !== 'host')) {
294
364
  return false;
@@ -358,13 +428,17 @@ export const retryInterruptedHostServiceRun = (projectId, executionRunId) => db.
358
428
  }
359
429
  return false;
360
430
  }
431
+ const finalDetails = getServiceRunDetails(projectId, executionRunId);
361
432
  completeServiceRun({
362
- projectId, executionRunId, status: 'interrupted', code: 'server_restarted',
363
- message: 'The server restarted; all recorded host service process sessions were verifiably cleaned up.',
364
- eventType: 'service_run_interrupted',
433
+ projectId,
434
+ executionRunId,
435
+ status: finalDetails.intended_status ?? 'interrupted',
436
+ code: finalDetails.intended_status === 'failed' ? 'service_run_failed' : 'server_restarted',
437
+ message: finalDetails.intended_message ?? 'The server restarted; all recorded host service process sessions were verifiably cleaned up.',
438
+ eventType: finalDetails.intended_event_type ?? 'service_run_interrupted',
365
439
  });
366
440
  return true;
367
- }).immediate();
441
+ };
368
442
  // The existing Stop action can use this only after finding no live in-memory owner.
369
443
  export const retryInterruptedHostServiceRunForContext = (contextKey, options = {}) => {
370
444
  const row = db.prepare(`SELECT details.project_id, details.execution_run_id
@@ -386,7 +460,7 @@ export const retryInterruptedHostServiceRunForContext = (contextKey, options = {
386
460
  }
387
461
  return true;
388
462
  };
389
- export const reconcileInterruptedServiceRuns = () => db.transaction(() => {
463
+ export const reconcileInterruptedServiceRuns = () => {
390
464
  // Neither a missing binding nor a terminal envelope proves that service processes stopped.
391
465
  // Docker requires release evidence for the exact recorded environment.
392
466
  const rows = db.prepare(`
@@ -438,13 +512,14 @@ export const reconcileInterruptedServiceRuns = () => db.transaction(() => {
438
512
  }
439
513
  for (const row of rows) {
440
514
  const isTerminal = ['completed', 'failed', 'cancelled', 'interrupted'].includes(row.status);
515
+ const details = getServiceRunDetails(row.project_id, row.execution_run_id);
441
516
  completeServiceRun({
442
517
  projectId: row.project_id,
443
518
  executionRunId: row.execution_run_id,
444
- status: 'interrupted',
445
- code: 'server_restarted',
446
- message: 'The server restarted while this service run was active. Docker Sandbox interruption applies to the whole environment and every attached service.',
447
- eventType: 'service_run_interrupted',
519
+ status: details.intended_status ?? 'interrupted',
520
+ code: details.intended_status === 'failed' ? 'service_run_failed' : 'server_restarted',
521
+ message: details.intended_message ?? 'The server restarted while this service run was active. Docker Sandbox interruption applies to the whole environment and every attached service.',
522
+ eventType: details.intended_event_type ?? 'service_run_interrupted',
448
523
  });
449
524
  if (isTerminal) {
450
525
  repaired += 1;
@@ -454,5 +529,112 @@ export const reconcileInterruptedServiceRuns = () => db.transaction(() => {
454
529
  }
455
530
  }
456
531
  return { interrupted, repaired };
532
+ };
533
+ export const claimProjectServiceCleanup = (projectId, ignoreRetryAt = false) => db.transaction(() => {
534
+ const authority = getActiveProjectServiceAuthority(projectId);
535
+ if (!authority) {
536
+ return null;
537
+ }
538
+ const claimId = randomUUID();
539
+ if (authority.provider_kind === 'docker_sandbox') {
540
+ db.prepare(`UPDATE service_run_details
541
+ SET provider_kind = 'docker_sandbox', environment_id = ?, environment_revision = ?,
542
+ interruption_scope = 'whole_environment', updated_at = CURRENT_TIMESTAMP
543
+ WHERE project_id = ? AND execution_run_id = ? AND completed_at IS NULL AND provider_kind IS NULL`)
544
+ .run(authority.environment_id, authority.environment_revision, projectId, authority.execution_run_id);
545
+ }
546
+ const updated = db.prepare(`UPDATE service_run_details
547
+ SET cleanup_claim_id = ?, cleanup_claimed_at = CURRENT_TIMESTAMP,
548
+ cleanup_attempts = cleanup_attempts + 1, cleanup_retry_at = NULL, updated_at = CURRENT_TIMESTAMP
549
+ WHERE project_id = ? AND execution_run_id = ? AND completed_at IS NULL
550
+ AND (cleanup_claim_id IS NULL OR cleanup_claimed_at < datetime('now', '-5 minutes'))
551
+ AND (? = 1 OR cleanup_retry_at IS NULL OR cleanup_retry_at <= CURRENT_TIMESTAMP)`)
552
+ .run(claimId, projectId, authority.execution_run_id, ignoreRetryAt ? 1 : 0);
553
+ return updated.changes === 1 ? { ...authority, claimId } : null;
554
+ }).immediate();
555
+ export const finishProjectServiceCleanupAttempt = (projectId, executionRunId, claimId) => {
556
+ db.prepare(`UPDATE service_run_details
557
+ SET cleanup_claim_id = NULL, cleanup_claimed_at = NULL, cleanup_retry_at = NULL,
558
+ cleanup_error_message = NULL, updated_at = CURRENT_TIMESTAMP
559
+ WHERE project_id = ? AND execution_run_id = ? AND cleanup_claim_id = ?`)
560
+ .run(projectId, executionRunId, claimId);
561
+ };
562
+ export const failProjectServiceCleanupAttempt = (projectId, executionRunId, claimId, message) => {
563
+ const details = getServiceRunDetails(projectId, executionRunId);
564
+ const delaySeconds = Math.min(300, 15 * (2 ** Math.max(0, (details?.cleanup_attempts ?? 1) - 1)));
565
+ db.prepare(`UPDATE service_run_details
566
+ SET cleanup_claim_id = NULL, cleanup_claimed_at = NULL,
567
+ cleanup_retry_at = datetime('now', ?), cleanup_error_message = ?, updated_at = CURRENT_TIMESTAMP
568
+ WHERE project_id = ? AND execution_run_id = ? AND cleanup_claim_id = ?`)
569
+ .run(`+${delaySeconds} seconds`, message.slice(0, 4000), projectId, executionRunId, claimId);
570
+ };
571
+ export const forceReleaseProjectServiceAuthority = (projectId) => db.transaction(() => {
572
+ const authority = getActiveProjectServiceAuthority(projectId);
573
+ if (!authority) {
574
+ return false;
575
+ }
576
+ if (authority.cleanup_claim_id) {
577
+ throw new Error('Service cleanup is already in progress. Wait for it to finish before force releasing the lock.');
578
+ }
579
+ const message = 'Service cleanup authority was force released without positive process termination proof.';
580
+ const bindings = db.prepare(`SELECT environment_id FROM execution_environment_run_bindings
581
+ WHERE project_id = ? AND execution_run_id = ? AND relationship = 'execution' AND released_at IS NULL`)
582
+ .all(projectId, authority.execution_run_id);
583
+ for (const binding of bindings) {
584
+ const environment = getExecutionEnvironment(projectId, binding.environment_id);
585
+ if (!environment) {
586
+ db.prepare(`UPDATE execution_environments
587
+ SET retirement_requested_at = COALESCE(retirement_requested_at, CURRENT_TIMESTAMP),
588
+ lifecycle_state = CASE
589
+ WHEN lifecycle_state IN ('retired', 'retiring', 'cleanup_pending') THEN lifecycle_state
590
+ ELSE 'retiring'
591
+ END,
592
+ updated_at = CURRENT_TIMESTAMP
593
+ WHERE project_id = ? AND id = ?`)
594
+ .run(projectId, binding.environment_id);
595
+ db.prepare(`UPDATE execution_environment_run_bindings SET released_at = CURRENT_TIMESTAMP
596
+ WHERE project_id = ? AND environment_id = ? AND execution_run_id = ?
597
+ AND relationship = 'execution' AND released_at IS NULL`)
598
+ .run(projectId, binding.environment_id, authority.execution_run_id);
599
+ continue;
600
+ }
601
+ requestExecutionEnvironmentRetirement({ projectId, environmentId: binding.environment_id });
602
+ appendExecutionEnvironmentEvent({
603
+ projectId,
604
+ environmentId: binding.environment_id,
605
+ eventType: 'execution_run_force_released',
606
+ fromState: environment.lifecycle_state,
607
+ toState: environment.lifecycle_state,
608
+ message,
609
+ metadata: { executionRunId: authority.execution_run_id, forceReleased: true },
610
+ });
611
+ releaseExecutionRunFromEnvironment({
612
+ projectId,
613
+ environmentId: binding.environment_id,
614
+ executionRunId: authority.execution_run_id,
615
+ relationship: 'execution',
616
+ });
617
+ }
618
+ appendLifecycleEvent({
619
+ projectId,
620
+ runId: authority.execution_run_id,
621
+ eventType: 'service_cleanup_abandoned',
622
+ message,
623
+ metadata: { force_released: true, provider_kind: authority.provider_kind },
624
+ });
625
+ db.prepare(`UPDATE service_run_details SET force_released_at = CURRENT_TIMESTAMP,
626
+ cleanup_claim_id = NULL, cleanup_claimed_at = NULL, cleanup_retry_at = NULL,
627
+ cleanup_error_message = ?, updated_at = CURRENT_TIMESTAMP
628
+ WHERE project_id = ? AND execution_run_id = ? AND completed_at IS NULL`)
629
+ .run(message, projectId, authority.execution_run_id);
630
+ completeServiceRun({
631
+ projectId,
632
+ executionRunId: authority.execution_run_id,
633
+ status: 'interrupted',
634
+ code: 'service_cleanup_abandoned',
635
+ message,
636
+ eventType: 'service_run_interrupted',
637
+ });
638
+ return true;
457
639
  }).immediate();
458
640
  //# sourceMappingURL=serviceRuns.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serviceRuns.js","sourceRoot":"","sources":["../../../server/lib/serviceRuns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serviceRuns.js","sourceRoot":"","sources":["../../../server/lib/serviceRuns.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { existsSync, readFileSync, readdirSync, statSync } from 'fs';
2
2
  import { join } from 'path';
3
3
  import { resolveOpencodeSkillRoots } from './runtimePaths.js';
4
+ import { discoverCodexSkills } from './codexDiscovery.js';
4
5
  const CACHE_TTL_MS = 30_000;
5
6
  const skillCache = new Map();
6
7
  const readDirectoryNames = (directoryPath) => {
@@ -101,23 +102,39 @@ export const normalizeSkillNames = (value) => {
101
102
  .filter(Boolean)
102
103
  .filter((entry, index, values) => values.indexOf(entry) === index);
103
104
  };
104
- export const getDiscoveredSkills = async (tool, options = {}) => {
105
+ export const getSkillDiscoveryResult = async (tool, options = {}) => {
106
+ if (tool === 'codex') {
107
+ if (!options.projectId) {
108
+ return { status: 'unavailable', skills: [] };
109
+ }
110
+ try {
111
+ const { discoverProjectCodexCatalog } = await import('./codexCatalogDiscoveryExecutionEnvironment.js');
112
+ return await discoverProjectCodexCatalog(options.projectId, async (discoveryOptions) => {
113
+ const result = await discoverCodexSkills(discoveryOptions);
114
+ return { status: result.status, skills: result.items };
115
+ });
116
+ }
117
+ catch {
118
+ return { status: 'unavailable', skills: [] };
119
+ }
120
+ }
105
121
  if (tool !== 'opencode') {
106
- return [];
122
+ return { status: 'unavailable', skills: [] };
107
123
  }
108
124
  const projectPath = options.projectPath ?? null;
109
125
  const cacheKey = `${tool}:${projectPath ?? ''}`;
110
126
  const cached = skillCache.get(cacheKey);
111
127
  if (cached && Date.now() - cached.timestamp < CACHE_TTL_MS) {
112
- return cached.skills;
128
+ return { status: 'available', skills: cached.skills };
113
129
  }
114
130
  const skills = discoverOpencodeSkills(projectPath);
115
131
  skillCache.set(cacheKey, {
116
132
  skills,
117
133
  timestamp: Date.now(),
118
134
  });
119
- return skills;
135
+ return { status: 'available', skills };
120
136
  };
137
+ export const getDiscoveredSkills = async (tool, options = {}) => (await getSkillDiscoveryResult(tool, options)).skills;
121
138
  export const clearSkillCache = () => {
122
139
  skillCache.clear();
123
140
  };
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../server/lib/skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../server/lib/skills.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { resolveDraftSpecAttachmentsForSession } from './attachments.js';
2
2
  import { stopSpecAgent } from './agent.js';
3
3
  import { parseIncomingExternalSource } from './externalSource.js';
4
4
  import { normalizeClaudeModelId, normalizeModelId } from './models.js';
5
+ import { agentSupportsVariants, normalizeAgentModelId } from './agentCatalog.js';
5
6
  import { getProjectById } from './projects.js';
6
7
  import { createDeferredRealtimeBroadcaster } from './realtime.js';
7
8
  import { normalizeSkillNames } from './skills.js';
@@ -19,6 +20,7 @@ import { resolveInitialSessionTarget, resolveSessionTargetForExecution } from '.
19
20
  import { createExecutionProfileSelectionMetadata, executionProfileSelectionMetadata, validateExecutionProfileSelection } from './executionRunAuthority.js';
20
21
  import { resolveHelperContinuationModelConfig, resolveHelperModelConfig } from './agentModelConfig.js';
21
22
  import { ConversationResumeUnavailableError, resolveConversationResume, SPEC_RESUME_INSTRUCTION } from './conversationResume.js';
23
+ import { isAgentExecutable, isSupportedAgent } from './agentCatalog.js';
22
24
  const getPayloadValue = (payload, key) => {
23
25
  return payload?.[key];
24
26
  };
@@ -30,10 +32,10 @@ const getProjectSpecSession = (projectId, specSessionId) => {
30
32
  return specSession;
31
33
  };
32
34
  const resolveSpecTool = (value) => {
33
- if (value === 'claude') {
34
- return 'claude';
35
+ if (value === undefined) {
36
+ return 'opencode';
35
37
  }
36
- return 'opencode';
38
+ return isSupportedAgent(value) ? value : null;
37
39
  };
38
40
  export const resolveSpecMode = (value) => {
39
41
  return value === 'grill' ? 'grill' : 'standard';
@@ -44,6 +46,9 @@ export const createProjectSpecSession = ({ projectId, payload, broadcaster, }) =
44
46
  return { ok: false, status: 404, error: 'Not found' };
45
47
  }
46
48
  const tool = resolveSpecTool(getPayloadValue(payload, 'tool'));
49
+ if (!tool) {
50
+ return { ok: false, status: 400, error: 'tool must be a supported agent' };
51
+ }
47
52
  const mode = resolveSpecMode(getPayloadValue(payload, 'mode'));
48
53
  const requestedModel = getPayloadValue(payload, 'model');
49
54
  const helperConfig = resolveHelperModelConfig({
@@ -55,15 +60,11 @@ export const createProjectSpecSession = ({ projectId, payload, broadcaster, }) =
55
60
  preferWorkflow: true,
56
61
  });
57
62
  const rawModel = helperConfig.model;
58
- const normalizedModel = tool === 'opencode'
59
- ? normalizeModelId(rawModel) || null
60
- : tool === 'claude'
61
- ? normalizeClaudeModelId(rawModel) || null
62
- : null;
63
+ const normalizedModel = normalizeAgentModelId(tool, rawModel) || null;
63
64
  const requestedVariant = getPayloadValue(payload, 'variant');
64
- const normalizedVariant = tool === 'opencode' && normalizedModel && typeof requestedVariant === 'string'
65
+ const normalizedVariant = agentSupportsVariants(tool) && normalizedModel && typeof requestedVariant === 'string'
65
66
  ? requestedVariant.trim() || null
66
- : tool === 'opencode' && normalizedModel
67
+ : agentSupportsVariants(tool) && normalizedModel
67
68
  ? helperConfig.variant ?? null
68
69
  : null;
69
70
  const requestedTitle = getPayloadValue(payload, 'title');
@@ -138,6 +139,9 @@ export const submitProjectSpecSessionMessage = ({ projectId, specSessionId, payl
138
139
  const requestedModel = getPayloadValue(payload, 'model');
139
140
  const requestedVariant = getPayloadValue(payload, 'variant');
140
141
  const resolvedTool = retryRunConfig?.tool ?? existing.tool;
142
+ if (!isAgentExecutable(resolvedTool)) {
143
+ return { ok: false, status: 409, error: `${resolvedTool} execution is not available` };
144
+ }
141
145
  const helperConfig = resolveHelperContinuationModelConfig({
142
146
  helperModelsJson: project.helper_models_json,
143
147
  agent: resolvedTool,
@@ -1 +1 @@
1
- {"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAA;AAEjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,eAAe,EAAE,gCAAgC,EAAE,qCAAqC,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,kCAAkC,EAAE,MAAM,YAAY,CAAA;AACnU,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAElE,OAAO,EAAE,gCAAgC,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACpF,OAAO,EAAE,6BAA6B,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AACzH,OAAO,EAAE,2BAA2B,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAA;AACnG,OAAO,EAAE,uCAAuC,EAAE,iCAAiC,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAA;AAC1J,OAAO,EAAE,oCAAoC,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACtG,OAAO,EAAE,kCAAkC,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAYhI,MAAM,eAAe,GAAG,CAAC,OAA6B,EAAE,GAAW,EAAE,EAAE;IACrE,OAAO,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,SAAiB,EAAE,aAAqB,EAAE,EAAE;IACzE,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5E,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACzD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,KAAc,EAAY,EAAE;IACnD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAAmB,EAAE;IACjE,OAAO,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,SAAS,EACT,OAAO,EACP,WAAW,GAKZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC9D,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC9D,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,YAAY,GAAG,wBAAwB,CAAC;QAC5C,gBAAgB,EAAE,OAAO,CAAC,kBAAkB;QAC5C,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,OAAO,cAAc,KAAK,QAAQ;YAC1C,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,CAAC,OAAO,EAAE,SAAS,CAAkB,EAAE;YAC1F,CAAC,CAAC,SAAS;QACb,cAAc,EAAE,IAAI;KACrB,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAA;IACnC,MAAM,eAAe,GAAG,IAAI,KAAK,UAAU;QACzC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,IAAI;QACpC,CAAC,CAAC,IAAI,KAAK,QAAQ;YACjB,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,IAAI;YAC1C,CAAC,CAAC,IAAI,CAAA;IACV,MAAM,gBAAgB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC5D,MAAM,iBAAiB,GAAG,IAAI,KAAK,UAAU,IAAI,eAAe,IAAI,OAAO,gBAAgB,KAAK,QAAQ;QACtG,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,IAAI;QACjC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,eAAe;YACtC,CAAC,CAAC,YAAY,CAAC,OAAO,IAAI,IAAI;YAC9B,CAAC,CAAC,IAAI,CAAA;IACV,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,KAAK,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC7E,MAAM,WAAW,GAAG,iBAAiB,CAAC;QACpC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,IAAI;QACJ,IAAI;QACJ,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,mBAAmB,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/D,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,cAAc,EAAE,2BAA2B,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QACxF,MAAM,EAAE,2BAA2B,CAAC,OAAO,CAAC,EAAE,CAAC;KAChD,CAAC,CAAA;IAEF,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAA;IACrD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;AACtD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAC3C,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,GAMZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IACD,IAAI,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,gEAAgE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC7H,CAAC;IAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5G,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAA;IACxD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAC9C,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,EACX,UAAU,EACV,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,kBAAkB,GAenB,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IACD,MAAM,cAAc,GAAG,gCAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAC1F,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAA;IACxH,CAAC;IACD,IAAI,CAAC,kBAAkB,IAAI,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,gEAAgE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC7H,CAAC;IAED,MAAM,oBAAoB,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IACpE,MAAM,WAAW,GAAG,OAAO,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAE/F,MAAM,sBAAsB,GAAG,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;IACzE,IAAI,sBAAsB,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC;QACxJ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAA;IACzF,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;QACzD,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACnE,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,mBAAmB,GAAG,mBAAmB;QAC7C,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,WAAW,EAAE,mBAAmB,EAAE;QACzD,CAAC,CAAC,qCAAqC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,CAAA;IACxF,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC;QAC5B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE,CAAA;IACrE,CAAC;IACD,IAAI,CAAC,WAAW,IAAI,mBAAmB,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAA;IACvF,CAAC;IAED,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,gBAAgB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC5D,MAAM,YAAY,GAAG,cAAc,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAA;IAC1D,MAAM,YAAY,GAAG,oCAAoC,CAAC;QACxD,gBAAgB,EAAE,OAAO,CAAC,kBAAkB;QAC5C,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;QAC9D,cAAc;QACd,gBAAgB;QAChB,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAAC;KAC9D,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,cAAc;QAC7B,CAAC,CAAC,cAAc,CAAC,KAAK;QACtB,CAAC,CAAC,YAAY,CAAC,KAAK,CAAA;IACtB,MAAM,eAAe,GAAG,cAAc;QACpC,CAAC,CAAC,cAAc,CAAC,OAAO;QACxB,CAAC,CAAC,YAAY,CAAC,OAAO,IAAI,IAAI,CAAA;IAChC,MAAM,cAAc,GAAG,cAAc,EAAE,MAAM,IAAI,mBAAmB,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;IACxG,MAAM,uBAAuB,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAA;IAC7G,MAAM,+BAA+B,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;WACpE,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IACxE,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,WAAW,CAAC,CAAA;IACvE,IAAI,gBAAkC,CAAA;IACtC,IAAI,CAAC;QACH,gBAAgB,GAAG,2BAA2B,CAAC,WAAW,CAAC,EAAE;YAC3D,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;gBACtD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,QAAQ;gBACtB,eAAe,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE;gBACjF,KAAK,EAAE;oBACL,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;4BAC9B,UAAU,EAAE,cAAuB;4BACnC,QAAQ,EAAE,wBAAwB;4BAClC,YAAY,EAAE,SAAkB;4BAChC,cAAc,EAAE,EAAE,UAAU,EAAE,cAAuB,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE;yBAC/E,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACR,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;4BAC7B,UAAU,EAAE,eAAwB;4BACpC,QAAQ,EAAE,uBAAuB;4BACjC,YAAY,EAAE,SAAkB;4BAChC,cAAc,EAAE,EAAE,UAAU,EAAE,cAAuB,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE;yBAC/E,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;iBACT;gBACD,WAAW,EAAE,UAAU,EAAE,SAAS;gBAClC,WAAW,EAAE,UAAU,EAAE,iBAAiB;gBAC1C,YAAY,EAAE,UAAU,EAAE,gBAAgB;gBAC1C,QAAQ,EAAE;oBACR,UAAU,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;oBACrC,UAAU,EAAE,YAAY;oBACxB,WAAW,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;oBAC3D,aAAa,EAAE,eAAe;oBAC9B,YAAY,EAAE,cAAc;oBAC5B,uBAAuB,EAAE,uBAAuB,IAAI,MAAM;oBAC1D,sBAAsB,EAAE,mBAAmB,CAAC,WAAW,CAAC,MAAM;oBAC9D,GAAG,uCAAuC,CAAC,OAAO,CAAC,EAAE,CAAC;iBACvD;gBACD,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,mBAAmB;aAC5E,CAAC,CAAA;YACF,kCAAkC,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;YACrD,kBAAkB,EAAE,MAAM,EAAE,CAAA;YAC5B,MAAM,OAAO,GAAqB;gBAChC,KAAK,EAAE,YAAY,CAAC,EAAE;gBACtB,aAAa,EAAE,YAAY,CAAC,cAAc;gBAC1C,SAAS,EAAE,YAAY,CAAC,UAAU;gBAClC,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAA;YACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC;gBACtC,aAAa,EAAE,QAAQ,CAAC,EAAE;gBAC1B,WAAW;gBACX,WAAW,EAAE,mBAAmB,CAAC,WAAW;gBAC5C,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;gBACrD,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,cAAc;gBACpB,EAAE,EAAE,gBAAgB,CAAC,WAAW;gBAChC,gBAAgB,EAAE,OAAO;gBAC3B,wBAAwB;gBACxB,oBAAoB;gBACpB,mBAAmB;gBACnB,eAAe,EAAE,uBAAuB;gBACxC,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;aAClC,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;YAC1D,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAA;QAChC,gBAAgB,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAgB,CAAC,OAAO,EAAE,CAAA;QAC1B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAA;QAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAC7I,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAA;IACjH,CAAC;IAED,IAAI,+BAA+B,EAAE,CAAC;QACpC,wBAAwB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;QAC9D,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAA;AACzF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,EAC/C,SAAS,EACT,aAAa,EACb,WAAW,GAKZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAClF,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IACD,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAuC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IACpG,CAAC;IACD,IAAI,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,8DAA8D,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC3H,CAAC;IACD,MAAM,cAAc,GAAG,gCAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAC1F,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjF,CAAC;IACD,MAAM,WAAW,GAAG,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAChE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,sCAAsC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IACnG,CAAC;IAED,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACH,MAAM,GAAG,yBAAyB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IACtG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,KAAK,YAAY,kCAAkC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YACvE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8CAA8C;YAC9F,KAAK,EAAE,QAAQ;SAChB,CAAA;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAuC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IACpG,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAA;IAC9B,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;YAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,uDAAuD,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;QACpH,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC7B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,gDAAgD,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC7G,CAAC;IACD,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAA;IAChD,MAAM,eAAe,GAAG,iCAAiC,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAEtF,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,WAAW,CAAC,CAAA;IACvE,IAAI,CAAC;QACH,2BAA2B,CAAC,WAAW,CAAC,EAAE;YACxC,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC;gBAC/D,MAAM,IAAI,kCAAkC,CAAC,yDAAyD,CAAC,CAAA;YACzG,CAAC;YACD,WAAW,CAAC,oBAAoB,CAAC;gBAC/B,SAAS;gBACT,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,kBAAkB;gBAC7B,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,aAAa,EAAE;aAClF,CAAC,CAAA;YACF,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;gBAClD,SAAS;gBACT,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,QAAQ;gBACtB,eAAe,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE;gBACjF,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;wBAC/B,UAAU,EAAE,eAAe;wBAC3B,QAAQ,EAAE,MAAM,CAAC,eAAe;wBAChC,YAAY,EAAE,SAAS;wBACvB,cAAc,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE;qBACtE,CAAC,CAAC,CAAC,CAAC,EAAE;gBACP,WAAW,EAAE,MAAM;gBACnB,YAAY,EAAE,WAAW;gBACzB,QAAQ,EAAE;oBACR,UAAU,EAAE,UAAU;oBACtB,UAAU,EAAE,MAAM,CAAC,IAAI;oBACvB,WAAW,EAAE,MAAM,CAAC,KAAK;oBACzB,aAAa,EAAE,MAAM,CAAC,OAAO;oBAC7B,YAAY,EAAE,MAAM,CAAC,MAAM;oBAC3B,uBAAuB,EAAE,MAAM,CAAC,eAAe,IAAI,MAAM;oBACzD,sBAAsB,EAAE,MAAM,CAAC,eAAe;oBAC9C,oBAAoB,EAAE,WAAW;oBACjC,kBAAkB,EAAE,MAAM,CAAC,SAAS;oBACpC,cAAc,EAAE,MAAM,CAAC,aAAa;oBACpC,4BAA4B,EAAE,MAAM,CAAC,kBAAkB;oBACvD,0BAA0B,EAAE,MAAM,CAAC,iBAAiB;oBACpD,wBAAwB,EAAE,eAAe,CAAC,OAAO,CAAC,mBAAmB;oBACrE,GAAG,iCAAiC,CAAC,gBAAgB,CAAC;iBACvD;gBACD,SAAS,EAAE,gBAAgB;gBAC3B,aAAa,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,aAAa,EAAE;aACnH,CAAC,CAAA;YACF,MAAM,OAAO,GAAqB;gBAChC,KAAK,EAAE,YAAY,CAAC,EAAE;gBACtB,aAAa,EAAE,YAAY,CAAC,cAAc;gBAC1C,SAAS;gBACT,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAA;YACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC;gBACpC,aAAa,EAAE,QAAQ,CAAC,EAAE;gBAC1B,WAAW,EAAE,uBAAuB;gBACpC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,EAAE,EAAE,gBAAgB,CAAC,WAAW;gBAChC,gBAAgB,EAAE,OAAO;gBACzB,oBAAoB,EAAE,UAAU;gBAChC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;gBAC3C,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,QAAQ,EAAE,UAAU;gBACpB,oBAAoB,EAAE;oBACpB,WAAW;oBACX,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;iBAC5C;aACF,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,kCAAkC,CAAC,uCAAuC,CAAC,CAAA;YACvF,CAAC;QACH,CAAC,EAAE,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAC7C,gBAAgB,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAgB,CAAC,OAAO,EAAE,CAAA;QAC1B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,YAAY,kCAAkC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,IAAI,QAAQ,EAAE,CAAA;IAC7N,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,CAAA;AAC1F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,EAChD,SAAS,EACT,aAAa,EACb,SAAS,EACT,OAAO,EACP,WAAW,GAOZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,MAAM,GAAG,GAAG,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAA;IAC3C,MAAM,KAAK,GAAG,OAAO,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IACvE,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACpJ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;IACvK,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,EAAE,WAAW,KAAK,IAAI;QAC1C,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAoB,EAAE,CAAC,CAAC,EAAE;QACjH,CAAC,CAAC,2BAA2B,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,CAAA;IAC1D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;IACxD,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,UAAU,CAAC,CAAA;IAC1F,MAAM,OAAO,GAAG,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,UAAmB,CAAC,CAAC,CAAC,WAAoB,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAA;IAC5H,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YACzG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,wCAAwC,EAAE,KAAK,EAAE,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,IAAI,OAAO,EAAE,CAAA;QACvJ,CAAC;QACD,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;QAC/D,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;IAClD,CAAC;IACD,MAAM,MAAM,GAAG,+BAA+B,CAAC;QAC7C,SAAS;QACT,aAAa;QACb,OAAO,EAAE,EAAE,WAAW,EAAE,6BAA6B,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;QAChF,WAAW;QACX,cAAc,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB;QACD,QAAQ,EAAE,UAAU;QACpB,kBAAkB,EAAE;YAClB,MAAM,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;oBACzG,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;gBAC3D,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EAAE,EACnD,SAAS,EACT,aAAa,GAId,EAA8C,EAAE;IAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACpE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAA;IAC7F,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;AACvD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,SAAS,EACT,aAAa,EACb,WAAW,GAKZ,EAAqC,EAAE;IACtC,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACtC,kEAAkE;IACpE,CAAC,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,gCAAgC,CAAC,aAAa,CAAC,CAAA;IACzE,MAAM,sBAAsB,GAAG,qCAAqC,CAAC,aAAa,CAAC,CAAA;IAEnF,yBAAyB,CAAC,aAAa,CAAC,CAAA;IACxC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAEhC,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IACvF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;AACvD,CAAC,CAAA"}
1
+ {"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"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"}