@straiffi/archon 1.8.23 → 1.10.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 (219) hide show
  1. package/dist/client/assets/{ActivityView-BaIZ8eHC.js → ActivityView-Y5IaJiim.js} +1 -1
  2. package/dist/client/assets/GitHubActionsDialog-GWVxWGPK.js +1 -0
  3. package/dist/client/assets/VerificationDialog-C4RMuI4y.js +4 -0
  4. package/dist/client/assets/{architectureDiagram-3BPJPVTR-Dl5UF67P.js → architectureDiagram-3BPJPVTR-CeM6gbLN.js} +1 -1
  5. package/dist/client/assets/{blockDiagram-GPEHLZMM-DCcERfrZ.js → blockDiagram-GPEHLZMM-BP4hta96.js} +1 -1
  6. package/dist/client/assets/{c4Diagram-AAUBKEIU-BGhbASFm.js → c4Diagram-AAUBKEIU-5aJScvhn.js} +1 -1
  7. package/dist/client/assets/channel-B3DjZXbm.js +1 -0
  8. package/dist/client/assets/{chunk-2J33WTMH-C1ARozTV.js → chunk-2J33WTMH-BKc2IelV.js} +1 -1
  9. package/dist/client/assets/{chunk-3OPIFGDE-BEovLizF.js → chunk-3OPIFGDE-DCc15la5.js} +1 -1
  10. package/dist/client/assets/{chunk-5ZQYHXKU-C5MmlLa_.js → chunk-5ZQYHXKU-DSD9HbTp.js} +1 -1
  11. package/dist/client/assets/{chunk-727SXJPM-8y8jBk4n.js → chunk-727SXJPM-DrAjnKiA.js} +1 -1
  12. package/dist/client/assets/{chunk-AQP2D5EJ-q-mByAd3.js → chunk-AQP2D5EJ-DxKnpHfQ.js} +1 -1
  13. package/dist/client/assets/{chunk-CSCIHK7Q-BOx2mLSz.js → chunk-CSCIHK7Q-DLejrAB_.js} +1 -1
  14. package/dist/client/assets/{chunk-KSCS5N6A-zEwQFq7q.js → chunk-KSCS5N6A-BWRNmF8S.js} +1 -1
  15. package/dist/client/assets/{chunk-L5ZTLDWV-C80z6rY_.js → chunk-L5ZTLDWV-D48i966f.js} +1 -1
  16. package/dist/client/assets/{chunk-LZXEDZCA-BLaEsGPd.js → chunk-LZXEDZCA-DLhg6Bok.js} +2 -2
  17. package/dist/client/assets/{chunk-ND2GUHAM-x26BZ95L.js → chunk-ND2GUHAM-B4-7cOEq.js} +1 -1
  18. package/dist/client/assets/{chunk-NZK2D7GU-D2WAxr1p.js → chunk-NZK2D7GU-D2ttXA_d.js} +1 -1
  19. package/dist/client/assets/{chunk-O5CBEL6O-DDPCrzKh.js → chunk-O5CBEL6O-BrWrOVCq.js} +1 -1
  20. package/dist/client/assets/{chunk-WU5MYG2G-CE-JcvIc.js → chunk-WU5MYG2G-CLcPwxPe.js} +1 -1
  21. package/dist/client/assets/classDiagram-4FO5ZUOK-DproSkn2.js +1 -0
  22. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-JVMMzJxJ.js +1 -0
  23. package/dist/client/assets/{dagre-BM42HDAG-Bf7wpUk_.js → dagre-BM42HDAG-DIXN8_VX.js} +1 -1
  24. package/dist/client/assets/{diagram-2AECGRRQ-BQoKmc3B.js → diagram-2AECGRRQ-D2wjdCij.js} +1 -1
  25. package/dist/client/assets/{diagram-5GNKFQAL-D2jarPLn.js → diagram-5GNKFQAL-E1Og_PHE.js} +1 -1
  26. package/dist/client/assets/{diagram-KO2AKTUF-Bcbbjvsl.js → diagram-KO2AKTUF-B6P1Ud8a.js} +1 -1
  27. package/dist/client/assets/{diagram-LMA3HP47-t862RRBQ.js → diagram-LMA3HP47-C3Jxq56v.js} +1 -1
  28. package/dist/client/assets/{diagram-OG6HWLK6-CacbMcO0.js → diagram-OG6HWLK6-Do9LVhdL.js} +1 -1
  29. package/dist/client/assets/{erDiagram-TEJ5UH35-DRQ79baI.js → erDiagram-TEJ5UH35-DLb5E4-f.js} +1 -1
  30. package/dist/client/assets/{flowDiagram-I6XJVG4X-BfW4KEdc.js → flowDiagram-I6XJVG4X-CcTs_wU9.js} +1 -1
  31. package/dist/client/assets/{ganttDiagram-6RSMTGT7-BPIl0TAj.js → ganttDiagram-6RSMTGT7-q9ez5fri.js} +1 -1
  32. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CRIusBMV.js → gitGraphDiagram-PVQCEYII-BcaKiz4c.js} +1 -1
  33. package/dist/client/assets/index-1CokwSFm.css +2 -0
  34. package/dist/client/assets/index-CSOKbu3w.js +276 -0
  35. package/dist/client/assets/{infoDiagram-5YYISTIA-DTKzK8EJ.js → infoDiagram-5YYISTIA-Cu0w4frE.js} +1 -1
  36. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-DVIHZLvL.js → ishikawaDiagram-YF4QCWOH-CJ47Z-ak.js} +1 -1
  37. package/dist/client/assets/{journeyDiagram-JHISSGLW-CQBZ4tCx.js → journeyDiagram-JHISSGLW-fAL_Zcvs.js} +1 -1
  38. package/dist/client/assets/{kanban-definition-UN3LZRKU-D7naegR0.js → kanban-definition-UN3LZRKU-BTNIybMC.js} +1 -1
  39. package/dist/client/assets/{line-CizZlaeV.js → line-BvsadeZR.js} +1 -1
  40. package/dist/client/assets/{mermaid-parser.core-NrDqgpZa.js → mermaid-parser.core-C0EkH2y_.js} +1 -1
  41. package/dist/client/assets/{mermaid.core-CwVO3oX0.js → mermaid.core-BU5QIIbY.js} +3 -3
  42. package/dist/client/assets/{mindmap-definition-RKZ34NQL-BWxy3Aa_.js → mindmap-definition-RKZ34NQL-CWbSYK8f.js} +1 -1
  43. package/dist/client/assets/{pieDiagram-4H26LBE5-B3gXpmBn.js → pieDiagram-4H26LBE5-t4w2cB-y.js} +1 -1
  44. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-Dpp4g8Al.js → quadrantDiagram-W4KKPZXB-Cqasvrpa.js} +1 -1
  45. package/dist/client/assets/{requirementDiagram-4Y6WPE33-lFKXnxml.js → requirementDiagram-4Y6WPE33-_l-mY-tb.js} +1 -1
  46. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-BBdtwqrS.js → sankeyDiagram-5OEKKPKP-Cr9YrZ-Y.js} +1 -1
  47. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-ANpVZzqm.js → sequenceDiagram-3UESZ5HK-DvzZhQpb.js} +1 -1
  48. package/dist/client/assets/{stateDiagram-AJRCARHV-D58ZxmKY.js → stateDiagram-AJRCARHV-cFjPpAO3.js} +1 -1
  49. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-btHMH5Cg.js +1 -0
  50. package/dist/client/assets/{timeline-definition-PNZ67QCA-B6FK8IQC.js → timeline-definition-PNZ67QCA-BjRNrEJY.js} +1 -1
  51. package/dist/client/assets/{vennDiagram-CIIHVFJN-lFWtZEEY.js → vennDiagram-CIIHVFJN-xs9afjrw.js} +1 -1
  52. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-DteAVp4l.js → wardleyDiagram-YWT4CUSO-DH68ZYti.js} +1 -1
  53. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CNcDlRLN.js → xychartDiagram-2RQKCTM6-DLW5ktTU.js} +1 -1
  54. package/dist/client/index.html +2 -2
  55. package/dist/server/db.js +225 -12
  56. package/dist/server/db.js.map +1 -1
  57. package/dist/server/index.js +80 -26
  58. package/dist/server/index.js.map +1 -1
  59. package/dist/server/lib/agent.js +368 -143
  60. package/dist/server/lib/agent.js.map +1 -1
  61. package/dist/server/lib/agentProvider.js.map +1 -1
  62. package/dist/server/lib/approvalReconciliation.js +14 -2
  63. package/dist/server/lib/approvalReconciliation.js.map +1 -1
  64. package/dist/server/lib/buildExecutionEnvironment.js +251 -57
  65. package/dist/server/lib/buildExecutionEnvironment.js.map +1 -1
  66. package/dist/server/lib/chatOperations.js +125 -3
  67. package/dist/server/lib/chatOperations.js.map +1 -1
  68. package/dist/server/lib/chatPostBuildRuns.js +12 -6
  69. package/dist/server/lib/chatPostBuildRuns.js.map +1 -1
  70. package/dist/server/lib/chatTargets.js +2 -1
  71. package/dist/server/lib/chatTargets.js.map +1 -1
  72. package/dist/server/lib/checkDefinitionCwd.js +34 -0
  73. package/dist/server/lib/checkDefinitionCwd.js.map +1 -0
  74. package/dist/server/lib/checkExecutionEnvironment.js +95 -0
  75. package/dist/server/lib/checkExecutionEnvironment.js.map +1 -0
  76. package/dist/server/lib/checkPolicyDefinitionIds.js +41 -0
  77. package/dist/server/lib/checkPolicyDefinitionIds.js.map +1 -0
  78. package/dist/server/lib/checkRepairDispatch.js +2 -0
  79. package/dist/server/lib/checkRepairDispatch.js.map +1 -1
  80. package/dist/server/lib/checkRunner.js +371 -175
  81. package/dist/server/lib/checkRunner.js.map +1 -1
  82. package/dist/server/lib/checkRuns.js +99 -8
  83. package/dist/server/lib/checkRuns.js.map +1 -1
  84. package/dist/server/lib/claudeAgentProvider.js +3 -6
  85. package/dist/server/lib/claudeAgentProvider.js.map +1 -1
  86. package/dist/server/lib/claudeStdin.js +27 -0
  87. package/dist/server/lib/claudeStdin.js.map +1 -0
  88. package/dist/server/lib/completedAssistantOutput.js +38 -0
  89. package/dist/server/lib/completedAssistantOutput.js.map +1 -0
  90. package/dist/server/lib/consequentialActionAuthority.js +99 -8
  91. package/dist/server/lib/consequentialActionAuthority.js.map +1 -1
  92. package/dist/server/lib/consequentialActions.js +42 -2
  93. package/dist/server/lib/consequentialActions.js.map +1 -1
  94. package/dist/server/lib/dockerSandboxCredentials.js +10 -3
  95. package/dist/server/lib/dockerSandboxCredentials.js.map +1 -1
  96. package/dist/server/lib/dockerSandboxEnvironmentOperations.js +9 -8
  97. package/dist/server/lib/dockerSandboxEnvironmentOperations.js.map +1 -1
  98. package/dist/server/lib/dockerSandboxExecutionEnvironment.js +149 -74
  99. package/dist/server/lib/dockerSandboxExecutionEnvironment.js.map +1 -1
  100. package/dist/server/lib/dockerSandboxExecutionProvider.js +22 -14
  101. package/dist/server/lib/dockerSandboxExecutionProvider.js.map +1 -1
  102. package/dist/server/lib/dockerSandboxNetworkPolicy.js +23 -14
  103. package/dist/server/lib/dockerSandboxNetworkPolicy.js.map +1 -1
  104. package/dist/server/lib/dockerSandboxReleaseProfiles.js +91 -0
  105. package/dist/server/lib/dockerSandboxReleaseProfiles.js.map +1 -0
  106. package/dist/server/lib/dockerSandboxRuntimeController.js +16 -1
  107. package/dist/server/lib/dockerSandboxRuntimeController.js.map +1 -1
  108. package/dist/server/lib/executionCredentialCapabilities.js +9 -6
  109. package/dist/server/lib/executionCredentialCapabilities.js.map +1 -1
  110. package/dist/server/lib/executionEnvironment.js.map +1 -1
  111. package/dist/server/lib/executionEnvironmentLifecycle.js +7 -0
  112. package/dist/server/lib/executionEnvironmentLifecycle.js.map +1 -1
  113. package/dist/server/lib/executionEnvironmentOperations.js +241 -0
  114. package/dist/server/lib/executionEnvironmentOperations.js.map +1 -0
  115. package/dist/server/lib/executionEnvironmentReconciliation.js +98 -3
  116. package/dist/server/lib/executionEnvironmentReconciliation.js.map +1 -1
  117. package/dist/server/lib/executionEnvironmentRoutes.js +66 -27
  118. package/dist/server/lib/executionEnvironmentRoutes.js.map +1 -1
  119. package/dist/server/lib/executionEnvironmentValidation.js +2 -2
  120. package/dist/server/lib/executionEnvironmentValidation.js.map +1 -1
  121. package/dist/server/lib/executionEnvironmentValidationOperations.js +58 -31
  122. package/dist/server/lib/executionEnvironmentValidationOperations.js.map +1 -1
  123. package/dist/server/lib/executionEnvironments.js +187 -9
  124. package/dist/server/lib/executionEnvironments.js.map +1 -1
  125. package/dist/server/lib/executionProfileCheckPolicy.js +14 -0
  126. package/dist/server/lib/executionProfileCheckPolicy.js.map +1 -0
  127. package/dist/server/lib/executionProfileRoutes.js +9 -1
  128. package/dist/server/lib/executionProfileRoutes.js.map +1 -1
  129. package/dist/server/lib/executionProfileStore.js +5 -3
  130. package/dist/server/lib/executionProfileStore.js.map +1 -1
  131. package/dist/server/lib/executionProfiles.js +97 -15
  132. package/dist/server/lib/executionProfiles.js.map +1 -1
  133. package/dist/server/lib/executionReconciliation.js +43 -6
  134. package/dist/server/lib/executionReconciliation.js.map +1 -1
  135. package/dist/server/lib/executionRunAuthority.js +115 -24
  136. package/dist/server/lib/executionRunAuthority.js.map +1 -1
  137. package/dist/server/lib/executionTargets.js +30 -4
  138. package/dist/server/lib/executionTargets.js.map +1 -1
  139. package/dist/server/lib/executionWorkloads.js +75 -0
  140. package/dist/server/lib/executionWorkloads.js.map +1 -0
  141. package/dist/server/lib/git.js +10 -1
  142. package/dist/server/lib/git.js.map +1 -1
  143. package/dist/server/lib/opencodeAgentProvider.js +3 -1
  144. package/dist/server/lib/opencodeAgentProvider.js.map +1 -1
  145. package/dist/server/lib/opencodeSessionOperations.js +5 -3
  146. package/dist/server/lib/opencodeSessionOperations.js.map +1 -1
  147. package/dist/server/lib/planQuestions.js +2 -1
  148. package/dist/server/lib/planQuestions.js.map +1 -1
  149. package/dist/server/lib/postBuildCheckRuns.js +9 -5
  150. package/dist/server/lib/postBuildCheckRuns.js.map +1 -1
  151. package/dist/server/lib/preview.js +47 -6
  152. package/dist/server/lib/preview.js.map +1 -1
  153. package/dist/server/lib/previewProxy.js +11 -3
  154. package/dist/server/lib/previewProxy.js.map +1 -1
  155. package/dist/server/lib/productionCheckApprovals.js +97 -35
  156. package/dist/server/lib/productionCheckApprovals.js.map +1 -1
  157. package/dist/server/lib/projectMemorySuggestions.js +29 -6
  158. package/dist/server/lib/projectMemorySuggestions.js.map +1 -1
  159. package/dist/server/lib/requiredCheckPolicy.js +3 -40
  160. package/dist/server/lib/requiredCheckPolicy.js.map +1 -1
  161. package/dist/server/lib/reviewAgentWatchdog.js +75 -0
  162. package/dist/server/lib/reviewAgentWatchdog.js.map +1 -0
  163. package/dist/server/lib/reviewFindingReconciliation.js +176 -0
  164. package/dist/server/lib/reviewFindingReconciliation.js.map +1 -0
  165. package/dist/server/lib/reviewFindings.js +33 -11
  166. package/dist/server/lib/reviewFindings.js.map +1 -1
  167. package/dist/server/lib/run.js +370 -80
  168. package/dist/server/lib/run.js.map +1 -1
  169. package/dist/server/lib/serviceRuns.js +196 -0
  170. package/dist/server/lib/serviceRuns.js.map +1 -0
  171. package/dist/server/lib/sessionTargets.js +34 -0
  172. package/dist/server/lib/sessionTargets.js.map +1 -1
  173. package/dist/server/lib/shell.js +20 -0
  174. package/dist/server/lib/shell.js.map +1 -1
  175. package/dist/server/lib/specArtifact.js +36 -15
  176. package/dist/server/lib/specArtifact.js.map +1 -1
  177. package/dist/server/lib/specBundleGroups.js +4 -4
  178. package/dist/server/lib/specBundleGroups.js.map +1 -1
  179. package/dist/server/lib/specOperations.js +2 -0
  180. package/dist/server/lib/specOperations.js.map +1 -1
  181. package/dist/server/lib/specReviewOperations.js +2 -0
  182. package/dist/server/lib/specReviewOperations.js.map +1 -1
  183. package/dist/server/lib/specTicketMaterialization.js +37 -24
  184. package/dist/server/lib/specTicketMaterialization.js.map +1 -1
  185. package/dist/server/lib/ticketFollowUpOperations.js +9 -4
  186. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  187. package/dist/server/lib/ticketRunOperations.js +1 -0
  188. package/dist/server/lib/ticketRunOperations.js.map +1 -1
  189. package/dist/server/lib/types.js +1 -0
  190. package/dist/server/lib/types.js.map +1 -1
  191. package/dist/server/lib/workloadExecutionEnvironment.js +2 -0
  192. package/dist/server/lib/workloadExecutionEnvironment.js.map +1 -0
  193. package/dist/server/lib/workspaceIdentity.js +30 -6
  194. package/dist/server/lib/workspaceIdentity.js.map +1 -1
  195. package/dist/server/workers/build.js +39 -8
  196. package/dist/server/workers/build.js.map +1 -1
  197. package/dist/server/workers/chat.js +142 -15
  198. package/dist/server/workers/chat.js.map +1 -1
  199. package/dist/server/workers/followUp.js +77 -20
  200. package/dist/server/workers/followUp.js.map +1 -1
  201. package/dist/server/workers/plan.js +295 -48
  202. package/dist/server/workers/plan.js.map +1 -1
  203. package/dist/server/workers/planFollowUp.js +77 -7
  204. package/dist/server/workers/planFollowUp.js.map +1 -1
  205. package/dist/server/workers/review.js +149 -38
  206. package/dist/server/workers/review.js.map +1 -1
  207. package/dist/server/workers/specReview.js +43 -5
  208. package/dist/server/workers/specReview.js.map +1 -1
  209. package/dist/server/workers/specSession.js +156 -31
  210. package/dist/server/workers/specSession.js.map +1 -1
  211. package/package.json +1 -1
  212. package/dist/client/assets/GitHubActionsDialog-BFCqikDY.js +0 -1
  213. package/dist/client/assets/VerificationDialog-B1_6HMdt.js +0 -4
  214. package/dist/client/assets/channel-BfskvH2B.js +0 -1
  215. package/dist/client/assets/classDiagram-4FO5ZUOK-D4HPfxL3.js +0 -1
  216. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DQQ_WqAU.js +0 -1
  217. package/dist/client/assets/index-CZ1z72fo.js +0 -276
  218. package/dist/client/assets/index-SMj5ZmMs.css +0 -2
  219. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-Cv8cmDfz.js +0 -1
