@xemahq/xema 0.13.0 → 0.15.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 (564) hide show
  1. package/README.md +90 -21
  2. package/dist/assets/appliance-base/distribution.lock.json +5144 -0
  3. package/dist/assets/appliance-base/images.lock.json +1706 -0
  4. package/dist/assets/appliance-lean/distribution.lock.json +2888 -0
  5. package/dist/assets/appliance-lean/images.lock.json +1229 -0
  6. package/dist/assets/boot-graph.json +380 -28
  7. package/dist/assets/cloud/distribution.lock.json +5278 -0
  8. package/dist/assets/cloud/images.lock.json +1713 -0
  9. package/dist/assets/core/distribution.lock.json +2401 -354
  10. package/dist/assets/core/images.lock.json +1208 -268
  11. package/dist/assets/distribution-assets.manifest.json +147 -0
  12. package/dist/assets/keycloak/realm-xema.json +412 -0
  13. package/dist/assets/minimal/distribution.lock.json +2710 -0
  14. package/dist/assets/minimal/images.lock.json +1149 -0
  15. package/dist/assets/oss/distribution.lock.json +3742 -494
  16. package/dist/assets/oss/images.lock.json +1591 -472
  17. package/dist/assets/starter/distribution.lock.json +3422 -0
  18. package/dist/assets/starter/images.lock.json +1404 -0
  19. package/dist/cli.d.ts.map +1 -1
  20. package/dist/cli.js +40 -1
  21. package/dist/cli.js.map +1 -1
  22. package/dist/commands/apply.d.ts.map +1 -1
  23. package/dist/commands/apply.js +2 -2
  24. package/dist/commands/apply.js.map +1 -1
  25. package/dist/commands/biome-dev.d.ts +3 -0
  26. package/dist/commands/biome-dev.d.ts.map +1 -0
  27. package/dist/commands/biome-dev.js +176 -0
  28. package/dist/commands/biome-dev.js.map +1 -0
  29. package/dist/commands/biome-validate.d.ts +10 -0
  30. package/dist/commands/biome-validate.d.ts.map +1 -0
  31. package/dist/commands/biome-validate.js +49 -0
  32. package/dist/commands/biome-validate.js.map +1 -0
  33. package/dist/commands/biome.d.ts.map +1 -1
  34. package/dist/commands/biome.js +437 -26
  35. package/dist/commands/biome.js.map +1 -1
  36. package/dist/commands/canopy.d.ts +3 -0
  37. package/dist/commands/canopy.d.ts.map +1 -0
  38. package/dist/commands/canopy.js +214 -0
  39. package/dist/commands/canopy.js.map +1 -0
  40. package/dist/commands/config.d.ts +3 -0
  41. package/dist/commands/config.d.ts.map +1 -0
  42. package/dist/commands/config.js +78 -0
  43. package/dist/commands/config.js.map +1 -0
  44. package/dist/commands/dev.d.ts.map +1 -1
  45. package/dist/commands/dev.js +92 -20
  46. package/dist/commands/dev.js.map +1 -1
  47. package/dist/commands/dist.d.ts +13 -0
  48. package/dist/commands/dist.d.ts.map +1 -1
  49. package/dist/commands/dist.js +51 -11
  50. package/dist/commands/dist.js.map +1 -1
  51. package/dist/commands/doctor.d.ts +25 -0
  52. package/dist/commands/doctor.d.ts.map +1 -1
  53. package/dist/commands/doctor.js +422 -18
  54. package/dist/commands/doctor.js.map +1 -1
  55. package/dist/commands/down.d.ts +10 -0
  56. package/dist/commands/down.d.ts.map +1 -1
  57. package/dist/commands/down.js +107 -33
  58. package/dist/commands/down.js.map +1 -1
  59. package/dist/commands/export.js +1 -1
  60. package/dist/commands/export.js.map +1 -1
  61. package/dist/commands/import.d.ts.map +1 -1
  62. package/dist/commands/import.js +2 -2
  63. package/dist/commands/import.js.map +1 -1
  64. package/dist/commands/init.d.ts.map +1 -1
  65. package/dist/commands/init.js +56 -3
  66. package/dist/commands/init.js.map +1 -1
  67. package/dist/commands/installation.d.ts +3 -0
  68. package/dist/commands/installation.d.ts.map +1 -0
  69. package/dist/commands/installation.js +258 -0
  70. package/dist/commands/installation.js.map +1 -0
  71. package/dist/commands/license.d.ts +3 -0
  72. package/dist/commands/license.d.ts.map +1 -0
  73. package/dist/commands/license.js +97 -0
  74. package/dist/commands/license.js.map +1 -0
  75. package/dist/commands/login.d.ts +4 -0
  76. package/dist/commands/login.d.ts.map +1 -0
  77. package/dist/commands/login.js +127 -0
  78. package/dist/commands/login.js.map +1 -0
  79. package/dist/commands/logs.d.ts +21 -0
  80. package/dist/commands/logs.d.ts.map +1 -1
  81. package/dist/commands/logs.js +133 -32
  82. package/dist/commands/logs.js.map +1 -1
  83. package/dist/commands/objects.d.ts.map +1 -1
  84. package/dist/commands/objects.js +85 -6
  85. package/dist/commands/objects.js.map +1 -1
  86. package/dist/commands/plan.d.ts.map +1 -1
  87. package/dist/commands/plan.js +2 -2
  88. package/dist/commands/plan.js.map +1 -1
  89. package/dist/commands/run.d.ts.map +1 -1
  90. package/dist/commands/run.js +61 -9
  91. package/dist/commands/run.js.map +1 -1
  92. package/dist/commands/serve.d.ts.map +1 -1
  93. package/dist/commands/serve.js +67 -14
  94. package/dist/commands/serve.js.map +1 -1
  95. package/dist/commands/shell.d.ts.map +1 -1
  96. package/dist/commands/shell.js +190 -6
  97. package/dist/commands/shell.js.map +1 -1
  98. package/dist/commands/source.d.ts +3 -0
  99. package/dist/commands/source.d.ts.map +1 -0
  100. package/dist/commands/source.js +120 -0
  101. package/dist/commands/source.js.map +1 -0
  102. package/dist/commands/status.d.ts.map +1 -1
  103. package/dist/commands/status.js +29 -3
  104. package/dist/commands/status.js.map +1 -1
  105. package/dist/commands/up.d.ts.map +1 -1
  106. package/dist/commands/up.js +70 -5
  107. package/dist/commands/up.js.map +1 -1
  108. package/dist/dev/env-defaults.d.ts +1 -0
  109. package/dist/dev/env-defaults.d.ts.map +1 -1
  110. package/dist/dev/env-defaults.js +24 -12
  111. package/dist/dev/env-defaults.js.map +1 -1
  112. package/dist/dev/forked-worker-bootstrap-protocol.d.ts +17 -0
  113. package/dist/dev/forked-worker-bootstrap-protocol.d.ts.map +1 -0
  114. package/dist/dev/forked-worker-bootstrap-protocol.js +35 -0
  115. package/dist/dev/forked-worker-bootstrap-protocol.js.map +1 -0
  116. package/dist/dev/forked-worker-bootstrap.d.ts +18 -0
  117. package/dist/dev/forked-worker-bootstrap.d.ts.map +1 -0
  118. package/dist/dev/forked-worker-bootstrap.js +84 -0
  119. package/dist/dev/forked-worker-bootstrap.js.map +1 -0
  120. package/dist/dev/forked-worker.d.ts +29 -0
  121. package/dist/dev/forked-worker.d.ts.map +1 -1
  122. package/dist/dev/forked-worker.js +267 -42
  123. package/dist/dev/forked-worker.js.map +1 -1
  124. package/dist/dev/opa-policies.d.ts +3 -0
  125. package/dist/dev/opa-policies.d.ts.map +1 -0
  126. package/dist/dev/opa-policies.js +64 -0
  127. package/dist/dev/opa-policies.js.map +1 -0
  128. package/dist/lib/cli-errors.d.ts +7 -0
  129. package/dist/lib/cli-errors.d.ts.map +1 -0
  130. package/dist/lib/cli-errors.js +30 -0
  131. package/dist/lib/cli-errors.js.map +1 -0
  132. package/dist/lib/control-plane.d.ts +5 -1
  133. package/dist/lib/control-plane.d.ts.map +1 -1
  134. package/dist/lib/control-plane.js +61 -8
  135. package/dist/lib/control-plane.js.map +1 -1
  136. package/dist/lib/exit-codes.d.ts +3 -4
  137. package/dist/lib/exit-codes.d.ts.map +1 -1
  138. package/dist/lib/exit-codes.js +3 -4
  139. package/dist/lib/exit-codes.js.map +1 -1
  140. package/dist/lib/http-error.d.ts +2 -0
  141. package/dist/lib/http-error.d.ts.map +1 -0
  142. package/dist/lib/http-error.js +51 -0
  143. package/dist/lib/http-error.js.map +1 -0
  144. package/dist/lib/roster-profile.d.ts +10 -0
  145. package/dist/lib/roster-profile.d.ts.map +1 -0
  146. package/dist/lib/roster-profile.js +44 -0
  147. package/dist/lib/roster-profile.js.map +1 -0
  148. package/dist/runtime/asset-provenance.d.ts +17 -0
  149. package/dist/runtime/asset-provenance.d.ts.map +1 -0
  150. package/dist/runtime/asset-provenance.js +29 -0
  151. package/dist/runtime/asset-provenance.js.map +1 -0
  152. package/dist/runtime/auth/client-bootstrap.d.ts +11 -0
  153. package/dist/runtime/auth/client-bootstrap.d.ts.map +1 -0
  154. package/dist/runtime/auth/client-bootstrap.js +60 -0
  155. package/dist/runtime/auth/client-bootstrap.js.map +1 -0
  156. package/dist/runtime/auth/device-flow.d.ts +43 -0
  157. package/dist/runtime/auth/device-flow.d.ts.map +1 -0
  158. package/dist/runtime/auth/device-flow.js +201 -0
  159. package/dist/runtime/auth/device-flow.js.map +1 -0
  160. package/dist/runtime/auth/session-auth.d.ts +8 -0
  161. package/dist/runtime/auth/session-auth.d.ts.map +1 -0
  162. package/dist/runtime/auth/session-auth.js +43 -0
  163. package/dist/runtime/auth/session-auth.js.map +1 -0
  164. package/dist/runtime/auth/session-store.d.ts +19 -0
  165. package/dist/runtime/auth/session-store.d.ts.map +1 -0
  166. package/dist/runtime/auth/session-store.js +83 -0
  167. package/dist/runtime/auth/session-store.js.map +1 -0
  168. package/dist/runtime/auth/token-claims.d.ts +2 -0
  169. package/dist/runtime/auth/token-claims.d.ts.map +1 -0
  170. package/dist/runtime/auth/token-claims.js +45 -0
  171. package/dist/runtime/auth/token-claims.js.map +1 -0
  172. package/dist/runtime/biome-dev.d.ts +28 -0
  173. package/dist/runtime/biome-dev.d.ts.map +1 -0
  174. package/dist/runtime/biome-dev.js +131 -0
  175. package/dist/runtime/biome-dev.js.map +1 -0
  176. package/dist/runtime/biome-local-install.d.ts +29 -0
  177. package/dist/runtime/biome-local-install.d.ts.map +1 -0
  178. package/dist/runtime/biome-local-install.js +243 -0
  179. package/dist/runtime/biome-local-install.js.map +1 -0
  180. package/dist/runtime/biome-provenance.d.ts +26 -0
  181. package/dist/runtime/biome-provenance.d.ts.map +1 -0
  182. package/dist/runtime/biome-provenance.js +70 -0
  183. package/dist/runtime/biome-provenance.js.map +1 -0
  184. package/dist/runtime/biome-publish.d.ts +48 -0
  185. package/dist/runtime/biome-publish.d.ts.map +1 -0
  186. package/dist/runtime/biome-publish.js +278 -0
  187. package/dist/runtime/biome-publish.js.map +1 -0
  188. package/dist/runtime/biome-scaffold.d.ts +35 -0
  189. package/dist/runtime/biome-scaffold.d.ts.map +1 -0
  190. package/dist/runtime/biome-scaffold.js +151 -0
  191. package/dist/runtime/biome-scaffold.js.map +1 -0
  192. package/dist/runtime/biome-validate.d.ts +28 -0
  193. package/dist/runtime/biome-validate.d.ts.map +1 -0
  194. package/dist/runtime/biome-validate.js +452 -0
  195. package/dist/runtime/biome-validate.js.map +1 -0
  196. package/dist/runtime/boot-graph-loader.d.ts +1 -0
  197. package/dist/runtime/boot-graph-loader.d.ts.map +1 -1
  198. package/dist/runtime/boot-graph-loader.js +99 -7
  199. package/dist/runtime/boot-graph-loader.js.map +1 -1
  200. package/dist/runtime/canopy-refs.d.ts +8 -0
  201. package/dist/runtime/canopy-refs.d.ts.map +1 -0
  202. package/dist/runtime/canopy-refs.js +51 -0
  203. package/dist/runtime/canopy-refs.js.map +1 -0
  204. package/dist/runtime/canopy-replies.d.ts +14 -0
  205. package/dist/runtime/canopy-replies.d.ts.map +1 -0
  206. package/dist/runtime/canopy-replies.js +39 -0
  207. package/dist/runtime/canopy-replies.js.map +1 -0
  208. package/dist/runtime/capability-invoke.d.ts +35 -0
  209. package/dist/runtime/capability-invoke.d.ts.map +1 -0
  210. package/dist/runtime/capability-invoke.js +119 -0
  211. package/dist/runtime/capability-invoke.js.map +1 -0
  212. package/dist/runtime/cleanup.d.ts +10 -0
  213. package/dist/runtime/cleanup.d.ts.map +1 -0
  214. package/dist/runtime/cleanup.js +35 -0
  215. package/dist/runtime/cleanup.js.map +1 -0
  216. package/dist/runtime/config/dev-mode.d.ts +8 -0
  217. package/dist/runtime/config/dev-mode.d.ts.map +1 -0
  218. package/dist/runtime/config/dev-mode.js +84 -0
  219. package/dist/runtime/config/dev-mode.js.map +1 -0
  220. package/dist/runtime/config/init-presets.d.ts +1 -1
  221. package/dist/runtime/config/init-presets.d.ts.map +1 -1
  222. package/dist/runtime/config/init-presets.js +68 -13
  223. package/dist/runtime/config/init-presets.js.map +1 -1
  224. package/dist/runtime/config/loader.d.ts +1 -0
  225. package/dist/runtime/config/loader.d.ts.map +1 -1
  226. package/dist/runtime/config/loader.js +41 -5
  227. package/dist/runtime/config/loader.js.map +1 -1
  228. package/dist/runtime/config/schema.d.ts +27 -12
  229. package/dist/runtime/config/schema.d.ts.map +1 -1
  230. package/dist/runtime/config/schema.js +113 -8
  231. package/dist/runtime/config/schema.js.map +1 -1
  232. package/dist/runtime/config/sources-config.d.ts +14 -0
  233. package/dist/runtime/config/sources-config.d.ts.map +1 -0
  234. package/dist/runtime/config/sources-config.js +79 -0
  235. package/dist/runtime/config/sources-config.js.map +1 -0
  236. package/dist/runtime/distribution/available-biome.d.ts.map +1 -1
  237. package/dist/runtime/distribution/available-biome.js +2 -0
  238. package/dist/runtime/distribution/available-biome.js.map +1 -1
  239. package/dist/runtime/distribution/compose.d.ts +2 -1
  240. package/dist/runtime/distribution/compose.d.ts.map +1 -1
  241. package/dist/runtime/distribution/compose.js +4 -1
  242. package/dist/runtime/distribution/compose.js.map +1 -1
  243. package/dist/runtime/env-seeder.d.ts +5 -0
  244. package/dist/runtime/env-seeder.d.ts.map +1 -1
  245. package/dist/runtime/env-seeder.js +152 -19
  246. package/dist/runtime/env-seeder.js.map +1 -1
  247. package/dist/runtime/foreground.d.ts +9 -0
  248. package/dist/runtime/foreground.d.ts.map +1 -1
  249. package/dist/runtime/foreground.js +37 -3
  250. package/dist/runtime/foreground.js.map +1 -1
  251. package/dist/runtime/infra/infra-catalog.d.ts +34 -1
  252. package/dist/runtime/infra/infra-catalog.d.ts.map +1 -1
  253. package/dist/runtime/infra/infra-catalog.js +202 -10
  254. package/dist/runtime/infra/infra-catalog.js.map +1 -1
  255. package/dist/runtime/infra/infra-environment.d.ts +10 -0
  256. package/dist/runtime/infra/infra-environment.d.ts.map +1 -0
  257. package/dist/runtime/infra/infra-environment.js +76 -0
  258. package/dist/runtime/infra/infra-environment.js.map +1 -0
  259. package/dist/runtime/infra/infra-plan.d.ts +2 -1
  260. package/dist/runtime/infra/infra-plan.d.ts.map +1 -1
  261. package/dist/runtime/infra/infra-plan.js +10 -0
  262. package/dist/runtime/infra/infra-plan.js.map +1 -1
  263. package/dist/runtime/infra/infra-runner.d.ts +16 -1
  264. package/dist/runtime/infra/infra-runner.d.ts.map +1 -1
  265. package/dist/runtime/infra/infra-runner.js +245 -55
  266. package/dist/runtime/infra/infra-runner.js.map +1 -1
  267. package/dist/runtime/infra/keycloak-realm.d.ts +25 -0
  268. package/dist/runtime/infra/keycloak-realm.d.ts.map +1 -0
  269. package/dist/runtime/infra/keycloak-realm.js +116 -0
  270. package/dist/runtime/infra/keycloak-realm.js.map +1 -0
  271. package/dist/runtime/infra/postgres-endpoint.d.ts +8 -0
  272. package/dist/runtime/infra/postgres-endpoint.d.ts.map +1 -0
  273. package/dist/runtime/infra/postgres-endpoint.js +21 -0
  274. package/dist/runtime/infra/postgres-endpoint.js.map +1 -0
  275. package/dist/runtime/installation/compiler.d.ts +114 -0
  276. package/dist/runtime/installation/compiler.d.ts.map +1 -0
  277. package/dist/runtime/installation/compiler.js +456 -0
  278. package/dist/runtime/installation/compiler.js.map +1 -0
  279. package/dist/runtime/installation/contract.d.ts +296 -0
  280. package/dist/runtime/installation/contract.d.ts.map +1 -0
  281. package/dist/runtime/installation/contract.js +504 -0
  282. package/dist/runtime/installation/contract.js.map +1 -0
  283. package/dist/runtime/installation/current-launcher-renderer.d.ts +12 -0
  284. package/dist/runtime/installation/current-launcher-renderer.d.ts.map +1 -0
  285. package/dist/runtime/installation/current-launcher-renderer.js +123 -0
  286. package/dist/runtime/installation/current-launcher-renderer.js.map +1 -0
  287. package/dist/runtime/installation/diagnostics.d.ts +16 -0
  288. package/dist/runtime/installation/diagnostics.d.ts.map +1 -0
  289. package/dist/runtime/installation/diagnostics.js +21 -0
  290. package/dist/runtime/installation/diagnostics.js.map +1 -0
  291. package/dist/runtime/installation/diff.d.ts +32 -0
  292. package/dist/runtime/installation/diff.d.ts.map +1 -0
  293. package/dist/runtime/installation/diff.js +136 -0
  294. package/dist/runtime/installation/diff.js.map +1 -0
  295. package/dist/runtime/installation/format.d.ts +3 -0
  296. package/dist/runtime/installation/format.d.ts.map +1 -0
  297. package/dist/runtime/installation/format.js +22 -0
  298. package/dist/runtime/installation/format.js.map +1 -0
  299. package/dist/runtime/installation/from-current-config.d.ts +9 -0
  300. package/dist/runtime/installation/from-current-config.d.ts.map +1 -0
  301. package/dist/runtime/installation/from-current-config.js +245 -0
  302. package/dist/runtime/installation/from-current-config.js.map +1 -0
  303. package/dist/runtime/installation/helm-release-readiness.d.ts +9 -0
  304. package/dist/runtime/installation/helm-release-readiness.d.ts.map +1 -0
  305. package/dist/runtime/installation/helm-release-readiness.js +97 -0
  306. package/dist/runtime/installation/helm-release-readiness.js.map +1 -0
  307. package/dist/runtime/installation/helm-release.d.ts +24 -0
  308. package/dist/runtime/installation/helm-release.d.ts.map +1 -0
  309. package/dist/runtime/installation/helm-release.js +96 -0
  310. package/dist/runtime/installation/helm-release.js.map +1 -0
  311. package/dist/runtime/installation/index.d.ts +22 -0
  312. package/dist/runtime/installation/index.d.ts.map +1 -0
  313. package/dist/runtime/installation/index.js +38 -0
  314. package/dist/runtime/installation/index.js.map +1 -0
  315. package/dist/runtime/installation/json-schema.d.ts +4 -0
  316. package/dist/runtime/installation/json-schema.d.ts.map +1 -0
  317. package/dist/runtime/installation/json-schema.js +16 -0
  318. package/dist/runtime/installation/json-schema.js.map +1 -0
  319. package/dist/runtime/installation/kubernetes-readiness.d.ts +60 -0
  320. package/dist/runtime/installation/kubernetes-readiness.d.ts.map +1 -0
  321. package/dist/runtime/installation/kubernetes-readiness.js +384 -0
  322. package/dist/runtime/installation/kubernetes-readiness.js.map +1 -0
  323. package/dist/runtime/installation/lifecycle.d.ts +25 -0
  324. package/dist/runtime/installation/lifecycle.d.ts.map +1 -0
  325. package/dist/runtime/installation/lifecycle.js +157 -0
  326. package/dist/runtime/installation/lifecycle.js.map +1 -0
  327. package/dist/runtime/installation/readiness-proof.d.ts +72 -0
  328. package/dist/runtime/installation/readiness-proof.d.ts.map +1 -0
  329. package/dist/runtime/installation/readiness-proof.js +142 -0
  330. package/dist/runtime/installation/readiness-proof.js.map +1 -0
  331. package/dist/runtime/installation/readiness.d.ts +21 -0
  332. package/dist/runtime/installation/readiness.d.ts.map +1 -0
  333. package/dist/runtime/installation/readiness.js +418 -0
  334. package/dist/runtime/installation/readiness.js.map +1 -0
  335. package/dist/runtime/installation/serialization.d.ts +3 -0
  336. package/dist/runtime/installation/serialization.d.ts.map +1 -0
  337. package/dist/runtime/installation/serialization.js +39 -0
  338. package/dist/runtime/installation/serialization.js.map +1 -0
  339. package/dist/runtime/installation/setup-profile.d.ts +8 -0
  340. package/dist/runtime/installation/setup-profile.d.ts.map +1 -0
  341. package/dist/runtime/installation/setup-profile.js +41 -0
  342. package/dist/runtime/installation/setup-profile.js.map +1 -0
  343. package/dist/runtime/installation/setup-renderer.d.ts +31 -0
  344. package/dist/runtime/installation/setup-renderer.d.ts.map +1 -0
  345. package/dist/runtime/installation/setup-renderer.js +238 -0
  346. package/dist/runtime/installation/setup-renderer.js.map +1 -0
  347. package/dist/runtime/installation/state-store.d.ts +28 -0
  348. package/dist/runtime/installation/state-store.d.ts.map +1 -0
  349. package/dist/runtime/installation/state-store.js +377 -0
  350. package/dist/runtime/installation/state-store.js.map +1 -0
  351. package/dist/runtime/installation/status.d.ts +24 -0
  352. package/dist/runtime/installation/status.d.ts.map +1 -0
  353. package/dist/runtime/installation/status.js +52 -0
  354. package/dist/runtime/installation/status.js.map +1 -0
  355. package/dist/runtime/installation/support-bundle.d.ts +30 -0
  356. package/dist/runtime/installation/support-bundle.d.ts.map +1 -0
  357. package/dist/runtime/installation/support-bundle.js +145 -0
  358. package/dist/runtime/installation/support-bundle.js.map +1 -0
  359. package/dist/runtime/installation/to-current-config.d.ts +4 -0
  360. package/dist/runtime/installation/to-current-config.d.ts.map +1 -0
  361. package/dist/runtime/installation/to-current-config.js +171 -0
  362. package/dist/runtime/installation/to-current-config.js.map +1 -0
  363. package/dist/runtime/installation/validation.d.ts +8 -0
  364. package/dist/runtime/installation/validation.d.ts.map +1 -0
  365. package/dist/runtime/installation/validation.js +117 -0
  366. package/dist/runtime/installation/validation.js.map +1 -0
  367. package/dist/runtime/installation/validators/common.d.ts +4 -0
  368. package/dist/runtime/installation/validators/common.d.ts.map +1 -0
  369. package/dist/runtime/installation/validators/common.js +32 -0
  370. package/dist/runtime/installation/validators/common.js.map +1 -0
  371. package/dist/runtime/installation/validators/infrastructure.d.ts +4 -0
  372. package/dist/runtime/installation/validators/infrastructure.d.ts.map +1 -0
  373. package/dist/runtime/installation/validators/infrastructure.js +96 -0
  374. package/dist/runtime/installation/validators/infrastructure.js.map +1 -0
  375. package/dist/runtime/installation/validators/operational.d.ts +4 -0
  376. package/dist/runtime/installation/validators/operational.d.ts.map +1 -0
  377. package/dist/runtime/installation/validators/operational.js +68 -0
  378. package/dist/runtime/installation/validators/operational.js.map +1 -0
  379. package/dist/runtime/installation/validators/profile.d.ts +4 -0
  380. package/dist/runtime/installation/validators/profile.d.ts.map +1 -0
  381. package/dist/runtime/installation/validators/profile.js +80 -0
  382. package/dist/runtime/installation/validators/profile.js.map +1 -0
  383. package/dist/runtime/installation/validators/secrets.d.ts +4 -0
  384. package/dist/runtime/installation/validators/secrets.d.ts.map +1 -0
  385. package/dist/runtime/installation/validators/secrets.js +85 -0
  386. package/dist/runtime/installation/validators/secrets.js.map +1 -0
  387. package/dist/runtime/launch-plan-format.d.ts +3 -0
  388. package/dist/runtime/launch-plan-format.d.ts.map +1 -0
  389. package/dist/runtime/launch-plan-format.js +57 -0
  390. package/dist/runtime/launch-plan-format.js.map +1 -0
  391. package/dist/runtime/launch.d.ts +35 -3
  392. package/dist/runtime/launch.d.ts.map +1 -1
  393. package/dist/runtime/launch.js +382 -37
  394. package/dist/runtime/launch.js.map +1 -1
  395. package/dist/runtime/license/license-clock.d.ts +12 -0
  396. package/dist/runtime/license/license-clock.d.ts.map +1 -0
  397. package/dist/runtime/license/license-clock.js +57 -0
  398. package/dist/runtime/license/license-clock.js.map +1 -0
  399. package/dist/runtime/license/license-report.d.ts +19 -0
  400. package/dist/runtime/license/license-report.d.ts.map +1 -0
  401. package/dist/runtime/license/license-report.js +105 -0
  402. package/dist/runtime/license/license-report.js.map +1 -0
  403. package/dist/runtime/license/license-store.d.ts +5 -0
  404. package/dist/runtime/license/license-store.d.ts.map +1 -0
  405. package/dist/runtime/license/license-store.js +11 -0
  406. package/dist/runtime/license/license-store.js.map +1 -0
  407. package/dist/runtime/license/registry-credential.d.ts +26 -0
  408. package/dist/runtime/license/registry-credential.d.ts.map +1 -0
  409. package/dist/runtime/license/registry-credential.js +94 -0
  410. package/dist/runtime/license/registry-credential.js.map +1 -0
  411. package/dist/runtime/license/resolve-license.d.ts +30 -0
  412. package/dist/runtime/license/resolve-license.d.ts.map +1 -0
  413. package/dist/runtime/license/resolve-license.js +73 -0
  414. package/dist/runtime/license/resolve-license.js.map +1 -0
  415. package/dist/runtime/license/store-license.d.ts +18 -0
  416. package/dist/runtime/license/store-license.d.ts.map +1 -0
  417. package/dist/runtime/license/store-license.js +26 -0
  418. package/dist/runtime/license/store-license.js.map +1 -0
  419. package/dist/runtime/lock-loader.d.ts +3 -6
  420. package/dist/runtime/lock-loader.d.ts.map +1 -1
  421. package/dist/runtime/lock-loader.js +26 -20
  422. package/dist/runtime/lock-loader.js.map +1 -1
  423. package/dist/runtime/native-process-group.d.ts +46 -0
  424. package/dist/runtime/native-process-group.d.ts.map +1 -0
  425. package/dist/runtime/native-process-group.js +390 -0
  426. package/dist/runtime/native-process-group.js.map +1 -0
  427. package/dist/runtime/object-registry-client.d.ts +31 -0
  428. package/dist/runtime/object-registry-client.d.ts.map +1 -0
  429. package/dist/runtime/object-registry-client.js +54 -0
  430. package/dist/runtime/object-registry-client.js.map +1 -0
  431. package/dist/runtime/paths.d.ts +2 -0
  432. package/dist/runtime/paths.d.ts.map +1 -1
  433. package/dist/runtime/paths.js +3 -0
  434. package/dist/runtime/paths.js.map +1 -1
  435. package/dist/runtime/roster.d.ts +12 -5
  436. package/dist/runtime/roster.d.ts.map +1 -1
  437. package/dist/runtime/roster.js +89 -11
  438. package/dist/runtime/roster.js.map +1 -1
  439. package/dist/runtime/run-manifest.d.ts +52 -0
  440. package/dist/runtime/run-manifest.d.ts.map +1 -0
  441. package/dist/runtime/run-manifest.js +587 -0
  442. package/dist/runtime/run-manifest.js.map +1 -0
  443. package/dist/runtime/runner/container-preflight.d.ts +77 -0
  444. package/dist/runtime/runner/container-preflight.d.ts.map +1 -0
  445. package/dist/runtime/runner/container-preflight.js +360 -0
  446. package/dist/runtime/runner/container-preflight.js.map +1 -0
  447. package/dist/runtime/runner/container-runner.d.ts +14 -0
  448. package/dist/runtime/runner/container-runner.d.ts.map +1 -1
  449. package/dist/runtime/runner/container-runner.js +110 -14
  450. package/dist/runtime/runner/container-runner.js.map +1 -1
  451. package/dist/runtime/runner/docker-cli.d.ts +35 -2
  452. package/dist/runtime/runner/docker-cli.d.ts.map +1 -1
  453. package/dist/runtime/runner/docker-cli.js +314 -9
  454. package/dist/runtime/runner/docker-cli.js.map +1 -1
  455. package/dist/runtime/runner/health-probe.d.ts +1 -0
  456. package/dist/runtime/runner/health-probe.d.ts.map +1 -1
  457. package/dist/runtime/runner/health-probe.js +3 -2
  458. package/dist/runtime/runner/health-probe.js.map +1 -1
  459. package/dist/runtime/runner/helm-cli.d.ts +19 -1
  460. package/dist/runtime/runner/helm-cli.d.ts.map +1 -1
  461. package/dist/runtime/runner/helm-cli.js +76 -8
  462. package/dist/runtime/runner/helm-cli.js.map +1 -1
  463. package/dist/runtime/runner/helm-runner.d.ts +3 -0
  464. package/dist/runtime/runner/helm-runner.d.ts.map +1 -1
  465. package/dist/runtime/runner/helm-runner.js +23 -7
  466. package/dist/runtime/runner/helm-runner.js.map +1 -1
  467. package/dist/runtime/runner/host-platform.d.ts +39 -0
  468. package/dist/runtime/runner/host-platform.d.ts.map +1 -0
  469. package/dist/runtime/runner/host-platform.js +136 -0
  470. package/dist/runtime/runner/host-platform.js.map +1 -0
  471. package/dist/runtime/runner/kube-cli.d.ts +23 -0
  472. package/dist/runtime/runner/kube-cli.d.ts.map +1 -0
  473. package/dist/runtime/runner/kube-cli.js +112 -0
  474. package/dist/runtime/runner/kube-cli.js.map +1 -0
  475. package/dist/runtime/runner/native-runner.d.ts.map +1 -1
  476. package/dist/runtime/runner/native-runner.js +46 -15
  477. package/dist/runtime/runner/native-runner.js.map +1 -1
  478. package/dist/runtime/runner/service-runner.d.ts +5 -0
  479. package/dist/runtime/runner/service-runner.d.ts.map +1 -1
  480. package/dist/runtime/runner/service-runner.js.map +1 -1
  481. package/dist/runtime/runner/stream-outcome.d.ts +7 -0
  482. package/dist/runtime/runner/stream-outcome.d.ts.map +1 -0
  483. package/dist/runtime/runner/stream-outcome.js +13 -0
  484. package/dist/runtime/runner/stream-outcome.js.map +1 -0
  485. package/dist/runtime/secrets/managed-local-cipher.d.ts +18 -0
  486. package/dist/runtime/secrets/managed-local-cipher.d.ts.map +1 -0
  487. package/dist/runtime/secrets/managed-local-cipher.js +110 -0
  488. package/dist/runtime/secrets/managed-local-cipher.js.map +1 -0
  489. package/dist/runtime/secrets/managed-local-files.d.ts +4 -0
  490. package/dist/runtime/secrets/managed-local-files.d.ts.map +1 -0
  491. package/dist/runtime/secrets/managed-local-files.js +132 -0
  492. package/dist/runtime/secrets/managed-local-files.js.map +1 -0
  493. package/dist/runtime/secrets/managed-local-key-provider.d.ts +27 -0
  494. package/dist/runtime/secrets/managed-local-key-provider.d.ts.map +1 -0
  495. package/dist/runtime/secrets/managed-local-key-provider.js +144 -0
  496. package/dist/runtime/secrets/managed-local-key-provider.js.map +1 -0
  497. package/dist/runtime/secrets/managed-local-secret-store.d.ts +18 -0
  498. package/dist/runtime/secrets/managed-local-secret-store.d.ts.map +1 -0
  499. package/dist/runtime/secrets/managed-local-secret-store.js +82 -0
  500. package/dist/runtime/secrets/managed-local-secret-store.js.map +1 -0
  501. package/dist/runtime/secrets/managed-local-store.d.ts +33 -0
  502. package/dist/runtime/secrets/managed-local-store.d.ts.map +1 -0
  503. package/dist/runtime/secrets/managed-local-store.js +121 -0
  504. package/dist/runtime/secrets/managed-local-store.js.map +1 -0
  505. package/dist/runtime/secrets/resolver.d.ts +23 -0
  506. package/dist/runtime/secrets/resolver.d.ts.map +1 -0
  507. package/dist/runtime/secrets/resolver.js +265 -0
  508. package/dist/runtime/secrets/resolver.js.map +1 -0
  509. package/dist/runtime/secrets/url-security.d.ts +3 -0
  510. package/dist/runtime/secrets/url-security.d.ts.map +1 -0
  511. package/dist/runtime/secrets/url-security.js +13 -0
  512. package/dist/runtime/secrets/url-security.js.map +1 -0
  513. package/dist/runtime/sources/credentials.d.ts +2 -0
  514. package/dist/runtime/sources/credentials.d.ts.map +1 -1
  515. package/dist/runtime/sources/credentials.js +51 -1
  516. package/dist/runtime/sources/credentials.js.map +1 -1
  517. package/dist/runtime/sources/kinds/distribution.js +3 -3
  518. package/dist/runtime/sources/kinds/distribution.js.map +1 -1
  519. package/dist/runtime/sources/kinds/git.d.ts +6 -3
  520. package/dist/runtime/sources/kinds/git.d.ts.map +1 -1
  521. package/dist/runtime/sources/kinds/git.js +99 -22
  522. package/dist/runtime/sources/kinds/git.js.map +1 -1
  523. package/dist/runtime/sources/manifest-walk.d.ts +1 -0
  524. package/dist/runtime/sources/manifest-walk.d.ts.map +1 -1
  525. package/dist/runtime/sources/manifest-walk.js +16 -11
  526. package/dist/runtime/sources/manifest-walk.js.map +1 -1
  527. package/dist/runtime/sources/resolve-context.d.ts +7 -0
  528. package/dist/runtime/sources/resolve-context.d.ts.map +1 -0
  529. package/dist/runtime/sources/resolve-context.js +3 -0
  530. package/dist/runtime/sources/resolve-context.js.map +1 -0
  531. package/dist/runtime/sources/resolver.d.ts +2 -2
  532. package/dist/runtime/sources/resolver.d.ts.map +1 -1
  533. package/dist/runtime/sources/resolver.js +11 -5
  534. package/dist/runtime/sources/resolver.js.map +1 -1
  535. package/dist/runtime/sources/schema.d.ts.map +1 -1
  536. package/dist/runtime/sources/schema.js +51 -3
  537. package/dist/runtime/sources/schema.js.map +1 -1
  538. package/dist/runtime/store-client.d.ts +59 -0
  539. package/dist/runtime/store-client.d.ts.map +1 -0
  540. package/dist/runtime/store-client.js +72 -0
  541. package/dist/runtime/store-client.js.map +1 -0
  542. package/dist/runtime/store-submit.d.ts +31 -0
  543. package/dist/runtime/store-submit.d.ts.map +1 -0
  544. package/dist/runtime/store-submit.js +77 -0
  545. package/dist/runtime/store-submit.js.map +1 -0
  546. package/dist/runtime/supervisor.d.ts +18 -0
  547. package/dist/runtime/supervisor.d.ts.map +1 -1
  548. package/dist/runtime/supervisor.js +162 -15
  549. package/dist/runtime/supervisor.js.map +1 -1
  550. package/dist/runtime/waves.d.ts +1 -1
  551. package/dist/runtime/waves.d.ts.map +1 -1
  552. package/dist/runtime/waves.js +86 -19
  553. package/dist/runtime/waves.js.map +1 -1
  554. package/examples/01-local-native.yaml +4 -1
  555. package/examples/03-byo-infra.yaml +17 -7
  556. package/examples/05-appliance-helm.yaml +1 -1
  557. package/examples/06-biome-sources.yaml +4 -1
  558. package/package.json +20 -28
  559. package/xema.config.example.yaml +22 -18
  560. package/LICENSE +0 -176
  561. package/dist/lib/command-registry.d.ts +0 -5
  562. package/dist/lib/command-registry.d.ts.map +0 -1
  563. package/dist/lib/command-registry.js +0 -17
  564. package/dist/lib/command-registry.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-store.js","sourceRoot":"","sources":["../../../src/runtime/installation/state-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { type InstallationReadinessExpectation, type InstallationReadinessObserver, type InstallationReadinessProof } from './readiness';
