@straiffi/archon 1.11.4 → 1.11.6

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 (164) hide show
  1. package/README.md +8 -0
  2. package/dist/client/assets/{ActivityView-Cj-JRM9h.js → ActivityView-D9dXuvls.js} +1 -1
  3. package/dist/client/assets/{GitHubActionsDialog-Bz7x-EXk.js → GitHubActionsDialog-DFB9FNX0.js} +1 -1
  4. package/dist/client/assets/{VerificationDialog-C1g5teUk.js → VerificationDialog-CCpZtj3u.js} +1 -1
  5. package/dist/client/assets/{architectureDiagram-3BPJPVTR-Czgp4_s_.js → architectureDiagram-3BPJPVTR-C5QNVdbR.js} +1 -1
  6. package/dist/client/assets/{blockDiagram-GPEHLZMM-D_eKxSQA.js → blockDiagram-GPEHLZMM-ygrKiT2B.js} +1 -1
  7. package/dist/client/assets/{c4Diagram-AAUBKEIU-D6nMuDM5.js → c4Diagram-AAUBKEIU-p6pvarzH.js} +1 -1
  8. package/dist/client/assets/channel-CjCFIS-2.js +1 -0
  9. package/dist/client/assets/{chunk-2J33WTMH-B6Mn8gmT.js → chunk-2J33WTMH-BEZXyYSy.js} +1 -1
  10. package/dist/client/assets/{chunk-3OPIFGDE-BBoS7imT.js → chunk-3OPIFGDE-CxmfjZmF.js} +1 -1
  11. package/dist/client/assets/{chunk-5ZQYHXKU-CdhOo0Gr.js → chunk-5ZQYHXKU-B2X60oxE.js} +1 -1
  12. package/dist/client/assets/{chunk-727SXJPM-Dq8Odwy5.js → chunk-727SXJPM-P03pDtRv.js} +1 -1
  13. package/dist/client/assets/{chunk-AQP2D5EJ-DsKFdfMh.js → chunk-AQP2D5EJ-DE0MLi-X.js} +1 -1
  14. package/dist/client/assets/{chunk-CSCIHK7Q-4Ol5HlMd.js → chunk-CSCIHK7Q-C3QVx-Wf.js} +1 -1
  15. package/dist/client/assets/{chunk-KSCS5N6A-Ao7uFEEm.js → chunk-KSCS5N6A-BvajGF5R.js} +1 -1
  16. package/dist/client/assets/{chunk-L5ZTLDWV-C9Gzx6GF.js → chunk-L5ZTLDWV-HtpQP1op.js} +1 -1
  17. package/dist/client/assets/{chunk-LZXEDZCA-Ceca_Ske.js → chunk-LZXEDZCA-CWfF3VMY.js} +2 -2
  18. package/dist/client/assets/{chunk-ND2GUHAM-Cs2auQCc.js → chunk-ND2GUHAM-kEAduwJl.js} +1 -1
  19. package/dist/client/assets/{chunk-NZK2D7GU-fssKuUqc.js → chunk-NZK2D7GU-DNG4qBtm.js} +1 -1
  20. package/dist/client/assets/{chunk-O5CBEL6O-BdRwmtR1.js → chunk-O5CBEL6O-CS4J6DbD.js} +1 -1
  21. package/dist/client/assets/{chunk-WU5MYG2G-DnWsSIYg.js → chunk-WU5MYG2G-B2-mpLQ2.js} +1 -1
  22. package/dist/client/assets/classDiagram-4FO5ZUOK-DQ1lcUTi.js +1 -0
  23. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-tiWbaJIg.js +1 -0
  24. package/dist/client/assets/{dagre-BM42HDAG-B71wyESx.js → dagre-BM42HDAG-CNK_Lkn1.js} +1 -1
  25. package/dist/client/assets/{diagram-2AECGRRQ-D7Xht5lG.js → diagram-2AECGRRQ-BGKodAdj.js} +1 -1
  26. package/dist/client/assets/{diagram-5GNKFQAL-BIL2jzaH.js → diagram-5GNKFQAL-O7IcwCBh.js} +1 -1
  27. package/dist/client/assets/{diagram-KO2AKTUF-CKLHtkTQ.js → diagram-KO2AKTUF-BzuzpIm4.js} +1 -1
  28. package/dist/client/assets/{diagram-LMA3HP47-CoTDrm1f.js → diagram-LMA3HP47-C6xFuQYj.js} +1 -1
  29. package/dist/client/assets/{diagram-OG6HWLK6-a6qcioel.js → diagram-OG6HWLK6-hp2uvo99.js} +1 -1
  30. package/dist/client/assets/{erDiagram-TEJ5UH35-CUTe5tSP.js → erDiagram-TEJ5UH35-CiiZ8B7W.js} +1 -1
  31. package/dist/client/assets/{flowDiagram-I6XJVG4X-CSDL4PU-.js → flowDiagram-I6XJVG4X-CMXv6xN7.js} +1 -1
  32. package/dist/client/assets/{ganttDiagram-6RSMTGT7-Ck4JCO9N.js → ganttDiagram-6RSMTGT7-EP8OVqmy.js} +1 -1
  33. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-D8h23S3l.js → gitGraphDiagram-PVQCEYII-Dacq4hgw.js} +1 -1
  34. package/dist/client/assets/index-a8IeMnRR.css +2 -0
  35. package/dist/client/assets/index-uGt4qt5t.js +287 -0
  36. package/dist/client/assets/{infoDiagram-5YYISTIA-Bq1wj1vH.js → infoDiagram-5YYISTIA-DpTIfB1a.js} +1 -1
  37. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-C6ry_1gD.js → ishikawaDiagram-YF4QCWOH-DOcryUZC.js} +1 -1
  38. package/dist/client/assets/{journeyDiagram-JHISSGLW-BCoSw_Ye.js → journeyDiagram-JHISSGLW-DgEfwhed.js} +1 -1
  39. package/dist/client/assets/{kanban-definition-UN3LZRKU-CvHdWXxq.js → kanban-definition-UN3LZRKU-Bg9Kz1IT.js} +1 -1
  40. package/dist/client/assets/{line-DDPHAHbi.js → line-DGt3zplT.js} +1 -1
  41. package/dist/client/assets/{mermaid-parser.core-B7v3eJbR.js → mermaid-parser.core-CeZgcMLs.js} +1 -1
  42. package/dist/client/assets/{mermaid.core-DoJjZ2zS.js → mermaid.core-Bp6d14EP.js} +3 -3
  43. package/dist/client/assets/{mindmap-definition-RKZ34NQL-D8uwnlrG.js → mindmap-definition-RKZ34NQL-CyJdo6SE.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-4H26LBE5-B2zLClZg.js → pieDiagram-4H26LBE5-elm12Uf5.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-DGGYHTHx.js → quadrantDiagram-W4KKPZXB-BXuIBixh.js} +1 -1
  46. package/dist/client/assets/{requirementDiagram-4Y6WPE33-JfCBqWur.js → requirementDiagram-4Y6WPE33-C5rIaCf4.js} +1 -1
  47. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-D9nUF-4P.js → sankeyDiagram-5OEKKPKP-CIYPcDTl.js} +1 -1
  48. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DGnNkDzT.js → sequenceDiagram-3UESZ5HK-CX_go9-1.js} +1 -1
  49. package/dist/client/assets/{stateDiagram-AJRCARHV-CFZlnYcA.js → stateDiagram-AJRCARHV-CYbsPFSQ.js} +1 -1
  50. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-QZ_UdR0J.js +1 -0
  51. package/dist/client/assets/{timeline-definition-PNZ67QCA-C-KYYKMX.js → timeline-definition-PNZ67QCA-B3pBx_YB.js} +1 -1
  52. package/dist/client/assets/{vennDiagram-CIIHVFJN-C3MGIjT1.js → vennDiagram-CIIHVFJN-B1Z6hLI-.js} +1 -1
  53. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CUD7E4c3.js → wardleyDiagram-YWT4CUSO-BvJEPN2P.js} +1 -1
  54. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CM2Q4-TE.js → xychartDiagram-2RQKCTM6-CKavkWIt.js} +1 -1
  55. package/dist/client/index.html +2 -2
  56. package/dist/server/db.js +63 -4
  57. package/dist/server/db.js.map +1 -1
  58. package/dist/server/index.js +55 -0
  59. package/dist/server/index.js.map +1 -1
  60. package/dist/server/lib/agent.js +277 -299
  61. package/dist/server/lib/agent.js.map +1 -1
  62. package/dist/server/lib/agentOutputLanguage.js +11 -0
  63. package/dist/server/lib/agentOutputLanguage.js.map +1 -0
  64. package/dist/server/lib/agentProvider.js.map +1 -1
  65. package/dist/server/lib/agentRuns.js +68 -4
  66. package/dist/server/lib/agentRuns.js.map +1 -1
  67. package/dist/server/lib/appLocale.js +19 -0
  68. package/dist/server/lib/appLocale.js.map +1 -0
  69. package/dist/server/lib/buildExecutionEnvironment.js +92 -1
  70. package/dist/server/lib/buildExecutionEnvironment.js.map +1 -1
  71. package/dist/server/lib/chatOperations.js +10 -3
  72. package/dist/server/lib/chatOperations.js.map +1 -1
  73. package/dist/server/lib/conversationResume.js +56 -3
  74. package/dist/server/lib/conversationResume.js.map +1 -1
  75. package/dist/server/lib/dockerSandboxOpencodeSessionOperations.js +81 -25
  76. package/dist/server/lib/dockerSandboxOpencodeSessionOperations.js.map +1 -1
  77. package/dist/server/lib/dockerSandboxReleaseProfiles.js +36 -7
  78. package/dist/server/lib/dockerSandboxReleaseProfiles.js.map +1 -1
  79. package/dist/server/lib/executionEnvironmentRoutes.js +71 -4
  80. package/dist/server/lib/executionEnvironmentRoutes.js.map +1 -1
  81. package/dist/server/lib/executionEnvironmentValidation.js +199 -19
  82. package/dist/server/lib/executionEnvironmentValidation.js.map +1 -1
  83. package/dist/server/lib/executionEnvironmentValidationEvidence.js +140 -0
  84. package/dist/server/lib/executionEnvironmentValidationEvidence.js.map +1 -0
  85. package/dist/server/lib/executionEnvironmentValidationOperations.js +13 -0
  86. package/dist/server/lib/executionEnvironmentValidationOperations.js.map +1 -1
  87. package/dist/server/lib/executionRetryContext.js +13 -0
  88. package/dist/server/lib/executionRetryContext.js.map +1 -1
  89. package/dist/server/lib/figmaResources.js +9 -2
  90. package/dist/server/lib/figmaResources.js.map +1 -1
  91. package/dist/server/lib/hostExecutionEnvironment.js +14 -2
  92. package/dist/server/lib/hostExecutionEnvironment.js.map +1 -1
  93. package/dist/server/lib/i18n/index.js +3 -2
  94. package/dist/server/lib/i18n/index.js.map +1 -1
  95. package/dist/server/lib/i18n/resources.js +0 -1
  96. package/dist/server/lib/i18n/resources.js.map +1 -1
  97. package/dist/server/lib/lightweightPrompt.js +4 -0
  98. package/dist/server/lib/lightweightPrompt.js.map +1 -1
  99. package/dist/server/lib/models.js +58 -18
  100. package/dist/server/lib/models.js.map +1 -1
  101. package/dist/server/lib/opencodeAgentProvider.js +54 -48
  102. package/dist/server/lib/opencodeAgentProvider.js.map +1 -1
  103. package/dist/server/lib/opencodeCli.js +244 -0
  104. package/dist/server/lib/opencodeCli.js.map +1 -0
  105. package/dist/server/lib/opencodePromptOutput.js +11 -65
  106. package/dist/server/lib/opencodePromptOutput.js.map +1 -1
  107. package/dist/server/lib/opencodeSessionOperations.js +44 -28
  108. package/dist/server/lib/opencodeSessionOperations.js.map +1 -1
  109. package/dist/server/lib/opencodeSessionProvenance.js +23 -0
  110. package/dist/server/lib/opencodeSessionProvenance.js.map +1 -0
  111. package/dist/server/lib/opencodeStream.js +263 -0
  112. package/dist/server/lib/opencodeStream.js.map +1 -0
  113. package/dist/server/lib/opencodeTaskSessions.js +3 -4
  114. package/dist/server/lib/opencodeTaskSessions.js.map +1 -1
  115. package/dist/server/lib/opencodeV2SessionOperations.js +453 -0
  116. package/dist/server/lib/opencodeV2SessionOperations.js.map +1 -0
  117. package/dist/server/lib/run.js +27 -41
  118. package/dist/server/lib/run.js.map +1 -1
  119. package/dist/server/lib/runProcessIdentity.js +10 -2
  120. package/dist/server/lib/runProcessIdentity.js.map +1 -1
  121. package/dist/server/lib/runProcesses.js +52 -19
  122. package/dist/server/lib/runProcesses.js.map +1 -1
  123. package/dist/server/lib/runServiceStop.js +62 -0
  124. package/dist/server/lib/runServiceStop.js.map +1 -0
  125. package/dist/server/lib/runServices.js +63 -4
  126. package/dist/server/lib/runServices.js.map +1 -1
  127. package/dist/server/lib/runSessionLifecycle.js +25 -0
  128. package/dist/server/lib/runSessionLifecycle.js.map +1 -1
  129. package/dist/server/lib/runtimePaths.js +7 -4
  130. package/dist/server/lib/runtimePaths.js.map +1 -1
  131. package/dist/server/lib/serviceRunLogs.js +179 -0
  132. package/dist/server/lib/serviceRunLogs.js.map +1 -0
  133. package/dist/server/lib/specOperations.js +7 -2
  134. package/dist/server/lib/specOperations.js.map +1 -1
  135. package/dist/server/lib/specReviewContext.js +3 -2
  136. package/dist/server/lib/specReviewContext.js.map +1 -1
  137. package/dist/server/lib/toolUpgrade.js +54 -5
  138. package/dist/server/lib/toolUpgrade.js.map +1 -1
  139. package/dist/server/lib/types.js.map +1 -1
  140. package/dist/server/workers/build.js +47 -9
  141. package/dist/server/workers/build.js.map +1 -1
  142. package/dist/server/workers/chat.js +74 -10
  143. package/dist/server/workers/chat.js.map +1 -1
  144. package/dist/server/workers/followUp.js +59 -22
  145. package/dist/server/workers/followUp.js.map +1 -1
  146. package/dist/server/workers/plan.js +109 -169
  147. package/dist/server/workers/plan.js.map +1 -1
  148. package/dist/server/workers/planFollowUp.js +27 -7
  149. package/dist/server/workers/planFollowUp.js.map +1 -1
  150. package/dist/server/workers/review.js +43 -10
  151. package/dist/server/workers/review.js.map +1 -1
  152. package/dist/server/workers/specReview.js +1 -0
  153. package/dist/server/workers/specReview.js.map +1 -1
  154. package/dist/server/workers/specSession.js +42 -5
  155. package/dist/server/workers/specSession.js.map +1 -1
  156. package/dist/shared/i18n/locales.js +12 -0
  157. package/dist/shared/i18n/locales.js.map +1 -0
  158. package/package.json +1 -1
  159. package/dist/client/assets/channel-BsoUrvI0.js +0 -1
  160. package/dist/client/assets/classDiagram-4FO5ZUOK-D79OdDcf.js +0 -1
  161. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CyG7JUxO.js +0 -1
  162. package/dist/client/assets/index-Ckj_syqH.js +0 -287
  163. package/dist/client/assets/index-RM0FaS4q.css +0 -2
  164. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-BB3Eu4sn.js +0 -1
