@straiffi/archon 1.8.15 → 1.8.16

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 (227) hide show
  1. package/dist/client/assets/ActivityView-p8gBUxYN.js +1 -0
  2. package/dist/client/assets/GitHubActionsDialog-BRxGcSyq.js +1 -0
  3. package/dist/client/assets/VerificationDialog-B6l5TYOS.js +4 -0
  4. package/dist/client/assets/{arc-C83vRtlz.js → arc-D2Nn9xIj.js} +1 -1
  5. package/dist/client/assets/architecture-7EHR7CIX-C-4Cp4ml.js +1 -0
  6. package/dist/client/assets/{architectureDiagram-3BPJPVTR-Dx7MJofM.js → architectureDiagram-3BPJPVTR-DnuKO1RY.js} +1 -1
  7. package/dist/client/assets/{blockDiagram-GPEHLZMM-CSSJR8F_.js → blockDiagram-GPEHLZMM-CnQ7FwEp.js} +1 -1
  8. package/dist/client/assets/{c4Diagram-AAUBKEIU-C4F9969r.js → c4Diagram-AAUBKEIU-BF1hFXwp.js} +1 -1
  9. package/dist/client/assets/channel-TJtf4cBJ.js +1 -0
  10. package/dist/client/assets/{chunk-2J33WTMH-23HW6i-y.js → chunk-2J33WTMH-UvCFvkZO.js} +1 -1
  11. package/dist/client/assets/{chunk-3OPIFGDE-C3ZmRDMb.js → chunk-3OPIFGDE-z1l5nBD0.js} +1 -1
  12. package/dist/client/assets/{chunk-4BX2VUAB-C5pU9ApX.js → chunk-4BX2VUAB-CtLS8D71.js} +1 -1
  13. package/dist/client/assets/{chunk-4EGX6M5U-CAjWPjND.js → chunk-4EGX6M5U-Btnm0QNe.js} +1 -1
  14. package/dist/client/assets/{chunk-55IACEB6-DhO4-AG4.js → chunk-55IACEB6-74CcJaub.js} +1 -1
  15. package/dist/client/assets/{chunk-5DO6E6H7-BDKA-zHS.js → chunk-5DO6E6H7-WLZ8L4ko.js} +1 -1
  16. package/dist/client/assets/{chunk-5ZQYHXKU-B_-UQvCg.js → chunk-5ZQYHXKU-Bis0Pw2_.js} +1 -1
  17. package/dist/client/assets/{chunk-727SXJPM-5Dua6u1B.js → chunk-727SXJPM-B3gUO8rD.js} +1 -1
  18. package/dist/client/assets/{chunk-AQP2D5EJ-DcpcaFRO.js → chunk-AQP2D5EJ-hPBzrrh5.js} +1 -1
  19. package/dist/client/assets/{chunk-BR22UD5L-12D2GWh4.js → chunk-BR22UD5L-Cou5beGe.js} +1 -1
  20. package/dist/client/assets/{chunk-BSJP7CBP-DMi77e84.js → chunk-BSJP7CBP-DJ57XcV5.js} +1 -1
  21. package/dist/client/assets/{chunk-CSCIHK7Q-CLCpOw52.js → chunk-CSCIHK7Q-BfOng_VY.js} +2 -2
  22. package/dist/client/assets/{chunk-FHYWG6QK-BhSajKiB.js → chunk-FHYWG6QK-Ba10e2kj.js} +1 -1
  23. package/dist/client/assets/{chunk-FMBD7UC4-Drmlc0wM.js → chunk-FMBD7UC4-CEo2wZMx.js} +1 -1
  24. package/dist/client/assets/{chunk-KSCS5N6A-uOZFe2JI.js → chunk-KSCS5N6A-B2Jg7PW5.js} +1 -1
  25. package/dist/client/assets/{chunk-L5ZTLDWV-DNnzSNoX.js → chunk-L5ZTLDWV-CUYujZxt.js} +1 -1
  26. package/dist/client/assets/{chunk-LZXEDZCA-CSA3Xnoh.js → chunk-LZXEDZCA-CH_eV8jH.js} +2 -2
  27. package/dist/client/assets/{chunk-MPE355IW-Cw8YmjTC.js → chunk-MPE355IW-MqEt-J8G.js} +1 -1
  28. package/dist/client/assets/{chunk-MZUSXYTE-jvxRCZ7x.js → chunk-MZUSXYTE-DdNi9lhx.js} +1 -1
  29. package/dist/client/assets/{chunk-N66VUXT2-00i4y0yD.js → chunk-N66VUXT2-CjemTW4E.js} +1 -1
  30. package/dist/client/assets/{chunk-ND2GUHAM-BQR5rD7w.js → chunk-ND2GUHAM-BVF5evM9.js} +1 -1
  31. package/dist/client/assets/{chunk-NZK2D7GU-DyIwcQYQ.js → chunk-NZK2D7GU-WfG-2AOS.js} +1 -1
  32. package/dist/client/assets/{chunk-O5CBEL6O-DfW60w5V.js → chunk-O5CBEL6O-CSF9ozqy.js} +1 -1
  33. package/dist/client/assets/{chunk-PUPMXCY4-DfWourL7.js → chunk-PUPMXCY4-ZvwTw0To.js} +1 -1
  34. package/dist/client/assets/chunk-QZHKN3VN-LI_RZca2.js +1 -0
  35. package/dist/client/assets/{chunk-UIBZB4QT-v-a5ZfN6.js → chunk-UIBZB4QT-BTY9be9s.js} +1 -1
  36. package/dist/client/assets/{chunk-WCWK7LTN-CtYzhvvb.js → chunk-WCWK7LTN-Db1n3n3-.js} +1 -1
  37. package/dist/client/assets/chunk-WU5MYG2G-DoVpb2oe.js +1 -0
  38. package/dist/client/assets/{chunk-XPW4576I-CvnAuXH2.js → chunk-XPW4576I-DObFPxjB.js} +1 -1
  39. package/dist/client/assets/classDiagram-4FO5ZUOK-CnKIRKWC.js +1 -0
  40. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-5ZgjUwTv.js +1 -0
  41. package/dist/client/assets/{cose-bilkent-S5V4N54A-fchD-dH2.js → cose-bilkent-S5V4N54A-MlOPiG6P.js} +1 -1
  42. package/dist/client/assets/{dagre-BM42HDAG-Ba7Pz-ZI.js → dagre-BM42HDAG-rekDIYnC.js} +1 -1
  43. package/dist/client/assets/{dagre-DSrzm-Gq.js → dagre-BWNHuDdf.js} +1 -1
  44. package/dist/client/assets/{diagram-2AECGRRQ-BxYfgpZ6.js → diagram-2AECGRRQ-Z4mXdhW0.js} +1 -1
  45. package/dist/client/assets/{diagram-5GNKFQAL-Bc4-O-UJ.js → diagram-5GNKFQAL-DqeVe5Vc.js} +1 -1
  46. package/dist/client/assets/{diagram-KO2AKTUF-Ds1Lmrzm.js → diagram-KO2AKTUF-ijppTuNc.js} +1 -1
  47. package/dist/client/assets/{diagram-LMA3HP47-VFQabxKS.js → diagram-LMA3HP47-CDGLx0-N.js} +1 -1
  48. package/dist/client/assets/{diagram-OG6HWLK6-Baff59Zc.js → diagram-OG6HWLK6-DDlnjzF8.js} +1 -1
  49. package/dist/client/assets/{erDiagram-TEJ5UH35-Da5zHjOK.js → erDiagram-TEJ5UH35-V_axe9oz.js} +1 -1
  50. package/dist/client/assets/eventmodeling-FCH6USID-Dqb6QKoI.js +1 -0
  51. package/dist/client/assets/{flowDiagram-I6XJVG4X-pdGMAuog.js → flowDiagram-I6XJVG4X-GH5q79jg.js} +1 -1
  52. package/dist/client/assets/{ganttDiagram-6RSMTGT7-DjJGX0nm.js → ganttDiagram-6RSMTGT7-BMWVdLeQ.js} +1 -1
  53. package/dist/client/assets/gitGraph-WXDBUCRP-DYEsqh93.js +1 -0
  54. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-kErlwtcT.js → gitGraphDiagram-PVQCEYII-VrV8jMUg.js} +1 -1
  55. package/dist/client/assets/index-B7J4DYDu.js +275 -0
  56. package/dist/client/assets/index-CsZfTdMO.css +2 -0
  57. package/dist/client/assets/info-J43DQDTF-CfjXFZai.js +1 -0
  58. package/dist/client/assets/{infoDiagram-5YYISTIA-Bx78HhDi.js → infoDiagram-5YYISTIA-EGiVbp17.js} +1 -1
  59. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-BP0YQCMl.js → ishikawaDiagram-YF4QCWOH-Dw3CiXbm.js} +1 -1
  60. package/dist/client/assets/{journeyDiagram-JHISSGLW-DUgrCOuD.js → journeyDiagram-JHISSGLW-2S631RY5.js} +1 -1
  61. package/dist/client/assets/{kanban-definition-UN3LZRKU-K0Zc5_M8.js → kanban-definition-UN3LZRKU-pc9vzUtB.js} +1 -1
  62. package/dist/client/assets/{line-Dtg-krjk.js → line-BBMBmEjI.js} +1 -1
  63. package/dist/client/assets/{linear-BOwW57yX.js → linear-DT4rSZvy.js} +1 -1
  64. package/dist/client/assets/{mermaid-parser.core-Dw5BI77W.js → mermaid-parser.core-ClNeolx0.js} +2 -2
  65. package/dist/client/assets/{mermaid.core-BE-qlWNj.js → mermaid.core-Q4IJbm5V.js} +3 -3
  66. package/dist/client/assets/{mindmap-definition-RKZ34NQL-1Piz4H9I.js → mindmap-definition-RKZ34NQL-DUTZxR8H.js} +1 -1
  67. package/dist/client/assets/{ordinal-CZ33lFpK.js → ordinal-k--hYEme.js} +1 -1
  68. package/dist/client/assets/packet-YPE3B663-Dv0HkRHU.js +1 -0
  69. package/dist/client/assets/pie-LRSECV5Y-S5zPzZFN.js +1 -0
  70. package/dist/client/assets/{pieDiagram-4H26LBE5-zlWdJ7lL.js → pieDiagram-4H26LBE5-RW5hNtJq.js} +1 -1
  71. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-DRQY8Adp.js → quadrantDiagram-W4KKPZXB-CK60c7X9.js} +1 -1
  72. package/dist/client/assets/radar-GUYGQ44K-B7psLv22.js +1 -0
  73. package/dist/client/assets/{requirementDiagram-4Y6WPE33-B8_GJFxl.js → requirementDiagram-4Y6WPE33-Dz35FvcC.js} +1 -1
  74. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-BaI0Njo8.js → sankeyDiagram-5OEKKPKP-ByyluoXu.js} +1 -1
  75. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DjqAXbRF.js → sequenceDiagram-3UESZ5HK-C-879UFe.js} +1 -1
  76. package/dist/client/assets/{stateDiagram-AJRCARHV-Ovr_3LeO.js → stateDiagram-AJRCARHV-B8neDlUu.js} +1 -1
  77. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-B4Mq8Abu.js +1 -0
  78. package/dist/client/assets/{timeline-definition-PNZ67QCA-DkczYKeZ.js → timeline-definition-PNZ67QCA-iAwrltn1.js} +1 -1
  79. package/dist/client/assets/treeView-BLDUP644-B8H0kT67.js +1 -0
  80. package/dist/client/assets/treemap-LRROVOQU-DPLhFHnh.js +1 -0
  81. package/dist/client/assets/{vennDiagram-CIIHVFJN-BZyo4ESi.js → vennDiagram-CIIHVFJN-DHN61m8d.js} +1 -1
  82. package/dist/client/assets/wardley-L42UT6IY-B5-Vb08V.js +1 -0
  83. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-BEISrECX.js → wardleyDiagram-YWT4CUSO-XDVo7Jy1.js} +1 -1
  84. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CyNzGK7f.js → xychartDiagram-2RQKCTM6-Cb-HLpaN.js} +1 -1
  85. package/dist/client/index.html +2 -2
  86. package/dist/server/db.js +235 -0
  87. package/dist/server/db.js.map +1 -1
  88. package/dist/server/index.js +200 -45
  89. package/dist/server/index.js.map +1 -1
  90. package/dist/server/lib/agent.js +139 -90
  91. package/dist/server/lib/agent.js.map +1 -1
  92. package/dist/server/lib/agentProvider.js +1 -6
  93. package/dist/server/lib/agentProvider.js.map +1 -1
  94. package/dist/server/lib/buildExecutionEnvironment.js +517 -0
  95. package/dist/server/lib/buildExecutionEnvironment.js.map +1 -0
  96. package/dist/server/lib/buildOpenQuestionOperations.js +9 -3
  97. package/dist/server/lib/buildOpenQuestionOperations.js.map +1 -1
  98. package/dist/server/lib/checkAutoFix.js +1 -0
  99. package/dist/server/lib/checkAutoFix.js.map +1 -1
  100. package/dist/server/lib/checkRepairDispatch.js +3 -1
  101. package/dist/server/lib/checkRepairDispatch.js.map +1 -1
  102. package/dist/server/lib/dockerSandboxCredentials.js +62 -0
  103. package/dist/server/lib/dockerSandboxCredentials.js.map +1 -0
  104. package/dist/server/lib/dockerSandboxEnvironmentOperations.js +54 -0
  105. package/dist/server/lib/dockerSandboxEnvironmentOperations.js.map +1 -0
  106. package/dist/server/lib/dockerSandboxExecutionEnvironment.js +631 -0
  107. package/dist/server/lib/dockerSandboxExecutionEnvironment.js.map +1 -0
  108. package/dist/server/lib/dockerSandboxExecutionProvider.js +196 -0
  109. package/dist/server/lib/dockerSandboxExecutionProvider.js.map +1 -0
  110. package/dist/server/lib/dockerSandboxOpencodeSessionOperations.js +29 -0
  111. package/dist/server/lib/dockerSandboxOpencodeSessionOperations.js.map +1 -0
  112. package/dist/server/lib/dockerSandboxRuntimeController.js +187 -0
  113. package/dist/server/lib/dockerSandboxRuntimeController.js.map +1 -0
  114. package/dist/server/lib/executionEnvironment.js +22 -0
  115. package/dist/server/lib/executionEnvironment.js.map +1 -1
  116. package/dist/server/lib/executionEnvironmentContexts.js +144 -0
  117. package/dist/server/lib/executionEnvironmentContexts.js.map +1 -0
  118. package/dist/server/lib/executionEnvironmentLifecycle.js +63 -0
  119. package/dist/server/lib/executionEnvironmentLifecycle.js.map +1 -0
  120. package/dist/server/lib/executionEnvironmentReconciliation.js +782 -0
  121. package/dist/server/lib/executionEnvironmentReconciliation.js.map +1 -0
  122. package/dist/server/lib/executionEnvironmentRoutes.js +354 -0
  123. package/dist/server/lib/executionEnvironmentRoutes.js.map +1 -0
  124. package/dist/server/lib/executionEnvironmentValidation.js +486 -0
  125. package/dist/server/lib/executionEnvironmentValidation.js.map +1 -0
  126. package/dist/server/lib/executionEnvironmentValidationOperations.js +635 -0
  127. package/dist/server/lib/executionEnvironmentValidationOperations.js.map +1 -0
  128. package/dist/server/lib/executionEnvironments.js +726 -0
  129. package/dist/server/lib/executionEnvironments.js.map +1 -0
  130. package/dist/server/lib/executionReconciliation.js +77 -0
  131. package/dist/server/lib/executionReconciliation.js.map +1 -1
  132. package/dist/server/lib/executionRetry.js +3 -0
  133. package/dist/server/lib/executionRetry.js.map +1 -1
  134. package/dist/server/lib/executionRuns.js +1 -0
  135. package/dist/server/lib/executionRuns.js.map +1 -1
  136. package/dist/server/lib/executionTargets.js +107 -0
  137. package/dist/server/lib/executionTargets.js.map +1 -0
  138. package/dist/server/lib/executionTimeline.js +3 -0
  139. package/dist/server/lib/executionTimeline.js.map +1 -1
  140. package/dist/server/lib/hostExecutionEnvironment.js +47 -1
  141. package/dist/server/lib/hostExecutionEnvironment.js.map +1 -1
  142. package/dist/server/lib/mobileAccess.js +2 -2
  143. package/dist/server/lib/mobileAccess.js.map +1 -1
  144. package/dist/server/lib/models.js +11 -0
  145. package/dist/server/lib/models.js.map +1 -1
  146. package/dist/server/lib/opencodeErrors.js +31 -3
  147. package/dist/server/lib/opencodeErrors.js.map +1 -1
  148. package/dist/server/lib/opencodeSessionOperations.js +189 -9
  149. package/dist/server/lib/opencodeSessionOperations.js.map +1 -1
  150. package/dist/server/lib/opencodeTaskSessions.js +7 -12
  151. package/dist/server/lib/opencodeTaskSessions.js.map +1 -1
  152. package/dist/server/lib/postBuildChecks.js +2 -1
  153. package/dist/server/lib/postBuildChecks.js.map +1 -1
  154. package/dist/server/lib/projects.js +10 -0
  155. package/dist/server/lib/projects.js.map +1 -1
  156. package/dist/server/lib/specArtifact.js +1 -1
  157. package/dist/server/lib/specArtifact.js.map +1 -1
  158. package/dist/server/lib/specDraft.js +1 -5
  159. package/dist/server/lib/specDraft.js.map +1 -1
  160. package/dist/server/lib/specExport.js +1 -6
  161. package/dist/server/lib/specExport.js.map +1 -1
  162. package/dist/server/lib/specGraphFeature.js +3 -0
  163. package/dist/server/lib/specGraphFeature.js.map +1 -0
  164. package/dist/server/lib/specRepositoryEvidenceFormatting.js +2 -1
  165. package/dist/server/lib/specRepositoryEvidenceFormatting.js.map +1 -1
  166. package/dist/server/lib/specRepositoryImpact.js +4 -0
  167. package/dist/server/lib/specRepositoryImpact.js.map +1 -1
  168. package/dist/server/lib/specReviewContext.js +6 -20
  169. package/dist/server/lib/specReviewContext.js.map +1 -1
  170. package/dist/server/lib/specSnapshotEvidence.js +4 -0
  171. package/dist/server/lib/specSnapshotEvidence.js.map +1 -1
  172. package/dist/server/lib/specTicketMaterialization.js +4 -1
  173. package/dist/server/lib/specTicketMaterialization.js.map +1 -1
  174. package/dist/server/lib/ticketFollowUpOperations.js +8 -1
  175. package/dist/server/lib/ticketFollowUpOperations.js.map +1 -1
  176. package/dist/server/lib/ticketRunOperations.js +0 -3
  177. package/dist/server/lib/ticketRunOperations.js.map +1 -1
  178. package/dist/server/lib/types.js +1 -0
  179. package/dist/server/lib/types.js.map +1 -1
  180. package/dist/server/lib/workspaceIdentity.js +3 -0
  181. package/dist/server/lib/workspaceIdentity.js.map +1 -1
  182. package/dist/server/workers/build.js +114 -8
  183. package/dist/server/workers/build.js.map +1 -1
  184. package/dist/server/workers/followUp.js +118 -3
  185. package/dist/server/workers/followUp.js.map +1 -1
  186. package/dist/server/workers/plan.js +34 -22
  187. package/dist/server/workers/plan.js.map +1 -1
  188. package/dist/server/workers/review.js +14 -13
  189. package/dist/server/workers/review.js.map +1 -1
  190. package/dist/server/workers/specReview.js +0 -1
  191. package/dist/server/workers/specReview.js.map +1 -1
  192. package/dist/server/workers/specSession.js +46 -122
  193. package/dist/server/workers/specSession.js.map +1 -1
  194. package/package.json +1 -1
  195. package/dist/client/assets/ActivityView-DpY9GZez.js +0 -1
  196. package/dist/client/assets/GitHubActionsDialog-BCr-hjvp.js +0 -1
  197. package/dist/client/assets/RepositoryGraphDialog-_hm-x1Dx.js +0 -1
  198. package/dist/client/assets/VerificationDialog-CsjDzpE1.js +0 -4
  199. package/dist/client/assets/architecture-7EHR7CIX-Dm8H7N6Z.js +0 -1
  200. package/dist/client/assets/channel-DVkhJzgx.js +0 -1
  201. package/dist/client/assets/chunk-QZHKN3VN-CtbsU1Bj.js +0 -1
  202. package/dist/client/assets/chunk-WU5MYG2G-CzMMPYdi.js +0 -1
  203. package/dist/client/assets/classDiagram-4FO5ZUOK-6oZ93s5p.js +0 -1
  204. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DYO_YnkU.js +0 -1
  205. package/dist/client/assets/eventmodeling-FCH6USID-BWhw0UJ8.js +0 -1
  206. package/dist/client/assets/gitGraph-WXDBUCRP-BSnxAa1J.js +0 -1
  207. package/dist/client/assets/index-CS4TzG41.css +0 -2
  208. package/dist/client/assets/index-D5TEfELZ.js +0 -275
  209. package/dist/client/assets/info-J43DQDTF-DcFwF1-h.js +0 -1
  210. package/dist/client/assets/packet-YPE3B663-1VZiO_9r.js +0 -1
  211. package/dist/client/assets/pie-LRSECV5Y-BX1-tQCu.js +0 -1
  212. package/dist/client/assets/radar-GUYGQ44K-B2HRrCR4.js +0 -1
  213. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-9pmeAorV.js +0 -1
  214. package/dist/client/assets/treeView-BLDUP644-CDfUVbUi.js +0 -1
  215. package/dist/client/assets/treemap-LRROVOQU-DUWqu8sK.js +0 -1
  216. package/dist/client/assets/wardley-L42UT6IY-BEFuPUCy.js +0 -1
  217. /package/dist/client/assets/{array-B2f2amhX.js → array-BNor45A1.js} +0 -0
  218. /package/dist/client/assets/{chunk-NNHCCRGN-DgKrp8T-.js → chunk-NNHCCRGN-CZB-V-Gv.js} +0 -0
  219. /package/dist/client/assets/{cytoscape.esm-BInZCgaJ.js → cytoscape.esm-B2lJcMSI.js} +0 -0
  220. /package/dist/client/assets/{defaultLocale-sPXJ5urm.js → defaultLocale-DPzUsThw.js} +0 -0
  221. /package/dist/client/assets/{dist-DfHDMDTt.js → dist-CERhmQhR.js} +0 -0
  222. /package/dist/client/assets/{graphlib-DacNv4Jd.js → graphlib-BHOW-eWz.js} +0 -0
  223. /package/dist/client/assets/{init-BVCnG1lj.js → init-C0L3woqb.js} +0 -0
  224. /package/dist/client/assets/{katex-BlkrXOwm.js → katex-CpjQsUQe.js} +0 -0
  225. /package/dist/client/assets/{path-Bw5AvBNC.js → path-sMK4d_s9.js} +0 -0
  226. /package/dist/client/assets/{rough.esm-DeLgKbOI.js → rough.esm-BoTisKeL.js} +0 -0
  227. /package/dist/client/assets/{src-CFGsdLiG.js → src-BRjoYtUW.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionEnvironmentReconciliation.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentReconciliation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,kCAAkC,EAClC,6BAA6B,EAC7B,oCAAoC,EACpC,iBAAiB,GAIlB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,+BAA+B,EAC/B,oCAAoC,EACpC,mCAAmC,EACnC,+BAA+B,EAC/B,uBAAuB,EACvB,gCAAgC,EAChC,8BAA8B,GAC/B,MAAM,4BAA4B,CAAA;AAInC,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE5E,MAAM,6BAA6B,GAAG,MAAM,CAAA;AAC5C,MAAM,8BAA8B,GAAG,wFAAwF,CAAA;AAQ/H,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IACzD,YAAY,OAAe,EAAE,UAAwB,EAAE;QACrD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,kCAAkC,CAAA;IAChD,CAAC;CACF;AAED,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAyB,EAAE,CAAC,CAC3E,0BAA0B,CAAC,sBAAsB,EAAE,CAAC,CACrD,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,WAAiC,EACjC,cAAsC,EACA,EAAE;IACxC,IAAI,WAAW,CAAC,aAAa,KAAK,uBAAuB,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,CAAC,EAAE,sCAAsC,CAAC,CAAA;IAChG,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,cAAc,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,CAAC,EAAE,sDAAsD,CAAC,CAAA;IAChH,CAAC;IACD,IAAI,cAAc,IAAI,WAAW,CAAC,cAAc,KAAK,cAAc,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,CAAC,EAAE,+CAA+C,CAAC,CAAA;IACzG,CAAC;IACD,OAAO;QACL,IAAI,EAAE,WAAW,CAAC,WAAW,IAAI,uBAAuB,CAAC;YACvD,SAAS,EAAE,WAAW,CAAC,UAAU;YACjC,SAAS,EAAE,WAAW,CAAC,UAAU;YACjC,mBAAmB,EAAE,WAAW,CAAC,oBAAoB;YACrD,qBAAqB,EAAE,WAAW,CAAC,kCAAkC;SACtE,CAAC;QACF,KAAK,EAAE,WAAW,CAAC,cAAc;QACjC,aAAa,EAAE,WAAW,CAAC,qBAAqB;QAChD,QAAQ,EAAE,WAAW,CAAC,iBAAiB;KACxC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,KAAc,EAAE,QAAiB,EAAE,EAAE;IACrE,IAAI,QAAQ,IAAI,CAAC,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;QACjF,OAAO,EAAE,IAAI,EAAE,iCAAiC,EAAE,OAAO,EAAE,qEAAqE,EAAE,CAAA;IACpI,CAAC;IACD,IAAI,KAAK,YAAY,6BAA6B,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI,EAAE,sCAAsC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;IACjF,CAAC;IACD,IAAI,KAAK,YAAY,oCAAoC,EAAE,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,uCAAuC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;IAClF,CAAC;IACD,OAAO;QACL,IAAI,EAAE,qCAAqC;QAC3C,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wDAAwD;KAC3G,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yCAAyC,GAAG,KAAK,EAAE,KAK9D,EAAE,EAAE;IACJ,MAAM,QAAQ,GAAG,4BAA4B,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;IACtF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IACxC,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;QAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,QAAQ,GAAG,IAAI,CAAA;YACf,UAAU,CAAC,KAAK,EAAE,CAAA;YAClB,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;QACxD,CAAC,EAAE,6BAA6B,CAAC,CAAA;QACjC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAA;QACjB,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1F,CAAC,CAAC,CAAA;IACF,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,6BAA6B,EAAE,CAAC;YACrG,cAAc;SACf,CAAC,CAAA;QACF,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAC3F,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC9F,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC1C,+BAA+B,CAAC;gBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;gBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;gBACzB,SAAS,EAAE,0CAA0C;gBACrD,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,6DAA6D;gBACtE,QAAQ,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE;aAC/E,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,8BAA8B,CAAC;YAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;YAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;YACzB,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,0CAA0C;YACrD,OAAO,EAAE,6DAA6D;YACtE,QAAQ,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE;SAC/E,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACzD,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAC3F,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC9F,OAAM;QACR,CAAC;QACD,MAAM,QAAQ,GAAG;YACf,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,WAAW,EAAE,QAAQ,CAAC,IAAI;YAC1B,WAAW,EAAE,8BAA8B;SAC5C,CAAA;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;YAC9C,+BAA+B,CAAC;gBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;gBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;gBACzB,SAAS,EAAE,uCAAuC;gBAClD,SAAS,EAAE,aAAa;gBACxB,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE;aACrD,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,8BAA8B,CAAC;YAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;YAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;YACzB,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,uCAAuC;YAClD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,8BAA8B,EAAE,EAAE;YACnH,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;YAAS,CAAC;QACT,UAAU,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAAE,KAI9C,EAAE,EAAE;IACJ,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;IACjF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,gCAAgC,CAAC,yBAAyB,KAAK,CAAC,aAAa,iBAAiB,CAAC,CAAA;IAC3G,CAAC;IACD,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;GAKhC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAA6C,CAAA;IACxF,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI,gCAAgC,CACxC,yBAAyB,KAAK,CAAC,aAAa,gCAAgC,aAAa,CAAC,gBAAgB,GAAG,CAC9G,CAAA;IACH,CAAC;IACD,IAAI,WAAW,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,8BAA8B,CAAC;QAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,2BAA2B;QACtC,OAAO,EAAE,2CAA2C;KACrD,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAA;IAC1D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC3D,IAAI,QAAQ,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,6BAA6B,CACrC,QAAQ,CAAC,IAAI,EACb,WAAW,QAAQ,CAAC,IAAI,sDAAsD,CAC/E,CAAA;QACH,CAAC;QACD,IAAI,QAAQ,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACpC,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC5D,IAAI,SAAS,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,6BAA6B,CACrC,QAAQ,CAAC,IAAI,EACb,WAAW,QAAQ,CAAC,IAAI,4BAA4B,CACrD,CAAA;QACH,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC5D,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,gCAAgC,CAAC,WAAW,QAAQ,CAAC,IAAI,4BAA4B,CAAC,CAAA;QAClG,CAAC;QACD,8BAA8B,CAAC;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,mCAAmC;SAC/C,CAAC,CAAA;QACF,OAAO,8BAA8B,CAAC;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,6BAA6B;YACxC,OAAO,EAAE,iDAAiD;SAC3D,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;QAC7E,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,KAAK,UAAU,IAAI,OAAO,CAAC,eAAe,KAAK,iBAAiB,CAAC,EAAE,CAAC;YACzG,8BAA8B,CAAC;gBAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE;oBACP,IAAI,EAAE,KAAK,YAAY,6BAA6B,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc;oBAC3F,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B;iBACjF;aACF,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wCAAwC,GAAG,KAAK,EAAE,KAI7D,EAAE,EAAE;IACJ,MAAM,QAAQ,GAAG,4BAA4B,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,6BAA6B,CACrC,QAAQ,CAAC,IAAI,EACb,WAAW,QAAQ,CAAC,IAAI,sDAAsD,CAC/E,CAAA;QACH,CAAC;QACD,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,6BAA6B,EAAE,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,KAAK,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,6BAA6B,CACrC,QAAQ,CAAC,IAAI,EACb,WAAW,QAAQ,CAAC,IAAI,wCAAwC,CACjE,CAAA;QACH,CAAC;QACD,IAAI,KAAK,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,oCAAoC,CAAC,WAAW,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAA;QAC7F,CAAC;QAED,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAC3F,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACtD,OAAM;QACR,CAAC;QACD,MAAM,QAAQ,GAAG,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAA;QACrF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,eAAe,KAAK,aAAa,IAAI,OAAO,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACtF,+BAA+B,CAAC;oBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,SAAS,EAAE,gDAAgD;oBAC3D,SAAS,EAAE,OAAO,CAAC,eAAe;oBAClC,OAAO,EAAE,OAAO,CAAC,eAAe;oBAChC,OAAO,EAAE,mEAAmE;oBAC5E,QAAQ;iBACT,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,8BAA8B,CAAC;oBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,KAAK,EAAE,aAAa;oBACpB,SAAS,EAAE,gDAAgD;oBAC3D,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,mEAAmE,EAAE;oBAClH,QAAQ;iBACT,CAAC,CAAA;YACJ,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC1C,+BAA+B,CAAC;gBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;gBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;gBACzB,SAAS,EAAE,yCAAyC;gBACpD,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,yEAAyE;gBAClF,QAAQ;aACT,CAAC,CAAA;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,eAAe,KAAK,QAAQ,IAAI,OAAO,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;YAC7F,8BAA8B,CAAC;gBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;gBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;gBACzB,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,yCAAyC;gBACpD,OAAO,EAAE,yEAAyE;gBAClF,QAAQ;aACT,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAC3F,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kEAAkE,CAAA;QAC3H,IAAI,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAA;YACrF,IAAI,OAAO,CAAC,eAAe,KAAK,QAAQ,IAAI,OAAO,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;gBACtF,+BAA+B,CAAC;oBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,SAAS,EAAE,sCAAsC;oBACjD,SAAS,EAAE,OAAO,CAAC,eAAe;oBAClC,OAAO,EAAE,OAAO,CAAC,eAAe;oBAChC,OAAO;oBACP,QAAQ;iBACT,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,8BAA8B,CAAC;oBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,KAAK,EAAE,aAAa;oBACpB,SAAS,EAAE,sCAAsC;oBACjD,OAAO,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,OAAO,EAAE;oBAC9D,QAAQ;iBACT,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,MAAM,IAAI,gCAAgC,CACxC,gDAAgD,KAAK,CAAC,cAAc,eAAe,QAAQ,CAAC,IAAI,EAAE,EAClG,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CACxB,QAA8C,EAC9C,QAAiC,EACjC,EAAE,CAAC,CACH,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;OAC5B,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;OACjC,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,aAAa;OACjD,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAC3C,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,OAAuC,EACO,EAAE;IAChD,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAA0C,CAAA;QAC7F,IACE,SAAS,EAAE,cAAc,KAAK,CAAC;eAC5B,SAAS,CAAC,QAAQ,KAAK,uBAAuB;eAC9C,SAAS,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc;eACnD,SAAS,CAAC,oBAAoB,KAAK,OAAO,CAAC,oBAAoB;eAC/D,SAAS,CAAC,kCAAkC,KAAK,OAAO,CAAC,kCAAkC;eAC3F,CAAC,SAAS,CAAC,KAAK,KAAK,UAAU,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC;eAChE,OAAO,SAAS,CAAC,MAAM,EAAE,cAAc,KAAK,QAAQ;eACpD,OAAO,SAAS,CAAC,MAAM,EAAE,GAAG,KAAK,QAAQ,EAC5C,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,OAAuC,EACJ,EAAE;IACrC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAA+B,CAAA;QAClF,IACE,SAAS,EAAE,QAAQ,KAAK,uBAAuB;eAC5C,SAAS,CAAC,aAAa,KAAK,OAAO,CAAC,cAAc;eAClD,SAAS,CAAC,mBAAmB,KAAK,OAAO,CAAC,oBAAoB;eAC9D,SAAS,CAAC,cAAc,KAAK,OAAO,CAAC,gBAAgB;eACrD,SAAS,CAAC,KAAK,EAAE,IAAI,KAAK,eAAe;eACzC,OAAO,SAAS,CAAC,KAAK,CAAC,UAAU,KAAK,QAAQ,EACjD,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,yCAAyC,GAAG,CAChD,OAAuC,EACvC,OAAe,EACf,EAAE;IACF,MAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACzE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,OAAM;IACR,CAAC;IACD,sBAAsB,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC,UAAU;QAC7B,KAAK,EAAE,OAAO,CAAC,gBAAgB;QAC/B,MAAM,EAAE,aAAa;QACrB,YAAY,EAAE,aAAa;QAC3B,OAAO,EAAE;YACP,IAAI,EAAE,+CAA+C;YACrD,OAAO,EAAE,oFAAoF,OAAO,EAAE;YACtG,OAAO,EAAE;gBACP,aAAa,EAAE,OAAO,CAAC,cAAc;gBACrC,mBAAmB,EAAE,OAAO,CAAC,oBAAoB;gBACjD,iBAAiB,EAAE,OAAO,CAAC,cAAc,KAAK,IAAI;aACnD;SACF;QACD,SAAS,EAAE,8CAA8C;QACzD,YAAY,EAAE,0FAA0F;QACxG,aAAa,EAAE;YACb,aAAa,EAAE,OAAO,CAAC,cAAc;YACrC,mBAAmB,EAAE,OAAO,CAAC,oBAAoB;YACjD,aAAa,EAAE,IAAI;YACnB,iBAAiB,EAAE,OAAO,CAAC,cAAc,KAAK,IAAI;SACnD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+CAA+C,GAAG,KAAK,EAClE,UAAgC,iCAAiC,EAAE,EACnE,EAAE;IACF,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;GAK3B,CAAC,CAAC,GAAG,EAAsC,CAAA;IAC5C,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;IAEzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QACvF,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;QACnD,MAAM,eAAe,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC;YACH,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,CAAC,cAAc,aAAa,CAAC,CAAA;YAC/E,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;YAC/F,CAAC;YACD,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;YAC/F,CAAC;YACD,MAAM,SAAS,GAAG,eAAe;mBAC5B,eAAe,CAAC,eAAe,KAAK,SAAS,CAAC,gBAAgB;mBAC9D,eAAe,CAAC,SAAS,KAAK,SAAS,CAAC,MAAM,CAAC,GAAG;gBACrD,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,IAAI,CAAA;YACR,IAAI,eAAe,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;YACnF,CAAC;YACD,MAAM,UAAU,GAAG,SAAS,EAAE,KAAK,CAAC,IAAI,KAAK,eAAe;gBAC1D,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU;gBAC5B,CAAC,CAAC,WAAW,CAAC,WAAW,CAAA;YAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;YACrE,CAAC;YACD,IAAI,SAAS,EAAE,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,WAAW,CAAC,WAAW,IAAI,UAAU,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;gBACnH,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;YAC/E,CAAC;YACD,MAAM,QAAQ,GAAyC;gBACrD,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,aAAa,EAAE,SAAS,CAAC,MAAM,CAAC,cAAc;gBAC9C,QAAQ,EAAE,kCAAkC,CAAC,SAAS,CAAC,KAAK,CAAC;aAC9D,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACnD,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,8EAA8E,CAAC,CAAA;YACxI,CAAC;YACD,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,6BAA6B,EAAE,CAAC,CAAA;YAC5E,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAClD,IAAI,KAAK,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,yEAAyE,CAAC,CAAA;YACnI,CAAC;YACD,IAAI,KAAK,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,oCAAoC,CAAC,WAAW,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAA;YAC7F,CAAC;YACD,MAAM,KAAK,GAA0C,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAA;YACjF,MAAM,iBAAiB,GAAG,KAAK,KAAK,SAAS;gBAC3C,CAAC,CAAC;oBACE,KAAK;oBACL,SAAS,EAAE,iDAAiD;oBAC5D,OAAO,EAAE,8FAA8F;oBACvG,QAAQ,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE;iBAC7F;gBACZ,CAAC,CAAC;oBACE,KAAK;oBACL,SAAS,EAAE,uDAAuD;oBAClE,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gDAAgD,EAAE;oBAC/F,QAAQ,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE;iBAC7F,CAAA;YACd,IAAI,SAAS,EAAE,CAAC;gBACd,gCAAgC,CAAC;oBAC/B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,cAAc;oBACrC,cAAc,EAAE,OAAO,CAAC,gBAAgB;oBACxC,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;oBACnF,iBAAiB;iBAClB,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,gCAAgC,CAAC;oBAC/B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,cAAc;oBACrC,cAAc,EAAE,OAAO,CAAC,gBAAgB;oBACxC,KAAK,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,KAAK,EAAE;oBAC3D,iBAAiB;iBAClB,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,CAAC,OAAO,IAAI,CAAC,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2DAA2D,CAAA;YACpH,MAAM,OAAO,GAAG,WAAW,IAAI,uBAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;YAClG,IAAI,OAAO,IAAI,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAA;gBAC7F,8BAA8B,CAAC;oBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,cAAc;oBACrC,KAAK,EAAE,YAAY;oBACnB,SAAS,EAAE,8CAA8C;oBACzD,OAAO,EAAE,EAAE,IAAI,EAAE,mCAAmC,EAAE,OAAO,EAAE;oBAC/D,QAAQ,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,EAAE;iBAC5E,CAAC,CAAA;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,+BAA+B,CAAC;oBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,cAAc;oBACrC,SAAS,EAAE,8CAA8C;oBACzD,SAAS,EAAE,OAAO,CAAC,eAAe;oBAClC,OAAO,EAAE,OAAO,CAAC,eAAe;oBAChC,OAAO;oBACP,QAAQ,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,EAAE;iBAC5E,CAAC,CAAA;YACJ,CAAC;YACD,yCAAyC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3D,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CACxB,WAAiC,EACjC,QAAiC,EACjC,EAAE;IACF,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAA;IACtE,MAAM,OAAO,GAAG,CACd,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;WACnG,CAAC,WAAW,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAC1G,CAAA;IACD,IAAI,WAAW,CAAC,eAAe,KAAK,WAAW,IAAI,OAAO,EAAE,CAAC;QAC3D,8BAA8B,CAAC;YAC7B,SAAS,EAAE,WAAW,CAAC,UAAU;YACjC,aAAa,EAAE,WAAW,CAAC,EAAE;YAC7B,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,wBAAwB;YACnC,OAAO,EAAE,+BAA+B,QAAQ,CAAC,KAAK,iCAAiC;YACvF,QAAQ,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,EAAE;SAC5C,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IACD,+BAA+B,CAAC;QAC9B,SAAS,EAAE,WAAW,CAAC,UAAU;QACjC,aAAa,EAAE,WAAW,CAAC,EAAE;QAC7B,SAAS,EAAE,wBAAwB;QACnC,SAAS,EAAE,WAAW,CAAC,eAAe;QACtC,OAAO,EAAE,WAAW,CAAC,eAAe;QACpC,OAAO,EAAE,+BAA+B,QAAQ,CAAC,KAAK,iCAAiC;QACvF,QAAQ,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,EAAE;KAC5C,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EACjD,UAAgC,iCAAiC,EAAE,EACnE,EAAE;IACF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;GAKvB,CAAC,CAAC,GAAG,EAA+C,CAAA;IACrD,MAAM,OAAO,GAAG,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IAE9G,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QACnE,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,aAAa,KAAK,uBAAuB,EAAE,CAAC;YAC1E,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAA;YACrB,SAAQ;QACV,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAA;YAC1D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,WAAW,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;oBAC7C,+BAA+B,CAAC;wBAC9B,SAAS,EAAE,WAAW,CAAC,UAAU;wBACjC,aAAa,EAAE,WAAW,CAAC,EAAE;wBAC7B,SAAS,EAAE,oCAAoC;wBAC/C,SAAS,EAAE,WAAW,CAAC,eAAe;wBACtC,OAAO,EAAE,WAAW,CAAC,eAAe;wBACpC,OAAO,EAAE,2EAA2E;wBACpF,QAAQ,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;qBAC7C,CAAC,CAAA;oBACF,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAA;oBAC7B,SAAQ;gBACV,CAAC;gBACD,8BAA8B,CAAC;oBAC7B,SAAS,EAAE,WAAW,CAAC,UAAU;oBACjC,aAAa,EAAE,WAAW,CAAC,EAAE;oBAC7B,KAAK,EAAE,aAAa;oBACpB,SAAS,EAAE,oCAAoC;oBAC/C,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,2EAA2E,EAAE;iBAC3H,CAAC,CAAA;gBACF,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAA;gBAC7B,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,QAAQ,CAAC,IAAI,sDAAsD,CAAC,CAAA;YACxI,CAAC;YACD,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QACtF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,uBAAuB,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,CAAA;YAC/E,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uCAAuC,CAAA;YAChG,IAAI,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACvF,8BAA8B,CAAC;oBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,KAAK,EAAE,aAAa;oBACpB,SAAS,EAAE,wCAAwC;oBACnD,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,YAAY,6BAA6B,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,sBAAsB,EAAE,OAAO,EAAE;iBAC1H,CAAC,CAAA;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,+BAA+B,CAAC;oBAC9B,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,aAAa,EAAE,OAAO,CAAC,EAAE;oBACzB,SAAS,EAAE,wCAAwC;oBACnD,SAAS,EAAE,OAAO,CAAC,eAAe;oBAClC,OAAO,EAAE,OAAO,CAAC,eAAe;oBAChC,OAAO;iBACR,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,CAAC,WAAW,IAAI,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAQD,MAAM,sCAAsC,GAAG,GAAwC,EAAE;IACvF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BvB,CAAC,CAAC,GAAG,EAA4E,CAAA;IAClF,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC,CAAC,CAAA;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,sCAAsC,GAAG,KAAK,EACzD,UAAgC,iCAAiC,EAAE,EACnE,EAAE;IACF,MAAM,MAAM,GAAG,sCAAsC,EAAE,CAAA;IACvD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;IACjE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,qCAAqC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;YACjF,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAA;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,KAAuC,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE;IACnF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAClE,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IAClD,MAAM,MAAM,GAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC3C,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC/B,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC9C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;AACpD,CAAC,CAAA;AAED,MAAM,iCAAiC,GAAG,CAAC,KAAuC,EAAE,EAAE;IACpF,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IACxD,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;YAKhB,KAAK,CAAC,KAAK;;;GAGpB,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAqE,CAAA;IAC3F,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,gCAAgC,CACxC,yBAAyB,MAAM,CAAC,cAAc,gCAAgC,MAAM,CAAC,gBAAgB,EAAE,CACxG,CAAA;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,KAAuC,EAAE,SAAiB,EAAE,OAAe,EAAE,EAAE;IACpH,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACzC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;YAEd,KAAK,CAAC,KAAK;;GAEpB,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAA0B,CAAA;IAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,8BAA8B,CAAC;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,GAAG,CAAC,EAAE;YACrB,KAAK,EAAE,UAAU;YACjB,SAAS;YACT,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;AACH,CAAC,CAAA;AAED,MAAM,4BAA4B,GAAG,KAAK,EACxC,KAAuC,EACvC,OAAe,EACf,UAAgC,iCAAiC,EAAE,EACnE,OAGE,EACF,EAAE;IACF,iCAAiC,CAAC,KAAK,CAAC,CAAA;IACxC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IACtF,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC5C,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,oCAAoC,CAAC;YACnD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO;YACP,KAAK,EAAE,GAAG;YACV,WAAW;SACZ,CAAC,CAAA;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAK;QACP,CAAC;QACD,MAAM,QAAQ,GAAY,EAAE,CAAA;QAE5B,KAAK,MAAM,WAAW,IAAI,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAA;gBAC1D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACrD,IAAI,QAAQ,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;oBACvD,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,QAAQ,CAAC,IAAI,sDAAsD,CAAC,CAAA;gBACxI,CAAC;gBACD,IAAI,QAAQ,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;oBAClC,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC9B,CAAC;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;gBAChC,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACtD,IAAI,SAAS,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;oBACzD,MAAM,IAAI,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,QAAQ,CAAC,IAAI,gDAAgD,CAAC,CAAA;gBAClI,CAAC;gBACD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,CAAC,IAAI,6BAA6B,CAAC,CAAA;gBACxE,CAAC;gBACD,mCAAmC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAC7G,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBACzE,+BAA+B,CAAC;oBAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,aAAa,EAAE,WAAW,CAAC,EAAE;oBAC7B,OAAO;oBACP,OAAO,EAAE;wBACP,IAAI,EAAE,KAAK,YAAY,6BAA6B,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB;wBAC7F,OAAO,EAAE,OAAO,CAAC,OAAO;qBACzB;iBACF,CAAC,CAAA;gBACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,gCAAgC,CACxC,mBAAmB,QAAQ,CAAC,MAAM,8BAA8B,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,yBAAyB,EAAE,EACnH,EAAE,KAAK,EAAE,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CACxC,CAAA;QACH,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,MAAM,CAAA;IAC3B,CAAC;IACD,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACzC,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC;;YAEnB,KAAK,CAAC,KAAK;;GAEpB,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAA+B,CAAA;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,gCAAgC,CACxC,yBAAyB,SAAS,CAAC,EAAE,6CAA6C,CACnF,CAAA;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qCAAqC,GAAG,KAAK,EACxD,KAKE,EACF,EAAE,CAAC,4BAA4B,CAC/B;IACE,SAAS,EAAE,KAAK,CAAC,SAAS;IAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;IAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;CAC3B,EACD,UAAU,EAAE,EACZ,KAAK,CAAC,OAAO,EACb;IACE,gBAAgB,EAAE,qCAAqC;IACvD,cAAc,EAAE,4EAA4E;CAC7F,CACF,CAAA;AAED,MAAM,CAAC,MAAM,mCAAmC,GAAG,KAAK,EACtD,SAAiB,EACjB,OAAe,EACf,UAAgC,iCAAiC,EAAE,EACnE,EAAE,CAAC,4BAA4B,CAC/B,EAAE,SAAS,EAAE,EACb,OAAO,EACP,OAAO,EACP;IACE,gBAAgB,EAAE,sCAAsC;IACxD,cAAc,EAAE,2DAA2D;CAC5E,CACF,CAAA"}
@@ -0,0 +1,354 @@
1
+ import db from '../db.js';
2
+ import { QUALIFIED_DOCKER_SANDBOX_TEMPLATES, QUALIFIED_SBX_VERSION, createDockerSandboxAdapter, createSbxCommandRunner, probeDockerSandboxReadiness, } from './dockerSandboxExecutionEnvironment.js';
3
+ import { createDockerSandboxRuntimeController } from './dockerSandboxRuntimeController.js';
4
+ import { ExecutionEnvironmentCleanupError, resetExecutionEnvironment } from './executionEnvironmentReconciliation.js';
5
+ import { ExecutionEnvironmentRouteError, currentExecutionEnvironmentValidationFingerprint, parseExecutionEnvironmentProvider, parseExecutionEnvironmentAgent, parseExecutionEnvironmentModel, prepareAndValidateExecutionEnvironment, resolveCurrentExecutionEnvironmentDescriptor, validateExecutionEnvironment, } from './executionEnvironmentValidationOperations.js';
6
+ import { listExecutionEnvironmentEvents, listExecutionEnvironments } from './executionEnvironments.js';
7
+ import { getExecutionRun } from './executionRuns.js';
8
+ import { getProjectById } from './projects.js';
9
+ import { resolveExecutionTarget } from './executionTargets.js';
10
+ import { getModelProvider } from './models.js';
11
+ export { ExecutionEnvironmentRouteError } from './executionEnvironmentValidationOperations.js';
12
+ const asyncRoute = (handler) => (req, res, next) => {
13
+ void handler(req, res).catch(next);
14
+ };
15
+ const withRequestAbortSignal = async (req, res, operation) => {
16
+ const controller = new AbortController();
17
+ const abort = () => controller.abort();
18
+ req.once('aborted', abort);
19
+ res.once('close', abort);
20
+ try {
21
+ return await operation(controller.signal);
22
+ }
23
+ finally {
24
+ req.removeListener('aborted', abort);
25
+ res.removeListener('close', abort);
26
+ }
27
+ };
28
+ const serializeValidationChecks = (value) => {
29
+ if (!Array.isArray(value)) {
30
+ return [];
31
+ }
32
+ return value.flatMap(candidate => {
33
+ if (typeof candidate !== 'object' || candidate === null) {
34
+ return [];
35
+ }
36
+ const check = candidate;
37
+ const kinds = ['workspace_location', 'workspace_readable', 'workspace_writable', 'executable', 'headless', 'authentication', 'destination'];
38
+ if (!kinds.some(kind => kind === check.kind)
39
+ || (check.agent !== null && check.agent !== 'opencode' && check.agent !== 'claude')
40
+ || (check.state !== 'cancelled' && check.state !== 'failed' && check.state !== 'passed')) {
41
+ return [];
42
+ }
43
+ const rawEvidence = typeof check.evidence === 'object' && check.evidence !== null && !Array.isArray(check.evidence)
44
+ ? check.evidence
45
+ : null;
46
+ const evidence = rawEvidence
47
+ && (rawEvidence.exitCode === null || typeof rawEvidence.exitCode === 'number')
48
+ && typeof rawEvidence.summary === 'string'
49
+ && typeof rawEvidence.truncated === 'boolean'
50
+ ? {
51
+ exit_code: rawEvidence.exitCode,
52
+ summary: rawEvidence.summary.slice(0, 500),
53
+ truncated: rawEvidence.truncated,
54
+ }
55
+ : undefined;
56
+ const rawDetails = typeof check.details === 'object' && check.details !== null && !Array.isArray(check.details)
57
+ ? check.details
58
+ : null;
59
+ const rawProviderError = typeof rawDetails?.providerError === 'object'
60
+ && rawDetails.providerError !== null
61
+ && !Array.isArray(rawDetails.providerError)
62
+ ? rawDetails.providerError
63
+ : null;
64
+ const providerError = rawProviderError && (typeof rawProviderError.name === 'string'
65
+ || typeof rawProviderError.message === 'string'
66
+ || typeof rawProviderError.reference === 'string'
67
+ || typeof rawProviderError.provider === 'string'
68
+ || typeof rawProviderError.model === 'string')
69
+ ? {
70
+ ...(typeof rawProviderError.name === 'string' ? { name: rawProviderError.name.slice(0, 100) } : {}),
71
+ ...(typeof rawProviderError.message === 'string' ? { message: rawProviderError.message.slice(0, 500) } : {}),
72
+ ...(typeof rawProviderError.reference === 'string' ? { reference: rawProviderError.reference.slice(0, 128) } : {}),
73
+ ...(typeof rawProviderError.provider === 'string' ? { provider: rawProviderError.provider.slice(0, 100) } : {}),
74
+ ...(typeof rawProviderError.model === 'string' ? { model: rawProviderError.model.slice(0, 200) } : {}),
75
+ }
76
+ : undefined;
77
+ const details = rawDetails && (rawDetails.credentialSource === 'stored'
78
+ || rawDetails.credentialSource === 'environment'
79
+ || rawDetails.credentialSource === 'brokered'
80
+ || rawDetails.credentialSource === 'guest'
81
+ || rawDetails.credentialSource === 'none'
82
+ || rawDetails.credentialSource === 'unknown'
83
+ || rawDetails.reason === 'model_required'
84
+ || rawDetails.reason === 'provider_required'
85
+ || rawDetails.reason === 'credential_inventory_unavailable'
86
+ || rawDetails.destinationReason === 'invalid_json'
87
+ || rawDetails.destinationReason === 'nonzero_exit'
88
+ || rawDetails.destinationReason === 'provider_error'
89
+ || rawDetails.destinationReason === 'model_not_found'
90
+ || rawDetails.destinationReason === 'credential_rejected'
91
+ || rawDetails.destinationReason === 'unexpected_response'
92
+ || providerError !== undefined)
93
+ ? {
94
+ ...(typeof rawDetails.credentialSource === 'string' ? { credential_source: rawDetails.credentialSource } : {}),
95
+ ...(typeof rawDetails.credentialProvider === 'string' ? { credential_provider: rawDetails.credentialProvider } : {}),
96
+ ...(typeof rawDetails.credentialService === 'string' ? { credential_service: rawDetails.credentialService } : {}),
97
+ ...(rawDetails.reason === 'model_required'
98
+ || rawDetails.reason === 'provider_required'
99
+ || rawDetails.reason === 'credential_inventory_unavailable'
100
+ ? { reason: rawDetails.reason }
101
+ : {}),
102
+ ...(rawDetails.destinationReason === 'invalid_json'
103
+ || rawDetails.destinationReason === 'nonzero_exit'
104
+ || rawDetails.destinationReason === 'provider_error'
105
+ || rawDetails.destinationReason === 'model_not_found'
106
+ || rawDetails.destinationReason === 'credential_rejected'
107
+ || rawDetails.destinationReason === 'unexpected_response'
108
+ ? { destination_reason: rawDetails.destinationReason }
109
+ : {}),
110
+ ...(providerError ? { provider_error: providerError } : {}),
111
+ }
112
+ : undefined;
113
+ return [{
114
+ kind: check.kind,
115
+ agent: check.agent,
116
+ state: check.state,
117
+ ...(evidence ? { evidence } : {}),
118
+ ...(details ? { details } : {}),
119
+ }];
120
+ });
121
+ };
122
+ const getEnvironmentValidations = (projectId, environment) => {
123
+ const validations = {};
124
+ const providerValidations = {};
125
+ const modelValidations = {};
126
+ const seenProviderValidationKeys = new Set();
127
+ const seenModelValidationKeys = new Set();
128
+ const rows = db.prepare(`
129
+ SELECT run.id
130
+ FROM execution_environment_run_bindings binding
131
+ JOIN execution_runs run ON run.id = binding.execution_run_id AND run.project_id = binding.project_id
132
+ WHERE binding.project_id = ? AND binding.environment_id = ? AND binding.relationship = 'validation'
133
+ AND run.kind = 'environment_validation'
134
+ ORDER BY run.created_at DESC, run.id DESC
135
+ `).all(projectId, environment.id);
136
+ const events = listExecutionEnvironmentEvents(projectId, environment.id);
137
+ for (const row of rows) {
138
+ const run = getExecutionRun(projectId, row.id);
139
+ const agent = run?.metadata?.agent;
140
+ if (!run || (agent !== 'opencode' && agent !== 'claude')) {
141
+ continue;
142
+ }
143
+ const model = typeof run.metadata?.model === 'string' ? run.metadata.model : null;
144
+ const provider = agent === 'claude'
145
+ ? 'anthropic'
146
+ : typeof run.metadata?.provider === 'string'
147
+ ? run.metadata.provider
148
+ : getModelProvider(model) || null;
149
+ const providerValidationKey = `${agent}:${provider ?? ''}`;
150
+ if (seenProviderValidationKeys.has(providerValidationKey)) {
151
+ continue;
152
+ }
153
+ seenProviderValidationKeys.add(providerValidationKey);
154
+ let event = null;
155
+ for (let index = events.length - 1; index >= 0; index -= 1) {
156
+ const candidate = events[index];
157
+ if (candidate.metadata?.executionRunId === run.id
158
+ && (candidate.event_type === 'environment_preparation_failed'
159
+ || candidate.event_type === 'environment_validation_completed'
160
+ || candidate.event_type === 'environment_validation_failed'
161
+ || candidate.event_type === 'environment_validation_cancelled')) {
162
+ event = candidate;
163
+ break;
164
+ }
165
+ }
166
+ const rawValidation = event?.metadata?.validation;
167
+ const validation = typeof rawValidation === 'object' && rawValidation !== null
168
+ ? rawValidation
169
+ : null;
170
+ const validationAgent = typeof validation?.agent === 'object' && validation.agent !== null && !Array.isArray(validation.agent)
171
+ ? validation.agent
172
+ : null;
173
+ const serialized = {
174
+ agent,
175
+ environment_id: environment.id,
176
+ run,
177
+ workspace_ready: typeof validation?.workspaceReady === 'boolean' ? validation.workspaceReady : null,
178
+ cancelled: run.status === 'cancelled' || validation?.cancelled === true,
179
+ provider: typeof validation?.provider === 'string'
180
+ ? validation.provider
181
+ : typeof validationAgent?.provider === 'string'
182
+ ? validationAgent.provider
183
+ : provider,
184
+ model: typeof validation?.model === 'string'
185
+ ? validation.model
186
+ : typeof validationAgent?.model === 'string' ? validationAgent.model : null,
187
+ checks: serializeValidationChecks(validation?.checks),
188
+ };
189
+ validations[agent] ??= serialized;
190
+ if (serialized.provider) {
191
+ providerValidations[agent] ??= [];
192
+ providerValidations[agent]?.push(serialized);
193
+ }
194
+ if (serialized.model) {
195
+ const modelValidationKey = `${agent}:${serialized.model}`;
196
+ if (!seenModelValidationKeys.has(modelValidationKey)) {
197
+ seenModelValidationKeys.add(modelValidationKey);
198
+ modelValidations[agent] ??= [];
199
+ modelValidations[agent]?.push(serialized);
200
+ }
201
+ }
202
+ }
203
+ return { latest: validations, byProvider: providerValidations, byModel: modelValidations };
204
+ };
205
+ const serializeProjectEnvironment = (projectId, environment, isReusable) => {
206
+ const validationData = getEnvironmentValidations(projectId, environment);
207
+ return {
208
+ id: environment.id,
209
+ is_reusable: isReusable,
210
+ provider_kind: environment.provider_kind,
211
+ provider_version: environment.provider_version,
212
+ target_kind: environment.target_kind,
213
+ target_key: environment.target_key,
214
+ target_workspace_path: environment.target_workspace_path,
215
+ environment_revision: environment.environment_revision,
216
+ workspace_mode: environment.workspace_mode,
217
+ template_identity: environment.template_identity,
218
+ template_digest: environment.template_digest,
219
+ agent_identity: environment.agent_identity,
220
+ compatible_agents: environment.compatible_agents,
221
+ lifecycle_state: environment.lifecycle_state,
222
+ effective_isolation: typeof environment.capabilities.isolation === 'string'
223
+ ? environment.capabilities.isolation
224
+ : 'unknown',
225
+ degradation_reasons: environment.workspace_mode === 'direct' ? ['direct_workspace_writable'] : [],
226
+ failure_code: environment.failure_code,
227
+ last_validated_at: environment.last_validated_at,
228
+ validations: validationData.latest,
229
+ provider_validations: validationData.byProvider,
230
+ model_validations: validationData.byModel,
231
+ };
232
+ };
233
+ const getProjectExecutionState = async (projectId) => {
234
+ const project = getProjectById(projectId);
235
+ if (!project) {
236
+ throw new ExecutionEnvironmentRouteError(404, 'project_not_found', 'Not found');
237
+ }
238
+ const descriptor = resolveCurrentExecutionEnvironmentDescriptor(project);
239
+ const target = await resolveExecutionTarget({ project, descriptor });
240
+ const environments = listExecutionEnvironments(project.id);
241
+ const leasedEnvironmentIds = new Set(db.prepare(`
242
+ SELECT environment_id
243
+ FROM execution_environment_run_bindings
244
+ WHERE project_id = ? AND released_at IS NULL
245
+ `).all(project.id).map(row => row.environment_id));
246
+ const reusableEnvironmentIds = new Set(['opencode', 'claude'].flatMap(agent => {
247
+ const environment = environments.find(candidate => (candidate.provider_kind === 'docker_sandbox'
248
+ && candidate.provider_version === QUALIFIED_SBX_VERSION
249
+ && candidate.target_kind === target.identity.kind
250
+ && candidate.target_key === target.identity.key
251
+ && candidate.target_workspace_path === target.workspacePath
252
+ && candidate.workspace_mode === 'direct'
253
+ && candidate.environment_validation_fingerprint === currentExecutionEnvironmentValidationFingerprint(agent)
254
+ && candidate.template_identity === QUALIFIED_DOCKER_SANDBOX_TEMPLATES[agent]
255
+ && candidate.agent_identity === agent
256
+ && candidate.compatible_agents.length === 1
257
+ && candidate.compatible_agents[0] === agent
258
+ && ['ready', 'running', 'stopped'].includes(candidate.lifecycle_state)
259
+ && !leasedEnvironmentIds.has(candidate.id)));
260
+ return environment ? [environment.id] : [];
261
+ }));
262
+ const serializedEnvironments = environments.map(environment => serializeProjectEnvironment(project.id, environment, reusableEnvironmentIds.has(environment.id)));
263
+ const approvedProviders = {};
264
+ for (const environment of serializedEnvironments) {
265
+ if (environment.target_kind !== target.identity.kind
266
+ || environment.target_key !== target.identity.key
267
+ || environment.target_workspace_path !== target.workspacePath
268
+ || !['ready', 'running', 'stopped'].includes(environment.lifecycle_state)) {
269
+ continue;
270
+ }
271
+ for (const agent of ['opencode', 'claude']) {
272
+ for (const validation of environment.provider_validations[agent] ?? []) {
273
+ if (validation.provider && validation.run.status === 'completed' && validation.run.domain_status === 'ready') {
274
+ approvedProviders[agent] = Array.from(new Set([...(approvedProviders[agent] ?? []), validation.provider]));
275
+ }
276
+ }
277
+ }
278
+ }
279
+ return {
280
+ target: {
281
+ kind: target.identity.kind,
282
+ key: target.identity.key,
283
+ label: descriptor.branch,
284
+ workspace_path: target.workspacePath,
285
+ },
286
+ production_provider: project.build_execution_provider,
287
+ approved_providers: approvedProviders,
288
+ environments: serializedEnvironments,
289
+ };
290
+ };
291
+ export const registerExecutionEnvironmentRoutes = (app, dependencies = {}) => {
292
+ const runner = dependencies.runner ?? createSbxCommandRunner();
293
+ const adapter = dependencies.adapter ?? createDockerSandboxAdapter(runner);
294
+ const runtimeController = dependencies.runtimeController ?? createDockerSandboxRuntimeController({ runner });
295
+ // A custom adapter must provide its matching runner explicitly; never probe the host sbx CLI behind it.
296
+ const credentialRunner = dependencies.runner ?? (dependencies.adapter ? undefined : runner);
297
+ const validationDependencies = { adapter, runtimeController, runner: credentialRunner, emitter: dependencies.emitter };
298
+ app.get('/execution-environments/diagnostics', asyncRoute(async (_req, res) => {
299
+ res.set('Cache-Control', 'no-store');
300
+ return res.json(await probeDockerSandboxReadiness(runner));
301
+ }));
302
+ app.get('/projects/:id/execution-environments', asyncRoute(async (req, res) => {
303
+ res.set('Cache-Control', 'no-store');
304
+ const projectId = Array.isArray(req.params.id) ? req.params.id[0] : req.params.id;
305
+ return res.json(await getProjectExecutionState(projectId));
306
+ }));
307
+ const validateRoute = asyncRoute(async (req, res) => withRequestAbortSignal(req, res, async (signal) => {
308
+ res.set('Cache-Control', 'no-store');
309
+ const projectId = Array.isArray(req.params.id) ? req.params.id[0] : req.params.id;
310
+ const environmentId = Array.isArray(req.params.environmentId) ? req.params.environmentId[0] : req.params.environmentId;
311
+ const agent = parseExecutionEnvironmentAgent(req.body?.agent);
312
+ const body = req.body;
313
+ const model = parseExecutionEnvironmentModel(body?.model);
314
+ const provider = agent === 'claude' ? 'anthropic' : parseExecutionEnvironmentProvider(body?.provider, model);
315
+ return res.json(await validateExecutionEnvironment({ projectId, environmentId, agent, model, provider, signal }, validationDependencies));
316
+ }));
317
+ app.post('/projects/:id/execution-environments/validate', asyncRoute(async (req, res) => (withRequestAbortSignal(req, res, async (signal) => {
318
+ res.set('Cache-Control', 'no-store');
319
+ const projectId = Array.isArray(req.params.id) ? req.params.id[0] : req.params.id;
320
+ const body = req.body;
321
+ const agent = parseExecutionEnvironmentAgent(body?.agent);
322
+ const model = parseExecutionEnvironmentModel(body?.model);
323
+ const provider = agent === 'claude' ? 'anthropic' : parseExecutionEnvironmentProvider(body?.provider, model);
324
+ return res.json(await prepareAndValidateExecutionEnvironment({ projectId, agent, model, provider, signal }, validationDependencies));
325
+ }))));
326
+ app.post('/projects/:id/execution-environments/:environmentId/validate', validateRoute);
327
+ app.post('/projects/:id/execution-environments/:environmentId/validations', validateRoute);
328
+ app.post('/projects/:id/execution-environments/:environmentId/reset', asyncRoute(async (req, res) => {
329
+ res.set('Cache-Control', 'no-store');
330
+ const projectId = Array.isArray(req.params.id) ? req.params.id[0] : req.params.id;
331
+ const environmentId = Array.isArray(req.params.environmentId) ? req.params.environmentId[0] : req.params.environmentId;
332
+ try {
333
+ const environment = await resetExecutionEnvironment({
334
+ projectId,
335
+ environmentId,
336
+ adapter,
337
+ });
338
+ return res.json({ environment_id: environment.id, lifecycle_state: environment.lifecycle_state });
339
+ }
340
+ catch (error) {
341
+ if (error instanceof ExecutionEnvironmentCleanupError) {
342
+ return res.status(409).json({ error: error.message, reason: 'environment_reset_blocked' });
343
+ }
344
+ throw error;
345
+ }
346
+ }));
347
+ app.use((error, _req, res, next) => {
348
+ if (error instanceof ExecutionEnvironmentRouteError) {
349
+ return res.status(error.status).json({ error: error.message, reason: error.reason });
350
+ }
351
+ return next(error);
352
+ });
353
+ };
354
+ //# sourceMappingURL=executionEnvironmentRoutes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionEnvironmentRoutes.js","sourceRoot":"","sources":["../../../server/lib/executionEnvironmentRoutes.ts"],"names":[],"mappings":"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"}