2
+ import type { CompiledXemaInstallation } from './compiler';
3
+ import type { InstallationStateStore } from './state-store';
4
+ export declare enum InstallationObservedCondition {
5
+ Running = "running",
6
+ Stopped = "stopped",
7
+ Degraded = "degraded",
8
+ Unavailable = "unavailable"
9
+ }
10
+ export interface ObservedInstallationState extends InstallationReadinessProof {
11
+ readonly condition: InstallationObservedCondition;
12
+ }
13
+ export interface InstallationStatusReport {
14
+ readonly installationId: string;
15
+ readonly desiredEffectivePlanHash: string;
16
+ readonly appliedEffectivePlanHash?: string;
17
+ readonly desiredAppliedDrift: boolean;
18
+ readonly observedAppliedDrift: boolean;
19
+ readonly observed: ObservedInstallationState;
20
+ }
21
+ export declare function installationStatus(desired: CompiledXemaInstallation, store: InstallationStateStore, expectation: InstallationReadinessExpectation, observer?: InstallationReadinessObserver): Promise<InstallationStatusReport>;
22
+ export declare function installationStatusFromObserved(desired: CompiledXemaInstallation, store: InstallationStateStore, observed: ObservedInstallationState): InstallationStatusReport;
23
+ export declare function observedStateFromProof(proof: InstallationReadinessProof): ObservedInstallationState;
24
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/runtime/installation/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAChC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5D,oBAAY,6BAA6B;IACvC,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;CAC5B;AAED,MAAM,WAAW,yBACf,SAAQ,0BAA0B;IAClC,QAAQ,CAAC,SAAS,EAAE,6BAA6B,CAAC;CACnD;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;CAC9C;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,sBAAsB,EAC7B,WAAW,EAAE,gCAAgC,EAC7C,QAAQ,GAAE,6BAAwE,GACjF,OAAO,CAAC,wBAAwB,CAAC,CAOnC;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,sBAAsB,EAC7B,QAAQ,EAAE,yBAAyB,GAClC,wBAAwB,CAkB1B;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,0BAA0B,GAChC,yBAAyB,CAqB3B"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InstallationObservedCondition = void 0;
4
+ exports.installationStatus = installationStatus;
5
+ exports.installationStatusFromObserved = installationStatusFromObserved;
6
+ exports.observedStateFromProof = observedStateFromProof;
7
+ const readiness_1 = require("./readiness");
8
+ var InstallationObservedCondition;
9
+ (function (InstallationObservedCondition) {
10
+ InstallationObservedCondition["Running"] = "running";
11
+ InstallationObservedCondition["Stopped"] = "stopped";
12
+ InstallationObservedCondition["Degraded"] = "degraded";
13
+ InstallationObservedCondition["Unavailable"] = "unavailable";
14
+ })(InstallationObservedCondition || (exports.InstallationObservedCondition = InstallationObservedCondition = {}));
15
+ async function installationStatus(desired, store, expectation, observer = new readiness_1.LocalInstallationReadinessObserver()) {
16
+ const proof = await observer.observe(expectation);
17
+ return installationStatusFromObserved(desired, store, observedStateFromProof(proof));
18
+ }
19
+ function installationStatusFromObserved(desired, store, observed) {
20
+ const applied = store.read(desired.metadata.name);
21
+ return {
22
+ installationId: desired.metadata.name,
23
+ desiredEffectivePlanHash: desired.effectivePlanHash,
24
+ ...(applied === undefined
25
+ ? {}
26
+ : { appliedEffectivePlanHash: applied.effectivePlanHash }),
27
+ desiredAppliedDrift: applied === undefined ||
28
+ applied.effectivePlanHash !== desired.effectivePlanHash,
29
+ observedAppliedDrift: applied === undefined
30
+ ? observed.condition !== InstallationObservedCondition.Stopped
31
+ : !observed.ready ||
32
+ observed.effectivePlanHash !== applied.effectivePlanHash,
33
+ observed,
34
+ };
35
+ }
36
+ function observedStateFromProof(proof) {
37
+ const unavailable = proof.issues.some((issue) => issue.code === readiness_1.InstallationReadinessIssueCode.ObserverUnavailable);
38
+ const onlyMissing = proof.workloads.length === 0 &&
39
+ proof.issues.length > 0 &&
40
+ proof.issues.every((issue) => issue.code === readiness_1.InstallationReadinessIssueCode.MissingWorkload);
41
+ return {
42
+ ...proof,
43
+ condition: proof.ready
44
+ ? InstallationObservedCondition.Running
45
+ : unavailable
46
+ ? InstallationObservedCondition.Unavailable
47
+ : onlyMissing
48
+ ? InstallationObservedCondition.Stopped
49
+ : InstallationObservedCondition.Degraded,
50
+ };
51
+ }
52
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/runtime/installation/status.ts"],"names":[],"mappings":";;;AAgCA,gDAYC;AAED,wEAsBC;AAED,wDAuBC;AA7FD,2CAMqB;AAKrB,IAAY,6BAKX;AALD,WAAY,6BAA6B;IACvC,oDAAmB,CAAA;IACnB,oDAAmB,CAAA;IACnB,sDAAqB,CAAA;IACrB,4DAA2B,CAAA;AAC7B,CAAC,EALW,6BAA6B,6CAA7B,6BAA6B,QAKxC;AAgBM,KAAK,UAAU,kBAAkB,CACtC,OAAiC,EACjC,KAA6B,EAC7B,WAA6C,EAC7C,WAA0C,IAAI,8CAAkC,EAAE;IAElF,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAClD,OAAO,8BAA8B,CACnC,OAAO,EACP,KAAK,EACL,sBAAsB,CAAC,KAAK,CAAC,CAC9B,CAAC;AACJ,CAAC;AAED,SAAgB,8BAA8B,CAC5C,OAAiC,EACjC,KAA6B,EAC7B,QAAmC;IAEnC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;QACrC,wBAAwB,EAAE,OAAO,CAAC,iBAAiB;QACnD,GAAG,CAAC,OAAO,KAAK,SAAS;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,wBAAwB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC5D,mBAAmB,EACjB,OAAO,KAAK,SAAS;YACrB,OAAO,CAAC,iBAAiB,KAAK,OAAO,CAAC,iBAAiB;QACzD,oBAAoB,EAClB,OAAO,KAAK,SAAS;YACnB,CAAC,CAAC,QAAQ,CAAC,SAAS,KAAK,6BAA6B,CAAC,OAAO;YAC9D,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK;gBACf,QAAQ,CAAC,iBAAiB,KAAK,OAAO,CAAC,iBAAiB;QAC9D,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAgB,sBAAsB,CACpC,KAAiC;IAEjC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CACnC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,0CAA8B,CAAC,mBAAmB,CACpE,CAAC;IACF,MAAM,WAAW,GACf,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;QAC5B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QACvB,KAAK,CAAC,MAAM,CAAC,KAAK,CAChB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,0CAA8B,CAAC,eAAe,CACzE,CAAC;IACJ,OAAO;QACL,GAAG,KAAK;QACR,SAAS,EAAE,KAAK,CAAC,KAAK;YACpB,CAAC,CAAC,6BAA6B,CAAC,OAAO;YACvC,CAAC,CAAC,WAAW;gBACX,CAAC,CAAC,6BAA6B,CAAC,WAAW;gBAC3C,CAAC,CAAC,WAAW;oBACX,CAAC,CAAC,6BAA6B,CAAC,OAAO;oBACvC,CAAC,CAAC,6BAA6B,CAAC,QAAQ;KAC/C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { CompiledXemaInstallation } from './compiler';
2
+ import type { InstallationStatusReport } from './status';
3
+ import type { XemaConfig } from '../config/schema';
4
+ export interface InstallationSupportBundle {
5
+ readonly schemaVersion: 1;
6
+ readonly createdAt: string;
7
+ readonly payload: {
8
+ readonly config: unknown;
9
+ readonly desiredPlan: unknown;
10
+ readonly status: InstallationStatusReport;
11
+ readonly logMetadata: {
12
+ readonly includedContent: false;
13
+ readonly workloads: readonly {
14
+ readonly name: string;
15
+ readonly state: string;
16
+ }[];
17
+ };
18
+ };
19
+ readonly manifest: {
20
+ readonly algorithm: 'sha256';
21
+ readonly payloadHash: string;
22
+ };
23
+ }
24
+ export declare function createSupportBundle(config: XemaConfig, desiredPlan: CompiledXemaInstallation, status: InstallationStatusReport, createdAt?: string): InstallationSupportBundle;
25
+ export declare function writeSupportBundle(outputPath: string, bundle: InstallationSupportBundle, opts?: Readonly<{
26
+ overwrite?: boolean;
27
+ }>): void;
28
+ export declare function verifySupportBundle(bundle: InstallationSupportBundle): boolean;
29
+ export declare function redactSupportValue(value: unknown, parentKey?: string): unknown;
30
+ //# sourceMappingURL=support-bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support-bundle.d.ts","sourceRoot":"","sources":["../../../src/runtime/installation/support-bundle.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;QAC9B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;QAC1C,QAAQ,CAAC,WAAW,EAAE;YACpB,QAAQ,CAAC,eAAe,EAAE,KAAK,CAAC;YAChC,QAAQ,CAAC,SAAS,EAAE,SAAS;gBAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;aACxB,EAAE,CAAC;SACL,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC;QAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,wBAAwB,EACrC,MAAM,EAAE,wBAAwB,EAChC,SAAS,SAA2B,GACnC,yBAAyB,CAmB3B;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,yBAAyB,EACjC,IAAI,GAAE,QAAQ,CAAC;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAM,GAC3C,IAAI,CAwCN;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAET;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,SAAK,GAAG,OAAO,CAqB1E"}
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSupportBundle = createSupportBundle;
4
+ exports.writeSupportBundle = writeSupportBundle;
5
+ exports.verifySupportBundle = verifySupportBundle;
6
+ exports.redactSupportValue = redactSupportValue;
7
+ const node_fs_1 = require("node:fs");
8
+ const node_path_1 = require("node:path");
9
+ const serialization_1 = require("./serialization");
10
+ const url_security_1 = require("../secrets/url-security");
11
+ function createSupportBundle(config, desiredPlan, status, createdAt = new Date().toISOString()) {
12
+ const payload = {
13
+ config: redactSupportValue(config),
14
+ desiredPlan: redactSupportValue(desiredPlan),
15
+ status,
16
+ logMetadata: {
17
+ includedContent: false,
18
+ workloads: status.observed.workloads,
19
+ },
20
+ };
21
+ return {
22
+ schemaVersion: 1,
23
+ createdAt,
24
+ payload,
25
+ manifest: {
26
+ algorithm: 'sha256',
27
+ payloadHash: (0, serialization_1.hashInstallation)(payload),
28
+ },
29
+ };
30
+ }
31
+ function writeSupportBundle(outputPath, bundle, opts = {}) {
32
+ const directory = (0, node_path_1.dirname)(outputPath);
33
+ (0, node_fs_1.mkdirSync)(directory, { recursive: true, mode: 0o700 });
34
+ const temporary = (0, node_path_1.join)(directory, `.support-bundle.${String(process.pid)}.${Date.now().toString(36)}.tmp`);
35
+ const fd = (0, node_fs_1.openSync)(temporary, 'wx', 0o600);
36
+ try {
37
+ (0, node_fs_1.writeFileSync)(fd, `${(0, serialization_1.serializeInstallation)(bundle)}\n`, 'utf8');
38
+ (0, node_fs_1.fsyncSync)(fd);
39
+ }
40
+ finally {
41
+ (0, node_fs_1.closeSync)(fd);
42
+ }
43
+ try {
44
+ if (opts.overwrite === true) {
45
+ (0, node_fs_1.renameSync)(temporary, outputPath);
46
+ }
47
+ else {
48
+ try {
49
+ (0, node_fs_1.linkSync)(temporary, outputPath);
50
+ }
51
+ catch (error) {
52
+ if (error.code === 'EEXIST') {
53
+ throw new Error(`Support bundle output already exists at ${outputPath}; pass --force to replace it.`);
54
+ }
55
+ throw error;
56
+ }
57
+ (0, node_fs_1.rmSync)(temporary);
58
+ }
59
+ const directoryFd = (0, node_fs_1.openSync)(directory, 'r');
60
+ try {
61
+ (0, node_fs_1.fsyncSync)(directoryFd);
62
+ }
63
+ finally {
64
+ (0, node_fs_1.closeSync)(directoryFd);
65
+ }
66
+ }
67
+ catch (error) {
68
+ (0, node_fs_1.rmSync)(temporary, { force: true });
69
+ throw error;
70
+ }
71
+ }
72
+ function verifySupportBundle(bundle) {
73
+ return bundle.manifest.payloadHash === (0, serialization_1.hashInstallation)(bundle.payload);
74
+ }
75
+ function redactSupportValue(value, parentKey = '') {
76
+ if (typeof value === 'string') {
77
+ if (SECRET_REFERENCE_FIELDS.has(parentKey)) {
78
+ return '<redacted-reference>';
79
+ }
80
+ return redactUrlCredentials(value);
81
+ }
82
+ if (Array.isArray(value)) {
83
+ return value.map((entry) => redactSupportValue(entry, parentKey));
84
+ }
85
+ if (value === null || typeof value !== 'object') {
86
+ return value;
87
+ }
88
+ return Object.fromEntries(Object.entries(value).map(([key, child]) => [
89
+ key,
90
+ sensitiveKey(key) ? '<redacted>' : redactSupportValue(child, key),
91
+ ]));
92
+ }
93
+ const SECRET_REFERENCE_FIELDS = new Set([
94
+ 'address',
95
+ 'entry',
96
+ 'env',
97
+ 'key',
98
+ 'keyRef',
99
+ 'mount',
100
+ 'namespace',
101
+ 'path',
102
+ 'property',
103
+ 'remoteKey',
104
+ 'resourceName',
105
+ 'storeName',
106
+ 'targetKey',
107
+ 'targetName',
108
+ 'variable',
109
+ ]);
110
+ function sensitiveKey(key) {
111
+ if (/^secretRefs?$/i.test(key) || key === 'secrets') {
112
+ return false;
113
+ }
114
+ return (0, url_security_1.isSensitiveCredentialKey)(key);
115
+ }
116
+ function redactUrlCredentials(value) {
117
+ let parsed;
118
+ try {
119
+ parsed = new URL(value);
120
+ }
121
+ catch {
122
+ return value;
123
+ }
124
+ let redacted = false;
125
+ if (parsed.username.length > 0) {
126
+ parsed.username = '<redacted>';
127
+ redacted = true;
128
+ }
129
+ if (parsed.password.length > 0) {
130
+ parsed.password = '<redacted>';
131
+ redacted = true;
132
+ }
133
+ for (const key of [...parsed.searchParams.keys()]) {
134
+ if (sensitiveKey(key)) {
135
+ parsed.searchParams.set(key, '<redacted>');
136
+ redacted = true;
137
+ }
138
+ }
139
+ if (!redacted) {
140
+ return value;
141
+ }
142
+ parsed.hash = '';
143
+ return parsed.toString();
144
+ }
145
+ //# sourceMappingURL=support-bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support-bundle.js","sourceRoot":"","sources":["../../../src/runtime/installation/support-bundle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type XemaConfig } from '../config/schema';
2
+ import type { CompiledXemaInstallation } from './compiler';
3
+ export declare function launcherConfigFromInstallation(installation: CompiledXemaInstallation): XemaConfig;
4
+ //# sourceMappingURL=to-current-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-current-config.d.ts","sourceRoot":"","sources":["../../../src/runtime/installation/to-current-config.ts"],"names":[],"mappings":"AAMA,OAAO,EAML,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAM3D,wBAAgB,8BAA8B,CAC5C,YAAY,EAAE,wBAAwB,GACrC,UAAU,CAuHZ"}
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.launcherConfigFromInstallation = launcherConfigFromInstallation;
4
+ const contract_1 = require("./contract");
5
+ const schema_1 = require("../config/schema");
6
+ function launcherConfigFromInstallation(installation) {
7
+ const spec = installation.spec;
8
+ if (spec.distribution.kind !== 'edition') {
9
+ throw new Error('The current launcher adapter requires an edition distribution; lock rendering must be handled by the distribution resolver.');
10
+ }
11
+ const secretsByName = new Map(spec.secrets.map((secret) => [secret.name, secret]));
12
+ for (const binding of spec.infrastructure) {
13
+ if (binding.secretRefs.length > 1) {
14
+ throw new Error(`The current launcher adapter cannot render multiple secret references for ${binding.component}.`);
15
+ }
16
+ }
17
+ return (0, schema_1.parseXemaConfig)({
18
+ edition: spec.distribution.edition,
19
+ app: {
20
+ substrate: substrateForProfile(spec.profile),
21
+ processModel: schema_1.ProcessModel.Distributed,
22
+ include: rosterInclude(spec.features),
23
+ exclude: spec.features.exclude,
24
+ features: spec.features.enabled,
25
+ web: { enabled: spec.features.web },
26
+ },
27
+ infra: Object.fromEntries(spec.infrastructure.map((binding) => [
28
+ binding.component,
29
+ {
30
+ mode: binding.ownership,
31
+ ...(binding.endpoint === undefined ? {} : { url: binding.endpoint }),
32
+ ...(binding.secretRefs[0] === undefined
33
+ ? {}
34
+ : { secretRef: binding.secretRefs[0] }),
35
+ ...(binding.realm === undefined ? {} : { realm: binding.realm }),
36
+ ...(binding.bucketPrefix === undefined
37
+ ? {}
38
+ : { bucketPrefix: binding.bucketPrefix }),
39
+ ...(binding.persistencePath === undefined
40
+ ? {}
41
+ : { persist: { path: binding.persistencePath } }),
42
+ },
43
+ ])),
44
+ state: {
45
+ workspaces: {
46
+ driver: spec.storage.workspaceDriver,
47
+ ...(spec.storage.workspaceRoot === undefined
48
+ ? {}
49
+ : { path: spec.storage.workspaceRoot }),
50
+ },
51
+ biomeMaterialization: spec.storage.materializationRoot === undefined
52
+ ? {}
53
+ : { path: spec.storage.materializationRoot },
54
+ },
55
+ secrets: Object.fromEntries(spec.secrets
56
+ .filter((secret) => !isSourceOnlySecret(secret.name, spec.sources))
57
+ .filter((secret) => !isClusterResolvedSecret(secret.provider))
58
+ .map((secret) => [secret.name, legacySecret(secret)])),
59
+ sources: spec.sources.map((source) => {
60
+ const authTokenEnv = 'authSecretRef' in source && source.authSecretRef !== undefined
61
+ ? environmentLocator(source.authSecretRef, secretsByName)
62
+ : undefined;
63
+ switch (source.kind) {
64
+ case contract_1.SourceBindingKind.Workspace:
65
+ return {
66
+ name: source.name,
67
+ kind: contract_1.SourceBindingKind.Workspace,
68
+ ...(source.root === undefined ? {} : { root: source.root }),
69
+ };
70
+ case contract_1.SourceBindingKind.Distribution:
71
+ return {
72
+ name: source.name,
73
+ kind: contract_1.SourceBindingKind.Distribution,
74
+ edition: source.edition,
75
+ ...(source.ref === undefined ? {} : { ref: source.ref }),
76
+ };
77
+ case contract_1.SourceBindingKind.Npm:
78
+ return {
79
+ name: source.name,
80
+ kind: contract_1.SourceBindingKind.Npm,
81
+ ...(source.registryUrl === undefined
82
+ ? {}
83
+ : { registryUrl: source.registryUrl }),
84
+ ...(source.scope === undefined ? {} : { scope: source.scope }),
85
+ ...(authTokenEnv === undefined ? {} : { authTokenEnv }),
86
+ };
87
+ case contract_1.SourceBindingKind.Oci:
88
+ return {
89
+ name: source.name,
90
+ kind: contract_1.SourceBindingKind.Oci,
91
+ registry: source.registry,
92
+ ...(authTokenEnv === undefined ? {} : { authTokenEnv }),
93
+ };
94
+ case contract_1.SourceBindingKind.Git:
95
+ return {
96
+ name: source.name,
97
+ kind: contract_1.SourceBindingKind.Git,
98
+ url: source.url,
99
+ ...(source.ref === undefined ? {} : { ref: source.ref }),
100
+ ...(authTokenEnv === undefined ? {} : { authTokenEnv }),
101
+ };
102
+ }
103
+ }),
104
+ ...(spec.security.managedModelAccess === undefined
105
+ ? {}
106
+ : { policy: { allowedTiers: spec.security.managedModelAccess } }),
107
+ });
108
+ }
109
+ function substrateForProfile(profile) {
110
+ switch (profile) {
111
+ case contract_1.InstallationProfile.Developer:
112
+ return schema_1.Substrate.Native;
113
+ case contract_1.InstallationProfile.Starter:
114
+ return schema_1.Substrate.Container;
115
+ case contract_1.InstallationProfile.SingleNodeProduction:
116
+ case contract_1.InstallationProfile.BusinessHa:
117
+ case contract_1.InstallationProfile.EnterpriseRegulated:
118
+ case contract_1.InstallationProfile.HostedCell:
119
+ return schema_1.Substrate.Helm;
120
+ }
121
+ }
122
+ function rosterInclude(features) {
123
+ switch (features.selection) {
124
+ case contract_1.FeatureSelectionMode.Minimal:
125
+ return 'minimal';
126
+ case contract_1.FeatureSelectionMode.Default:
127
+ return 'default';
128
+ case contract_1.FeatureSelectionMode.All:
129
+ return 'all';
130
+ case contract_1.FeatureSelectionMode.Explicit:
131
+ return [...features.include];
132
+ }
133
+ }
134
+ function isClusterResolvedSecret(provider) {
135
+ return (provider === contract_1.SecretReferenceProvider.Kubernetes ||
136
+ provider === contract_1.SecretReferenceProvider.ExternalSecrets ||
137
+ provider === contract_1.SecretReferenceProvider.ExternalVault);
138
+ }
139
+ function legacySecret(secret) {
140
+ switch (secret.provider) {
141
+ case contract_1.SecretReferenceProvider.Environment:
142
+ return {
143
+ from: schema_1.SecretSource.Env,
144
+ env: secret.variable,
145
+ };
146
+ case contract_1.SecretReferenceProvider.File:
147
+ return {
148
+ from: schema_1.SecretSource.File,
149
+ path: secret.path,
150
+ };
151
+ case contract_1.SecretReferenceProvider.Prompt:
152
+ return { from: schema_1.SecretSource.Prompt };
153
+ case contract_1.SecretReferenceProvider.ManagedLocal:
154
+ case contract_1.SecretReferenceProvider.Kubernetes:
155
+ case contract_1.SecretReferenceProvider.ExternalSecrets:
156
+ case contract_1.SecretReferenceProvider.ExternalVault:
157
+ throw new Error(`The current launcher adapter cannot resolve ${secret.provider} secret "${secret.name}".`);
158
+ }
159
+ }
160
+ function environmentLocator(ref, secrets) {
161
+ const secret = secrets.get(ref);
162
+ if (secret === undefined ||
163
+ secret.provider !== contract_1.SecretReferenceProvider.Environment) {
164
+ throw new Error(`Source authentication reference "${ref}" must resolve to an environment secret for the current launcher adapter.`);
165
+ }
166
+ return secret.variable;
167
+ }
168
+ function isSourceOnlySecret(name, sources) {
169
+ return sources.some((source) => 'authSecretRef' in source && source.authSecretRef === name);
170
+ }
171
+ //# sourceMappingURL=to-current-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-current-config.js","sourceRoot":"","sources":["../../../src/runtime/installation/to-current-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type ParsedXemaInstallation } from './contract';
2
+ import { type InstallationIssue } from './diagnostics';
3
+ export interface InstallationValidation {
4
+ readonly installation?: ParsedXemaInstallation;
5
+ readonly issues: readonly InstallationIssue[];
6
+ }
7
+ export declare function validateXemaInstallation(raw: unknown): InstallationValidation;
8
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/runtime/installation/validation.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAO9E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,sBAAsB,CAAC;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC/C;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB,CAwC7E"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateXemaInstallation = validateXemaInstallation;
4
+ const zod_1 = require("zod");
5
+ const contract_1 = require("./contract");
6
+ const diagnostics_1 = require("./diagnostics");
7
+ const common_1 = require("./validators/common");
8
+ const infrastructure_1 = require("./validators/infrastructure");
9
+ const operational_1 = require("./validators/operational");
10
+ const profile_1 = require("./validators/profile");
11
+ const secrets_1 = require("./validators/secrets");
12
+ function validateXemaInstallation(raw) {
13
+ const forbidden = findForbiddenInstallationField(raw);
14
+ if (forbidden !== undefined) {
15
+ return {
16
+ issues: [
17
+ {
18
+ kind: diagnostics_1.InstallationIssueKind.Invalid,
19
+ code: forbidden.code,
20
+ path: forbidden.path,
21
+ message: forbidden.message,
22
+ },
23
+ ],
24
+ };
25
+ }
26
+ let installation;
27
+ try {
28
+ installation = contract_1.XemaInstallationSchema.parse(raw);
29
+ }
30
+ catch (error) {
31
+ if (!(error instanceof zod_1.ZodError)) {
32
+ throw error;
33
+ }
34
+ return {
35
+ issues: error.issues.map((issue) => ({
36
+ kind: diagnostics_1.InstallationIssueKind.Invalid,
37
+ code: 'SCHEMA_INVALID',
38
+ path: issue.path.join('.'),
39
+ message: issue.message,
40
+ })),
41
+ };
42
+ }
43
+ const issues = [
44
+ ...(0, common_1.validateUniqueEntries)(installation),
45
+ ...(0, infrastructure_1.validateInfrastructure)(installation),
46
+ ...(0, secrets_1.validateSecretReferences)(installation),
47
+ ...(0, profile_1.validateProfile)(installation),
48
+ ...(0, operational_1.validateOperationalPolicy)(installation),
49
+ ];
50
+ return { installation, issues };
51
+ }
52
+ const INTERNAL_RUNTIME_KEYS = new Set([
53
+ 'awp',
54
+ 'awpversion',
55
+ 'pool',
56
+ 'pools',
57
+ 'poolkey',
58
+ 'pod',
59
+ 'pods',
60
+ 'podtemplate',
61
+ 'servicetopology',
62
+ 'perservicetopology',
63
+ ]);
64
+ const RAW_SECRET_KEYS = new Set([
65
+ 'password',
66
+ 'secret',
67
+ 'secretvalue',
68
+ 'token',
69
+ 'privatekey',
70
+ 'credential',
71
+ 'credentials',
72
+ ]);
73
+ function findForbiddenInstallationField(value, path = '') {
74
+ if (value === null || typeof value !== 'object') {
75
+ return undefined;
76
+ }
77
+ if (Array.isArray(value)) {
78
+ for (let index = 0; index < value.length; index += 1) {
79
+ const issue = findForbiddenInstallationField(value[index], `${path}[${String(index)}]`);
80
+ if (issue !== undefined) {
81
+ return issue;
82
+ }
83
+ }
84
+ return undefined;
85
+ }
86
+ for (const [key, child] of Object.entries(value)) {
87
+ const normalized = key.toLowerCase().replaceAll(/[-_]/g, '');
88
+ const childPath = path.length === 0 ? key : `${path}.${key}`;
89
+ if (normalized === 'regions') {
90
+ return {
91
+ code: 'MULTI_REGION_UNSUPPORTED',
92
+ path: childPath,
93
+ message: 'one installation targets exactly one region; multi-region fleet placement is not supported by this compiler',
94
+ };
95
+ }
96
+ if (INTERNAL_RUNTIME_KEYS.has(normalized)) {
97
+ return {
98
+ code: 'INTERNAL_RUNTIME_TOPOLOGY_FORBIDDEN',
99
+ path: childPath,
100
+ message: 'XemaInstallation accepts operator intent, not AWP, pool, pod, or per-service runtime topology',
101
+ };
102
+ }
103
+ if (RAW_SECRET_KEYS.has(normalized)) {
104
+ return {
105
+ code: 'RAW_SECRET_VALUE_FORBIDDEN',
106
+ path: childPath,
107
+ message: 'XemaInstallation accepts named secret references only, never raw secret values',
108
+ };
109
+ }
110
+ const issue = findForbiddenInstallationField(child, childPath);
111
+ if (issue !== undefined) {
112
+ return issue;
113
+ }
114
+ }
115
+ return undefined;
116
+ }
117
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/runtime/installation/validation.ts"],"names":[],"mappings":";;AAkBA,4DAwCC;AA1DD,6BAA+B;AAE/B,yCAGoB;AACpB,+CAA8E;AAC9E,gDAA4D;AAC5D,gEAAqE;AACrE,0DAAqE;AACrE,kDAAuD;AACvD,kDAAgE;AAOhE,SAAgB,wBAAwB,CAAC,GAAY;IACnD,MAAM,SAAS,GAAG,8BAA8B,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;YACL,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,mCAAqB,CAAC,OAAO;oBACnC,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,OAAO,EAAE,SAAS,CAAC,OAAO;iBAC3B;aACF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,YAAoC,CAAC;IACzC,IAAI,CAAC;QACH,YAAY,GAAG,iCAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,cAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO;YACL,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACnC,IAAI,EAAE,mCAAqB,CAAC,OAAO;gBACnC,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG;QACb,GAAG,IAAA,8BAAqB,EAAC,YAAY,CAAC;QACtC,GAAG,IAAA,uCAAsB,EAAC,YAAY,CAAC;QACvC,GAAG,IAAA,kCAAwB,EAAC,YAAY,CAAC;QACzC,GAAG,IAAA,yBAAe,EAAC,YAAY,CAAC;QAChC,GAAG,IAAA,uCAAyB,EAAC,YAAY,CAAC;KAC3C,CAAC;IAEF,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC;AAQD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,KAAK;IACL,YAAY;IACZ,MAAM;IACN,OAAO;IACP,SAAS;IACT,KAAK;IACL,MAAM;IACN,aAAa;IACb,iBAAiB;IACjB,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,UAAU;IACV,QAAQ;IACR,aAAa;IACb,OAAO;IACP,YAAY;IACZ,YAAY;IACZ,aAAa;CACd,CAAC,CAAC;AAEH,SAAS,8BAA8B,CACrC,KAAc,EACd,IAAI,GAAG,EAAE;IAET,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,8BAA8B,CAC1C,KAAK,CAAC,KAAK,CAAC,EACZ,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAC5B,CAAC;YACF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;QAC7D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO;gBACL,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE,SAAS;gBACf,OAAO,EACL,6GAA6G;aAChH,CAAC;QACJ,CAAC;QACD,IAAI,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO;gBACL,IAAI,EAAE,qCAAqC;gBAC3C,IAAI,EAAE,SAAS;gBACf,OAAO,EACL,+FAA+F;aAClG,CAAC;QACJ,CAAC;QACD,IAAI,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,OAAO;gBACL,IAAI,EAAE,4BAA4B;gBAClC,IAAI,EAAE,SAAS;gBACf,OAAO,EACL,gFAAgF;aACnF,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,8BAA8B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC/D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type InstallationIssue } from '../diagnostics';
2
+ import type { ParsedXemaInstallation } from '../contract';
3
+ export declare function validateUniqueEntries(installation: ParsedXemaInstallation): readonly InstallationIssue[];
4
+ //# sourceMappingURL=common.d.ts.map