@@ -5,6 +5,7 @@ import { classifyDockerSandboxActivationEligibility, createDockerSandboxRuntimeC
5
5
  import { ExecutionEnvironmentOperationConflict, inspectExecutionEnvironmentDisk, resetExecutionEnvironmentOperation, retireExecutionEnvironmentOperation, retryExecutionEnvironmentCleanup, stopExecutionEnvironment, } from './executionEnvironmentOperations.js';
6
6
  import { isExecutionWorkload } from './executionWorkloads.js';
7
7
  import { ExecutionEnvironmentRouteError, currentExecutionEnvironmentValidationFingerprint, parseExecutionEnvironmentProvider, parseExecutionEnvironmentAgent, parseExecutionEnvironmentModel, prepareAndValidateExecutionEnvironment, resolveCurrentExecutionEnvironmentDescriptor, validateExecutionEnvironment, } from './executionEnvironmentValidationOperations.js';
8
+ import { getCurrentPersistedExecutionEnvironmentValidationEvidence, serializeOpencodeRuntimeValidationEvidence, } from './executionEnvironmentValidationEvidence.js';
8
9
  import { listExecutionEnvironmentEvents, listExecutionEnvironments } from './executionEnvironments.js';
9
10
  import { getExecutionRun } from './executionRuns.js';
10
11
  import { getProjectById } from './projects.js';
@@ -49,7 +50,7 @@ const serializeValidationChecks = (value) => {
49
50
  return [];
50
51
  }
51
52
  const check = candidate;
52
- const kinds = ['workspace_location', 'workspace_readable', 'workspace_writable', 'project_executables', 'executable', 'headless', 'authentication', 'skills', 'destination', 'network'];
53
+ const kinds = ['workspace_location', 'workspace_readable', 'workspace_writable', 'project_executables', 'executable', 'headless', 'authentication', 'skills', 'destination', 'session_api', 'network'];
53
54
  if (!kinds.some(kind => kind === check.kind)
54
55
  || (check.agent !== null && check.agent !== 'opencode' && check.agent !== 'claude' && check.agent !== 'codex')
55
56
  || (check.state !== 'cancelled' && check.state !== 'failed' && check.state !== 'passed' && check.state !== 'skipped')) {
@@ -98,6 +99,9 @@ const serializeValidationChecks = (value) => {
98
99
  const missingExecutables = Array.isArray(rawDetails?.missingExecutables)
99
100
  ? rawDetails.missingExecutables.filter((executable) => typeof executable === 'string').slice(0, 32)
100
101
  : undefined;
102
+ const missingCapabilities = Array.isArray(rawDetails?.missingCapabilities)
103
+ ? rawDetails.missingCapabilities.filter((capability) => typeof capability === 'string').slice(0, 32)
104
+ : undefined;
101
105
  const blockedBy = kinds.find(kind => kind === rawDetails?.blockedBy);
102
106
  const details = rawDetails && (rawDetails.credentialSource === 'stored'
103
107
  || rawDetails.credentialSource === 'environment'
@@ -109,12 +113,21 @@ const serializeValidationChecks = (value) => {
109
113
  || rawDetails.reason === 'provider_required'
110
114
  || rawDetails.reason === 'credential_inventory_unavailable'
111
115
  || rawDetails.reason === 'runtime_version_unrecognized'
116
+ || rawDetails.reason === 'runtime_capability_missing'
117
+ || rawDetails.reason === 'sandbox_runtime_unqualified'
112
118
  || rawDetails.reason === 'project_executables_missing'
113
119
  || rawDetails.reason === 'prerequisite_failed'
120
+ || rawDetails.reason === 'session_api_unavailable'
121
+ || rawDetails.reason === 'session_api_unsupported'
122
+ || rawDetails.reason === 'session_id_unavailable'
114
123
  || typeof rawDetails.runtimeVersion === 'string'
124
+ || typeof rawDetails.runtimeMajor === 'number'
125
+ || typeof rawDetails.supportPolicyRevision === 'string'
126
+ || typeof rawDetails.sessionApiStatus === 'string'
115
127
  || availableSkills !== undefined
116
128
  || missingSkills !== undefined
117
129
  || missingExecutables !== undefined
130
+ || missingCapabilities !== undefined
118
131
  || blockedBy !== undefined
119
132
  || rawDetails.destinationReason === 'invalid_json'
120
133
  || rawDetails.destinationReason === 'nonzero_exit'
@@ -133,16 +146,40 @@ const serializeValidationChecks = (value) => {
133
146
  ...(availableSkills !== undefined ? { available_skills: availableSkills } : {}),
134
147
  ...(missingSkills !== undefined ? { missing_skills: missingSkills } : {}),
135
148
  ...(missingExecutables !== undefined ? { missing_executables: missingExecutables } : {}),
149
+ ...(missingCapabilities !== undefined ? { missing_capabilities: missingCapabilities } : {}),
136
150
  ...(blockedBy !== undefined ? { blocked_by: blockedBy } : {}),
137
151
  ...(rawDetails.reason === 'model_required'
138
152
  || rawDetails.reason === 'provider_required'
139
153
  || rawDetails.reason === 'credential_inventory_unavailable'
140
154
  || rawDetails.reason === 'runtime_version_unrecognized'
155
+ || rawDetails.reason === 'runtime_capability_missing'
156
+ || rawDetails.reason === 'sandbox_runtime_unqualified'
141
157
  || rawDetails.reason === 'project_executables_missing'
142
158
  || rawDetails.reason === 'prerequisite_failed'
159
+ || rawDetails.reason === 'session_api_unavailable'
160
+ || rawDetails.reason === 'session_api_unsupported'
161
+ || rawDetails.reason === 'session_id_unavailable'
143
162
  ? { reason: rawDetails.reason }
144
163
  : {}),
145
164
  ...(typeof rawDetails.runtimeVersion === 'string' ? { runtime_version: rawDetails.runtimeVersion.slice(0, 100) } : {}),
165
+ ...(typeof rawDetails.runtimeMajor === 'number' && Number.isSafeInteger(rawDetails.runtimeMajor)
166
+ ? { runtime_major: rawDetails.runtimeMajor }
167
+ : {}),
168
+ ...(typeof rawDetails.supportPolicyRevision === 'string'
169
+ ? { support_policy_revision: rawDetails.supportPolicyRevision.slice(0, 32) }
170
+ : {}),
171
+ ...(rawDetails.sessionApiStatus === 'compatible'
172
+ || rawDetails.sessionApiStatus === 'not_required'
173
+ || rawDetails.sessionApiStatus === 'unavailable'
174
+ || rawDetails.sessionApiStatus === 'unsupported'
175
+ ? { session_api_status: rawDetails.sessionApiStatus }
176
+ : {}),
177
+ ...(typeof rawDetails.sessionApiContractVersion === 'number' && Number.isSafeInteger(rawDetails.sessionApiContractVersion)
178
+ ? { session_api_contract_version: rawDetails.sessionApiContractVersion }
179
+ : {}),
180
+ ...(typeof rawDetails.sessionApiReason === 'string'
181
+ ? { session_api_reason: rawDetails.sessionApiReason.slice(0, 300) }
182
+ : {}),
146
183
  ...(rawDetails.destinationReason === 'invalid_json'
147
184
  || rawDetails.destinationReason === 'nonzero_exit'
148
185
  || rawDetails.destinationReason === 'timeout'
@@ -329,6 +366,8 @@ const getEnvironmentValidations = (projectId, environment) => {
329
366
  ? validation.model
330
367
  : typeof validationAgent?.model === 'string' ? validationAgent.model : null,
331
368
  credential_capability: serializeCredentialCapability(validation?.credentialCapability ?? validationAgent?.credentialCapability),
369
+ schema_version: typeof validation?.schemaVersion === 'string' ? validation.schemaVersion.slice(0, 32) : null,
370
+ runtime_compatibility: serializeOpencodeRuntimeValidationEvidence(validation),
332
371
  network_evidence: serializeValidationNetworkEvidence(validation, checks, requestedNetworkMode),
333
372
  requested_network_mode: requestedNetworkMode,
334
373
  checks,
@@ -430,7 +469,20 @@ const getProjectExecutionState = async (projectId) => {
430
469
  });
431
470
  return environment ? [environment.id] : [];
432
471
  }));
433
- const serializedEnvironments = await Promise.all(environments.map(async (environment) => serializeProjectEnvironment(project.id, environment, reusableEnvironmentIds.has(environment.id), await inspectExecutionEnvironmentDisk(environment))));
472
+ const serializedEnvironments = await Promise.all(environments.map(async (environment) => {
473
+ const serialized = serializeProjectEnvironment(project.id, environment, reusableEnvironmentIds.has(environment.id), await inspectExecutionEnvironmentDisk(environment));
474
+ const agent = environment.agent_identity;
475
+ const validation = agent ? serialized.validations[agent] : null;
476
+ const hasCurrentEvidence = agent && validation
477
+ ? getCurrentPersistedExecutionEnvironmentValidationEvidence({
478
+ projectId: project.id,
479
+ environmentId: environment.id,
480
+ agent,
481
+ executionRunId: validation.run.id,
482
+ }) !== null
483
+ : false;
484
+ return { ...serialized, is_reusable: serialized.is_reusable && hasCurrentEvidence };
485
+ }));
434
486
  const approvedProviders = {};
435
487
  const availableSkills = {};
436
488
  for (const environment of serializedEnvironments) {
@@ -445,14 +497,29 @@ const getProjectExecutionState = async (projectId) => {
445
497
  }
446
498
  for (const agent of ['opencode', 'claude', 'codex']) {
447
499
  for (const validation of environment.provider_validations[agent] ?? []) {
448
- if (validation.provider && validation.run.status === 'completed' && validation.run.domain_status === 'ready') {
500
+ if (validation.provider
501
+ && validation.run.status === 'completed'
502
+ && validation.run.domain_status === 'ready'
503
+ && getCurrentPersistedExecutionEnvironmentValidationEvidence({
504
+ projectId: project.id,
505
+ environmentId: environment.id,
506
+ agent,
507
+ executionRunId: validation.run.id,
508
+ }) !== null) {
449
509
  approvedProviders[agent] = Array.from(new Set([...(approvedProviders[agent] ?? []), validation.provider]));
450
510
  }
451
511
  }
452
512
  }
453
513
  for (const agent of ['opencode', 'codex']) {
454
514
  for (const validation of environment.provider_validations[agent] ?? []) {
455
- if (validation.run.status !== 'completed' || validation.run.domain_status !== 'ready') {
515
+ if (validation.run.status !== 'completed'
516
+ || validation.run.domain_status !== 'ready'
517
+ || getCurrentPersistedExecutionEnvironmentValidationEvidence({
518
+ projectId: project.id,
519
+ environmentId: environment.id,
520
+ agent,
521
+ executionRunId: validation.run.id,
522
+ }) === null) {
456
523
  continue;
457
524
  }
458
525
  const skillCheck = validation.checks.find(check => check.kind === 'skills' && check.state === 'passed');
@@ -1 +1 @@
1
- {"version":3,"file":"executionEnvironmentRoutes.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentRoutes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executionEnvironmentRoutes.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AAGzB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,GAG5B,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,kDAAkD,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAA;AACpI,OAAO,EACL,0CAA0C,EAC1C,oCAAoC,GAErC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,qCAAqC,EACrC,+BAA+B,EAC/B,kCAAkC,EAClC,mCAAmC,EACnC,gCAAgC,EAChC,wBAAwB,GACzB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EACL,8BAA8B,EAC9B,gDAAgD,EAChD,iCAAiC,EACjC,8BAA8B,EAC9B,8BAA8B,EAC9B,sCAAsC,EACtC,4CAA4C,EAC5C,4BAA4B,GAC7B,MAAM,+CAA+C,CAAA;AACtD,OAAO,EACL,yDAAyD,EACzD,0CAA0C,GAC3C,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AACtG,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAA;AAC9E,OAAO,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAA;AAY1E,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAA;AAU9F,MAAM,UAAU,GAAG,CAAC,OAA0D,EAAE,EAAE,CAAC,CACjF,GAAY,EACZ,GAAa,EACb,IAAkB,EAClB,EAAE;IACF,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,KAAK,EAClC,GAAY,EACZ,GAAa,EACb,SAA8C,EAC9C,EAAE;IACF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IACxC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IACtC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IAC1B,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACxB,IAAI,CAAC;QACH,OAAO,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;YAAS,CAAC;QACT,GAAG,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QACpC,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,KAAwD,EAAE,KAAc,EAAE,EAAE;IACvG,MAAM,KAAK,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QAC/E,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,8BAA8B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAChD,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAClE,MAAM,SAAS,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAA;QAC7D,MAAM,IAAI,8BAA8B,CAAC,GAAG,EAAE,gBAAgB,EAAE,eAAe,SAAS,oCAAoC,CAAC,CAAA;IAC/H,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAAC,KAAc,EAA0C,EAAE;IAC3F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACxD,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,KAAK,GAAG,SAAoC,CAAA;QAClD,MAAM,KAAK,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,CAAU,CAAA;QAC/M,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;eACrC,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC;eAC3G,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,EACrH,CAAC;YACD,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;YACjH,CAAC,CAAC,KAAK,CAAC,QAAmC;YAC3C,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,QAAQ,GAAG,WAAW;eACvB,CAAC,WAAW,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC;eAC3E,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ;eACvC,OAAO,WAAW,CAAC,SAAS,KAAK,SAAS;YAC7C,CAAC,CAAC;gBACE,SAAS,EAAE,WAAW,CAAC,QAAyB;gBAChD,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC1C,SAAS,EAAE,WAAW,CAAC,SAAS;aACjC;YACH,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YAC7G,CAAC,CAAC,KAAK,CAAC,OAAkC;YAC1C,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,gBAAgB,GAAG,OAAO,UAAU,EAAE,aAAa,KAAK,QAAQ;eACjE,UAAU,CAAC,aAAa,KAAK,IAAI;eACjC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;YAC3C,CAAC,CAAC,UAAU,CAAC,aAAwC;YACrD,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,aAAa,GAAG,gBAAgB,IAAI,CACxC,OAAO,gBAAgB,CAAC,IAAI,KAAK,QAAQ;eACtC,OAAO,gBAAgB,CAAC,OAAO,KAAK,QAAQ;eAC5C,OAAO,gBAAgB,CAAC,SAAS,KAAK,QAAQ;eAC9C,OAAO,gBAAgB,CAAC,QAAQ,KAAK,QAAQ;eAC7C,OAAO,gBAAgB,CAAC,KAAK,KAAK,QAAQ,CAC9C;YACC,CAAC,CAAC;gBACE,GAAG,CAAC,OAAO,gBAAgB,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnG,GAAG,CAAC,OAAO,gBAAgB,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5G,GAAG,CAAC,OAAO,gBAAgB,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClH,GAAG,CAAC,OAAO,gBAAgB,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/G,GAAG,CAAC,OAAO,gBAAgB,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvG;YACH,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,eAAe,CAAC;YAChE,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YACxG,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC;YAC5D,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YACtG,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,kBAAkB,CAAC;YACtE,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACzH,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,mBAAmB,CAAC;YACxE,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1H,CAAC,CAAC,SAAS,CAAA;QACb,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE,SAAS,CAAC,CAAA;QACpE,MAAM,OAAO,GAAoD,UAAU,IAAI,CAC7E,UAAU,CAAC,gBAAgB,KAAK,QAAQ;eACrC,UAAU,CAAC,gBAAgB,KAAK,aAAa;eAC7C,UAAU,CAAC,gBAAgB,KAAK,UAAU;eAC1C,UAAU,CAAC,gBAAgB,KAAK,OAAO;eACvC,UAAU,CAAC,gBAAgB,KAAK,MAAM;eACtC,UAAU,CAAC,gBAAgB,KAAK,SAAS;eACzC,UAAU,CAAC,MAAM,KAAK,gBAAgB;eACtC,UAAU,CAAC,MAAM,KAAK,mBAAmB;eACzC,UAAU,CAAC,MAAM,KAAK,kCAAkC;eACxD,UAAU,CAAC,MAAM,KAAK,8BAA8B;eACpD,UAAU,CAAC,MAAM,KAAK,4BAA4B;eAClD,UAAU,CAAC,MAAM,KAAK,6BAA6B;eACnD,UAAU,CAAC,MAAM,KAAK,6BAA6B;eACnD,UAAU,CAAC,MAAM,KAAK,qBAAqB;eAC3C,UAAU,CAAC,MAAM,KAAK,yBAAyB;eAC/C,UAAU,CAAC,MAAM,KAAK,yBAAyB;eAC/C,UAAU,CAAC,MAAM,KAAK,wBAAwB;eAC9C,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ;eAC7C,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ;eAC3C,OAAO,UAAU,CAAC,qBAAqB,KAAK,QAAQ;eACpD,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ;eAC/C,eAAe,KAAK,SAAS;eAC7B,aAAa,KAAK,SAAS;eAC3B,kBAAkB,KAAK,SAAS;eAChC,mBAAmB,KAAK,SAAS;eACjC,SAAS,KAAK,SAAS;eACvB,UAAU,CAAC,iBAAiB,KAAK,cAAc;eAC/C,UAAU,CAAC,iBAAiB,KAAK,cAAc;eAC/C,UAAU,CAAC,iBAAiB,KAAK,SAAS;eAC1C,UAAU,CAAC,iBAAiB,KAAK,gBAAgB;eACjD,UAAU,CAAC,iBAAiB,KAAK,iBAAiB;eAClD,UAAU,CAAC,iBAAiB,KAAK,qBAAqB;eACtD,UAAU,CAAC,iBAAiB,KAAK,kBAAkB;eACnD,UAAU,CAAC,iBAAiB,KAAK,qBAAqB;eACtD,aAAa,KAAK,SAAS;eAC3B,OAAO,UAAU,CAAC,aAAa,KAAK,QAAQ,CAChD;YACC,CAAC,CAAC;gBACE,GAAG,CAAC,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,gBAAqG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnM,GAAG,CAAC,OAAO,UAAU,CAAC,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpH,GAAG,CAAC,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjH,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/E,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxF,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3F,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,gBAAgB;uBACrC,UAAU,CAAC,MAAM,KAAK,mBAAmB;uBACzC,UAAU,CAAC,MAAM,KAAK,kCAAkC;uBACxD,UAAU,CAAC,MAAM,KAAK,8BAA8B;uBACpD,UAAU,CAAC,MAAM,KAAK,4BAA4B;uBAClD,UAAU,CAAC,MAAM,KAAK,6BAA6B;uBACnD,UAAU,CAAC,MAAM,KAAK,6BAA6B;uBACnD,UAAU,CAAC,MAAM,KAAK,qBAAqB;uBAC3C,UAAU,CAAC,MAAM,KAAK,yBAAyB;uBAC/C,UAAU,CAAC,MAAM,KAAK,yBAAyB;uBAC/C,UAAU,CAAC,MAAM,KAAK,wBAAwB;oBACjD,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAgF,EAAE;oBACzG,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtH,GAAG,CAAC,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC;oBAC9F,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,CAAC,YAAY,EAAE;oBAC5C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,UAAU,CAAC,qBAAqB,KAAK,QAAQ;oBACtD,CAAC,CAAC,EAAE,uBAAuB,EAAE,UAAU,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;oBAC5E,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,UAAU,CAAC,gBAAgB,KAAK,YAAY;uBAC3C,UAAU,CAAC,gBAAgB,KAAK,cAAc;uBAC9C,UAAU,CAAC,gBAAgB,KAAK,aAAa;uBAC7C,UAAU,CAAC,gBAAgB,KAAK,aAAa;oBAChD,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,CAAC,gBAAgB,EAAE;oBACrD,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,UAAU,CAAC,yBAAyB,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,yBAAyB,CAAC;oBACxH,CAAC,CAAC,EAAE,4BAA4B,EAAE,UAAU,CAAC,yBAAyB,EAAE;oBACxE,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ;oBACjD,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;oBACnE,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,UAAU,CAAC,iBAAiB,KAAK,cAAc;uBAC9C,UAAU,CAAC,iBAAiB,KAAK,cAAc;uBAC/C,UAAU,CAAC,iBAAiB,KAAK,SAAS;uBAC1C,UAAU,CAAC,iBAAiB,KAAK,gBAAgB;uBACjD,UAAU,CAAC,iBAAiB,KAAK,iBAAiB;uBAClD,UAAU,CAAC,iBAAiB,KAAK,qBAAqB;uBACtD,UAAU,CAAC,iBAAiB,KAAK,kBAAkB;uBACnD,UAAU,CAAC,iBAAiB,KAAK,qBAAqB;oBAC3D,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,CAAC,iBAAiB,EAAE;oBACtD,CAAC,CAAC,EAAE,CAAC;gBACL,GAAG,CAAC,OAAO,UAAU,CAAC,aAAa,KAAK,QAAQ;oBAC9C,CAAC,CAAC;wBACE,cAAc,EAAE,UAAU,CAAC,aAAa;wBACxC,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,OAAO;+BACrC,UAAU,CAAC,eAAe,KAAK,MAAM;+BACrC,UAAU,CAAC,eAAe,KAAK,SAAS;4BAC3C,CAAC,CAAC,EAAE,gBAAgB,EAAE,UAAU,CAAC,eAAe,EAAE;4BAClD,CAAC,CAAC,EAAE,CAAC;qBACR;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5D;YACH,CAAC,CAAC,SAAS,CAAA;QACb,OAAO,CAAC;gBACN,IAAI,EAAE,KAAK,CAAC,IAAoD;gBAChE,KAAK,EAAE,KAAK,CAAC,KAAsD;gBACnE,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,KAAc,EAAkD,EAAE;IACvG,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,UAAU,GAAG,KAAgC,CAAA;IACnD,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,SAAS,KAAK,QAAQ,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QACjI,CAAC,CAAC,UAAU,CAAC,SAAoC;QACjD,CAAC,CAAC,IAAI,CAAA;IACR,MAAM,WAAW,GAAG,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,IAAI,UAAU,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC;QACzI,CAAC,CAAC,UAAU,CAAC,WAAsC;QACnD,CAAC,CAAC,IAAI,CAAA;IACR,MAAM,eAAe,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,cAAc,EAAE,qBAAqB,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,uBAAuB,CAAU,CAAA;IACjL,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,CAAU,CAAA;IACpF,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,aAAa,CAAU,CAAA;IACzF,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;IAClF,IACE,CAAC,UAAU,CAAC,kBAAkB,KAAK,MAAM,IAAI,UAAU,CAAC,kBAAkB,KAAK,gBAAgB,CAAC;WAC7F,CAAC,UAAU,CAAC,KAAK,KAAK,UAAU,IAAI,UAAU,CAAC,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,KAAK,KAAK,OAAO,CAAC;WAClG,CAAC,UAAU,CAAC,mBAAmB,KAAK,IAAI,IAAI,UAAU,CAAC,mBAAmB,KAAK,SAAS,IAAI,UAAU,CAAC,mBAAmB,KAAK,OAAO,CAAC;WACvI,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAQ,CAAC;WACzC,CAAC,SAAS;WACV,CAAC,SAAS,CAAC,WAAW,KAAK,WAAW,IAAI,SAAS,CAAC,WAAW,KAAK,aAAa,CAAC;WAClF,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC;WACzD,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC;WACzD,CAAC,WAAW;WACZ,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK,CAAC;WAC7D,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,KAAK,UAAU,CAAC,cAAc,CAAC;WACrF,OAAO,UAAU,CAAC,8BAA8B,KAAK,SAAS,EACjE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO;QACL,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;QACjD,gBAAgB,EAAE,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI;QACtG,QAAQ,EAAE,OAAO,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;QAC9E,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,cAAc,EAAE,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;QAChG,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;QACnD,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,SAAS,EAAE;YACT,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,KAAK,EAAE,SAAS,CAAC,KAAsE;YACvF,KAAK,EAAE,SAAS,CAAC,KAAsE;YACvF,OAAO,EAAE,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;SAC1E;QACD,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,KAAK,iBAAiB,IAAI,UAAU,CAAC,oBAAoB,KAAK,yBAAyB;YAC1I,CAAC,CAAC,UAAU,CAAC,oBAAoB;YACjC,CAAC,CAAC,IAAI;QACR,uBAAuB,EAAE,OAAO,UAAU,CAAC,uBAAuB,KAAK,QAAQ,IAAI,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;YAC1I,CAAC,CAAC,UAAU,CAAC,uBAAuB;YACpC,CAAC,CAAC,IAAI;QACR,WAAW,EAAE;YACX,KAAK,EAAE,WAAW,CAAC,KAAwE;YAC3F,MAAM,EAAE,OAAO,WAAW,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;SACzF;QACD,cAAc,EAAE,UAAU,CAAC,cAA2E;QACtG,8BAA8B,EAAE,UAAU,CAAC,8BAA8B;QACzE,WAAW,EAAE,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;KACtG,CAAA;AACH,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,CAAU,CAAA;AAE1G,MAAM,kCAAkC,GAAG,CACzC,aAA6C,EAC7C,MAA8C,EAC9C,aAA6E,EACnB,EAAE;IAC5D,MAAM,OAAO,GAAG,aAAa,EAAE,sBAAsB,IAAI,aAAa,EAAE,wBAAwB,CAAA;IAChG,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,OAA2C,CAAC,EAAE,CAAC;QAClH,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CACxC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,OAAO,EAAE,cAAc,KAAK,QAAQ;QAC3E,CAAC,CAAC,CAAC;gBACC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;gBACpC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,IAAI,SAAkB;gBAC9D,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC;QACJ,CAAC,CAAC,EAAE,CACP,CAAC,CAAA;IACF,MAAM,sBAAsB,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CACjF,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAC7D,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,aAAa,KAAK,cAAc;QAClD,CAAC,CAAC,MAAe;QACjB,CAAC,CAAC,OAAO,KAAK,UAAU,IAAI,sBAAsB;YAChD,CAAC,CAAC,iBAA0B;YAC5B,CAAC,CAAC,OAAO,KAAK,WAAW,IAAI,sBAAsB;gBACjD,CAAC,CAAC,kBAA2B;gBAC7B,CAAC,CAAC,SAAkB,CAAA;IAC1B,OAAO;QACL,uBAAuB,EAAE,OAA2C;QACpE,WAAW;QACX,SAAS;KACV,CAAA;AACH,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CACpC,aAA6C,EACmB,EAAE;IAClE,MAAM,IAAI,GAAG,aAAa,EAAE,oBAAoB,IAAI,aAAa,EAAE,sBAAsB,CAAA;IACzF,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AACtE,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAAC,SAAiB,EAAE,WAAiC,EAAE,EAAE;IACzF,MAAM,WAAW,GAAyD,EAAE,CAAA;IAC5E,MAAM,mBAAmB,GAAkE,EAAE,CAAA;IAC7F,MAAM,gBAAgB,GAA+D,EAAE,CAAA;IACvF,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAU,CAAA;IACpD,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAA;IACjD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;GAOvB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAA0B,CAAA;IAC1D,MAAM,MAAM,GAAG,8BAA8B,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAA;IACxE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAA;QAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO,CAAC,EAAE,CAAC;YAC9E,SAAQ;QACV,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,QAAQ,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACjF,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,KAAK,QAAQ;YACzD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;YACvB,CAAC,CAAC,KAAK,KAAK,UAAU;gBACpB,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,IAAI;gBACjC,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAA;QACjD,MAAM,qBAAqB,GAAG,GAAG,KAAK,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAA;QAC1D,IAAI,KAAK,GAAqC,IAAI,CAAA;QAClD,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC/B,IACE,SAAS,CAAC,QAAQ,EAAE,cAAc,KAAK,GAAG,CAAC,EAAE;mBAC1C,CACD,SAAS,CAAC,UAAU,KAAK,gCAAgC;uBACtD,SAAS,CAAC,UAAU,KAAK,kCAAkC;uBAC3D,SAAS,CAAC,UAAU,KAAK,+BAA+B;uBACxD,SAAS,CAAC,UAAU,KAAK,kCAAkC,CAC/D,EACD,CAAC;gBACD,KAAK,GAAG,SAAS,CAAA;gBACjB,MAAK;YACP,CAAC;QACH,CAAC;QACD,MAAM,aAAa,GAAG,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAA;QACjD,MAAM,eAAe,GAAG,OAAO,aAAa,KAAK,QAAQ,IAAI,aAAa,KAAK,IAAI;YACjF,CAAC,CAAC,aAAwC;YAC1C,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,UAAU,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAA;QAC1E,MAAM,eAAe,GAAG,OAAO,UAAU,EAAE,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;YAC5H,CAAC,CAAC,UAAU,CAAC,KAAgC;YAC7C,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,MAAM,GAAG,yBAAyB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAC5D,MAAM,oBAAoB,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAA;QACtE,MAAM,UAAU,GAAyC;YACvD,KAAK;YACL,cAAc,EAAE,WAAW,CAAC,EAAE;YAC9B,GAAG;YACH,eAAe,EAAE,OAAO,UAAU,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;YACnG,SAAS,EAAE,GAAG,CAAC,MAAM,KAAK,WAAW,IAAI,UAAU,EAAE,SAAS,KAAK,IAAI;YACvE,QAAQ,EAAE,OAAO,UAAU,EAAE,QAAQ,KAAK,QAAQ;gBAChD,CAAC,CAAC,UAAU,CAAC,QAAQ;gBACrB,CAAC,CAAC,OAAO,eAAe,EAAE,QAAQ,KAAK,QAAQ;oBAC7C,CAAC,CAAC,eAAe,CAAC,QAAQ;oBAC1B,CAAC,CAAC,QAAQ;YACd,KAAK,EAAE,OAAO,UAAU,EAAE,KAAK,KAAK,QAAQ;gBAC1C,CAAC,CAAC,UAAU,CAAC,KAAK;gBAChB,CAAC,CAAC,OAAO,eAAe,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAC/E,qBAAqB,EAAE,6BAA6B,CAAC,UAAU,EAAE,oBAAoB,IAAI,eAAe,EAAE,oBAAoB,CAAC;YAC/H,cAAc,EAAE,OAAO,UAAU,EAAE,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;YAC5G,qBAAqB,EAAE,0CAA0C,CAAC,UAAU,CAAC;YAC7E,gBAAgB,EAAE,kCAAkC,CAAC,UAAU,EAAE,MAAM,EAAE,oBAAoB,CAAC;YAC9F,sBAAsB,EAAE,oBAAoB;YAC5C,MAAM;SACP,CAAA;QACD,WAAW,CAAC,KAAK,CAAC,KAAK,UAAU,CAAA;QACjC,IAAI,UAAU,CAAC,QAAQ,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAClF,0BAA0B,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;YACrD,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;YACjC,mBAAmB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAC9C,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,kBAAkB,GAAG,GAAG,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE,CAAA;YACzD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACrD,uBAAuB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;gBAC/C,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;gBAC9B,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAC5F,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,SAAiB,EACjB,WAAiC,EACjC,UAAmB,EACnB,YAAoE,EAC7B,EAAE;IACzC,MAAM,cAAc,GAAG,yBAAyB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IACxE,OAAO;QACL,EAAE,EAAE,WAAW,CAAC,EAAE;QAClB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,gBAAgB,EAAE,WAAW,CAAC,gBAAgB;QAC9C,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,qBAAqB,EAAE,WAAW,CAAC,qBAAqB;QACxD,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;QACtD,6BAA6B,EAAE,WAAW,CAAC,6BAA6B;QACxE,6BAA6B,EAAE,WAAW,CAAC,6BAA6B;QACxE,mCAAmC,EAAE,WAAW,CAAC,mCAAmC;QACpF,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,mBAAmB,EAAE,OAAO,WAAW,CAAC,YAAY,CAAC,SAAS,KAAK,QAAQ;YACzE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS;YACpC,CAAC,CAAC,SAAS;QACb,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,uBAAuB,EAAE,WAAW,CAAC,uBAAuB;QAC5D,gBAAgB,EAAE,WAAW,CAAC,gBAAgB;QAC9C,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,cAAc,CAAC,MAAM;QAClC,oBAAoB,EAAE,cAAc,CAAC,UAAU;QAC/C,iBAAiB,EAAE,cAAc,CAAC,OAAO;KAC1C,CAAA;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,KAAK,EAAE,SAAiB,EAA4C,EAAE;IACrG,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,8BAA8B,CAAC,GAAG,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,UAAU,GAAG,4CAA4C,CAAC,OAAO,CAAC,CAAA;IACxE,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;IACpE,MAAM,YAAY,GAAG,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC1D,MAAM,eAAe,GAAG,iCAAiC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACrE,MAAM,iCAAiC,GAAG,eAAe;QACvD,CAAC,CAAC,iCAAiC,CAAC,eAAe,CAAC,OAAO,CAAC,uBAAuB,CAAC;QACpF,CAAC,CAAC,IAAI,CAAA;IACR,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAE,EAAE,CAAC,OAAO,CAAC;;;;GAIhD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAuC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAA;IACxF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QAChG,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YAChD,MAAM,cAAc,GAAG,kDAAkD,CACvE,SAAS,CAAC,gBAAgB,EAC1B,SAAS,CAAC,iBAAiB,EAC3B,SAAS,CAAC,cAAc,EACxB,eAAe,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC,CACrD,CAAA;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAA;YACjH,OAAO,CACL,SAAS,CAAC,aAAa,KAAK,gBAAgB;mBACzC,SAAS,CAAC,gBAAgB,KAAK,cAAc,CAAC,OAAO;mBACrD,SAAS,CAAC,WAAW,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI;mBAC9C,SAAS,CAAC,UAAU,KAAK,MAAM,CAAC,QAAQ,CAAC,GAAG;mBAC5C,SAAS,CAAC,qBAAqB,KAAK,MAAM,CAAC,aAAa;mBACxD,SAAS,CAAC,cAAc,KAAK,QAAQ;mBACrC,SAAS,CAAC,kCAAkC,KAAK,gDAAgD,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC;mBAClI,SAAS,CAAC,6BAA6B,KAAK,eAAe,EAAE,WAAW;mBACxE,SAAS,CAAC,mCAAmC,KAAK,iCAAiC;mBACnF,SAAS,CAAC,uBAAuB,KAAK,IAAI;mBAC1C,SAAS,CAAC,iBAAiB,KAAK,QAAQ;mBACxC,SAAS,CAAC,cAAc,KAAK,KAAK;mBAClC,SAAS,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;mBACxC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK;mBACxC,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC;mBACnE,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAC3C,CAAA;QACH,CAAC,CAAC,CAAA;QACF,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5C,CAAC,CAAC,CAAC,CAAA;IACH,MAAM,sBAAsB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAC,WAAW,EAAC,EAAE;QACpF,MAAM,UAAU,GAAG,2BAA2B,CAC5C,OAAO,CAAC,EAAE,EACV,WAAW,EACX,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,EAC1C,MAAM,+BAA+B,CAAC,WAAW,CAAC,CACnD,CAAA;QACD,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,CAAA;QACxC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/D,MAAM,kBAAkB,GAAG,KAAK,IAAI,UAAU;YAC5C,CAAC,CAAC,yDAAyD,CAAC;gBACxD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,aAAa,EAAE,WAAW,CAAC,EAAE;gBAC7B,KAAK;gBACL,cAAc,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;aAClC,CAAC,KAAK,IAAI;YACb,CAAC,CAAC,KAAK,CAAA;QACT,OAAO,EAAE,GAAG,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAA;IACrF,CAAC,CAAC,CAAC,CAAA;IACH,MAAM,iBAAiB,GAA0D,EAAE,CAAA;IACnF,MAAM,eAAe,GAAwD,EAAE,CAAA;IAC/E,KAAK,MAAM,WAAW,IAAI,sBAAsB,EAAE,CAAC;QACjD,IACE,WAAW,CAAC,WAAW,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI;eAC7C,WAAW,CAAC,UAAU,KAAK,MAAM,CAAC,QAAQ,CAAC,GAAG;eAC9C,WAAW,CAAC,qBAAqB,KAAK,MAAM,CAAC,aAAa;eAC1D,WAAW,CAAC,6BAA6B,KAAK,eAAe,EAAE,WAAW;eAC1E,WAAW,CAAC,mCAAmC,KAAK,iCAAiC;eACrF,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,EAAE,uBAAuB,KAAK,IAAI;eACjG,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,EACzE,CAAC;YACD,SAAQ;QACV,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAU,EAAE,CAAC;YAC7D,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvE,IACE,UAAU,CAAC,QAAQ;uBAChB,UAAU,CAAC,GAAG,CAAC,MAAM,KAAK,WAAW;uBACrC,UAAU,CAAC,GAAG,CAAC,aAAa,KAAK,OAAO;uBACxC,yDAAyD,CAAC;wBAC3D,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,aAAa,EAAE,WAAW,CAAC,EAAE;wBAC7B,KAAK;wBACL,cAAc,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;qBAClC,CAAC,KAAK,IAAI,EACX,CAAC;oBACD,iBAAiB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBAC5G,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE,OAAO,CAAU,EAAE,CAAC;YACnD,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvE,IACE,UAAU,CAAC,GAAG,CAAC,MAAM,KAAK,WAAW;uBAClC,UAAU,CAAC,GAAG,CAAC,aAAa,KAAK,OAAO;uBACxC,yDAAyD,CAAC;wBAC3D,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,aAAa,EAAE,WAAW,CAAC,EAAE;wBAC7B,KAAK;wBACL,cAAc,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;qBAClC,CAAC,KAAK,IAAI,EACX,CAAC;oBACD,SAAQ;gBACV,CAAC;gBACD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAA;gBACvG,MAAM,MAAM,GAAG,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAA;gBACpD,IAAI,MAAM,EAAE,CAAC;oBACX,eAAe,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;gBAC9F,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;YAC1B,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG;YACxB,KAAK,EAAE,UAAU,CAAC,MAAM,IAAI,cAAc;YAC1C,cAAc,EAAE,MAAM,CAAC,aAAa;SACrC;QACD,mBAAmB,EAAE,OAAO,CAAC,wBAAwB;QACrD,kBAAkB,EAAE,iBAAiB;QACrC,gBAAgB,EAAE,eAAe;QACjC,YAAY,EAAE,sBAAsB;KACrC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,GAAY,EAAE,eAAkC,EAAE,EAAE,EAAE;IACvG,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,sBAAsB,EAAE,CAAA;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAA;IAC1E,MAAM,iBAAiB,GAAG,YAAY,CAAC,iBAAiB,IAAI,oCAAoC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC5G,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,IAAI,2BAA2B,CAAA;IACjF,wGAAwG;IACxG,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC3F,MAAM,sBAAsB,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CAAA;IAEtH,GAAG,CAAC,GAAG,CAAC,qCAAqC,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAC5E,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;QAC9C,MAAM,UAAU,GAAG,0CAA0C,CAAC,SAAS,CAAC,CAAA;QACxE,OAAO,GAAG,CAAC,IAAI,CAAC;YACd,GAAG,SAAS;YACZ,UAAU,EAAE;gBACV,GAAG,UAAU;gBACb,gBAAgB,EAAE,kBAAkB,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;aACtF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAC,CAAA;IAEH,GAAG,CAAC,GAAG,CAAC,sCAAsC,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5E,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;QACjF,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAC,CAAA;IAEH,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACnG,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;QACjF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAA;QACtH,MAAM,KAAK,GAAG,8BAA8B,CAAE,GAAG,CAAC,IAAwC,EAAE,KAAK,CAAC,CAAA;QAClG,MAAM,IAAI,GAAG,GAAG,CAAC,IAA2D,CAAA;QAC5E,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAChF,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,4BAA4B,CAChD,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC5D,sBAAsB,CACvB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAC,CAAA;IAEH,GAAG,CAAC,IAAI,CAAC,+CAA+C,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CACvF,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QAC9C,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;QACjF,MAAM,IAAI,GAAG,GAAG,CAAC,IAA4E,CAAA;QAC7F,MAAM,KAAK,GAAG,8BAA8B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACzD,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAChF,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,sCAAsC,CAC1D,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC7C,sBAAsB,CACvB,CAAC,CAAA;IACJ,CAAC,CAAC,CACH,CAAC,CAAC,CAAA;IACH,GAAG,CAAC,IAAI,CAAC,8DAA8D,EAAE,aAAa,CAAC,CAAA;IACvF,GAAG,CAAC,IAAI,CAAC,iEAAiE,EAAE,aAAa,CAAC,CAAA;IAC1F,GAAG,CAAC,IAAI,CAAC,2DAA2D,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAClG,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;QACjF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAA;QACtH,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,kCAAkC,CAAC;gBAC3D,SAAS;gBACT,aAAa;gBACb,YAAY,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE;aACvE,CAAC,CAAA;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAA;QACnG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qCAAqC,EAAE,CAAC;gBAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;gBACnE,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YAChF,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAC,CAAA;IAEH,MAAM,cAAc,GAAG,CACrB,SAImC,EACnC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;QACjF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAA;QACtH,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC;gBAClC,SAAS;gBACT,aAAa;gBACb,YAAY,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE;aACvE,CAAC,CAAA;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,CAAC,CAAA;QACnG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qCAAqC,EAAE,CAAC;gBAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;gBACnE,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YAChF,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,IAAI,CAAC,0DAA0D,EAAE,cAAc,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAC9G,GAAG,CAAC,IAAI,CAAC,4DAA4D,EAAE,cAAc,CAAC,mCAAmC,CAAC,CAAC,CAAA;IAC3H,GAAG,CAAC,IAAI,CAAC,mEAAmE,EAAE,cAAc,CAAC,gCAAgC,CAAC,CAAC,CAAA;IAE/H,GAAG,CAAC,GAAG,CAAC,CAAC,KAAc,EAAE,IAAa,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QAC3E,IAAI,KAAK,YAAY,8BAA8B,EAAE,CAAC;YACpD,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QACtF,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -10,7 +10,12 @@ import { getModelProvider, normalizeModelProvider } from './models.js';
10
10
  import { getAgentModelProvider } from './agentCatalog.js';
11
11
  import { normalizeSkillNames } from './skills.js';
12
12
  import { connectCodexStreamingInvocation } from './codexAgentProvider.js';
13
- export const EXECUTION_ENVIRONMENT_VALIDATION_SCHEMA_VERSION = '14';
13
+ import { inspectOpencodeCliFeatureSurface, inspectOpencodeRelease } from './opencodeCli.js';
14
+ import { decodeOpencodeStreamEvent } from './opencodeStream.js';
15
+ import { ARCHON_OPENCODE_SESSION_CONTRACT_VERSION } from './opencodeV2SessionOperations.js';
16
+ import { isDockerSandboxOpencodeRuntimeQualified } from './dockerSandboxReleaseProfiles.js';
17
+ export const EXECUTION_ENVIRONMENT_VALIDATION_SCHEMA_VERSION = '15';
18
+ export const OPENCODE_VALIDATION_SUPPORT_POLICY_REVISION = '1';
14
19
  const DEFAULT_CHECK_TIMEOUT_MS = 30_000;
15
20
  const DEFAULT_CLAUDE_DESTINATION_TIMEOUT_MS = 90_000;
16
21
  const DEFAULT_VALIDATION_TIMEOUT_MS = 180_000;
@@ -33,6 +38,12 @@ const CHECK_RUNTIME_SENTINEL = 'ARCHON_CHECK_RUNTIME_OK';
33
38
  const resolveValidationProvider = (agent, options) => normalizeModelProvider(options.provider)
34
39
  || (agent === 'opencode' ? getModelProvider(options.model) : getAgentModelProvider(agent, options.model))
35
40
  || null;
41
+ const syntheticCommandResult = (args, value) => ({
42
+ args,
43
+ stdout: JSON.stringify(value),
44
+ stderr: '',
45
+ exitCode: 0,
46
+ });
36
47
  const parseGuestSkillNames = (output) => {
37
48
  const names = output
38
49
  .split(/\r?\n/)
@@ -65,17 +76,82 @@ const guestSkillInvocation = (requestedSkills) => ({
65
76
  args: ['-c', GUEST_SKILL_INVENTORY_SCRIPT],
66
77
  validate: (result) => evaluatesGuestSkills(result, requestedSkills),
67
78
  });
68
- const evaluatesOpencodeVersion = (result) => {
69
- const runtimeVersion = result.stdout.trim();
70
- if (!/^\d+\.\d+\.\d+$/.test(runtimeVersion)) {
79
+ const evaluatesOpencodeVersion = (result, compatibility = inspectOpencodeRelease(result.stdout)) => {
80
+ if (compatibility.status !== 'supported') {
71
81
  return {
72
82
  passed: false,
73
- details: { reason: 'runtime_version_unrecognized' },
83
+ details: {
84
+ reason: 'runtime_version_unrecognized',
85
+ ...(compatibility.status === 'unsupported'
86
+ ? { runtimeVersion: compatibility.runtimeIdentity.version }
87
+ : {}),
88
+ },
89
+ };
90
+ }
91
+ if (!isDockerSandboxOpencodeRuntimeQualified(compatibility.runtimeIdentity)) {
92
+ return {
93
+ passed: false,
94
+ details: {
95
+ reason: 'sandbox_runtime_unqualified',
96
+ runtimeVersion: compatibility.runtimeIdentity.version,
97
+ runtimeMajor: compatibility.runtimeIdentity.major,
98
+ supportPolicyRevision: OPENCODE_VALIDATION_SUPPORT_POLICY_REVISION,
99
+ },
74
100
  };
75
101
  }
76
102
  return {
77
103
  passed: true,
78
- details: { runtimeVersion },
104
+ details: {
105
+ runtimeVersion: compatibility.runtimeIdentity.version,
106
+ runtimeMajor: compatibility.runtimeIdentity.major,
107
+ supportPolicyRevision: OPENCODE_VALIDATION_SUPPORT_POLICY_REVISION,
108
+ },
109
+ };
110
+ };
111
+ const findExactOpencodeSessionId = (result) => {
112
+ const events = parseJsonLines(result.stdout);
113
+ if (!events) {
114
+ return null;
115
+ }
116
+ const sessionIds = new Set(events.flatMap(event => {
117
+ const sessionId = decodeOpencodeStreamEvent(event).sessionId;
118
+ return sessionId ? [sessionId] : [];
119
+ }));
120
+ return sessionIds.size === 1 ? [...sessionIds][0] : null;
121
+ };
122
+ const evaluatesOpencodeSessionApi = (result) => {
123
+ let evaluation;
124
+ try {
125
+ evaluation = JSON.parse(result.stdout);
126
+ }
127
+ catch {
128
+ evaluation = { status: 'unsupported', reason: 'The session API probe returned malformed evidence.' };
129
+ }
130
+ if (evaluation.status === 'compatible' && evaluation.contractVersion === ARCHON_OPENCODE_SESSION_CONTRACT_VERSION) {
131
+ return {
132
+ passed: true,
133
+ details: {
134
+ sessionApiStatus: 'compatible',
135
+ sessionApiContractVersion: ARCHON_OPENCODE_SESSION_CONTRACT_VERSION,
136
+ },
137
+ };
138
+ }
139
+ if (evaluation.status === 'not_required') {
140
+ return { passed: true, details: { sessionApiStatus: 'not_required' } };
141
+ }
142
+ const status = evaluation.status === 'unavailable' ? 'unavailable' : 'unsupported';
143
+ const reason = evaluation.status === 'unavailable' || evaluation.status === 'unsupported'
144
+ ? evaluation.reason
145
+ : `The session API reported unsupported contract ${String('contractVersion' in evaluation ? evaluation.contractVersion : 'unknown')}.`;
146
+ return {
147
+ passed: false,
148
+ details: {
149
+ sessionApiStatus: status,
150
+ sessionApiReason: reason.slice(0, 300),
151
+ reason: 'missingDestinationSessionId' in evaluation && evaluation.missingDestinationSessionId === true
152
+ ? 'session_id_unavailable'
153
+ : status === 'unavailable' ? 'session_api_unavailable' : 'session_api_unsupported',
154
+ },
79
155
  };
80
156
  };
81
157
  const parseOpencodeProviderError = (event) => {
@@ -318,18 +394,25 @@ const sanitizeProviderReference = (value) => {
318
394
  return /^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/.test(normalized) ? normalized : undefined;
319
395
  };
320
396
  const sanitizeValidationDetails = (details, workspacePath) => {
321
- if (!details?.providerError) {
397
+ if (!details) {
322
398
  return details;
323
399
  }
324
- const providerError = details.providerError;
325
- const sanitizedProviderError = {
326
- ...(providerError.name ? { name: sanitizeEvidence(providerError.name, workspacePath).summary.slice(0, 100) } : {}),
327
- ...(providerError.message ? { message: sanitizeEvidence(providerError.message, workspacePath).summary } : {}),
328
- ...(providerError.reference ? { reference: sanitizeProviderReference(providerError.reference) } : {}),
329
- ...(providerError.provider ? { provider: sanitizeEvidence(providerError.provider, workspacePath).summary.slice(0, 100) } : {}),
330
- ...(providerError.model ? { model: sanitizeEvidence(providerError.model, workspacePath).summary.slice(0, 200) } : {}),
400
+ const sanitizedProviderError = details.providerError
401
+ ? {
402
+ ...(details.providerError.name ? { name: sanitizeEvidence(details.providerError.name, workspacePath).summary.slice(0, 100) } : {}),
403
+ ...(details.providerError.message ? { message: sanitizeEvidence(details.providerError.message, workspacePath).summary } : {}),
404
+ ...(details.providerError.reference ? { reference: sanitizeProviderReference(details.providerError.reference) } : {}),
405
+ ...(details.providerError.provider ? { provider: sanitizeEvidence(details.providerError.provider, workspacePath).summary.slice(0, 100) } : {}),
406
+ ...(details.providerError.model ? { model: sanitizeEvidence(details.providerError.model, workspacePath).summary.slice(0, 200) } : {}),
407
+ }
408
+ : undefined;
409
+ return {
410
+ ...details,
411
+ ...(sanitizedProviderError ? { providerError: sanitizedProviderError } : {}),
412
+ ...(details.sessionApiReason
413
+ ? { sessionApiReason: sanitizeEvidence(details.sessionApiReason, workspacePath).summary.slice(0, 300) }
414
+ : {}),
331
415
  };
332
- return { ...details, providerError: sanitizedProviderError };
333
416
  };
334
417
  const resultEvidence = (result, workspacePath) => {
335
418
  const combined = [result.stdout, result.stderr].filter(Boolean).join('\n');
@@ -711,13 +794,36 @@ const agentInvocations = (agent, model, provider, includeSkills, requestedSkills
711
794
  }
712
795
  if (agent === 'opencode') {
713
796
  const sentinel = 'ARCHON_VALIDATION_OK';
797
+ let compatibility = null;
798
+ let destinationSessionId = null;
714
799
  return [
715
- { kind: 'executable', command: 'opencode', args: ['--version'], validate: evaluatesOpencodeVersion },
800
+ {
801
+ kind: 'executable',
802
+ command: 'opencode',
803
+ args: ['--version'],
804
+ validate: result => {
805
+ compatibility = inspectOpencodeRelease(result.stdout);
806
+ return evaluatesOpencodeVersion(result, compatibility);
807
+ },
808
+ },
716
809
  {
717
810
  kind: 'headless',
718
811
  command: 'opencode',
719
812
  args: ['run', '--help'],
720
- validate: result => /--format/.test(`${result.stdout}\n${result.stderr}`),
813
+ validate: result => {
814
+ if (compatibility?.status !== 'supported') {
815
+ return { passed: false };
816
+ }
817
+ const observed = inspectOpencodeCliFeatureSurface(compatibility, `${result.stdout}\n${result.stderr}`);
818
+ const missingCapabilities = Object.entries(compatibility.capabilities)
819
+ .filter(([capability, required]) => capability !== 'standaloneServer'
820
+ && Boolean(required)
821
+ && !observed.capabilities[capability])
822
+ .map(([capability]) => capability);
823
+ return missingCapabilities.length === 0
824
+ ? { passed: true }
825
+ : { passed: false, details: { reason: 'runtime_capability_missing', missingCapabilities } };
826
+ },
721
827
  },
722
828
  ...(includeSkills ? [guestSkillInvocation(requestedSkills)] : []),
723
829
  {
@@ -735,7 +841,47 @@ const agentInvocations = (agent, model, provider, includeSkills, requestedSkills
735
841
  kind: 'destination',
736
842
  command: 'opencode',
737
843
  args: ['run', '--model', model, '--agent', 'plan', '--format', 'json', `Reply with exactly ${sentinel}. Do not use tools.`],
738
- validate: (result) => evaluatesOpencodeDestination(sentinel, result),
844
+ validate: (result) => {
845
+ destinationSessionId = findExactOpencodeSessionId(result);
846
+ return evaluatesOpencodeDestination(sentinel, result);
847
+ },
848
+ },
849
+ {
850
+ kind: 'session_api',
851
+ command: 'opencode',
852
+ args: ['api'],
853
+ execute: async (_executor, commandOptions) => {
854
+ const args = ['api'];
855
+ if (compatibility?.status !== 'supported' || compatibility.runtimeIdentity.major !== 2) {
856
+ return syntheticCommandResult(args, { status: 'not_required' });
857
+ }
858
+ if (!destinationSessionId) {
859
+ return syntheticCommandResult(args, {
860
+ status: 'unsupported',
861
+ reason: 'The destination response did not expose one exact session ID.',
862
+ missingDestinationSessionId: true,
863
+ });
864
+ }
865
+ if (!options.sessionApiProbe) {
866
+ return syntheticCommandResult(args, {
867
+ status: 'unavailable',
868
+ reason: 'The OpenCode session API probe is unavailable.',
869
+ });
870
+ }
871
+ try {
872
+ const probe = await options.sessionApiProbe({
873
+ sessionId: destinationSessionId,
874
+ cwd: commandOptions.cwd,
875
+ signal: commandOptions.signal,
876
+ });
877
+ return syntheticCommandResult(args, probe);
878
+ }
879
+ catch (error) {
880
+ const reason = error instanceof Error ? error.message : 'The OpenCode session API probe failed.';
881
+ return syntheticCommandResult(args, { status: 'unavailable', reason: reason.slice(0, 300) });
882
+ }
883
+ },
884
+ validate: evaluatesOpencodeSessionApi,
739
885
  }]
740
886
  : []),
741
887
  ];
@@ -798,7 +944,7 @@ const agentInvocations = (agent, model, provider, includeSkills, requestedSkills
798
944
  };
799
945
  const runChecks = async (executor, workspacePath, agent, invocations, options, deadlineAt) => {
800
946
  const checks = [];
801
- for (const invocation of invocations) {
947
+ for (const [index, invocation] of invocations.entries()) {
802
948
  if ((agent === 'opencode' || agent === 'codex') && invocation.kind === 'destination' && !options.model) {
803
949
  checks.push({
804
950
  kind: invocation.kind,
@@ -815,6 +961,13 @@ const runChecks = async (executor, workspacePath, agent, invocations, options, d
815
961
  }
816
962
  const check = await runCheck(executor, workspacePath, agent, invocation, options, deadlineAt);
817
963
  checks.push(check);
964
+ if (check.state === 'failed'
965
+ && invocation.kind === 'executable'
966
+ && check.details?.reason === 'sandbox_runtime_unqualified'
967
+ && agent) {
968
+ checks.push(...skippedChecks(invocations.slice(index + 1), invocation.kind, agent));
969
+ break;
970
+ }
818
971
  if (check.state === 'cancelled') {
819
972
  break;
820
973
  }
@@ -825,6 +978,32 @@ const validationChecksReady = (checks) => {
825
978
  const destinationPassed = checks.some(check => check.kind === 'destination' && check.state === 'passed');
826
979
  return checks.every(check => check.state === 'passed' || (check.kind === 'authentication' && destinationPassed));
827
980
  };
981
+ const resolveOpencodeRuntimeEvidence = (checks) => {
982
+ const runtime = checks.find(check => check.kind === 'executable' && check.state === 'passed')?.details;
983
+ if (!runtime?.runtimeVersion
984
+ || !Number.isSafeInteger(runtime.runtimeMajor)
985
+ || runtime.supportPolicyRevision !== OPENCODE_VALIDATION_SUPPORT_POLICY_REVISION) {
986
+ return undefined;
987
+ }
988
+ const sessionApi = checks.find(check => check.kind === 'session_api')?.details;
989
+ const sessionApiEvidence = sessionApi?.sessionApiStatus === 'compatible'
990
+ && sessionApi.sessionApiContractVersion === ARCHON_OPENCODE_SESSION_CONTRACT_VERSION
991
+ ? { status: 'compatible', contractVersion: ARCHON_OPENCODE_SESSION_CONTRACT_VERSION }
992
+ : sessionApi?.sessionApiStatus === 'not_required'
993
+ ? { status: 'not_required' }
994
+ : sessionApi?.sessionApiStatus === 'unavailable' || sessionApi?.sessionApiStatus === 'unsupported'
995
+ ? { status: sessionApi.sessionApiStatus, reason: sessionApi.sessionApiReason?.slice(0, 300) || sessionApi.sessionApiStatus }
996
+ : null;
997
+ if (!sessionApiEvidence) {
998
+ return undefined;
999
+ }
1000
+ return {
1001
+ observedVersion: runtime.runtimeVersion.slice(0, 100),
1002
+ observedMajor: runtime.runtimeMajor,
1003
+ supportPolicyRevision: OPENCODE_VALIDATION_SUPPORT_POLICY_REVISION,
1004
+ sessionApi: sessionApiEvidence,
1005
+ };
1006
+ };
828
1007
  export const validateExecutionEnvironmentForAgent = async (adapter, expected, agent, options = {}) => {
829
1008
  const executor = {
830
1009
  run: (command, args, commandOptions) => adapter.exec(expected, command, args, commandOptions),
@@ -859,6 +1038,7 @@ export const validateExecutionEnvironmentForAgent = async (adapter, expected, ag
859
1038
  provider,
860
1039
  model: agent === 'opencode' || agent === 'codex' ? options.model ?? null : null,
861
1040
  credentialCapability,
1041
+ ...(agent === 'opencode' ? { runtimeEvidence: resolveOpencodeRuntimeEvidence(checks) } : {}),
862
1042
  checks: allChecks,
863
1043
  agent: {
864
1044
  agent,