@@ -1,6 +1,8 @@
1
1
  import { spawn } from 'node:child_process';
2
+ import { isAbsolute, relative } from 'node:path';
2
3
  import { ExecutionEnvironmentFailure as EnvironmentFailure, ExecutionEnvironmentUnsupportedFailure, ExecutionPlacementTerminationFailure, normalizeExecutionEnvironmentFailure, } from './executionEnvironment.js';
3
- import { DOCKER_SANDBOX_PROVIDER, QUALIFIED_SBX_VERSION, dockerSandboxExecutionEnvironmentObservation, } from './dockerSandboxExecutionEnvironment.js';
4
+ import { DOCKER_SANDBOX_PROVIDER, dockerSandboxExecutionEnvironmentObservation, } from './dockerSandboxExecutionEnvironment.js';
5
+ import { RECOMMENDED_DOCKER_SANDBOX_RELEASE } from './dockerSandboxReleaseProfiles.js';
4
6
  const MAX_IDENTITY_COMPONENT_BYTES = 500;
5
7
  const GUEST_LAUNCH_PROBE_TIMEOUT_MS = 15_000;
6
8
  const GUEST_LAUNCH_PROBE_OUTPUT_LIMIT_BYTES = 4 * 1024;
@@ -10,9 +12,9 @@ const assertBoundedIdentityComponent = (name, value) => {
10
12
  throw new Error(`${name} must contain between 1 and ${MAX_IDENTITY_COMPONENT_BYTES} bytes`);
11
13
  }
