typekro 0.28.0 → 0.29.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 (674) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/advanced/index.d.ts +5 -1
  3. package/dist/advanced/index.d.ts.map +1 -1
  4. package/dist/advanced/index.js +2 -3
  5. package/dist/advanced/index.js.map +1 -1
  6. package/dist/alchemy/deployers.d.ts +6 -4
  7. package/dist/alchemy/deployers.d.ts.map +1 -1
  8. package/dist/alchemy/deployers.js +46 -9
  9. package/dist/alchemy/deployers.js.map +1 -1
  10. package/dist/alchemy/index.d.ts +2 -3
  11. package/dist/alchemy/index.d.ts.map +1 -1
  12. package/dist/alchemy/index.js +1 -1
  13. package/dist/alchemy/index.js.map +1 -1
  14. package/dist/alchemy/kro-delete.d.ts +6 -5
  15. package/dist/alchemy/kro-delete.d.ts.map +1 -1
  16. package/dist/alchemy/kro-delete.js +169 -22
  17. package/dist/alchemy/kro-delete.js.map +1 -1
  18. package/dist/alchemy/resource-registration.d.ts +24 -31
  19. package/dist/alchemy/resource-registration.d.ts.map +1 -1
  20. package/dist/alchemy/resource-registration.js +439 -75
  21. package/dist/alchemy/resource-registration.js.map +1 -1
  22. package/dist/alchemy/types.d.ts +56 -14
  23. package/dist/alchemy/types.d.ts.map +1 -1
  24. package/dist/alchemy/utilities.d.ts +2 -2
  25. package/dist/alchemy/utilities.d.ts.map +1 -1
  26. package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -1
  27. package/dist/compositions/typekro-runtime/typekro-runtime.js +31 -28
  28. package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -1
  29. package/dist/compositions/typekro-runtime/types.d.ts +12 -0
  30. package/dist/compositions/typekro-runtime/types.d.ts.map +1 -1
  31. package/dist/core/composition/analysis-metadata.d.ts +15 -0
  32. package/dist/core/composition/analysis-metadata.d.ts.map +1 -0
  33. package/dist/core/composition/analysis-metadata.js +20 -0
  34. package/dist/core/composition/analysis-metadata.js.map +1 -0
  35. package/dist/core/composition/imperative.d.ts.map +1 -1
  36. package/dist/core/composition/imperative.js +38 -9
  37. package/dist/core/composition/imperative.js.map +1 -1
  38. package/dist/core/composition/nested-status-cel.js +3 -3
  39. package/dist/core/composition/nested-status-cel.js.map +1 -1
  40. package/dist/core/constants/brands.d.ts +1 -1
  41. package/dist/core/constants/brands.d.ts.map +1 -1
  42. package/dist/core/constants/brands.js +1 -1
  43. package/dist/core/constants/brands.js.map +1 -1
  44. package/dist/core/dependencies/resolver.d.ts +3 -1
  45. package/dist/core/dependencies/resolver.d.ts.map +1 -1
  46. package/dist/core/dependencies/resolver.js +29 -13
  47. package/dist/core/dependencies/resolver.js.map +1 -1
  48. package/dist/core/deployment/deletion-result.d.ts +22 -0
  49. package/dist/core/deployment/deletion-result.d.ts.map +1 -0
  50. package/dist/core/deployment/deletion-result.js +108 -0
  51. package/dist/core/deployment/deletion-result.js.map +1 -0
  52. package/dist/core/deployment/deployment-state-discovery.d.ts +1 -0
  53. package/dist/core/deployment/deployment-state-discovery.d.ts.map +1 -1
  54. package/dist/core/deployment/deployment-state-discovery.js +89 -9
  55. package/dist/core/deployment/deployment-state-discovery.js.map +1 -1
  56. package/dist/core/deployment/direct-factory.d.ts +46 -25
  57. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  58. package/dist/core/deployment/direct-factory.js +536 -126
  59. package/dist/core/deployment/direct-factory.js.map +1 -1
  60. package/dist/core/deployment/engine.d.ts +4 -1
  61. package/dist/core/deployment/engine.d.ts.map +1 -1
  62. package/dist/core/deployment/engine.js +105 -34
  63. package/dist/core/deployment/engine.js.map +1 -1
  64. package/dist/core/deployment/errors.d.ts +20 -1
  65. package/dist/core/deployment/errors.d.ts.map +1 -1
  66. package/dist/core/deployment/errors.js +55 -0
  67. package/dist/core/deployment/errors.js.map +1 -1
  68. package/dist/core/deployment/event-monitor.d.ts +4 -3
  69. package/dist/core/deployment/event-monitor.d.ts.map +1 -1
  70. package/dist/core/deployment/event-monitor.js +17 -5
  71. package/dist/core/deployment/event-monitor.js.map +1 -1
  72. package/dist/core/deployment/index.d.ts +1 -1
  73. package/dist/core/deployment/index.d.ts.map +1 -1
  74. package/dist/core/deployment/index.js +1 -1
  75. package/dist/core/deployment/index.js.map +1 -1
  76. package/dist/core/deployment/k8s-helpers.d.ts +1 -1
  77. package/dist/core/deployment/k8s-helpers.d.ts.map +1 -1
  78. package/dist/core/deployment/k8s-helpers.js +11 -5
  79. package/dist/core/deployment/k8s-helpers.js.map +1 -1
  80. package/dist/core/deployment/kro-factory.d.ts +54 -30
  81. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  82. package/dist/core/deployment/kro-factory.js +2002 -259
  83. package/dist/core/deployment/kro-factory.js.map +1 -1
  84. package/dist/core/deployment/kro-instance-admission.d.ts +17 -0
  85. package/dist/core/deployment/kro-instance-admission.d.ts.map +1 -0
  86. package/dist/core/deployment/kro-instance-admission.js +73 -0
  87. package/dist/core/deployment/kro-instance-admission.js.map +1 -0
  88. package/dist/core/deployment/kro-instance-safety.d.ts +0 -3
  89. package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -1
  90. package/dist/core/deployment/kro-instance-safety.js +0 -11
  91. package/dist/core/deployment/kro-instance-safety.js.map +1 -1
  92. package/dist/core/deployment/kro-namespace-teardown.d.ts +63 -5
  93. package/dist/core/deployment/kro-namespace-teardown.d.ts.map +1 -1
  94. package/dist/core/deployment/kro-namespace-teardown.js +124 -12
  95. package/dist/core/deployment/kro-namespace-teardown.js.map +1 -1
  96. package/dist/core/deployment/kro-readiness.d.ts +2 -0
  97. package/dist/core/deployment/kro-readiness.d.ts.map +1 -1
  98. package/dist/core/deployment/kro-readiness.js +50 -8
  99. package/dist/core/deployment/kro-readiness.js.map +1 -1
  100. package/dist/core/deployment/poll-timeout.d.ts +45 -0
  101. package/dist/core/deployment/poll-timeout.d.ts.map +1 -0
  102. package/dist/core/deployment/poll-timeout.js +78 -0
  103. package/dist/core/deployment/poll-timeout.js.map +1 -0
  104. package/dist/core/deployment/readiness.d.ts.map +1 -1
  105. package/dist/core/deployment/readiness.js +30 -21
  106. package/dist/core/deployment/readiness.js.map +1 -1
  107. package/dist/core/deployment/resource-applier.d.ts +19 -3
  108. package/dist/core/deployment/resource-applier.d.ts.map +1 -1
  109. package/dist/core/deployment/resource-applier.js +263 -44
  110. package/dist/core/deployment/resource-applier.js.map +1 -1
  111. package/dist/core/deployment/rollback-manager.d.ts +6 -1
  112. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  113. package/dist/core/deployment/rollback-manager.js +38 -12
  114. package/dist/core/deployment/rollback-manager.js.map +1 -1
  115. package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -1
  116. package/dist/core/deployment/schema-cel-evaluator.js +63 -0
  117. package/dist/core/deployment/schema-cel-evaluator.js.map +1 -1
  118. package/dist/core/deployment/shared-utilities.d.ts +11 -6
  119. package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
  120. package/dist/core/deployment/shared-utilities.js +169 -14
  121. package/dist/core/deployment/shared-utilities.js.map +1 -1
  122. package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
  123. package/dist/core/deployment/singleton-gitops.js +0 -2
  124. package/dist/core/deployment/singleton-gitops.js.map +1 -1
  125. package/dist/core/deployment/singleton-owner-drift.d.ts +11 -2
  126. package/dist/core/deployment/singleton-owner-drift.d.ts.map +1 -1
  127. package/dist/core/deployment/singleton-owner-drift.js +30 -13
  128. package/dist/core/deployment/singleton-owner-drift.js.map +1 -1
  129. package/dist/core/deployment/strategies/base-strategy.d.ts +2 -0
  130. package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
  131. package/dist/core/deployment/strategies/base-strategy.js +19 -2
  132. package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
  133. package/dist/core/deployment/strategies/direct-strategy.d.ts +3 -0
  134. package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
  135. package/dist/core/deployment/strategies/direct-strategy.js +31 -8
  136. package/dist/core/deployment/strategies/direct-strategy.js.map +1 -1
  137. package/dist/core/deployment/strategies/index.d.ts +1 -1
  138. package/dist/core/deployment/strategies/index.d.ts.map +1 -1
  139. package/dist/core/deployment/strategies/index.js +1 -1
  140. package/dist/core/deployment/strategies/index.js.map +1 -1
  141. package/dist/core/errors.d.ts +2 -2
  142. package/dist/core/errors.d.ts.map +1 -1
  143. package/dist/core/errors.js.map +1 -1
  144. package/dist/core/expressions/analysis/cel-emitter.d.ts.map +1 -1
  145. package/dist/core/expressions/analysis/cel-emitter.js +17 -13
  146. package/dist/core/expressions/analysis/cel-emitter.js.map +1 -1
  147. package/dist/core/expressions/analysis/expression-metadata.d.ts +15 -0
  148. package/dist/core/expressions/analysis/expression-metadata.d.ts.map +1 -0
  149. package/dist/core/expressions/analysis/expression-metadata.js +10 -0
  150. package/dist/core/expressions/analysis/expression-metadata.js.map +1 -0
  151. package/dist/core/expressions/analysis/ready-when.d.ts +3 -0
  152. package/dist/core/expressions/analysis/ready-when.d.ts.map +1 -0
  153. package/dist/core/expressions/analysis/ready-when.js +127 -0
  154. package/dist/core/expressions/analysis/ready-when.js.map +1 -0
  155. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts +3 -2
  156. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +1 -1
  157. package/dist/core/expressions/composition/composition-analyzer-helpers.js +6 -4
  158. package/dist/core/expressions/composition/composition-analyzer-helpers.js.map +1 -1
  159. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts +3 -2
  160. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts.map +1 -1
  161. package/dist/core/expressions/composition/composition-analyzer-ternary.js +12 -12
  162. package/dist/core/expressions/composition/composition-analyzer-ternary.js.map +1 -1
  163. package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts.map +1 -1
  164. package/dist/core/expressions/composition/composition-analyzer-traversal.js +68 -4
  165. package/dist/core/expressions/composition/composition-analyzer-traversal.js.map +1 -1
  166. package/dist/core/expressions/composition/composition-analyzer-types.d.ts +2 -0
  167. package/dist/core/expressions/composition/composition-analyzer-types.d.ts.map +1 -1
  168. package/dist/core/expressions/composition/composition-analyzer.d.ts.map +1 -1
  169. package/dist/core/expressions/composition/composition-analyzer.js +2 -0
  170. package/dist/core/expressions/composition/composition-analyzer.js.map +1 -1
  171. package/dist/core/expressions/factory/status-builder-analyzer.d.ts.map +1 -1
  172. package/dist/core/expressions/factory/status-builder-analyzer.js +14 -1
  173. package/dist/core/expressions/factory/status-builder-analyzer.js.map +1 -1
  174. package/dist/core/kubernetes/api.d.ts.map +1 -1
  175. package/dist/core/kubernetes/api.js +2 -3
  176. package/dist/core/kubernetes/api.js.map +1 -1
  177. package/dist/core/kubernetes/bun-api-client.d.ts +1 -1
  178. package/dist/core/kubernetes/bun-api-client.d.ts.map +1 -1
  179. package/dist/core/kubernetes/bun-api-client.js +17 -17
  180. package/dist/core/kubernetes/bun-api-client.js.map +1 -1
  181. package/dist/core/kubernetes/bun-http-library.d.ts +16 -0
  182. package/dist/core/kubernetes/bun-http-library.d.ts.map +1 -1
  183. package/dist/core/kubernetes/bun-http-library.js +7 -1
  184. package/dist/core/kubernetes/bun-http-library.js.map +1 -1
  185. package/dist/core/kubernetes/bun-watch.d.ts +30 -0
  186. package/dist/core/kubernetes/bun-watch.d.ts.map +1 -0
  187. package/dist/core/kubernetes/bun-watch.js +144 -0
  188. package/dist/core/kubernetes/bun-watch.js.map +1 -0
  189. package/dist/core/kubernetes/client-node-runtime.d.ts +10 -0
  190. package/dist/core/kubernetes/client-node-runtime.d.ts.map +1 -0
  191. package/dist/core/kubernetes/client-node-runtime.js +15 -0
  192. package/dist/core/kubernetes/client-node-runtime.js.map +1 -0
  193. package/dist/core/kubernetes/client-provider.d.ts +21 -1
  194. package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
  195. package/dist/core/kubernetes/client-provider.js +10 -10
  196. package/dist/core/kubernetes/client-provider.js.map +1 -1
  197. package/dist/core/kubernetes/index.d.ts +1 -1
  198. package/dist/core/kubernetes/index.d.ts.map +1 -1
  199. package/dist/core/kubernetes/index.js.map +1 -1
  200. package/dist/core/metadata/resource-metadata.d.ts +24 -1
  201. package/dist/core/metadata/resource-metadata.d.ts.map +1 -1
  202. package/dist/core/metadata/resource-metadata.js +8 -4
  203. package/dist/core/metadata/resource-metadata.js.map +1 -1
  204. package/dist/core/planning/artifact-codec.d.ts +14 -0
  205. package/dist/core/planning/artifact-codec.d.ts.map +1 -0
  206. package/dist/core/planning/artifact-codec.js +329 -0
  207. package/dist/core/planning/artifact-codec.js.map +1 -0
  208. package/dist/core/planning/artifacts.d.ts +212 -0
  209. package/dist/core/planning/artifacts.d.ts.map +1 -0
  210. package/dist/core/planning/artifacts.js +5 -0
  211. package/dist/core/planning/artifacts.js.map +1 -0
  212. package/dist/core/planning/aspects.d.ts +11 -0
  213. package/dist/core/planning/aspects.d.ts.map +1 -0
  214. package/dist/core/planning/aspects.js +77 -0
  215. package/dist/core/planning/aspects.js.map +1 -0
  216. package/dist/core/planning/canonical.d.ts +10 -0
  217. package/dist/core/planning/canonical.d.ts.map +1 -0
  218. package/dist/core/planning/canonical.js +54 -0
  219. package/dist/core/planning/canonical.js.map +1 -0
  220. package/dist/core/planning/capabilities.d.ts +16 -0
  221. package/dist/core/planning/capabilities.d.ts.map +1 -0
  222. package/dist/core/planning/capabilities.js +90 -0
  223. package/dist/core/planning/capabilities.js.map +1 -0
  224. package/dist/core/planning/capture.d.ts +29 -0
  225. package/dist/core/planning/capture.d.ts.map +1 -0
  226. package/dist/core/planning/capture.js +18 -0
  227. package/dist/core/planning/capture.js.map +1 -0
  228. package/dist/core/planning/compiler.d.ts +12 -0
  229. package/dist/core/planning/compiler.d.ts.map +1 -0
  230. package/dist/core/planning/compiler.js +631 -0
  231. package/dist/core/planning/compiler.js.map +1 -0
  232. package/dist/core/planning/direct-runtime-adapter.d.ts +39 -0
  233. package/dist/core/planning/direct-runtime-adapter.d.ts.map +1 -0
  234. package/dist/core/planning/direct-runtime-adapter.js +238 -0
  235. package/dist/core/planning/direct-runtime-adapter.js.map +1 -0
  236. package/dist/core/planning/execution-record.d.ts +21 -0
  237. package/dist/core/planning/execution-record.d.ts.map +1 -0
  238. package/dist/core/planning/execution-record.js +304 -0
  239. package/dist/core/planning/execution-record.js.map +1 -0
  240. package/dist/core/planning/index.d.ts +20 -0
  241. package/dist/core/planning/index.d.ts.map +1 -0
  242. package/dist/core/planning/index.js +18 -0
  243. package/dist/core/planning/index.js.map +1 -0
  244. package/dist/core/planning/kro-bundle.d.ts +24 -0
  245. package/dist/core/planning/kro-bundle.d.ts.map +1 -0
  246. package/dist/core/planning/kro-bundle.js +314 -0
  247. package/dist/core/planning/kro-bundle.js.map +1 -0
  248. package/dist/core/planning/kro-runtime-adapter.d.ts +28 -0
  249. package/dist/core/planning/kro-runtime-adapter.d.ts.map +1 -0
  250. package/dist/core/planning/kro-runtime-adapter.js +211 -0
  251. package/dist/core/planning/kro-runtime-adapter.js.map +1 -0
  252. package/dist/core/planning/materialization.d.ts +54 -0
  253. package/dist/core/planning/materialization.d.ts.map +1 -0
  254. package/dist/core/planning/materialization.js +489 -0
  255. package/dist/core/planning/materialization.js.map +1 -0
  256. package/dist/core/planning/plan-codec.d.ts +11 -0
  257. package/dist/core/planning/plan-codec.d.ts.map +1 -0
  258. package/dist/core/planning/plan-codec.js +555 -0
  259. package/dist/core/planning/plan-codec.js.map +1 -0
  260. package/dist/core/planning/planner.d.ts +21 -0
  261. package/dist/core/planning/planner.d.ts.map +1 -0
  262. package/dist/core/planning/planner.js +1518 -0
  263. package/dist/core/planning/planner.js.map +1 -0
  264. package/dist/core/planning/schema.d.ts +10 -0
  265. package/dist/core/planning/schema.d.ts.map +1 -0
  266. package/dist/core/planning/schema.js +159 -0
  267. package/dist/core/planning/schema.js.map +1 -0
  268. package/dist/core/planning/types.d.ts +441 -0
  269. package/dist/core/planning/types.d.ts.map +1 -0
  270. package/dist/core/planning/types.js +3 -0
  271. package/dist/core/planning/types.js.map +1 -0
  272. package/dist/core/planning/values.d.ts +76 -0
  273. package/dist/core/planning/values.d.ts.map +1 -0
  274. package/dist/core/planning/values.js +852 -0
  275. package/dist/core/planning/values.js.map +1 -0
  276. package/dist/core/proxy/create-resource.d.ts +12 -0
  277. package/dist/core/proxy/create-resource.d.ts.map +1 -1
  278. package/dist/core/proxy/create-resource.js +39 -9
  279. package/dist/core/proxy/create-resource.js.map +1 -1
  280. package/dist/core/readiness/evaluator-factories.d.ts +3 -1
  281. package/dist/core/readiness/evaluator-factories.d.ts.map +1 -1
  282. package/dist/core/readiness/evaluator-factories.js +130 -5
  283. package/dist/core/readiness/evaluator-factories.js.map +1 -1
  284. package/dist/core/readiness/index.d.ts +2 -1
  285. package/dist/core/readiness/index.d.ts.map +1 -1
  286. package/dist/core/readiness/index.js +2 -1
  287. package/dist/core/readiness/index.js.map +1 -1
  288. package/dist/core/readiness/portable-strategies.d.ts +28 -0
  289. package/dist/core/readiness/portable-strategies.d.ts.map +1 -0
  290. package/dist/core/readiness/portable-strategies.js +55 -0
  291. package/dist/core/readiness/portable-strategies.js.map +1 -0
  292. package/dist/core/readiness/strategy-configuration.d.ts +12 -0
  293. package/dist/core/readiness/strategy-configuration.d.ts.map +1 -0
  294. package/dist/core/readiness/strategy-configuration.js +51 -0
  295. package/dist/core/readiness/strategy-configuration.js.map +1 -0
  296. package/dist/core/references/cel-evaluator.d.ts +5 -0
  297. package/dist/core/references/cel-evaluator.d.ts.map +1 -1
  298. package/dist/core/references/cel-evaluator.js +33 -2
  299. package/dist/core/references/cel-evaluator.js.map +1 -1
  300. package/dist/core/references/external-refs.d.ts +2 -0
  301. package/dist/core/references/external-refs.d.ts.map +1 -1
  302. package/dist/core/references/external-refs.js +3 -1
  303. package/dist/core/references/external-refs.js.map +1 -1
  304. package/dist/core/references/resolver.d.ts +7 -1
  305. package/dist/core/references/resolver.d.ts.map +1 -1
  306. package/dist/core/references/resolver.js +91 -9
  307. package/dist/core/references/resolver.js.map +1 -1
  308. package/dist/core/references/schema-proxy.d.ts.map +1 -1
  309. package/dist/core/references/schema-proxy.js +35 -21
  310. package/dist/core/references/schema-proxy.js.map +1 -1
  311. package/dist/core/resources/factory-registry.d.ts +64 -2
  312. package/dist/core/resources/factory-registry.d.ts.map +1 -1
  313. package/dist/core/resources/factory-registry.js +74 -3
  314. package/dist/core/resources/factory-registry.js.map +1 -1
  315. package/dist/core/resources/index.d.ts +3 -2
  316. package/dist/core/resources/index.d.ts.map +1 -1
  317. package/dist/core/resources/index.js +2 -1
  318. package/dist/core/resources/index.js.map +1 -1
  319. package/dist/core/resources/live-comparison.d.ts +58 -0
  320. package/dist/core/resources/live-comparison.d.ts.map +1 -0
  321. package/dist/core/resources/live-comparison.js +293 -0
  322. package/dist/core/resources/live-comparison.js.map +1 -0
  323. package/dist/core/runtime/standalone-operation.d.ts +12 -0
  324. package/dist/core/runtime/standalone-operation.d.ts.map +1 -0
  325. package/dist/core/runtime/standalone-operation.js +62 -0
  326. package/dist/core/runtime/standalone-operation.js.map +1 -0
  327. package/dist/core/serialization/cel-references.d.ts.map +1 -1
  328. package/dist/core/serialization/cel-references.js +11 -1
  329. package/dist/core/serialization/cel-references.js.map +1 -1
  330. package/dist/core/serialization/core.d.ts.map +1 -1
  331. package/dist/core/serialization/core.js +277 -182
  332. package/dist/core/serialization/core.js.map +1 -1
  333. package/dist/core/serialization/schema.d.ts.map +1 -1
  334. package/dist/core/serialization/schema.js +3 -3
  335. package/dist/core/serialization/schema.js.map +1 -1
  336. package/dist/core/serialization/status-analysis-pipeline.d.ts +1 -1
  337. package/dist/core/serialization/status-analysis-pipeline.d.ts.map +1 -1
  338. package/dist/core/serialization/status-analysis-pipeline.js +14 -11
  339. package/dist/core/serialization/status-analysis-pipeline.js.map +1 -1
  340. package/dist/core/serialization/yaml.d.ts +5 -1
  341. package/dist/core/serialization/yaml.d.ts.map +1 -1
  342. package/dist/core/serialization/yaml.js +35 -182
  343. package/dist/core/serialization/yaml.js.map +1 -1
  344. package/dist/core/types/deployment.d.ts +135 -14
  345. package/dist/core/types/deployment.d.ts.map +1 -1
  346. package/dist/core/types/kubernetes.d.ts +3 -0
  347. package/dist/core/types/kubernetes.d.ts.map +1 -1
  348. package/dist/core/types/resource-graph.d.ts +7 -1
  349. package/dist/core/types/resource-graph.d.ts.map +1 -1
  350. package/dist/core/types/serialization.d.ts +8 -1
  351. package/dist/core/types/serialization.d.ts.map +1 -1
  352. package/dist/core/validation/cel-validator.d.ts.map +1 -1
  353. package/dist/core/validation/cel-validator.js +25 -16
  354. package/dist/core/validation/cel-validator.js.map +1 -1
  355. package/dist/experimental-planning.d.ts +13 -0
  356. package/dist/experimental-planning.d.ts.map +1 -0
  357. package/dist/experimental-planning.js +12 -0
  358. package/dist/experimental-planning.js.map +1 -0
  359. package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
  360. package/dist/factories/apisix/compositions/apisix-bootstrap.js +27 -22
  361. package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
  362. package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts +15 -0
  363. package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts.map +1 -0
  364. package/dist/factories/apisix/compositions/apisix-helm-repository.js +28 -0
  365. package/dist/factories/apisix/compositions/apisix-helm-repository.js.map +1 -0
  366. package/dist/factories/apisix/compositions/index.d.ts +1 -0
  367. package/dist/factories/apisix/compositions/index.d.ts.map +1 -1
  368. package/dist/factories/apisix/compositions/index.js +1 -0
  369. package/dist/factories/apisix/compositions/index.js.map +1 -1
  370. package/dist/factories/apisix/types.d.ts +22 -0
  371. package/dist/factories/apisix/types.d.ts.map +1 -1
  372. package/dist/factories/apisix/types.js +16 -0
  373. package/dist/factories/apisix/types.js.map +1 -1
  374. package/dist/factories/apisix/utils/admin-credentials.d.ts +1 -0
  375. package/dist/factories/apisix/utils/admin-credentials.d.ts.map +1 -1
  376. package/dist/factories/apisix/utils/admin-credentials.js +5 -4
  377. package/dist/factories/apisix/utils/admin-credentials.js.map +1 -1
  378. package/dist/factories/caddy/compositions/caddy-ingress.d.ts.map +1 -1
  379. package/dist/factories/caddy/compositions/caddy-ingress.js +9 -2
  380. package/dist/factories/caddy/compositions/caddy-ingress.js.map +1 -1
  381. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts.map +1 -1
  382. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js +11 -25
  383. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js.map +1 -1
  384. package/dist/factories/cert-manager/resources/certificates.d.ts.map +1 -1
  385. package/dist/factories/cert-manager/resources/certificates.js +2 -1
  386. package/dist/factories/cert-manager/resources/certificates.js.map +1 -1
  387. package/dist/factories/cert-manager/resources/challenges.d.ts.map +1 -1
  388. package/dist/factories/cert-manager/resources/challenges.js +3 -0
  389. package/dist/factories/cert-manager/resources/challenges.js.map +1 -1
  390. package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts +4 -4
  391. package/dist/factories/cilium/resources/gateway.d.ts.map +1 -1
  392. package/dist/factories/cilium/resources/gateway.js +13 -12
  393. package/dist/factories/cilium/resources/gateway.js.map +1 -1
  394. package/dist/factories/cilium/resources/networking.d.ts.map +1 -1
  395. package/dist/factories/cilium/resources/networking.js +9 -0
  396. package/dist/factories/cilium/resources/networking.js.map +1 -1
  397. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +2 -1
  398. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts.map +1 -1
  399. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +2 -6
  400. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js.map +1 -1
  401. package/dist/factories/clickhouse/resources/installation.d.ts.map +1 -1
  402. package/dist/factories/clickhouse/resources/installation.js +2 -0
  403. package/dist/factories/clickhouse/resources/installation.js.map +1 -1
  404. package/dist/factories/clickhouse/resources/keeper.d.ts.map +1 -1
  405. package/dist/factories/clickhouse/resources/keeper.js +2 -0
  406. package/dist/factories/clickhouse/resources/keeper.js.map +1 -1
  407. package/dist/factories/clickhouse/types.d.ts +5 -2
  408. package/dist/factories/clickhouse/types.d.ts.map +1 -1
  409. package/dist/factories/clickhouse/types.js +2 -1
  410. package/dist/factories/clickhouse/types.js.map +1 -1
  411. package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +4 -2
  412. package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts.map +1 -1
  413. package/dist/factories/clickstack/compositions/k8s-telemetry.js +2 -5
  414. package/dist/factories/clickstack/compositions/k8s-telemetry.js.map +1 -1
  415. package/dist/factories/clickstack/types.d.ts +2 -1
  416. package/dist/factories/clickstack/types.d.ts.map +1 -1
  417. package/dist/factories/clickstack/types.js +3 -1
  418. package/dist/factories/clickstack/types.js.map +1 -1
  419. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +2 -1
  420. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts.map +1 -1
  421. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +3 -8
  422. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js.map +1 -1
  423. package/dist/factories/cnpg/resources/backup.d.ts.map +1 -1
  424. package/dist/factories/cnpg/resources/backup.js +2 -0
  425. package/dist/factories/cnpg/resources/backup.js.map +1 -1
  426. package/dist/factories/cnpg/resources/cluster.d.ts.map +1 -1
  427. package/dist/factories/cnpg/resources/cluster.js +2 -1
  428. package/dist/factories/cnpg/resources/cluster.js.map +1 -1
  429. package/dist/factories/cnpg/resources/pooler.d.ts.map +1 -1
  430. package/dist/factories/cnpg/resources/pooler.js +2 -0
  431. package/dist/factories/cnpg/resources/pooler.js.map +1 -1
  432. package/dist/factories/cnpg/resources/scheduled-backup.d.ts.map +1 -1
  433. package/dist/factories/cnpg/resources/scheduled-backup.js +2 -1
  434. package/dist/factories/cnpg/resources/scheduled-backup.js.map +1 -1
  435. package/dist/factories/cnpg/types.d.ts +6 -3
  436. package/dist/factories/cnpg/types.d.ts.map +1 -1
  437. package/dist/factories/cnpg/types.js +2 -1
  438. package/dist/factories/cnpg/types.js.map +1 -1
  439. package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts +2 -0
  440. package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts.map +1 -1
  441. package/dist/factories/dagster/types.d.ts +5 -0
  442. package/dist/factories/dagster/types.d.ts.map +1 -1
  443. package/dist/factories/dagster/types.js +1 -0
  444. package/dist/factories/dagster/types.js.map +1 -1
  445. package/dist/factories/dagster/utils/helm-values-mapper.js +3 -0
  446. package/dist/factories/dagster/utils/helm-values-mapper.js.map +1 -1
  447. package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts.map +1 -1
  448. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js +7 -4
  449. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js.map +1 -1
  450. package/dist/factories/external-dns/resources/dns-endpoint.d.ts.map +1 -1
  451. package/dist/factories/external-dns/resources/dns-endpoint.js +20 -18
  452. package/dist/factories/external-dns/resources/dns-endpoint.js.map +1 -1
  453. package/dist/factories/flux/git-repository.d.ts.map +1 -1
  454. package/dist/factories/flux/git-repository.js +41 -34
  455. package/dist/factories/flux/git-repository.js.map +1 -1
  456. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts +0 -6
  457. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
  458. package/dist/factories/flux/kustomize/readiness-evaluators.js +12 -2
  459. package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
  460. package/dist/factories/harbor/compositions/harbor-installation.d.ts +46 -38
  461. package/dist/factories/harbor/compositions/harbor-installation.d.ts.map +1 -1
  462. package/dist/factories/harbor/compositions/harbor-installation.js +4 -2
  463. package/dist/factories/harbor/compositions/harbor-installation.js.map +1 -1
  464. package/dist/factories/harbor/types.d.ts +13 -11
  465. package/dist/factories/harbor/types.d.ts.map +1 -1
  466. package/dist/factories/harbor/types.js +11 -9
  467. package/dist/factories/harbor/types.js.map +1 -1
  468. package/dist/factories/helm/helm-repository.d.ts.map +1 -1
  469. package/dist/factories/helm/helm-repository.js +14 -1
  470. package/dist/factories/helm/helm-repository.js.map +1 -1
  471. package/dist/factories/helm/index.d.ts +2 -0
  472. package/dist/factories/helm/index.d.ts.map +1 -1
  473. package/dist/factories/helm/index.js +1 -0
  474. package/dist/factories/helm/index.js.map +1 -1
  475. package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
  476. package/dist/factories/helm/readiness-evaluators.js +46 -7
  477. package/dist/factories/helm/readiness-evaluators.js.map +1 -1
  478. package/dist/factories/helm/status.d.ts +18 -0
  479. package/dist/factories/helm/status.d.ts.map +1 -0
  480. package/dist/factories/helm/status.js +38 -0
  481. package/dist/factories/helm/status.js.map +1 -0
  482. package/dist/factories/index.d.ts +2 -2
  483. package/dist/factories/index.d.ts.map +1 -1
  484. package/dist/factories/index.js +4 -4
  485. package/dist/factories/index.js.map +1 -1
  486. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -1
  487. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -1
  488. package/dist/factories/inngest/compositions/inngest-bootstrap.js +2 -4
  489. package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -1
  490. package/dist/factories/inngest/resources/helm.d.ts.map +1 -1
  491. package/dist/factories/inngest/resources/helm.js +12 -3
  492. package/dist/factories/inngest/resources/helm.js.map +1 -1
  493. package/dist/factories/inngest/types.d.ts +3 -7
  494. package/dist/factories/inngest/types.d.ts.map +1 -1
  495. package/dist/factories/inngest/types.js +1 -1
  496. package/dist/factories/inngest/types.js.map +1 -1
  497. package/dist/factories/kro/kro-crd.d.ts.map +1 -1
  498. package/dist/factories/kro/kro-crd.js +32 -33
  499. package/dist/factories/kro/kro-crd.js.map +1 -1
  500. package/dist/factories/kro/kro-custom-resource.d.ts.map +1 -1
  501. package/dist/factories/kro/kro-custom-resource.js +91 -85
  502. package/dist/factories/kro/kro-custom-resource.js.map +1 -1
  503. package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
  504. package/dist/factories/kro/resource-graph-definition.js +127 -117
  505. package/dist/factories/kro/resource-graph-definition.js.map +1 -1
  506. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.d.ts.map +1 -1
  507. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js +27 -26
  508. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js.map +1 -1
  509. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -1
  510. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js +22 -22
  511. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js.map +1 -1
  512. package/dist/factories/kubernetes/certificates/certificate-signing-request.d.ts.map +1 -1
  513. package/dist/factories/kubernetes/certificates/certificate-signing-request.js +41 -39
  514. package/dist/factories/kubernetes/certificates/certificate-signing-request.js.map +1 -1
  515. package/dist/factories/kubernetes/core/component-status.d.ts.map +1 -1
  516. package/dist/factories/kubernetes/core/component-status.js +14 -16
  517. package/dist/factories/kubernetes/core/component-status.js.map +1 -1
  518. package/dist/factories/kubernetes/core/namespace.d.ts.map +1 -1
  519. package/dist/factories/kubernetes/core/namespace.js +31 -38
  520. package/dist/factories/kubernetes/core/namespace.js.map +1 -1
  521. package/dist/factories/kubernetes/core/node.d.ts.map +1 -1
  522. package/dist/factories/kubernetes/core/node.js +17 -25
  523. package/dist/factories/kubernetes/core/node.js.map +1 -1
  524. package/dist/factories/kubernetes/core/pod.d.ts.map +1 -1
  525. package/dist/factories/kubernetes/core/pod.js +31 -35
  526. package/dist/factories/kubernetes/core/pod.js.map +1 -1
  527. package/dist/factories/kubernetes/extensions/custom-resource-definition.d.ts.map +1 -1
  528. package/dist/factories/kubernetes/extensions/custom-resource-definition.js +34 -36
  529. package/dist/factories/kubernetes/extensions/custom-resource-definition.js.map +1 -1
  530. package/dist/factories/kubernetes/extensions/custom-resource.d.ts.map +1 -1
  531. package/dist/factories/kubernetes/extensions/custom-resource.js +2 -4
  532. package/dist/factories/kubernetes/extensions/custom-resource.js.map +1 -1
  533. package/dist/factories/kubernetes/networking/endpoints.d.ts.map +1 -1
  534. package/dist/factories/kubernetes/networking/endpoints.js +29 -30
  535. package/dist/factories/kubernetes/networking/endpoints.js.map +1 -1
  536. package/dist/factories/kubernetes/networking/ingress.d.ts.map +1 -1
  537. package/dist/factories/kubernetes/networking/ingress.js +46 -57
  538. package/dist/factories/kubernetes/networking/ingress.js.map +1 -1
  539. package/dist/factories/kubernetes/networking/network-policy.d.ts +9 -0
  540. package/dist/factories/kubernetes/networking/network-policy.d.ts.map +1 -1
  541. package/dist/factories/kubernetes/networking/network-policy.js +51 -1
  542. package/dist/factories/kubernetes/networking/network-policy.js.map +1 -1
  543. package/dist/factories/kubernetes/networking/service.d.ts.map +1 -1
  544. package/dist/factories/kubernetes/networking/service.js +48 -40
  545. package/dist/factories/kubernetes/networking/service.js.map +1 -1
  546. package/dist/factories/kubernetes/policy/pod-disruption-budget.d.ts.map +1 -1
  547. package/dist/factories/kubernetes/policy/pod-disruption-budget.js +40 -46
  548. package/dist/factories/kubernetes/policy/pod-disruption-budget.js.map +1 -1
  549. package/dist/factories/kubernetes/policy/resource-quota.d.ts.map +1 -1
  550. package/dist/factories/kubernetes/policy/resource-quota.js +30 -34
  551. package/dist/factories/kubernetes/policy/resource-quota.js.map +1 -1
  552. package/dist/factories/kubernetes/storage/persistent-volume-claim.d.ts.map +1 -1
  553. package/dist/factories/kubernetes/storage/persistent-volume-claim.js +22 -21
  554. package/dist/factories/kubernetes/storage/persistent-volume-claim.js.map +1 -1
  555. package/dist/factories/kubernetes/storage/persistent-volume.d.ts.map +1 -1
  556. package/dist/factories/kubernetes/storage/persistent-volume.js +32 -38
  557. package/dist/factories/kubernetes/storage/persistent-volume.js.map +1 -1
  558. package/dist/factories/kubernetes/storage/volume-attachment.d.ts.map +1 -1
  559. package/dist/factories/kubernetes/storage/volume-attachment.js +12 -11
  560. package/dist/factories/kubernetes/storage/volume-attachment.js.map +1 -1
  561. package/dist/factories/kubernetes/workloads/cron-job.d.ts.map +1 -1
  562. package/dist/factories/kubernetes/workloads/cron-job.js +39 -34
  563. package/dist/factories/kubernetes/workloads/cron-job.js.map +1 -1
  564. package/dist/factories/kubernetes/workloads/daemon-set.d.ts.map +1 -1
  565. package/dist/factories/kubernetes/workloads/daemon-set.js +24 -23
  566. package/dist/factories/kubernetes/workloads/daemon-set.js.map +1 -1
  567. package/dist/factories/kubernetes/workloads/deployment.d.ts.map +1 -1
  568. package/dist/factories/kubernetes/workloads/deployment.js +45 -35
  569. package/dist/factories/kubernetes/workloads/deployment.js.map +1 -1
  570. package/dist/factories/kubernetes/workloads/job.d.ts.map +1 -1
  571. package/dist/factories/kubernetes/workloads/job.js +87 -77
  572. package/dist/factories/kubernetes/workloads/job.js.map +1 -1
  573. package/dist/factories/kubernetes/workloads/replica-set.d.ts.map +1 -1
  574. package/dist/factories/kubernetes/workloads/replica-set.js +24 -24
  575. package/dist/factories/kubernetes/workloads/replica-set.js.map +1 -1
  576. package/dist/factories/kubernetes/workloads/replication-controller.d.ts.map +1 -1
  577. package/dist/factories/kubernetes/workloads/replication-controller.js +37 -26
  578. package/dist/factories/kubernetes/workloads/replication-controller.js.map +1 -1
  579. package/dist/factories/kubernetes/workloads/stateful-set.d.ts.map +1 -1
  580. package/dist/factories/kubernetes/workloads/stateful-set.js +69 -55
  581. package/dist/factories/kubernetes/workloads/stateful-set.js.map +1 -1
  582. package/dist/factories/kubernetes/yaml/yaml-artifact-applier.d.ts +15 -0
  583. package/dist/factories/kubernetes/yaml/yaml-artifact-applier.d.ts.map +1 -0
  584. package/dist/factories/kubernetes/yaml/yaml-artifact-applier.js +69 -0
  585. package/dist/factories/kubernetes/yaml/yaml-artifact-applier.js.map +1 -0
  586. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts +2 -1
  587. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
  588. package/dist/factories/kubernetes/yaml/yaml-directory.js +3 -34
  589. package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
  590. package/dist/factories/kubernetes/yaml/yaml-file.d.ts +13 -91
  591. package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
  592. package/dist/factories/kubernetes/yaml/yaml-file.js +21 -311
  593. package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
  594. package/dist/factories/nats/compositions/nats-bootstrap.d.ts +2 -2
  595. package/dist/factories/nats/compositions/nats-bootstrap.d.ts.map +1 -1
  596. package/dist/factories/nats/compositions/nats-bootstrap.js +2 -3
  597. package/dist/factories/nats/compositions/nats-bootstrap.js.map +1 -1
  598. package/dist/factories/nats/resources/jetstream.d.ts.map +1 -1
  599. package/dist/factories/nats/resources/jetstream.js +2 -0
  600. package/dist/factories/nats/resources/jetstream.js.map +1 -1
  601. package/dist/factories/nats/types.d.ts +3 -3
  602. package/dist/factories/nats/types.js +1 -1
  603. package/dist/factories/nats/types.js.map +1 -1
  604. package/dist/factories/ory/compositions/ory-platform-stack.d.ts.map +1 -1
  605. package/dist/factories/ory/compositions/ory-platform-stack.js +35 -9
  606. package/dist/factories/ory/compositions/ory-platform-stack.js.map +1 -1
  607. package/dist/factories/ory/resources/oathkeeper-rule.d.ts.map +1 -1
  608. package/dist/factories/ory/resources/oathkeeper-rule.js +11 -8
  609. package/dist/factories/ory/resources/oathkeeper-rule.js.map +1 -1
  610. package/dist/factories/ory/resources/oauth2-client.d.ts.map +1 -1
  611. package/dist/factories/ory/resources/oauth2-client.js +12 -9
  612. package/dist/factories/ory/resources/oauth2-client.js.map +1 -1
  613. package/dist/factories/ory/types.d.ts +3 -0
  614. package/dist/factories/ory/types.d.ts.map +1 -1
  615. package/dist/factories/ory/types.js +1 -0
  616. package/dist/factories/ory/types.js.map +1 -1
  617. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +2 -2
  618. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -1
  619. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +2 -3
  620. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -1
  621. package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -1
  622. package/dist/factories/rook/resources/ceph-object-store-user.js +2 -0
  623. package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -1
  624. package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -1
  625. package/dist/factories/rook/resources/ceph-object-store.js +2 -0
  626. package/dist/factories/rook/resources/ceph-object-store.js.map +1 -1
  627. package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -1
  628. package/dist/factories/rook/resources/object-bucket-claim.js +2 -0
  629. package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -1
  630. package/dist/factories/rook/types.d.ts +1 -1
  631. package/dist/factories/rook/types.js +1 -1
  632. package/dist/factories/rook/types.js.map +1 -1
  633. package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
  634. package/dist/factories/searxng/compositions/searxng-bootstrap.js +2 -2
  635. package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
  636. package/dist/factories/searxng/resources/searxng.d.ts.map +1 -1
  637. package/dist/factories/searxng/resources/searxng.js +2 -0
  638. package/dist/factories/searxng/resources/searxng.js.map +1 -1
  639. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +2 -2
  640. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
  641. package/dist/factories/valkey/compositions/valkey-bootstrap.js +4 -9
  642. package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
  643. package/dist/factories/valkey/resources/valkey.d.ts.map +1 -1
  644. package/dist/factories/valkey/resources/valkey.js +2 -1
  645. package/dist/factories/valkey/resources/valkey.js.map +1 -1
  646. package/dist/factories/valkey/types.d.ts +3 -7
  647. package/dist/factories/valkey/types.d.ts.map +1 -1
  648. package/dist/factories/valkey/types.js +1 -1
  649. package/dist/factories/valkey/types.js.map +1 -1
  650. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +3 -2
  651. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
  652. package/dist/factories/webapp/compositions/web-app-with-processing.js +7 -6
  653. package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
  654. package/dist/factories/webapp/types.d.ts +1 -0
  655. package/dist/factories/webapp/types.d.ts.map +1 -1
  656. package/dist/factories/webapp/types.js +2 -0
  657. package/dist/factories/webapp/types.js.map +1 -1
  658. package/dist/index.d.ts +2 -1
  659. package/dist/index.d.ts.map +1 -1
  660. package/dist/index.js +1 -1
  661. package/dist/index.js.map +1 -1
  662. package/dist/shared/brands.d.ts +7 -0
  663. package/dist/shared/brands.d.ts.map +1 -1
  664. package/dist/shared/brands.js +7 -0
  665. package/dist/shared/brands.js.map +1 -1
  666. package/dist/utils/index.d.ts +3 -3
  667. package/dist/utils/index.d.ts.map +1 -1
  668. package/dist/utils/index.js +3 -3
  669. package/dist/utils/index.js.map +1 -1
  670. package/package.json +20 -5
  671. package/dist/factories/kubernetes/yaml/conflict-handler.d.ts +0 -23
  672. package/dist/factories/kubernetes/yaml/conflict-handler.d.ts.map +0 -1
  673. package/dist/factories/kubernetes/yaml/conflict-handler.js +0 -83
  674. package/dist/factories/kubernetes/yaml/conflict-handler.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ import { TypeKroError } from '../errors.js';