12
14
  };
13
- const createPlacementIdentity = (binding) => {
15
+ export const createDockerSandboxPlacementIdentity = (binding, executionRunId = binding.executionRunId) => {
14
16
  assertBoundedIdentityComponent('Execution environment ID', binding.environmentId);
15
- assertBoundedIdentityComponent('Execution run ID', binding.executionRunId);
17
+ assertBoundedIdentityComponent('Execution run ID', executionRunId);
16
18
  assertBoundedIdentityComponent('Execution target key', binding.target.identity.key);
17
19
  assertBoundedIdentityComponent('Docker Sandbox external ID', binding.sandbox.name);
18
20
  if (!Number.isSafeInteger(binding.environmentRevision) || binding.environmentRevision < 1) {
@@ -20,10 +22,10 @@ const createPlacementIdentity = (binding) => {
20
22
  }
21
23
  return {
22
24
  provider: DOCKER_SANDBOX_PROVIDER,
23
- providerVersion: QUALIFIED_SBX_VERSION,
25
+ providerVersion: binding.providerVersion ?? RECOMMENDED_DOCKER_SANDBOX_RELEASE.version,
24
26
  environmentId: binding.environmentId,
25
27
  environmentRevision: binding.environmentRevision,
26
- executionRunId: binding.executionRunId,
28
+ executionRunId,
27
29
  targetKey: binding.target.identity.key,
28
30
  scope: { kind: 'exact-sandbox', externalId: binding.sandbox.name },
29
31
  };
@@ -71,10 +73,13 @@ const observeGuestLaunchFailure = async (dependencies, cwd) => {
71
73
  }
72
74
  };
73
75
  const assertRequestMatchesBinding = (request, binding) => {
76
+ const relativeCwd = relative(binding.target.workspacePath, request.cwd);
77
+ const cwdMatchesBinding = relativeCwd === ''
78
+ || (!isAbsolute(relativeCwd) && relativeCwd !== '..' && !relativeCwd.startsWith(`..${process.platform === 'win32' ? '\\' : '/'}`));
74
79
  if (!request.target
75
80
  || request.target.identity.key !== binding.target.identity.key
76
81
  || request.target.workspacePath !== binding.target.workspacePath
77
- || request.cwd !== binding.target.workspacePath
82
+ || !cwdMatchesBinding
78
83
  || binding.sandbox.workspacePath !== binding.target.workspacePath) {
79
84
  throw new EnvironmentFailure('placement-failed', DOCKER_SANDBOX_PROVIDER, 'Docker Sandbox execution request does not match its bound target and workspace', {});
80
85
  }
@@ -85,9 +90,10 @@ export const createDockerSandboxExecutionProvider = (dependencies) => {
85
90
  }
86
91
  const executable = dependencies.executable ?? 'sbx';
87
92
  const spawnExec = dependencies.spawn ?? spawn;
88
- const identity = createPlacementIdentity(dependencies.binding);
93
+ const issuedExecutionRunIds = new Set([dependencies.binding.executionRunId]);
89
94
  const assertOwnedIdentity = (candidate) => {
90
- if (!placementIdentitiesMatch(candidate, identity)) {
95
+ const expected = createDockerSandboxPlacementIdentity(dependencies.binding, candidate.executionRunId);
96
+ if (!issuedExecutionRunIds.has(candidate.executionRunId) || !placementIdentitiesMatch(candidate, expected)) {
91
97
  throw new ExecutionPlacementTerminationFailure(candidate, 'Placement identity does not match this Docker Sandbox execution binding');
92
98
  }
93
99
  };
@@ -95,22 +101,22 @@ export const createDockerSandboxExecutionProvider = (dependencies) => {
95
101
  assertOwnedIdentity(candidate);
96
102
  const observed = await dependencies.adapter.inspect(dependencies.binding.sandbox.name);
97
103
  if (!observed) {
98
- return { identity, state: 'absent' };
104
+ return { identity: candidate, state: 'absent' };
99
105
  }
100
106
  if (!inspectionMatchesBinding(observed, dependencies.binding.sandbox)) {
101
- throw new ExecutionPlacementTerminationFailure(identity, 'Docker Sandbox placement inspection did not match the bound external identity');
107
+ throw new ExecutionPlacementTerminationFailure(candidate, 'Docker Sandbox placement inspection did not match the bound external identity');
102
108
  }
103
- return { identity, state: observed.state };
109
+ return { identity: candidate, state: observed.state };
104
110
  };
105
111
  const terminate = async (candidate) => {
106
112
  assertOwnedIdentity(candidate);
107
113
  try {
108
- const before = await inspect(identity);
114
+ const before = await inspect(candidate);
109
115
  if (before.state === 'absent' || before.state === 'stopped') {
110
116
  return before;
111
117
  }
112
118
  await dependencies.adapter.stop(dependencies.binding.sandbox);
113
- const after = await inspect(identity);
119
+ const after = await inspect(candidate);
114
120
  if (after.state !== 'stopped' && after.state !== 'absent') {
115
121
  throw new Error(`Sandbox remained ${after.state}`);
116
122
  }
@@ -120,7 +126,7 @@ export const createDockerSandboxExecutionProvider = (dependencies) => {
120
126
  if (error instanceof ExecutionPlacementTerminationFailure) {
121
127
  throw error;
122
128
  }
123
- throw new ExecutionPlacementTerminationFailure(identity, `Unable to prove termination of Docker Sandbox ${dependencies.binding.sandbox.name}`, { cause: error });
129
+ throw new ExecutionPlacementTerminationFailure(candidate, `Unable to prove termination of Docker Sandbox ${dependencies.binding.sandbox.name}`, { cause: error });
124
130
  }
125
131
  };
126
132
  const placementOperations = { inspect, terminate };
@@ -141,6 +147,8 @@ export const createDockerSandboxExecutionProvider = (dependencies) => {
141
147
  throw new EnvironmentFailure('placement-failed', DOCKER_SANDBOX_PROVIDER, 'Docker Sandbox execution was cancelled before placement', { cause: dependencies.signal.reason });
142
148
  }
143
149
  assertRequestMatchesBinding(request, dependencies.binding);
150
+ const identity = createDockerSandboxPlacementIdentity(dependencies.binding, request.placementExecutionRunId ?? dependencies.binding.executionRunId);
151
+ issuedExecutionRunIds.add(identity.executionRunId);
144
152
  if (request.launcherEnvironment.kind !== 'docker-sandbox-wrapper') {
145
153
  throw new ExecutionEnvironmentUnsupportedFailure(DOCKER_SANDBOX_PROVIDER, 'launcherEnvironment', 'Docker Sandbox execution requires a qualified wrapper launcher environment.');
146
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dockerSandboxExecutionProvider.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxExecutionProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dockerSandboxExecutionProvider.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxExecutionProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { SbxContractFailure, asRecord, parseJsonObject, requireSuccessfulCommand, } from './dockerSandboxExecutionEnvironment.js';
2
+ import { RECOMMENDED_DOCKER_SANDBOX_RELEASE, } from './dockerSandboxReleaseProfiles.js';
2
3
  const POLICY_LS_COMMAND = 'policy ls';
3
4
  const POLICY_ALLOW_COMMAND = 'policy allow';
4
5
  const POLICY_CHECK_COMMAND = 'policy check';
@@ -11,7 +12,13 @@ const assertBoundedArgument = (name, value) => {
11
12
  };
12
13
  const dedupe = (values) => [...new Set(values)];
13
14
  const scopedNetworkRulesForSandbox = (rules, sandboxName) => rules.filter(rule => rule.scope === `${SANDBOX_SCOPE_PREFIX}${sandboxName}` && rule.resourceType === 'network');
14
- export const parseScopedSbxPolicyLsOutput = (output) => {
15
+ const requireScopedPolicyParser = (profile) => {
16
+ if (profile.parserContracts.scopedNetworkPolicy !== 'v0.38.0') {
17
+ throw new SbxContractFailure(POLICY_LS_COMMAND, `No scoped network policy parser is registered for ${profile.id}`);
18
+ }
19
+ };
20
+ export const parseScopedSbxPolicyLsOutput = (output, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
21
+ requireScopedPolicyParser(profile);
15
22
  const record = parseJsonObject(POLICY_LS_COMMAND, output);
16
23
  if (!Array.isArray(record.rules)) {
17
24
  throw new SbxContractFailure(POLICY_LS_COMMAND, 'sbx policy ls returned an unsupported schema');
@@ -36,7 +43,8 @@ export const parseScopedSbxPolicyLsOutput = (output) => {
36
43
  };
37
44
  });
38
45
  };
39
- export const parseSbxPolicyCheckOutput = (output, target, sandboxName) => {
46
+ export const parseSbxPolicyCheckOutput = (output, target, sandboxName, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
47
+ requireScopedPolicyParser(profile);
40
48
  const record = parseJsonObject(POLICY_CHECK_COMMAND, output);
41
49
  const normalizedTarget = /:\d+$/.test(target) ? target : `${target}:443`;
42
50
  if (record.action !== 'net:connect:tcp'
@@ -62,7 +70,8 @@ export const parseSbxPolicyCheckOutput = (output, target, sandboxName) => {
62
70
  evaluatedRuleId: null,
63
71
  };
64
72
  };
65
- export const parseSbxPolicyAllowOutput = (output, sandboxName, requestedResources) => {
73
+ export const parseSbxPolicyAllowOutput = (output, sandboxName, requestedResources, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
74
+ requireScopedPolicyParser(profile);
66
75
  const trimmed = output.trim();
67
76
  if (trimmed.length === 0) {
68
77
  throw new SbxContractFailure(POLICY_ALLOW_COMMAND, 'sbx policy allow returned no created rule identifiers');
@@ -115,11 +124,11 @@ export const assertExactSandboxNetworkAllowlist = (rules, requestedResources) =>
115
124
  throw new SbxContractFailure(POLICY_LS_COMMAND, `Sandbox network rules do not exactly match the requested allowlist (${details.join('; ')})`);
116
125
  }
117
126
  };
118
- export const inspectSandboxNetworkRules = async (runner, sandboxName, options = {}) => {
127
+ export const inspectSandboxNetworkRules = async (runner, sandboxName, options = {}, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
119
128
  assertBoundedArgument('Docker Sandbox name', sandboxName);
120
129
  const result = await runner.run(['policy', 'ls', sandboxName, '--json', '--wide'], options);
121
130
  requireSuccessfulCommand(POLICY_LS_COMMAND, result);
122
- return scopedNetworkRulesForSandbox(parseScopedSbxPolicyLsOutput(result.stdout), sandboxName);
131
+ return scopedNetworkRulesForSandbox(parseScopedSbxPolicyLsOutput(result.stdout, profile), sandboxName);
123
132
  };
124
133
  const sandboxApplicationLocks = new Map();
125
134
  const withSandboxApplicationLock = async (sandboxName, operation) => {
@@ -141,14 +150,14 @@ const withSandboxApplicationLock = async (sandboxName, operation) => {
141
150
  }
142
151
  }
143
152
  };
144
- export const applyScopedNetworkRules = (runner, sandboxName, resources, options = {}) => withSandboxApplicationLock(sandboxName, async () => {
153
+ export const applyScopedNetworkRules = (runner, sandboxName, resources, options = {}, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => withSandboxApplicationLock(sandboxName, async () => {
145
154
  assertBoundedArgument('Docker Sandbox name', sandboxName);
146
155
  const requested = dedupe(resources);
147
156
  requested.forEach(resource => assertBoundedArgument('Network resource', resource));
148
157
  if (requested.length === 0) {
149
158
  return [];
150
159
  }
151
- const existing = await inspectSandboxNetworkRules(runner, sandboxName, options);
160
+ const existing = await inspectSandboxNetworkRules(runner, sandboxName, options, profile);
152
161
  const covered = new Set(existing
153
162
  .filter(rule => rule.status === 'active' && rule.decision === 'allow')
154
163
  .flatMap(rule => rule.resources));
@@ -158,19 +167,19 @@ export const applyScopedNetworkRules = (runner, sandboxName, resources, options
158
167
  }
159
168
  const result = await runner.run(['policy', 'allow', 'network', '--sandbox', sandboxName, missing.join(',')], options);
160
169
  requireSuccessfulCommand(POLICY_ALLOW_COMMAND, result);
161
- return parseSbxPolicyAllowOutput(result.stdout, sandboxName, missing);
170
+ return parseSbxPolicyAllowOutput(result.stdout, sandboxName, missing, profile);
162
171
  });
163
- export const checkDestinationAccess = async (runner, sandboxName, target, options = {}) => {
172
+ export const checkDestinationAccess = async (runner, sandboxName, target, options = {}, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
164
173
  assertBoundedArgument('Docker Sandbox name', sandboxName);
165
174
  assertBoundedArgument('Network destination target', target);
166
175
  const result = await runner.run(['policy', 'check', 'network', '--sandbox', sandboxName, target, '--json'], options);
167
176
  requireSuccessfulCommand(POLICY_CHECK_COMMAND, result);
168
- return parseSbxPolicyCheckOutput(result.stdout, target, sandboxName);
177
+ return parseSbxPolicyCheckOutput(result.stdout, target, sandboxName, profile);
169
178
  };
170
- export const inspectGlobalNetworkPosture = async (runner, options = {}) => {
179
+ export const inspectGlobalNetworkPosture = async (runner, options = {}, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
171
180
  const result = await runner.run(['policy', 'ls', '--json', '--wide'], options);
172
181
  requireSuccessfulCommand(POLICY_LS_COMMAND, result);
173
- return classifyGlobalNetworkPosture(parseScopedSbxPolicyLsOutput(result.stdout));
182
+ return classifyGlobalNetworkPosture(parseScopedSbxPolicyLsOutput(result.stdout, profile));
174
183
  };
175
184
  const CATCH_ALL_RESOURCES = new Set(['**', '*', '*:*', 'any']);
176
185
  const isCatchAllRule = (rule) => (rule.resources.length === 0
@@ -201,14 +210,14 @@ export const classifyGlobalNetworkPosture = (rules) => {
201
210
  }
202
211
  return 'unknown';
203
212
  };
204
- export const removeScopedNetworkRules = async (runner, sandboxName, ruleIds, options = {}) => {
213
+ export const removeScopedNetworkRules = async (runner, sandboxName, ruleIds, options = {}, profile = RECOMMENDED_DOCKER_SANDBOX_RELEASE) => {
205
214
  assertBoundedArgument('Docker Sandbox name', sandboxName);
206
215
  const ids = dedupe(ruleIds);
207
216
  ids.forEach(id => assertBoundedArgument('Network policy rule ID', id));
208
217
  if (ids.length === 0) {
209
218
  return;
210
219
  }
211
- const scoped = await inspectSandboxNetworkRules(runner, sandboxName, options);
220
+ const scoped = await inspectSandboxNetworkRules(runner, sandboxName, options, profile);
212
221
  const owned = new Set(scoped.map(rule => rule.id));
213
222
  const foreign = ids.filter(id => !owned.has(id));
214
223
  if (foreign.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"dockerSandboxNetworkPolicy.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxNetworkPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dockerSandboxNetworkPolicy.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxNetworkPolicy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ const V0_38_0_CAPABILITIES = Object.freeze({
2
+ isolation: 'microvm',
3
+ directWritableWorkspace: 'supported',
4
+ transparentHeadlessStreams: 'supported',
5
+ credentialBrokering: 'supported',
6
+ enforcedNetworkAllowlist: 'unknown',
7
+ persistentEnvironments: 'supported',
8
+ resourceIsolation: 'unknown',
9
+ nestedContainers: 'unsupported',
10
+ publishedPorts: 'unsupported',
11
+ resourceControls: 'unsupported',
12
+ });
13
+ const V0_38_0_PROFILE = Object.freeze({
14
+ id: 'docker-sandbox-v0.38.0-c022b146',
15
+ version: '0.38.0',
16
+ acceptedBuilds: Object.freeze(['c022b14634c4bea846ca12870d1d5e97d5868b54']),
17
+ releaseArchiveSha256: Object.freeze({
18
+ 'linux-x64': '9ebcea831d4d270e25ae1777bf15e24756abfbf8791ad27294754682838ed00b',
19
+ }),
20
+ status: 'recommended',
21
+ statusReason: null,
22
+ adapterContractVersion: '6',
23
+ minimumMacosMajor: 14,
24
+ hosts: Object.freeze([
25
+ Object.freeze({ platform: 'linux', architecture: 'x64' }),
26
+ Object.freeze({ platform: 'darwin', architecture: 'arm64' }),
27
+ ]),
28
+ templates: Object.freeze({
29
+ opencode: 'docker.io/docker/sandbox-templates@sha256:b2176d0fdd0cf17754b3b9dff13a69bff003d608e43360687b00ce86d2c749d9',
30
+ claude: 'docker.io/docker/sandbox-templates@sha256:7fa049b8d7a0cf10f6a4200148ee475e94fc4fb5ef50dfacc4257699cb9a34bc',
31
+ }),
32
+ capabilities: V0_38_0_CAPABILITIES,
33
+ parserContracts: Object.freeze({
34
+ diagnostics: 'v0.38.0',
35
+ inspection: 'v0.38.0',
36
+ missingSandbox: 'v0.38.0',
37
+ networkPolicy: 'v0.38.0',
38
+ scopedNetworkPolicy: 'v0.38.0',
39
+ secretList: 'v0.38.0',
40
+ }),
41
+ commandContracts: Object.freeze([
42
+ 'create',
43
+ 'daemon-start',
44
+ 'diagnose',
45
+ 'exec',
46
+ 'inspect',
47
+ 'policy-allow',
48
+ 'policy-check',
49
+ 'policy-list',
50
+ 'policy-remove',
51
+ 'remove',
52
+ 'secret-list',
53
+ 'stop',
54
+ 'version',
55
+ ]),
56
+ fixtureDirectory: 'v0.38.0',
57
+ });
58
+ export const DOCKER_SANDBOX_RELEASE_PROFILES = Object.freeze([
59
+ V0_38_0_PROFILE,
60
+ ]);
61
+ export const RECOMMENDED_DOCKER_SANDBOX_RELEASE = V0_38_0_PROFILE;
62
+ export const findDockerSandboxReleaseProfile = (version, profiles = DOCKER_SANDBOX_RELEASE_PROFILES) => (profiles.find(profile => profile.version === version) ?? null);
63
+ export const inspectDockerSandboxRelease = (version, build, profiles = DOCKER_SANDBOX_RELEASE_PROFILES) => {
64
+ const profile = findDockerSandboxReleaseProfile(version, profiles);
65
+ if (!profile) {
66
+ return { profile: null, status: 'unsupported', reason: `Docker Sandbox ${version} has not been qualified by Archon.` };
67
+ }
68
+ if (!profile.acceptedBuilds.includes(build)) {
69
+ return { profile: null, status: 'unsupported', reason: `Docker Sandbox ${version} build ${build} has not been qualified by Archon.` };
70
+ }
71
+ return { profile, status: profile.status, reason: profile.statusReason };
72
+ };
73
+ export const resolveDockerSandboxReleaseProfile = (version, build) => {
74
+ const release = inspectDockerSandboxRelease(version, build);
75
+ if (!release.profile || release.status === 'security_blocked') {
76
+ return null;
77
+ }
78
+ return release.profile;
79
+ };
80
+ export const isDockerSandboxReleaseHostQualified = (profile, platform, architecture) => profile.hosts.some(host => host.platform === platform && host.architecture === architecture);
81
+ export const resolveDockerSandboxReleaseForPersistedEnvironment = (providerVersion, template, agent) => {
82
+ if (!providerVersion || !template || !agent) {
83
+ return null;
84
+ }
85
+ const profile = findDockerSandboxReleaseProfile(providerVersion);
86
+ if (!profile || profile.status === 'security_blocked' || profile.templates[agent] !== template) {
87
+ return null;
88
+ }
89
+ return profile;
90
+ };
91
+ //# sourceMappingURL=dockerSandboxReleaseProfiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dockerSandboxReleaseProfiles.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxReleaseProfiles.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { SbxCommandFailure, probeDockerSandboxReadiness, } from './dockerSandboxExecutionEnvironment.js';
1
+ import { SbxCommandFailure, parseQualifiedSbxRelease, probeDockerSandboxReadiness, requireSuccessfulCommand, } from './dockerSandboxExecutionEnvironment.js';
2
+ import { resolveDockerSandboxReleaseProfile, } from './dockerSandboxReleaseProfiles.js';
2
3
  const START_DAEMON_ARGS = ['daemon', 'start', '--detach'];
3
4
  const HARD_PREREQUISITES = ['cli', 'version', 'platform', 'virtualization', 'docker_login'];
4
5
  const DAEMON_START_TIMEOUT_MS = 180_000;
@@ -144,6 +145,12 @@ export const createDockerSandboxRuntimeController = (dependencies) => {
144
145
  if (eligibility.state === 'blocked') {
145
146
  throw new DockerSandboxRuntimeFailure('unsupported_prerequisite', eligibility.observationCodes);
146
147
  }
148
+ const releaseProfile = initial.providerVersion && initial.providerBuild
149
+ ? resolveDockerSandboxReleaseProfile(initial.providerVersion, initial.providerBuild)
150
+ : null;
151
+ if (!releaseProfile?.commandContracts.includes('daemon-start')) {
152
+ throw new DockerSandboxRuntimeFailure('unsupported_prerequisite', ['version']);
153
+ }
147
154
  let startResult;
148
155
  try {
149
156
  startResult = await dependencies.runner.run(START_DAEMON_ARGS, startOptions);
@@ -176,6 +183,14 @@ export const createDockerSandboxRuntimeController = (dependencies) => {
176
183
  return inFlight;
177
184
  };
178
185
  return {
186
+ detectRelease: async (options) => {
187
+ const result = await dependencies.runner.run(['version'], {
188
+ signal: options?.signal,
189
+ timeoutMs: PROBE_TIMEOUT_MS,
190
+ });
191
+ requireSuccessfulCommand('version', result);
192
+ return parseQualifiedSbxRelease(result.stdout);
193
+ },
179
194
  ensureReady: options => {
180
195
  if (options?.signal?.aborted) {
181
196
  return Promise.reject(new DockerSandboxRuntimeFailure('cancelled'));
@@ -1 +1 @@
1
- {"version":3,"file":"dockerSandboxRuntimeController.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxRuntimeController.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,2BAA2B,GAM5B,MAAM,wCAAwC,CAAA;AAE/C,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAU,CAAA;AAClE,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAU,CAAA;AAEpG,MAAM,uBAAuB,GAAG,OAAO,CAAA;AACvC,MAAM,gBAAgB,GAAG,MAAM,CAAA;AAC/B,MAAM,6BAA6B,GAAG,CAAC,CAAA;AACvC,MAAM,6BAA6B,GAAG,KAAK,CAAA;AAE3C,MAAM,aAAa,GAAG,EAAE,2BAA2B,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAW,CAAA;AAejG,MAAM,iBAAiB,GAAG,CAAC,SAAiC,EAAE,IAAgC,EAAE,EAAE,CAAC,CACjG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC,CACtE,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,WAA0D,EAAE,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,OAAO,CAAA;AAE9G,MAAM,CAAC,MAAM,0CAA0C,GAAG,CACxD,SAAiC,EACG,EAAE;IACtC,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/C,MAAM,WAAW,GAAG,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QACtD,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,CAAC,CACN,MAAM,EAAE,KAAK,KAAK,WAAW;eAC1B,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,KAAK,cAAc,CAAC;eACtD,WAAW,EAAE,KAAK,KAAK,SAAS,CACpC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAA;IACxD,CAAC;IACD,IAAI,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;QAC1E,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAA;IACnE,CAAC;IACD,IAAI,MAAM,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;IAC3B,CAAC;IACD,IAAI,MAAM,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA;IAC9B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAA;AAC3D,CAAC,CAAA;AAED,MAAM,WAAW,GAA8D;IAC7E,wBAAwB,EAAE,gGAAgG;IAC1H,wBAAwB,EAAE,mHAAmH;IAC7I,cAAc,EAAE,sFAAsF;IACtG,eAAe,EAAE,2EAA2E;IAC5F,sBAAsB,EAAE,mGAAmG;IAC3H,SAAS,EAAE,sEAAsE;CAClF,CAAA;AAED,MAAM,gBAAgB,GAA8D;IAClF,wBAAwB,EAAE,uEAAuE;IACjG,wBAAwB,EAAE,mDAAmD;IAC7E,cAAc,EAAE,uCAAuC;IACvD,eAAe,EAAE,0CAA0C;IAC3D,sBAAsB,EAAE,2DAA2D;IACnF,SAAS,EAAE,qEAAqE;CACjF,CAAA;AAED,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,CAAiC;IACrC,gBAAgB,CAAuC;IACvD,WAAW,CAAQ;IAE5B,YACE,IAAqC,EACrC,mBAA0D,EAAE;QAE5D,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAA;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAA;QAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;CACF;AAkBD,MAAM,yBAAyB,GAAG,CAAC,SAAiC,EAAE,EAAE;IACtE,MAAM,KAAK,GAAiC,CAAC,GAAG,kBAAkB,EAAE,QAAQ,CAAC,CAAA;IAC7E,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IACpE,IAAI,aAAa,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;AAC3E,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAAI,SAAqB,EAAE,MAAoB,EAAc,EAAE;IAC/F,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;IACrE,CAAC;IACD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,CAAC,IAAI,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;QACtD,CAAC,CAAA;QACD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACzD,SAAS,CAAC,IAAI,CACZ,KAAK,CAAC,EAAE;YACN,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC5C,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC5C,MAAM,CAAC,KAAK,CAAC,CAAA;QACf,CAAC,CACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,YAAoB,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;IACjE,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;AACnC,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,YAA0B,EACM,EAAE;IAClC,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,2BAA2B,CAAA;IAC/D,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,IAAI,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAA;IACxF,MAAM,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,IAAI,6BAA6B,CAAA;IACvF,IAAI,QAAQ,GAA2C,IAAI,CAAA;IAE3D,MAAM,kBAAkB,GAAG,KAAK,IAAqC,EAAE;QACrE,IAAI,oBAAoB,GAA0C,EAAE,CAAA;QACpE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,6BAA6B,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;YAC5E,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC9B,CAAC;YACD,IAAI,SAAiC,CAAA;YACrC,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,SAAQ;YACV,CAAC;YACD,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;YAC7D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,2BAA2B,CAAC,0BAA0B,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;YACvF,CAAC;YACD,oBAAoB,GAAG,gBAAgB,CAAA;QACzC,CAAC;QACD,MAAM,IAAI,2BAA2B,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,CAAA;IACvF,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,IAAI,OAA+B,CAAA;QACnC,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBACzE,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,0BAA0B,CAAA;YAC9B,MAAM,IAAI,2BAA2B,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC;QACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;QAClE,IAAI,aAAa,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;YACzC,MAAM,IAAI,2BAA2B,CAAC,0BAA0B,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;QACvF,CAAC;QACD,MAAM,WAAW,GAAG,0CAA0C,CAAC,OAAO,CAAC,CAAA;QACvE,IAAI,WAAW,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAClC,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,IAAI,WAAW,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,2BAA2B,CAAC,0BAA0B,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAA;QACjG,CAAC;QAED,IAAI,WAAW,CAAA;QACf,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAA;QAC9E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBACzE,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,gBAAgB,CAAA;YACpB,MAAM,IAAI,2BAA2B,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC;QACD,IAAI,WAAW,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,kBAAkB,EAAE,CAAA;IAC7B,CAAC,CAAA;IAED,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAA;YAC5B,QAAQ,GAAG,SAAS,CAAA;YACpB,KAAK,SAAS,CAAC,IAAI,CACjB,GAAG,EAAE;gBACH,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC,EACD,GAAG,EAAE;gBACH,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC,CACF,CAAA;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IAED,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,EAAE;YACrB,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC7B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;YACrE,CAAC;YACD,OAAO,yBAAyB,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QACvE,CAAC;KACF,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"dockerSandboxRuntimeController.js","sourceRoot":"","sources":["../../../server/lib/dockerSandboxRuntimeController.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { QUALIFIED_DOCKER_SANDBOX_TEMPLATES, QUALIFIED_SBX_VERSION, } from './dockerSandboxExecutionEnvironment.js';
1
+ import { EXECUTION_WORKLOADS } from './executionWorkloads.js';
2
+ import { DOCKER_SANDBOX_RELEASE_PROFILES } from './dockerSandboxReleaseProfiles.js';
2
3
  const QUALIFIED_OPENCODE_API_KEY_SERVICES = [
3
4
  'anthropic',
4
5
  'google',
@@ -10,17 +11,19 @@ const QUALIFIED_OPENCODE_API_KEY_SERVICES = [
10
11
  'openrouter',
11
12
  'xai',
12
13
  ];
13
- export const QUALIFIED_EXECUTION_CREDENTIAL_TUPLES = (QUALIFIED_OPENCODE_API_KEY_SERVICES.map(modelProvider => ({
14
+ export const QUALIFIED_EXECUTION_CREDENTIAL_TUPLES = (DOCKER_SANDBOX_RELEASE_PROFILES
15
+ .filter(profile => profile.status !== 'security_blocked')
16
+ .flatMap(profile => EXECUTION_WORKLOADS.flatMap(workload => QUALIFIED_OPENCODE_API_KEY_SERVICES.map(modelProvider => ({
14
17
  executionProvider: 'docker_sandbox',
15
- providerVersion: QUALIFIED_SBX_VERSION,
16
- template: QUALIFIED_DOCKER_SANDBOX_TEMPLATES.opencode,
18
+ providerVersion: profile.version,
19
+ template: profile.templates.opencode,
17
20
  agent: 'opencode',
18
21
  modelProvider,
19
22
  authenticationMode: 'api_key',
20
- workload: 'build',
23
+ workload,
21
24
  inventoryState: 'stored',
22
25
  classification: 'brokered_api_key',
23
- })));
26
+ })))));
24
27
  const normalizedId = (value) => value?.trim().toLowerCase() || null;
25
28
  const findQualifiedTuple = (input) => {
26
29
  const modelProvider = normalizedId(input.modelProvider);
@@ -1 +1 @@
1
- {"version":3,"file":"executionCredentialCapabilities.js","sourceRoot":"","sources":["../../../server/lib/executionCredentialCapabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executionCredentialCapabilities.js","sourceRoot":"","sources":["../../../server/lib/executionCredentialCapabilities.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"executionEnvironment.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironment.ts"],"names":[],"mappings":"AAqGA,MAAM,OAAO,oCAAqC,SAAQ,KAAK;IACpD,QAAQ,CAA4B;IAE7C,YAAY,QAAoC,EAAE,OAAe,EAAE,UAAwB,EAAE;QAC3F,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,sCAAsC,CAAA;QAClD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAgBD,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,CAAiC;IACrC,QAAQ,CAAQ;IAEzB,YACE,IAAqC,EACrC,QAAgB,EAChB,OAAe,EACf,OAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAA;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,2BAA2B;IACrF,YAAY,QAAgB,EAAE,OAAe,EAAE,UAAwB,EAAE;QACvE,KAAK,CAAC,sBAAsB,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI,GAAG,wCAAwC,CAAA;IACtD,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,2BAA2B;IAC5E,UAAU,CAAQ;IAE3B,YAAY,QAAgB,EAAE,UAAkB,EAAE,OAAe,EAAE,UAAwB,EAAE;QAC3F,KAAK,CAAC,wBAAwB,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAI,GAAG,wCAAwC,CAAA;QACpD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,QAAgB,EAChB,OAAe,EACf,KAAc,EACd,EAAE;IACF,MAAM,IAAI,GAAI,KAAsC,EAAE,IAAI,KAAK,QAAQ;QACrE,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,kBAAkB,CAAA;IACtB,MAAM,OAAO,GAAG,IAAI,KAAK,wBAAwB;QAC/C,CAAC,CAAC,uBAAuB,QAAQ,gCAAgC,OAAO,GAAG;QAC3E,CAAC,CAAC,uBAAuB,QAAQ,sBAAsB,OAAO,GAAG,CAAA;IAEnE,OAAO,IAAI,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;AACnF,CAAC,CAAA"}
1
+ {"version":3,"file":"executionEnvironment.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironment.ts"],"names":[],"mappings":"AAsGA,MAAM,OAAO,oCAAqC,SAAQ,KAAK;IACpD,QAAQ,CAA4B;IAE7C,YAAY,QAAoC,EAAE,OAAe,EAAE,UAAwB,EAAE;QAC3F,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,sCAAsC,CAAA;QAClD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAgBD,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,CAAiC;IACrC,QAAQ,CAAQ;IAEzB,YACE,IAAqC,EACrC,QAAgB,EAChB,OAAe,EACf,OAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAA;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,2BAA2B;IACrF,YAAY,QAAgB,EAAE,OAAe,EAAE,UAAwB,EAAE;QACvE,KAAK,CAAC,sBAAsB,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI,GAAG,wCAAwC,CAAA;IACtD,CAAC;CACF;AAED,MAAM,OAAO,sCAAuC,SAAQ,2BAA2B;IAC5E,UAAU,CAAQ;IAE3B,YAAY,QAAgB,EAAE,UAAkB,EAAE,OAAe,EAAE,UAAwB,EAAE;QAC3F,KAAK,CAAC,wBAAwB,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAI,GAAG,wCAAwC,CAAA;QACpD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,QAAgB,EAChB,OAAe,EACf,KAAc,EACd,EAAE;IACF,MAAM,IAAI,GAAI,KAAsC,EAAE,IAAI,KAAK,QAAQ;QACrE,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,kBAAkB,CAAA;IACtB,MAAM,OAAO,GAAG,IAAI,KAAK,wBAAwB;QAC/C,CAAC,CAAC,uBAAuB,QAAQ,gCAAgC,OAAO,GAAG;QAC3E,CAAC,CAAC,uBAAuB,QAAQ,sBAAsB,OAAO,GAAG,CAAA;IAEnE,OAAO,IAAI,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;AACnF,CAAC,CAAA"}
@@ -57,6 +57,9 @@ export const canonicalizeEnvironmentValidationFingerprintInput = (input) => {
57
57
  assertFingerprintComponent(input.validationSuiteSchemaVersion, 'Validation-suite schema version');
58
58
  assertFingerprintComponent(input.adapterContractVersion, 'Adapter contract version');
59
59
  assertFingerprintComponent(input.qualifiedSbxVersion, 'Qualified sbx version');
60
+ if (input.releaseProfileId !== undefined) {
61
+ assertFingerprintComponent(input.releaseProfileId, 'Release profile ID');
62
+ }
60
63
  const compatibleAgents = [...new Set(input.compatibleAgents)].sort();
61
64
  if (compatibleAgents.length === 0
62
65
  || compatibleAgents.some(agent => agent !== 'opencode' && agent !== 'claude')) {
@@ -69,6 +72,7 @@ export const canonicalizeEnvironmentValidationFingerprintInput = (input) => {
69
72
  validationSuiteSchemaVersion: input.validationSuiteSchemaVersion,
70
73
  adapterContractVersion: input.adapterContractVersion,
71
74
  qualifiedSbxVersion: input.qualifiedSbxVersion,
75
+ ...(input.releaseProfileId === undefined ? {} : { releaseProfileId: input.releaseProfileId }),
72
76
  };
73
77
  };
74
78
  export const createEnvironmentValidationFingerprint = (input) => {
@@ -84,6 +88,9 @@ export const createEnvironmentValidationFingerprint = (input) => {
84
88
  appendFingerprintComponent(hash, 'validation_suite_schema_version', canonical.validationSuiteSchemaVersion);
85
89
  appendFingerprintComponent(hash, 'adapter_contract_version', canonical.adapterContractVersion);
86
90
  appendFingerprintComponent(hash, 'qualified_sbx_version', canonical.qualifiedSbxVersion);
91
+ if (canonical.releaseProfileId !== undefined) {
92
+ appendFingerprintComponent(hash, 'release_profile_id', canonical.releaseProfileId);
93
+ }
87
94
  return hash.digest('hex');
88
95
  };
89
96
  export const requireExecutionCapabilities = (provider, observation, requiredCapabilities) => {
@@ -1 +1 @@
1
- {"version":3,"file":"executionEnvironmentLifecycle.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentLifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executionEnvironmentLifecycle.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentLifecycle.ts"],"names":[],"mappings":"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"}