2
+ import type { DeploymentResourceGraph } from '../types/deployment.js';
3
+ import type { KubernetesResource, ReadinessEvaluator } from '../types/kubernetes.js';
4
+ import type { DirectKubernetesArtifactPlan, DirectKubernetesArtifactResource } from './artifacts.js';
5
+ import { type PlanMaterializationBindings } from './materialization.js';
6
+ export interface DirectArtifactRuntimeAdapterOptions extends PlanMaterializationBindings {
7
+ readonly instanceName: string;
8
+ /** Compatibility name used by the established direct deployment graph. */
9
+ readonly graphName?: string;
10
+ /**
11
+ * Runtime graph-node aliases keyed by canonical artifact id. These preserve
12
+ * existing deployment-state identities while artifact ids remain the
13
+ * host-independent semantic authority.
14
+ */
15
+ readonly graphIdsByArtifactId?: Readonly<Record<string, string>>;
16
+ /** Include compiler-generated prerequisite/singleton operations in this graph. */
17
+ readonly includeSupportingArtifacts?: boolean;
18
+ /**
19
+ * Optional same-process resources keyed by semantic node id. Their function-valued
20
+ * readiness metadata is copied while factories migrate to serializable strategies.
21
+ */
22
+ readonly runtimeResources?: Readonly<Record<string, KubernetesResource>>;
23
+ /** Named runtime evaluator bindings required by non-portable readiness strategies. */
24
+ readonly readinessEvaluators?: Readonly<Record<string, ReadinessEvaluator<unknown>>>;
25
+ /** Resolve a registered portable readiness strategy by its stable identity. */
26
+ readonly resolveReadinessStrategy?: (strategy: Extract<NonNullable<DirectKubernetesArtifactResource['readiness']['strategy']>, {
27
+ kind: 'registered';
28
+ }>) => ReadinessEvaluator<unknown> | undefined;
29
+ }
30
+ export declare class DirectArtifactRuntimeAdapterError extends TypeKroError {
31
+ constructor(message: string, details?: Record<string, unknown>);
32
+ }
33
+ export declare function materializeDirectArtifactManifest(artifact: DirectKubernetesArtifactResource, options: DirectArtifactRuntimeAdapterOptions, deployedId: string, logicalId?: string): KubernetesResource;
34
+ /**
35
+ * Adapt a host-independent direct artifact plan into the graph consumed by the
36
+ * established direct deployment engine. No Kubernetes calls occur here.
37
+ */
38
+ export declare function directArtifactPlanToResourceGraph(plan: DirectKubernetesArtifactPlan, options: DirectArtifactRuntimeAdapterOptions): DeploymentResourceGraph;
39
+ //# sourceMappingURL=direct-runtime-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direct-runtime-adapter.d.ts","sourceRoot":"","sources":["../../../src/core/planning/direct-runtime-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAO5C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAGV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EACV,4BAA4B,EAC5B,gCAAgC,EACjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,mCAAoC,SAAQ,2BAA2B;IACtF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,kFAAkF;IAClF,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACzE,sFAAsF;IACtF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrF,+EAA+E;IAC/E,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAClC,QAAQ,EAAE,OAAO,CACf,WAAW,CAAC,gCAAgC,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,EACtE;QAAE,IAAI,EAAE,YAAY,CAAA;KAAE,CACvB,KACE,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;CAC9C;AAED,qBAAa,iCAAkC,SAAQ,YAAY;gBACrD,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;CAInE;AA8ED,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,gCAAgC,EAC1C,OAAO,EAAE,mCAAmC,EAC5C,UAAU,EAAE,MAAM,EAClB,SAAS,SAAuC,GAC/C,kBAAkB,CA4GpB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,4BAA4B,EAClC,OAAO,EAAE,mCAAmC,GAC3C,uBAAuB,CAqKzB"}
@@ -0,0 +1,238 @@
1
+ import { toCamelCase } from '../../utils/string.js';
2
+ import { DependencyGraph } from '../dependencies/graph.js';
3
+ import { TypeKroError } from '../errors.js';
4
+ import { copyResourceMetadata, setMetadataField, setReadinessEvaluator, setResourceId, } from '../metadata/index.js';
5
+ import { evaluatePlanActivation, materializePlanValue, } from './materialization.js';
6
+ export class DirectArtifactRuntimeAdapterError extends TypeKroError {
7
+ constructor(message, details = {}) {
8
+ super(message, 'DIRECT_ARTIFACT_ADAPTER_FAILED', details);
9
+ this.name = 'DirectArtifactRuntimeAdapterError';
10
+ }
11
+ }
12
+ function isAppliedArtifact(artifact) {
13
+ return (artifact.role === 'application-resource' ||
14
+ artifact.role === 'singleton-owner' ||
15
+ artifact.role === 'direct-prerequisite');
16
+ }
17
+ function isArtifactActive(artifact, options) {
18
+ return artifact.readiness.activation.every((condition, index) => {
19
+ const active = evaluatePlanActivation(condition, options, `$.resources.${artifact.id}.readiness.activation[${index}]`);
20
+ return active !== false;
21
+ });
22
+ }
23
+ function expandArtifactBindings(artifact, options) {
24
+ let expanded = [{ bindings: options, coordinates: {} }];
25
+ for (const [dimensionIndex, dimension] of (artifact.iteration ?? []).entries()) {
26
+ expanded = expanded.flatMap((state) => {
27
+ const collection = materializePlanValue(dimension.collection, state.bindings, `$.resources.${artifact.id}.iteration[${dimensionIndex}].collection`);
28
+ if (!Array.isArray(collection)) {
29
+ throw new DirectArtifactRuntimeAdapterError(`Iteration ${dimension.variable} on ${artifact.id} did not materialize to an array.`, {
30
+ artifactId: artifact.id,
31
+ dimension: dimension.variable,
32
+ resultType: collection === null ? 'null' : typeof collection,
33
+ });
34
+ }
35
+ return collection.map((item, itemIndex) => ({
36
+ bindings: {
37
+ ...state.bindings,
38
+ locals: { ...(state.bindings.locals ?? {}), [dimension.variable]: item },
39
+ iterationItems: {
40
+ ...(state.bindings.iterationItems ?? {}),
41
+ [dimension.itemPath]: item,
42
+ },
43
+ },
44
+ coordinates: { ...state.coordinates, [dimension.itemPath]: itemIndex },
45
+ }));
46
+ });
47
+ }
48
+ return expanded;
49
+ }
50
+ export function materializeDirectArtifactManifest(artifact, options, deployedId, logicalId = artifact.sourceNodeId ?? artifact.id) {
51
+ if (!artifact.desired) {
52
+ throw new DirectArtifactRuntimeAdapterError(`Applied artifact ${artifact.id} has no desired Kubernetes manifest.`, { artifactId: artifact.id, role: artifact.role });
53
+ }
54
+ const value = materializePlanValue(artifact.desired, options, `$.resources.${artifact.id}.desired`);
55
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
56
+ throw new DirectArtifactRuntimeAdapterError(`Applied artifact ${artifact.id} did not materialize to a Kubernetes object.`, { artifactId: artifact.id });
57
+ }
58
+ const manifest = { ...value, id: deployedId };
59
+ // Template overrides compensate for JavaScript branches that must remain
60
+ // symbolic in a KRO template. Direct planning executes with a concrete spec,
61
+ // so `desired` already contains the selected branch and is authoritative.
62
+ if (typeof manifest.apiVersion !== 'string' ||
63
+ typeof manifest.kind !== 'string' ||
64
+ !manifest.metadata ||
65
+ typeof manifest.metadata.name !== 'string') {
66
+ throw new DirectArtifactRuntimeAdapterError(`Applied artifact ${artifact.id} is missing Kubernetes identity fields.`, { artifactId: artifact.id });
67
+ }
68
+ const runtimeResource = options.runtimeResources?.[artifact.sourceNodeId ?? artifact.id];
69
+ if (runtimeResource) {
70
+ copyResourceMetadata(runtimeResource, manifest, {
71
+ exclude: ['readinessEvaluator', 'includeWhen', 'readyWhen', 'forEach', 'templateOverrides'],
72
+ });
73
+ }
74
+ setResourceId(manifest, logicalId);
75
+ if (artifact.identity?.scope)
76
+ setMetadataField(manifest, 'scope', artifact.identity.scope);
77
+ if (isAppliedArtifact(artifact))
78
+ setMetadataField(manifest, 'applyPolicy', artifact.apply);
79
+ const readinessStrategy = artifact.readiness.strategy;
80
+ if (readinessStrategy?.kind === 'runtime-binding') {
81
+ const evaluator = options.readinessEvaluators?.[readinessStrategy.binding];
82
+ if (!evaluator) {
83
+ throw new DirectArtifactRuntimeAdapterError(`Readiness binding ${readinessStrategy.binding} is not materialized.`, { artifactId: artifact.id, binding: readinessStrategy.binding });
84
+ }
85
+ setReadinessEvaluator(manifest, evaluator);
86
+ }
87
+ else if (readinessStrategy?.kind === 'registered') {
88
+ const evaluator = options.resolveReadinessStrategy?.(readinessStrategy);
89
+ if (!evaluator) {
90
+ throw new DirectArtifactRuntimeAdapterError(`Registered readiness strategy ${readinessStrategy.id}@${readinessStrategy.revision} is unavailable.`, { artifactId: artifact.id, strategy: readinessStrategy.id });
91
+ }
92
+ setReadinessEvaluator(manifest, evaluator);
93
+ }
94
+ if (artifact.readiness.activation.length > 0) {
95
+ const runtimeActivation = artifact.readiness.activation.flatMap((condition, index) => {
96
+ const active = evaluatePlanActivation(condition, options, `$.resources.${artifact.id}.readiness.activation[${index}]`);
97
+ return active === undefined
98
+ ? [
99
+ materializePlanValue(condition, options, `$.resources.${artifact.id}.readiness.activation[${index}]`),
100
+ ]
101
+ : [];
102
+ });
103
+ if (runtimeActivation.length > 0) {
104
+ setMetadataField(manifest, 'includeWhen', runtimeActivation);
105
+ }
106
+ }
107
+ if (artifact.readiness.readyWhen.length > 0) {
108
+ setMetadataField(manifest, 'readyWhen', artifact.readiness.readyWhen.map((condition, index) => materializePlanValue(condition, options, `$.resources.${artifact.id}.readiness.readyWhen[${index}]`)));
109
+ }
110
+ if (artifact.lifecycle.instancing.kind === 'per-scope') {
111
+ const scopeKey = materializePlanValue(artifact.lifecycle.instancing.key, options, `$.resources.${artifact.id}.lifecycle.instancing.key`);
112
+ if (typeof scopeKey === 'string' && scopeKey.length > 0) {
113
+ setMetadataField(manifest, 'scopes', scopeKey.split('|').filter(Boolean));
114
+ }
115
+ }
116
+ return manifest;
117
+ }
118
+ /**
119
+ * Adapt a host-independent direct artifact plan into the graph consumed by the
120
+ * established direct deployment engine. No Kubernetes calls occur here.
121
+ */
122
+ export function directArtifactPlanToResourceGraph(plan, options) {
123
+ if (plan.target !== 'direct') {
124
+ throw new DirectArtifactRuntimeAdapterError(`Expected a direct artifact plan.`, {
125
+ target: Reflect.get(plan, 'target'),
126
+ });
127
+ }
128
+ if (plan.diagnostics.some((diagnostic) => diagnostic.severity === 'error')) {
129
+ throw new DirectArtifactRuntimeAdapterError(`Direct artifact plan contains compilation errors.`, { diagnostics: plan.diagnostics });
130
+ }
131
+ const dependencyGraph = new DependencyGraph();
132
+ const resources = [];
133
+ const externalReferences = [];
134
+ const instancesByArtifactId = new Map();
135
+ const includedArtifacts = plan.resources.filter((artifact) => (isAppliedArtifact(artifact) || artifact.role === 'external-reference') &&
136
+ (options.includeSupportingArtifacts !== false ||
137
+ artifact.role === 'application-resource' ||
138
+ artifact.role === 'external-reference'));
139
+ for (const artifact of includedArtifacts) {
140
+ const baseLogicalId = artifact.sourceNodeId ?? artifact.id;
141
+ const expanded = expandArtifactBindings(artifact, options)
142
+ .filter((state) => isArtifactActive(artifact, state.bindings))
143
+ .map((state, ordinal) => {
144
+ const suffix = ordinal === 0 ? '' : `-${ordinal}`;
145
+ const logicalId = `${baseLogicalId}${suffix}`;
146
+ const configuredGraphId = ordinal === 0 ? options.graphIdsByArtifactId?.[artifact.id] : undefined;
147
+ const graphId = configuredGraphId ??
148
+ toCamelCase(`${options.instanceName}-${artifact.role === 'external-reference' ? 'external' : 'resource'}-${artifact.id}${suffix}`);
149
+ return { ...state, artifact, graphId, logicalId };
150
+ });
151
+ if (instancesByArtifactId.has(artifact.id)) {
152
+ throw new DirectArtifactRuntimeAdapterError(`Duplicate artifact id ${artifact.id}.`, {
153
+ artifactId: artifact.id,
154
+ });
155
+ }
156
+ instancesByArtifactId.set(artifact.id, expanded);
157
+ }
158
+ const matchingProducer = (consumer, producers) => {
159
+ if (producers.length === 1)
160
+ return producers[0];
161
+ const matches = producers.filter((producer) => {
162
+ const commonPaths = Object.keys(producer.coordinates).filter((path) => Object.hasOwn(consumer.coordinates, path));
163
+ return (commonPaths.length > 0 &&
164
+ commonPaths.every((path) => producer.coordinates[path] === consumer.coordinates[path]));
165
+ });
166
+ return matches.length === 1 ? matches[0] : undefined;
167
+ };
168
+ const bindingsFor = (instance) => ({
169
+ ...instance.bindings,
170
+ resourceIds: Object.fromEntries([...instancesByArtifactId.entries()].flatMap(([artifactId, producers]) => {
171
+ const producer = matchingProducer(instance, producers);
172
+ return producer ? [[artifactId, producer.logicalId]] : [];
173
+ })),
174
+ });
175
+ for (const instance of [...instancesByArtifactId.values()].flat()) {
176
+ const { artifact, graphId, logicalId } = instance;
177
+ if (!isAppliedArtifact(artifact))
178
+ continue;
179
+ const manifest = materializeDirectArtifactManifest(artifact, bindingsFor(instance), graphId, logicalId);
180
+ const deployable = manifest;
181
+ dependencyGraph.addNode(graphId, deployable);
182
+ resources.push({ id: graphId, manifest: deployable });
183
+ }
184
+ for (const instance of [...instancesByArtifactId.values()].flat()) {
185
+ const { artifact, graphId, logicalId } = instance;
186
+ if (artifact.role !== 'external-reference')
187
+ continue;
188
+ const manifest = materializeDirectArtifactManifest(artifact, bindingsFor(instance), graphId, logicalId);
189
+ externalReferences.push({
190
+ id: logicalId,
191
+ manifest: manifest,
192
+ });
193
+ }
194
+ const pairedInstances = (prerequisites, dependents) => {
195
+ const pairs = [];
196
+ for (const dependent of dependents) {
197
+ const commonPaths = new Set(prerequisites.flatMap((prerequisite) => Object.keys(prerequisite.coordinates).filter((path) => Object.hasOwn(dependent.coordinates, path))));
198
+ const matches = commonPaths.size === 0
199
+ ? prerequisites
200
+ : prerequisites.filter((prerequisite) => [...commonPaths].every((path) => prerequisite.coordinates[path] === dependent.coordinates[path]));
201
+ for (const prerequisite of matches)
202
+ pairs.push([prerequisite, dependent]);
203
+ }
204
+ return pairs;
205
+ };
206
+ for (const edge of plan.edges) {
207
+ let prerequisiteArtifactId;
208
+ let dependentArtifactId;
209
+ if (edge.kind === 'output') {
210
+ prerequisiteArtifactId = edge.producer;
211
+ dependentArtifactId = edge.consumer;
212
+ }
213
+ else if (edge.kind === 'existence' || edge.kind === 'ready') {
214
+ prerequisiteArtifactId = edge.prerequisite;
215
+ dependentArtifactId = edge.dependent;
216
+ }
217
+ else if (edge.kind === 'ownership') {
218
+ prerequisiteArtifactId = edge.owner;
219
+ dependentArtifactId = edge.child;
220
+ }
221
+ if (!prerequisiteArtifactId || !dependentArtifactId)
222
+ continue;
223
+ const prerequisites = (instancesByArtifactId.get(prerequisiteArtifactId) ?? []).filter((instance) => isAppliedArtifact(instance.artifact));
224
+ const dependents = (instancesByArtifactId.get(dependentArtifactId) ?? []).filter((instance) => isAppliedArtifact(instance.artifact));
225
+ for (const [prerequisite, dependent] of pairedInstances(prerequisites, dependents)) {
226
+ if (prerequisite.graphId !== dependent.graphId) {
227
+ dependencyGraph.addEdge(dependent.graphId, prerequisite.graphId);
228
+ }
229
+ }
230
+ }
231
+ return {
232
+ name: options.graphName ?? `${options.instanceName}-direct-artifacts`,
233
+ resources,
234
+ ...(externalReferences.length > 0 ? { externalReferences } : {}),
235
+ dependencyGraph,
236
+ };
237
+ }
238
+ //# sourceMappingURL=direct-runtime-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direct-runtime-adapter.js","sourceRoot":"","sources":["../../../src/core/planning/direct-runtime-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { TypeKroError } from '../errors.js';
2
+ import { type DirectArtifactExecutionRecord, type DirectKubernetesArtifactPlan } from './artifacts.js';
3
+ import { type PlanMaterializationBindings } from './materialization.js';
4
+ export interface DirectArtifactExecutionMaterialization {
5
+ readonly record: DirectArtifactExecutionRecord;
6
+ /** Ephemeral values keyed by the binding identities stored in record. */
7
+ readonly sensitiveBindings: Readonly<Record<string, unknown>>;
8
+ }
9
+ export declare class DirectArtifactExecutionRecordError extends TypeKroError {
10
+ constructor(message: string, path?: string, details?: Record<string, unknown>);
11
+ }
12
+ /** Select and concretize one direct operation for a fan-out execution host. */
13
+ export declare function createDirectArtifactExecutionRecord(plan: DirectKubernetesArtifactPlan, artifactId: string, bindings?: PlanMaterializationBindings): DirectArtifactExecutionRecord;
14
+ /**
15
+ * Build a durable execution record plus its deliberately non-serialized secret envelope.
16
+ * Host adapters must map the envelope to their native sensitive-input mechanism.
17
+ */
18
+ export declare function createDirectArtifactExecutionMaterialization(plan: DirectKubernetesArtifactPlan, artifactId: string, bindings?: PlanMaterializationBindings): DirectArtifactExecutionMaterialization;
19
+ export declare function encodeDirectArtifactExecutionRecord(record: DirectArtifactExecutionRecord): string;
20
+ export declare function decodeDirectArtifactExecutionRecord(encoded: string): DirectArtifactExecutionRecord;
21
+ //# sourceMappingURL=execution-record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-record.d.ts","sourceRoot":"","sources":["../../../src/core/planning/execution-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAEL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EAElC,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAwB,KAAK,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAM9F,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC/C,yEAAyE;IACzE,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC/D;AAED,qBAAa,kCAAmC,SAAQ,YAAY;gBACtD,OAAO,EAAE,MAAM,EAAE,IAAI,SAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;CAI/E;AA4UD,+EAA+E;AAC/E,wBAAgB,mCAAmC,CACjD,IAAI,EAAE,4BAA4B,EAClC,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,2BAAgC,GACzC,6BAA6B,CAE/B;AAED;;;GAGG;AACH,wBAAgB,4CAA4C,CAC1D,IAAI,EAAE,4BAA4B,EAClC,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,2BAAgC,GACzC,sCAAsC,CAsBxC;AAED,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,6BAA6B,GAAG,MAAM,CAEjG;AAED,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,MAAM,GACd,6BAA6B,CAuE/B"}
@@ -0,0 +1,304 @@
1
+ import { TypeKroError } from '../errors.js';
2
+ import { decodeDirectArtifactResource } from './artifact-codec.js';
3
+ import { DIRECT_ARTIFACT_EXECUTION_RECORD_VERSION, } from './artifacts.js';
4
+ import { canonicalDigest, canonicalStringify } from './canonical.js';
5
+ import { materializePlanValue } from './materialization.js';
6
+ import { lowerPlanValue } from './values.js';
7
+ export class DirectArtifactExecutionRecordError extends TypeKroError {
8
+ constructor(message, path = '$', details = {}) {
9
+ super(message, 'DIRECT_ARTIFACT_EXECUTION_RECORD_INVALID', { path, ...details });
10
+ this.name = 'DirectArtifactExecutionRecordError';
11
+ }
12
+ }
13
+ function concretePlanValue(value, bindings, path, sensitiveBindings) {
14
+ if (value.kind === 'array') {
15
+ return {
16
+ ...value,
17
+ items: value.items.map((item, index) => concretePlanValue(item, bindings, `${path}[${index}]`, sensitiveBindings)),
18
+ };
19
+ }
20
+ if (value.kind === 'object') {
21
+ return {
22
+ ...value,
23
+ entries: value.entries.map((entry) => ({
24
+ ...entry,
25
+ value: concretePlanValue(entry.value, bindings, `${path}.${entry.key}`, sensitiveBindings),
26
+ })),
27
+ };
28
+ }
29
+ // Durable execution records preserve tainted symbolic structure. Resolving
30
+ // this wrapper here would place secret bytes in Alchemy state and in the
31
+ // execution digest. The host must supply the value through an explicit
32
+ // sensitive/spec binding when the operation is materialized.
33
+ if (value.kind === 'sensitive-value') {
34
+ return {
35
+ kind: 'sensitive-value',
36
+ value: concreteSensitiveSource(value.value, bindings, `${path}.value`, sensitiveBindings),
37
+ };
38
+ }
39
+ if (value.kind === 'sensitive-binding') {
40
+ if (Object.hasOwn(bindings.sensitive ?? {}, value.binding)) {
41
+ sensitiveBindings[value.binding] = bindings.sensitive?.[value.binding];
42
+ }
43
+ return value;
44
+ }
45
+ // Cross-provider outputs are resolved by the execution host. Keep them symbolic in the
46
+ // durable record when the caller is only constructing Alchemy declarations.
47
+ if (value.kind === 'artifact-output' &&
48
+ !Object.hasOwn(bindings.artifactOutputs?.[value.requirementId] ?? {}, value.output)) {
49
+ return value;
50
+ }
51
+ const materialized = materializePlanValue(value, bindings, path);
52
+ const lowered = lowerPlanValue(materialized);
53
+ const errors = lowered.diagnostics.filter((diagnostic) => diagnostic.severity === 'error');
54
+ if (errors.length > 0) {
55
+ throw new DirectArtifactExecutionRecordError(`Materialized artifact value could not be lowered canonically.`, path, { diagnostics: errors });
56
+ }
57
+ return lowered.value;
58
+ }
59
+ function concreteSensitiveSource(value, bindings, path, sensitiveBindings) {
60
+ switch (value.kind) {
61
+ case 'array':
62
+ return {
63
+ ...value,
64
+ items: value.items.map((item, index) => concreteSensitiveSource(item, bindings, `${path}[${index}]`, sensitiveBindings)),
65
+ };
66
+ case 'object':
67
+ return {
68
+ ...value,
69
+ entries: value.entries.map((entry) => ({
70
+ ...entry,
71
+ value: concreteSensitiveSource(entry.value, bindings, `${path}.${entry.key}`, sensitiveBindings),
72
+ })),
73
+ };
74
+ case 'sensitive-value':
75
+ return {
76
+ ...value,
77
+ value: concreteSensitiveSource(value.value, bindings, `${path}.value`, sensitiveBindings),
78
+ };
79
+ case 'reference':
80
+ if (value.source === 'resource' || bindings.spec === undefined)
81
+ return value;
82
+ break;
83
+ case 'expression':
84
+ if (value.expression.references.some((reference) => reference.source === 'resource') ||
85
+ (value.expression.references.length > 0 && bindings.spec === undefined)) {
86
+ return value;
87
+ }
88
+ break;
89
+ case 'template':
90
+ if (value.segments.some((segment) => (segment.kind === 'reference' && segment.source === 'resource') ||
91
+ (segment.kind === 'expression' &&
92
+ segment.expression.references.some((reference) => reference.source === 'resource'))) ||
93
+ (value.segments.some((segment) => (segment.kind === 'reference' && segment.source === 'spec') ||
94
+ (segment.kind === 'expression' &&
95
+ segment.expression.references.some((reference) => reference.source === 'spec'))) &&
96
+ bindings.spec === undefined)) {
97
+ return value;
98
+ }
99
+ break;
100
+ case 'sensitive-binding':
101
+ if (!Object.hasOwn(bindings.sensitive ?? {}, value.binding))
102
+ return value;
103
+ sensitiveBindings[value.binding] = bindings.sensitive?.[value.binding];
104
+ return value;
105
+ case 'external-input':
106
+ if (!Object.hasOwn(bindings.externalInputs ?? {}, value.name))
107
+ return value;
108
+ break;
109
+ case 'artifact-output':
110
+ if (!Object.hasOwn(bindings.artifactOutputs?.[value.requirementId] ?? {}, value.output)) {
111
+ return value;
112
+ }
113
+ break;
114
+ case 'omitted':
115
+ return value;
116
+ case 'literal':
117
+ throw new DirectArtifactExecutionRecordError('Sensitive source unexpectedly contained a plaintext literal.', path);
118
+ }
119
+ const binding = `artifact/${encodeURIComponent(path)}`;
120
+ sensitiveBindings[binding] = materializePlanValue(value, bindings, path);
121
+ return { kind: 'sensitive-binding', binding };
122
+ }
123
+ function concreteLifecycle(lifecycle, bindings, path, sensitiveBindings) {
124
+ return {
125
+ ...lifecycle,
126
+ instancing: lifecycle.instancing.kind === 'per-scope'
127
+ ? {
128
+ kind: 'per-scope',
129
+ key: concretePlanValue(lifecycle.instancing.key, bindings, `${path}.instancing.key`, sensitiveBindings),
130
+ }
131
+ : lifecycle.instancing,
132
+ ...(lifecycle.unusedEvidence
133
+ ? {
134
+ unusedEvidence: {
135
+ ...lifecycle.unusedEvidence,
136
+ inputs: concretePlanValue(lifecycle.unusedEvidence.inputs, bindings, `${path}.unusedEvidence.inputs`, sensitiveBindings),
137
+ },
138
+ }
139
+ : {}),
140
+ };
141
+ }
142
+ function concreteReadinessStrategy(strategy, bindings, path, sensitiveBindings) {
143
+ if (!strategy || strategy.kind === 'runtime-binding' || !strategy.configuration) {
144
+ return strategy;
145
+ }
146
+ return {
147
+ ...strategy,
148
+ configuration: concretePlanValue(strategy.configuration, bindings, `${path}.configuration`, sensitiveBindings),
149
+ };
150
+ }
151
+ function concreteArtifact(artifact, bindings, sensitiveBindings) {
152
+ const path = `$.artifact`;
153
+ const readinessStrategy = concreteReadinessStrategy(artifact.readiness.strategy, bindings, `${path}.readiness.strategy`, sensitiveBindings);
154
+ return {
155
+ ...artifact,
156
+ ...(artifact.identity
157
+ ? {
158
+ identity: {
159
+ ...artifact.identity,
160
+ name: concretePlanValue(artifact.identity.name, bindings, `${path}.identity.name`, sensitiveBindings),
161
+ ...(artifact.identity.namespace
162
+ ? {
163
+ namespace: concretePlanValue(artifact.identity.namespace, bindings, `${path}.identity.namespace`, sensitiveBindings),
164
+ }
165
+ : {}),
166
+ },
167
+ }
168
+ : {}),
169
+ ...(artifact.desired
170
+ ? {
171
+ desired: concretePlanValue(artifact.desired, bindings, `${path}.desired`, sensitiveBindings),
172
+ }
173
+ : {}),
174
+ lifecycle: concreteLifecycle(artifact.lifecycle, bindings, `${path}.lifecycle`, sensitiveBindings),
175
+ readiness: {
176
+ activation: artifact.readiness.activation.map((value, index) => concretePlanValue(value, bindings, `${path}.readiness.activation[${index}]`, sensitiveBindings)),
177
+ readyWhen: artifact.readiness.readyWhen.map((value, index) => concretePlanValue(value, bindings, `${path}.readiness.readyWhen[${index}]`, sensitiveBindings)),
178
+ ...(readinessStrategy ? { strategy: readinessStrategy } : {}),
179
+ },
180
+ ...(artifact.iteration
181
+ ? {
182
+ iteration: artifact.iteration.map((dimension, index) => ({
183
+ ...dimension,
184
+ collection: concretePlanValue(dimension.collection, bindings, `${path}.iteration[${index}].collection`, sensitiveBindings),
185
+ })),
186
+ }
187
+ : {}),
188
+ ...(artifact.templateOverrides
189
+ ? {
190
+ templateOverrides: artifact.templateOverrides.map((override, index) => ({
191
+ ...override,
192
+ value: concretePlanValue(override.value, bindings, `${path}.templateOverrides[${index}].value`, sensitiveBindings),
193
+ })),
194
+ }
195
+ : {}),
196
+ };
197
+ }
198
+ function incomingDependencies(plan, artifactId) {
199
+ const emittedArtifactIds = new Set(plan.resources
200
+ .filter((artifact) => artifact.role === 'application-resource')
201
+ .map((artifact) => artifact.id));
202
+ const dependencies = new Set();
203
+ for (const edge of plan.edges) {
204
+ if (edge.kind === 'output' && edge.consumer === artifactId)
205
+ dependencies.add(edge.producer);
206
+ if ((edge.kind === 'existence' || edge.kind === 'ready') && edge.dependent === artifactId) {
207
+ dependencies.add(edge.prerequisite);
208
+ }
209
+ if (edge.kind === 'ownership' && edge.child === artifactId)
210
+ dependencies.add(edge.owner);
211
+ }
212
+ dependencies.delete(artifactId);
213
+ return [...dependencies].filter((dependency) => emittedArtifactIds.has(dependency)).sort();
214
+ }
215
+ function executionDigest(record) {
216
+ return canonicalDigest(record);
217
+ }
218
+ /** Select and concretize one direct operation for a fan-out execution host. */
219
+ export function createDirectArtifactExecutionRecord(plan, artifactId, bindings = {}) {
220
+ return createDirectArtifactExecutionMaterialization(plan, artifactId, bindings).record;
221
+ }
222
+ /**
223
+ * Build a durable execution record plus its deliberately non-serialized secret envelope.
224
+ * Host adapters must map the envelope to their native sensitive-input mechanism.
225
+ */
226
+ export function createDirectArtifactExecutionMaterialization(plan, artifactId, bindings = {}) {
227
+ const artifact = plan.resources.find((candidate) => candidate.id === artifactId);
228
+ if (!artifact) {
229
+ throw new DirectArtifactExecutionRecordError(`Direct artifact ${artifactId} does not exist in the compiled plan.`, '$.artifactId', { artifactId });
230
+ }
231
+ const sensitiveBindings = {};
232
+ const unsigned = {
233
+ version: DIRECT_ARTIFACT_EXECUTION_RECORD_VERSION,
234
+ target: 'direct',
235
+ planIdentityDigest: plan.planIdentityDigest,
236
+ compiledArtifactDigest: plan.compiledArtifactDigest,
237
+ artifact: concreteArtifact(artifact, bindings, sensitiveBindings),
238
+ dependencies: incomingDependencies(plan, artifactId),
239
+ };
240
+ return {
241
+ record: { ...unsigned, executionDigest: executionDigest(unsigned) },
242
+ sensitiveBindings,
243
+ };
244
+ }
245
+ export function encodeDirectArtifactExecutionRecord(record) {
246
+ return canonicalStringify(record);
247
+ }
248
+ export function decodeDirectArtifactExecutionRecord(encoded) {
249
+ let parsed;
250
+ try {
251
+ parsed = JSON.parse(encoded);
252
+ }
253
+ catch (error) {
254
+ throw new DirectArtifactExecutionRecordError(`Direct artifact execution record is not valid JSON: ${error instanceof Error ? error.message : String(error)}`);
255
+ }
256
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
257
+ throw new DirectArtifactExecutionRecordError(`Expected an execution-record object.`);
258
+ }
259
+ const record = parsed;
260
+ if (record.version !== DIRECT_ARTIFACT_EXECUTION_RECORD_VERSION || record.target !== 'direct') {
261
+ throw new DirectArtifactExecutionRecordError(`Unsupported direct artifact execution-record identity.`);
262
+ }
263
+ for (const key of ['planIdentityDigest', 'compiledArtifactDigest', 'executionDigest']) {
264
+ if (typeof record[key] !== 'string' || record[key].length === 0) {
265
+ throw new DirectArtifactExecutionRecordError(`Expected a non-empty ${key}.`, `$.${key}`);
266
+ }
267
+ }
268
+ const artifact = decodeDirectArtifactResource(canonicalStringify(record.artifact));
269
+ if (!Array.isArray(record.dependencies)) {
270
+ throw new DirectArtifactExecutionRecordError(`Expected a dependency array.`, '$.dependencies');
271
+ }
272
+ const dependencies = record.dependencies.map((dependency, index) => {
273
+ if (typeof dependency !== 'string' || dependency.length === 0) {
274
+ throw new DirectArtifactExecutionRecordError(`Expected a non-empty dependency id.`, `$.dependencies[${index}]`);
275
+ }
276
+ return dependency;
277
+ });
278
+ if (new Set(dependencies).size !== dependencies.length ||
279
+ dependencies.some((dependency) => dependency === artifact.id)) {
280
+ throw new DirectArtifactExecutionRecordError(`Dependencies must be unique and must not contain the selected artifact.`, '$.dependencies');
281
+ }
282
+ const decoded = {
283
+ version: DIRECT_ARTIFACT_EXECUTION_RECORD_VERSION,
284
+ target: 'direct',
285
+ planIdentityDigest: record.planIdentityDigest,
286
+ compiledArtifactDigest: record.compiledArtifactDigest,
287
+ artifact,
288
+ dependencies,
289
+ executionDigest: record.executionDigest,
290
+ };
291
+ const expected = executionDigest({
292
+ version: decoded.version,
293
+ target: decoded.target,
294
+ planIdentityDigest: decoded.planIdentityDigest,
295
+ compiledArtifactDigest: decoded.compiledArtifactDigest,
296
+ artifact: decoded.artifact,
297
+ dependencies: decoded.dependencies,
298
+ });
299
+ if (expected !== decoded.executionDigest) {
300
+ throw new DirectArtifactExecutionRecordError(`Execution-record digest does not match its canonical content.`, '$.executionDigest');
301
+ }
302
+ return decoded;
303
+ }
304
+ //# sourceMappingURL=execution-record.js.map