@intentius/chant 0.57.0 → 0.59.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 (558) hide show
  1. package/dist/audit/catalog.d.ts +51 -1
  2. package/dist/audit/catalog.d.ts.map +1 -1
  3. package/dist/audit/core.d.ts +36 -1
  4. package/dist/audit/core.d.ts.map +1 -1
  5. package/dist/audit/discover.d.ts +26 -9
  6. package/dist/audit/discover.d.ts.map +1 -1
  7. package/dist/audit/lineage.d.ts +10 -0
  8. package/dist/audit/lineage.d.ts.map +1 -0
  9. package/dist/audit/prior-art.d.ts +385 -0
  10. package/dist/audit/prior-art.d.ts.map +1 -0
  11. package/dist/audit/proof.d.ts +16 -0
  12. package/dist/audit/proof.d.ts.map +1 -1
  13. package/dist/audit/report-html.d.ts.map +1 -1
  14. package/dist/audit/report-model.d.ts +8 -1
  15. package/dist/audit/report-model.d.ts.map +1 -1
  16. package/dist/audit/report.d.ts.map +1 -1
  17. package/dist/audit/rules-doc.d.ts +3 -0
  18. package/dist/audit/rules-doc.d.ts.map +1 -1
  19. package/dist/audit/secrets.d.ts +15 -0
  20. package/dist/audit/secrets.d.ts.map +1 -1
  21. package/dist/audit/terraform-state.d.ts +46 -0
  22. package/dist/audit/terraform-state.d.ts.map +1 -0
  23. package/dist/build.d.ts +17 -1
  24. package/dist/build.d.ts.map +1 -1
  25. package/dist/claimed-fields.d.ts +161 -0
  26. package/dist/claimed-fields.d.ts.map +1 -0
  27. package/dist/cli/build-params-cli.d.ts +2 -2
  28. package/dist/cli/command-group.d.ts +14 -0
  29. package/dist/cli/command-group.d.ts.map +1 -1
  30. package/dist/cli/commands/audit.d.ts +17 -1
  31. package/dist/cli/commands/audit.d.ts.map +1 -1
  32. package/dist/cli/commands/build.d.ts.map +1 -1
  33. package/dist/cli/commands/carve-bridge.d.ts.map +1 -1
  34. package/dist/cli/commands/check-lexicon-docs.d.ts +1 -1
  35. package/dist/cli/commands/check-lexicon-examples.d.ts +16 -6
  36. package/dist/cli/commands/check-lexicon-examples.d.ts.map +1 -1
  37. package/dist/cli/commands/init-lexicon/templates/codegen.d.ts +1 -0
  38. package/dist/cli/commands/init-lexicon/templates/codegen.d.ts.map +1 -1
  39. package/dist/cli/commands/init-lexicon/templates/project.d.ts +7 -0
  40. package/dist/cli/commands/init-lexicon/templates/project.d.ts.map +1 -1
  41. package/dist/cli/commands/init-lexicon.d.ts.map +1 -1
  42. package/dist/cli/commands/init.d.ts.map +1 -1
  43. package/dist/cli/commands/lint.d.ts +13 -0
  44. package/dist/cli/commands/lint.d.ts.map +1 -1
  45. package/dist/cli/commands/onboard.d.ts +2 -0
  46. package/dist/cli/commands/onboard.d.ts.map +1 -1
  47. package/dist/cli/handlers/build.d.ts.map +1 -1
  48. package/dist/cli/handlers/lifecycle.d.ts.map +1 -1
  49. package/dist/cli/handlers/operator.d.ts +82 -16
  50. package/dist/cli/handlers/operator.d.ts.map +1 -1
  51. package/dist/cli/handlers/run.d.ts +49 -42
  52. package/dist/cli/handlers/run.d.ts.map +1 -1
  53. package/dist/cli/main.d.ts +12 -1
  54. package/dist/cli/main.d.ts.map +1 -1
  55. package/dist/cli/mcp/op-tools.d.ts +16 -1
  56. package/dist/cli/mcp/op-tools.d.ts.map +1 -1
  57. package/dist/cli/mcp/resource-handlers.d.ts.map +1 -1
  58. package/dist/cli/mcp/resources/context.d.ts.map +1 -1
  59. package/dist/cli/plugins.d.ts +22 -0
  60. package/dist/cli/plugins.d.ts.map +1 -1
  61. package/dist/cli/registry.d.ts +40 -9
  62. package/dist/cli/registry.d.ts.map +1 -1
  63. package/dist/codegen/generate-post-synth-barrel.d.ts +1 -1
  64. package/dist/components/auto-release.d.ts +10 -20
  65. package/dist/components/auto-release.d.ts.map +1 -1
  66. package/dist/components/capability.d.ts +4 -4
  67. package/dist/components/cli-support.d.ts +24 -22
  68. package/dist/components/cli-support.d.ts.map +1 -1
  69. package/dist/components/component.d.ts +21 -6
  70. package/dist/components/component.d.ts.map +1 -1
  71. package/dist/components/driver-output.d.ts.map +1 -1
  72. package/dist/components/driver.d.ts +73 -37
  73. package/dist/components/driver.d.ts.map +1 -1
  74. package/dist/components/index.d.ts +1 -2
  75. package/dist/components/index.d.ts.map +1 -1
  76. package/dist/components/manifest-persistence.d.ts +1 -9
  77. package/dist/components/manifest-persistence.d.ts.map +1 -1
  78. package/dist/components/run-progress.d.ts +6 -6
  79. package/dist/components/run-progress.d.ts.map +1 -1
  80. package/dist/components/verbs/run-agent.d.ts +10 -22
  81. package/dist/components/verbs/run-agent.d.ts.map +1 -1
  82. package/dist/components/verbs/verify.d.ts +2 -2
  83. package/dist/deep-observation.d.ts +17 -0
  84. package/dist/deep-observation.d.ts.map +1 -1
  85. package/dist/detectLexicon.d.ts +13 -0
  86. package/dist/detectLexicon.d.ts.map +1 -1
  87. package/dist/discovery/files.d.ts +4 -4
  88. package/dist/discovery/fold-import.d.ts.map +1 -1
  89. package/dist/discovery/param-deps.d.ts +33 -0
  90. package/dist/discovery/param-deps.d.ts.map +1 -1
  91. package/dist/discovery/sandbox/bundle.d.ts.map +1 -1
  92. package/dist/discovery/sandbox/config-wire.d.ts +2 -2
  93. package/dist/fold/foldable-helpers.d.ts +5 -1
  94. package/dist/fold/foldable-helpers.d.ts.map +1 -1
  95. package/dist/fold-provenance.d.ts +236 -0
  96. package/dist/fold-provenance.d.ts.map +1 -0
  97. package/dist/graph-ops.d.ts +1 -1
  98. package/dist/held-elsewhere.d.ts +85 -0
  99. package/dist/held-elsewhere.d.ts.map +1 -0
  100. package/dist/index.d.ts +3 -0
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/kubectl-context.d.ts +3 -3
  103. package/dist/lexicon-config.d.ts +4 -4
  104. package/dist/lexicon-plugin-helpers.d.ts +1 -1
  105. package/dist/lexicon.d.ts +273 -16
  106. package/dist/lexicon.d.ts.map +1 -1
  107. package/dist/lifecycle/change-set.d.ts +13 -0
  108. package/dist/lifecycle/change-set.d.ts.map +1 -1
  109. package/dist/lifecycle/deep-diff.d.ts +133 -6
  110. package/dist/lifecycle/deep-diff.d.ts.map +1 -1
  111. package/dist/lifecycle/deep-observe.d.ts.map +1 -1
  112. package/dist/lifecycle/gate-ledger.d.ts +79 -3
  113. package/dist/lifecycle/gate-ledger.d.ts.map +1 -1
  114. package/dist/lifecycle/index.d.ts +1 -0
  115. package/dist/lifecycle/index.d.ts.map +1 -1
  116. package/dist/lifecycle/release-ledger.d.ts +2 -2
  117. package/dist/lifecycle/run-ledger.d.ts +53 -0
  118. package/dist/lifecycle/run-ledger.d.ts.map +1 -0
  119. package/dist/lifecycle/symptoms.d.ts +3 -3
  120. package/dist/lifecycle/symptoms.d.ts.map +1 -1
  121. package/dist/lint/config.d.ts +81 -2
  122. package/dist/lint/config.d.ts.map +1 -1
  123. package/dist/lint/post-synth.d.ts +55 -2
  124. package/dist/lint/post-synth.d.ts.map +1 -1
  125. package/dist/lint/rules/__fixtures__/comp/comp004/pass/neo4j-cluster.component.d.ts +1 -1
  126. package/dist/lint/rules/__fixtures__/comp/comp004/pass/neo4j-cluster.component.d.ts.map +1 -1
  127. package/dist/lint/rules/__fixtures__/comp/comp004/pass/orders-table.component.d.ts +1 -1
  128. package/dist/lint/rules/__fixtures__/comp/comp004/pass/orders-table.component.d.ts.map +1 -1
  129. package/dist/lint/rules/comp/comp004-gate-needs-durable-runtime.d.ts +44 -0
  130. package/dist/lint/rules/comp/comp004-gate-needs-durable-runtime.d.ts.map +1 -0
  131. package/dist/lint/rules/comp/index.d.ts +1 -1
  132. package/dist/lint/rules/comp/index.d.ts.map +1 -1
  133. package/dist/lint/rules/op/index.d.ts +16 -0
  134. package/dist/lint/rules/op/index.d.ts.map +1 -0
  135. package/dist/lint/rules/op/ops012-activity-contract.d.ts +27 -0
  136. package/dist/lint/rules/op/ops012-activity-contract.d.ts.map +1 -0
  137. package/dist/lint/rules/op/ops013-step-output-ref.d.ts +61 -0
  138. package/dist/lint/rules/op/ops013-step-output-ref.d.ts.map +1 -0
  139. package/dist/lint/rules/op/ops014-converge-rule-refusals.d.ts +55 -0
  140. package/dist/lint/rules/op/ops014-converge-rule-refusals.d.ts.map +1 -0
  141. package/dist/lint/rules/op/support.d.ts +12 -0
  142. package/dist/lint/rules/op/support.d.ts.map +1 -0
  143. package/dist/lint/suppressions.d.ts +108 -0
  144. package/dist/lint/suppressions.d.ts.map +1 -0
  145. package/dist/live-endpoint.d.ts +1 -1
  146. package/dist/op/activities/activity-contracts.d.ts +54 -0
  147. package/dist/op/activities/activity-contracts.d.ts.map +1 -0
  148. package/dist/op/activities/apply.d.ts +262 -0
  149. package/dist/op/activities/apply.d.ts.map +1 -0
  150. package/dist/op/activities/build.d.ts +13 -0
  151. package/dist/op/activities/build.d.ts.map +1 -0
  152. package/dist/op/activities/converge.d.ts +110 -0
  153. package/dist/op/activities/converge.d.ts.map +1 -0
  154. package/dist/op/activities/env-teardown.d.ts +76 -0
  155. package/dist/op/activities/env-teardown.d.ts.map +1 -0
  156. package/dist/op/activities/guard-validate.d.ts +64 -0
  157. package/dist/op/activities/guard-validate.d.ts.map +1 -0
  158. package/dist/op/activities/http-check.d.ts +34 -0
  159. package/dist/op/activities/http-check.d.ts.map +1 -0
  160. package/dist/op/activities/index.d.ts +31 -0
  161. package/dist/op/activities/index.d.ts.map +1 -0
  162. package/dist/op/activities/lexicon-upgrade.d.ts +182 -0
  163. package/dist/op/activities/lexicon-upgrade.d.ts.map +1 -0
  164. package/dist/op/activities/lifecycle.d.ts +42 -0
  165. package/dist/op/activities/lifecycle.d.ts.map +1 -0
  166. package/dist/op/activities/pipeline-audit.d.ts +84 -0
  167. package/dist/op/activities/pipeline-audit.d.ts.map +1 -0
  168. package/dist/op/activities/policy.d.ts +17 -0
  169. package/dist/op/activities/policy.d.ts.map +1 -0
  170. package/dist/op/activities/reconcile.d.ts +149 -0
  171. package/dist/op/activities/reconcile.d.ts.map +1 -0
  172. package/dist/op/activities/shell.d.ts +13 -0
  173. package/dist/op/activities/shell.d.ts.map +1 -0
  174. package/dist/op/activities/teardown.d.ts +10 -0
  175. package/dist/op/activities/teardown.d.ts.map +1 -0
  176. package/dist/op/activities/util.d.ts +7 -0
  177. package/dist/op/activities/util.d.ts.map +1 -0
  178. package/dist/op/activities/wait.d.ts +28 -0
  179. package/dist/op/activities/wait.d.ts.map +1 -0
  180. package/dist/op/activities/workflow-audit.d.ts +92 -0
  181. package/dist/op/activities/workflow-audit.d.ts.map +1 -0
  182. package/dist/op/activity-contract-registry.d.ts +76 -0
  183. package/dist/op/activity-contract-registry.d.ts.map +1 -0
  184. package/dist/op/activity-contract.d.ts +25 -18
  185. package/dist/op/activity-contract.d.ts.map +1 -1
  186. package/dist/op/activity-failure.d.ts +28 -0
  187. package/dist/op/activity-failure.d.ts.map +1 -0
  188. package/dist/op/activity-profiles.d.ts +118 -0
  189. package/dist/op/activity-profiles.d.ts.map +1 -0
  190. package/dist/op/activity-registry.d.ts +22 -38
  191. package/dist/op/activity-registry.d.ts.map +1 -1
  192. package/dist/op/activity-runtime.d.ts +3 -14
  193. package/dist/op/activity-runtime.d.ts.map +1 -1
  194. package/dist/op/builders.d.ts +85 -30
  195. package/dist/op/builders.d.ts.map +1 -1
  196. package/dist/op/change-signal.d.ts +91 -0
  197. package/dist/op/change-signal.d.ts.map +1 -0
  198. package/dist/op/composites/apply-op.d.ts +118 -0
  199. package/dist/op/composites/apply-op.d.ts.map +1 -0
  200. package/dist/op/composites/converge-op.d.ts +120 -0
  201. package/dist/op/composites/converge-op.d.ts.map +1 -0
  202. package/dist/op/composites/index.d.ts +26 -0
  203. package/dist/op/composites/index.d.ts.map +1 -0
  204. package/dist/op/composites/lexicon-upgrade-op.d.ts +78 -0
  205. package/dist/op/composites/lexicon-upgrade-op.d.ts.map +1 -0
  206. package/dist/op/composites/pipeline-audit-op.d.ts +50 -0
  207. package/dist/op/composites/pipeline-audit-op.d.ts.map +1 -0
  208. package/dist/op/composites/reconcile-op.d.ts +57 -0
  209. package/dist/op/composites/reconcile-op.d.ts.map +1 -0
  210. package/dist/op/composites/watch-op.d.ts +60 -0
  211. package/dist/op/composites/watch-op.d.ts.map +1 -0
  212. package/dist/op/composites/workflow-audit-op.d.ts +57 -0
  213. package/dist/op/composites/workflow-audit-op.d.ts.map +1 -0
  214. package/dist/op/converge-rule.d.ts +12 -10
  215. package/dist/op/converge-rule.d.ts.map +1 -1
  216. package/dist/op/cron.d.ts +51 -0
  217. package/dist/op/cron.d.ts.map +1 -0
  218. package/dist/op/discover.d.ts +9 -0
  219. package/dist/op/discover.d.ts.map +1 -1
  220. package/dist/op/duration.d.ts +11 -0
  221. package/dist/op/duration.d.ts.map +1 -0
  222. package/dist/op/emulator-lifecycle.d.ts.map +1 -1
  223. package/dist/op/gate-name.d.ts +40 -0
  224. package/dist/op/gate-name.d.ts.map +1 -0
  225. package/dist/op/gate-summary.d.ts +43 -0
  226. package/dist/op/gate-summary.d.ts.map +1 -0
  227. package/dist/op/gate.d.ts +90 -0
  228. package/dist/op/gate.d.ts.map +1 -0
  229. package/dist/op/generate-pipeline.d.ts +9 -0
  230. package/dist/op/generate-pipeline.d.ts.map +1 -1
  231. package/dist/op/index.d.ts +29 -9
  232. package/dist/op/index.d.ts.map +1 -1
  233. package/dist/op/local-executor.d.ts +114 -28
  234. package/dist/op/local-executor.d.ts.map +1 -1
  235. package/dist/op/local-output.d.ts +11 -1
  236. package/dist/op/local-output.d.ts.map +1 -1
  237. package/dist/op/op-ir.d.ts +185 -0
  238. package/dist/op/op-ir.d.ts.map +1 -0
  239. package/dist/op/op-verb-class.d.ts +10 -2
  240. package/dist/op/op-verb-class.d.ts.map +1 -1
  241. package/dist/op/operator.d.ts +93 -5
  242. package/dist/op/operator.d.ts.map +1 -1
  243. package/dist/op/receipt-store.d.ts +1 -1
  244. package/dist/op/receipt-store.d.ts.map +1 -1
  245. package/dist/op/resource.d.ts +15 -1
  246. package/dist/op/resource.d.ts.map +1 -1
  247. package/dist/op/runtime.d.ts +200 -0
  248. package/dist/op/runtime.d.ts.map +1 -0
  249. package/dist/op/runtimes/local.d.ts +29 -0
  250. package/dist/op/runtimes/local.d.ts.map +1 -0
  251. package/dist/op/step-output-ref.d.ts +15 -13
  252. package/dist/op/step-output-ref.d.ts.map +1 -1
  253. package/dist/op/types.d.ts +96 -29
  254. package/dist/op/types.d.ts.map +1 -1
  255. package/dist/ownership.d.ts +1 -1
  256. package/dist/provenance.d.ts +21 -0
  257. package/dist/provenance.d.ts.map +1 -1
  258. package/dist/serializer-walker.d.ts.map +1 -1
  259. package/dist/terraform/bridge.d.ts +26 -7
  260. package/dist/terraform/bridge.d.ts.map +1 -1
  261. package/dist/terraform/carve-provider.d.ts +28 -2
  262. package/dist/terraform/carve-provider.d.ts.map +1 -1
  263. package/dist/terraform/data-source-shape.d.ts +77 -0
  264. package/dist/terraform/data-source-shape.d.ts.map +1 -0
  265. package/dist/terraform/graph.d.ts.map +1 -1
  266. package/dist/terraform/providers/kubernetes.d.ts +5 -0
  267. package/dist/terraform/providers/kubernetes.d.ts.map +1 -1
  268. package/dist/terraform/tier-map.d.ts +16 -4
  269. package/dist/terraform/tier-map.d.ts.map +1 -1
  270. package/dist/terraform/types.d.ts +8 -0
  271. package/dist/terraform/types.d.ts.map +1 -1
  272. package/package.json +6 -1
  273. package/src/audit/catalog.test.ts +79 -3
  274. package/src/audit/catalog.ts +111 -13
  275. package/src/audit/core.test.ts +26 -0
  276. package/src/audit/core.ts +84 -18
  277. package/src/audit/discover.test.ts +39 -0
  278. package/src/audit/discover.ts +202 -18
  279. package/src/audit/lineage.ts +100 -0
  280. package/src/audit/prior-art.ts +153 -0
  281. package/src/audit/proof.test.ts +67 -0
  282. package/src/audit/proof.ts +70 -0
  283. package/src/audit/report-html.ts +9 -4
  284. package/src/audit/report-model.ts +16 -2
  285. package/src/audit/report.test.ts +33 -0
  286. package/src/audit/report.ts +5 -3
  287. package/src/audit/rules-doc.test.ts +34 -2
  288. package/src/audit/rules-doc.ts +82 -9
  289. package/src/audit/secrets.ts +15 -3
  290. package/src/audit/terraform-state.test.ts +144 -0
  291. package/src/audit/terraform-state.ts +131 -0
  292. package/src/build.ts +31 -1
  293. package/src/claimed-fields.test.ts +145 -0
  294. package/src/claimed-fields.ts +208 -0
  295. package/src/cli/build-params-cli.ts +2 -2
  296. package/src/cli/command-group.ts +14 -0
  297. package/src/cli/commands/__fixtures__/audit-terraform/infra/.terraform/providers/lock.txt +1 -0
  298. package/src/cli/commands/__fixtures__/audit-terraform/infra/main.tf +1 -0
  299. package/src/cli/commands/__fixtures__/audit-terraform/infra/modules/foo/main.tf +1 -0
  300. package/src/cli/commands/__fixtures__/audit-terraform/infra/variables.tf +3 -0
  301. package/src/cli/commands/__fixtures__/init-lexicon-output/package.json +13 -4
  302. package/src/cli/commands/__fixtures__/init-lexicon-output/src/codegen/docs-cli.ts +4 -0
  303. package/src/cli/commands/__fixtures__/init-lexicon-output/src/codegen/package.ts +1 -0
  304. package/src/cli/commands/__fixtures__/init-lexicon-output/src/package-cli.ts +21 -0
  305. package/src/cli/commands/__snapshots__/init-lexicon.test.ts.snap +1 -0
  306. package/src/cli/commands/audit.test.ts +191 -11
  307. package/src/cli/commands/audit.ts +78 -28
  308. package/src/cli/commands/build.test.ts +330 -9
  309. package/src/cli/commands/build.ts +170 -24
  310. package/src/cli/commands/carve-bridge.test.ts +237 -14
  311. package/src/cli/commands/carve-bridge.ts +21 -17
  312. package/src/cli/commands/carve-emit-k8s.test.ts +17 -10
  313. package/src/cli/commands/check-lexicon-docs.ts +1 -1
  314. package/src/cli/commands/check-lexicon-examples.test.ts +29 -1
  315. package/src/cli/commands/check-lexicon-examples.ts +42 -10
  316. package/src/cli/commands/init-lexicon/templates/codegen.ts +9 -0
  317. package/src/cli/commands/init-lexicon/templates/project.ts +44 -4
  318. package/src/cli/commands/init-lexicon.test.ts +97 -2
  319. package/src/cli/commands/init-lexicon.ts +4 -2
  320. package/src/cli/commands/init.test.ts +35 -1
  321. package/src/cli/commands/init.ts +14 -3
  322. package/src/cli/commands/lint.test.ts +194 -1
  323. package/src/cli/commands/lint.ts +205 -7
  324. package/src/cli/commands/onboard.test.ts +75 -0
  325. package/src/cli/commands/onboard.ts +54 -23
  326. package/src/cli/handlers/build.test.ts +81 -1
  327. package/src/cli/handlers/build.ts +15 -1
  328. package/src/cli/handlers/graph.test.ts +3 -3
  329. package/src/cli/handlers/lifecycle.test.ts +195 -12
  330. package/src/cli/handlers/lifecycle.ts +123 -6
  331. package/src/cli/handlers/misc.ts +1 -1
  332. package/src/cli/handlers/operator.test.ts +183 -11
  333. package/src/cli/handlers/operator.ts +341 -55
  334. package/src/cli/handlers/run.test.ts +568 -1295
  335. package/src/cli/handlers/run.ts +446 -912
  336. package/src/cli/main.test.ts +22 -16
  337. package/src/cli/main.ts +66 -33
  338. package/src/cli/mcp/op-tools.ts +147 -88
  339. package/src/cli/mcp/resource-handlers.ts +10 -37
  340. package/src/cli/mcp/resources/context.ts +11 -12
  341. package/src/cli/mcp/server.test.ts +25 -27
  342. package/src/cli/mcp/server.ts +2 -2
  343. package/src/cli/plugins.test.ts +68 -2
  344. package/src/cli/plugins.ts +39 -0
  345. package/src/cli/registry.ts +40 -9
  346. package/src/codegen/docs.ts +1 -1
  347. package/src/codegen/generate-post-synth-barrel.test.ts +1 -1
  348. package/src/codegen/generate-post-synth-barrel.ts +1 -1
  349. package/src/components/README.md +4 -3
  350. package/src/components/__fixtures__/neo4j-fanout.json +1 -1
  351. package/src/components/auto-release.test.ts +4 -20
  352. package/src/components/auto-release.ts +17 -42
  353. package/src/components/capability.ts +4 -4
  354. package/src/components/cli-support.test.ts +28 -12
  355. package/src/components/cli-support.ts +60 -47
  356. package/src/components/component-schema.test.ts +18 -2
  357. package/src/components/component.schema.json +18 -5
  358. package/src/components/component.test.ts +2 -2
  359. package/src/components/component.ts +27 -7
  360. package/src/components/config-defaults.test.ts +2 -2
  361. package/src/components/driver-output.ts +14 -2
  362. package/src/components/driver.test.ts +109 -20
  363. package/src/components/driver.ts +201 -84
  364. package/src/components/index.ts +1 -6
  365. package/src/components/manifest-persistence.test.ts +2 -20
  366. package/src/components/manifest-persistence.ts +4 -24
  367. package/src/components/pilots/neo4j-fanout.pilot.ts +3 -3
  368. package/src/components/pilots/pilots-lint-clean.test.ts +11 -10
  369. package/src/components/run-progress.ts +6 -6
  370. package/src/components/verbs/run-agent.test.ts +19 -0
  371. package/src/components/verbs/run-agent.ts +12 -24
  372. package/src/components/verbs/verify.ts +2 -2
  373. package/src/deep-observation.test.ts +75 -0
  374. package/src/deep-observation.ts +48 -0
  375. package/src/detectLexicon.ts +18 -1
  376. package/src/discovery/collect.test.ts +3 -3
  377. package/src/discovery/files.ts +4 -4
  378. package/src/discovery/fold-import.test.ts +1 -1
  379. package/src/discovery/fold-import.ts +105 -2
  380. package/src/discovery/param-deps.test.ts +112 -1
  381. package/src/discovery/param-deps.ts +193 -0
  382. package/src/discovery/sandbox/bundle.ts +15 -1
  383. package/src/discovery/sandbox/config-wire.test.ts +2 -2
  384. package/src/discovery/sandbox/config-wire.ts +2 -2
  385. package/src/fold/fold.test.ts +56 -0
  386. package/src/fold/foldable-helpers.ts +82 -2
  387. package/src/fold-provenance-exclusion.test.ts +186 -0
  388. package/src/fold-provenance.test.ts +495 -0
  389. package/src/fold-provenance.ts +441 -0
  390. package/src/graph-ops.test.ts +3 -3
  391. package/src/graph-ops.ts +1 -1
  392. package/src/held-elsewhere.test.ts +102 -0
  393. package/src/held-elsewhere.ts +114 -0
  394. package/src/index.ts +3 -0
  395. package/src/kubectl-context.ts +3 -3
  396. package/src/lexicon-config.test.ts +5 -5
  397. package/src/lexicon-config.ts +4 -4
  398. package/src/lexicon-plugin-helpers.ts +1 -1
  399. package/src/lexicon.ts +296 -16
  400. package/src/lifecycle/change-set.test.ts +49 -0
  401. package/src/lifecycle/change-set.ts +67 -0
  402. package/src/lifecycle/converge-ledger.ts +1 -1
  403. package/src/lifecycle/deep-diff.test.ts +267 -14
  404. package/src/lifecycle/deep-diff.ts +217 -14
  405. package/src/lifecycle/deep-observe.test.ts +3 -1
  406. package/src/lifecycle/deep-observe.ts +16 -6
  407. package/src/lifecycle/gate-ledger.test.ts +74 -2
  408. package/src/lifecycle/gate-ledger.ts +154 -36
  409. package/src/lifecycle/index.ts +1 -0
  410. package/src/lifecycle/release-ledger.ts +2 -2
  411. package/src/lifecycle/run-ledger.test.ts +268 -0
  412. package/src/lifecycle/run-ledger.ts +201 -0
  413. package/src/lifecycle/symptoms.ts +3 -3
  414. package/src/lint/config.test.ts +82 -1
  415. package/src/lint/config.ts +112 -3
  416. package/src/lint/pipeline-change-gate.test.ts +2 -2
  417. package/src/lint/policy.test.ts +1 -1
  418. package/src/lint/post-synth.test.ts +31 -0
  419. package/src/lint/post-synth.ts +54 -1
  420. package/src/lint/rules/__fixtures__/comp/comp004/pass/neo4j-cluster.component.ts +2 -2
  421. package/src/lint/rules/__fixtures__/comp/comp004/pass/orders-table.component.ts +1 -1
  422. package/src/lint/rules/comp/comp.test.ts +27 -1
  423. package/src/lint/rules/comp/comp004-gate-needs-durable-runtime.ts +76 -0
  424. package/src/lint/rules/comp/index.ts +3 -3
  425. package/src/lint/rules/op/index.ts +23 -0
  426. package/src/lint/rules/op/ops012-activity-contract.test.ts +161 -0
  427. package/src/lint/rules/op/ops012-activity-contract.ts +64 -0
  428. package/src/lint/rules/op/ops013-step-output-ref.test.ts +237 -0
  429. package/src/lint/rules/op/ops013-step-output-ref.ts +98 -0
  430. package/src/lint/rules/op/ops014-converge-rule-refusals.test.ts +263 -0
  431. package/src/lint/rules/op/ops014-converge-rule-refusals.ts +179 -0
  432. package/src/lint/rules/op/support.ts +11 -0
  433. package/src/lint/suppressions.test.ts +163 -0
  434. package/src/lint/suppressions.ts +204 -0
  435. package/src/live-endpoint.ts +1 -1
  436. package/src/op/activities/activity-contracts.ts +66 -0
  437. package/src/op/activities/apply.test.ts +567 -0
  438. package/src/op/activities/apply.ts +662 -0
  439. package/src/op/activities/build.ts +26 -0
  440. package/src/op/activities/converge.test.ts +330 -0
  441. package/src/op/activities/converge.ts +449 -0
  442. package/src/op/activities/env-teardown.test.ts +187 -0
  443. package/src/op/activities/env-teardown.ts +171 -0
  444. package/src/op/activities/guard-validate.test.ts +139 -0
  445. package/src/op/activities/guard-validate.ts +223 -0
  446. package/src/op/activities/http-check.test.ts +48 -0
  447. package/src/op/activities/http-check.ts +55 -0
  448. package/src/op/activities/index.ts +119 -0
  449. package/src/op/activities/lexicon-upgrade.test.ts +492 -0
  450. package/src/op/activities/lexicon-upgrade.ts +673 -0
  451. package/src/op/activities/lifecycle.ts +85 -0
  452. package/src/op/activities/pipeline-audit.test.ts +67 -0
  453. package/src/op/activities/pipeline-audit.ts +201 -0
  454. package/src/op/activities/policy.test.ts +19 -0
  455. package/src/op/activities/policy.ts +37 -0
  456. package/src/op/activities/reconcile.test.ts +161 -0
  457. package/src/op/activities/reconcile.ts +354 -0
  458. package/src/op/activities/shell.ts +26 -0
  459. package/src/op/activities/teardown.ts +22 -0
  460. package/src/op/activities/util.ts +6 -0
  461. package/src/op/activities/wait.ts +69 -0
  462. package/src/op/activities/workflow-audit.test.ts +90 -0
  463. package/src/op/activities/workflow-audit.ts +203 -0
  464. package/src/op/activity-contract-registry.test.ts +98 -0
  465. package/src/op/activity-contract-registry.ts +114 -0
  466. package/src/op/activity-contract.test.ts +1 -1
  467. package/src/op/activity-contract.ts +37 -33
  468. package/src/op/activity-failure.ts +34 -0
  469. package/src/op/activity-profiles.test.ts +56 -0
  470. package/src/op/activity-profiles.ts +116 -0
  471. package/src/op/activity-registry.test.ts +37 -28
  472. package/src/op/activity-registry.ts +27 -56
  473. package/src/op/activity-runtime.ts +3 -47
  474. package/src/op/builders-exports.test.ts +0 -49
  475. package/src/op/builders-typed.test.ts +164 -0
  476. package/src/op/builders.ts +125 -41
  477. package/src/op/change-signal.test.ts +117 -0
  478. package/src/op/change-signal.ts +169 -0
  479. package/src/op/composites/apply-op.ts +218 -0
  480. package/src/op/composites/composites.test.ts +379 -0
  481. package/src/op/composites/converge-op.test.ts +168 -0
  482. package/src/op/composites/converge-op.ts +214 -0
  483. package/src/op/composites/index.ts +26 -0
  484. package/src/op/composites/lexicon-upgrade-op.test.ts +68 -0
  485. package/src/op/composites/lexicon-upgrade-op.ts +134 -0
  486. package/src/op/composites/pipeline-audit-op.test.ts +25 -0
  487. package/src/op/composites/pipeline-audit-op.ts +78 -0
  488. package/src/op/composites/reconcile-op.test.ts +51 -0
  489. package/src/op/composites/reconcile-op.ts +110 -0
  490. package/src/op/composites/watch-op.ts +108 -0
  491. package/src/op/composites/workflow-audit-op.test.ts +25 -0
  492. package/src/op/composites/workflow-audit-op.ts +88 -0
  493. package/src/op/converge-rule.ts +12 -10
  494. package/src/op/cron.test.ts +128 -0
  495. package/src/op/cron.ts +149 -0
  496. package/src/op/discover-root.test.ts +105 -1
  497. package/src/op/discover.test.ts +6 -2
  498. package/src/op/discover.ts +84 -16
  499. package/src/op/duration.ts +21 -0
  500. package/src/op/effect-step.test.ts +29 -14
  501. package/src/op/emulator-lifecycle.ts +1 -2
  502. package/src/op/gate-name.test.ts +65 -0
  503. package/src/op/gate-name.ts +60 -0
  504. package/src/op/gate-summary.ts +84 -0
  505. package/src/op/gate.ts +155 -0
  506. package/src/op/generate-pipeline.test.ts +65 -3
  507. package/src/op/generate-pipeline.ts +19 -2
  508. package/src/op/index.ts +48 -8
  509. package/src/op/local-executor.test.ts +178 -34
  510. package/src/op/local-executor.ts +371 -102
  511. package/src/op/local-output.test.ts +95 -11
  512. package/src/op/local-output.ts +33 -4
  513. package/src/op/op-ir.test.ts +292 -0
  514. package/src/op/op-ir.ts +419 -0
  515. package/src/op/op-verb-class.test.ts +2 -2
  516. package/src/op/op-verb-class.ts +19 -5
  517. package/src/op/op.test.ts +28 -7
  518. package/src/op/operator.test.ts +543 -6
  519. package/src/op/operator.ts +203 -20
  520. package/src/op/receipt-store.ts +1 -1
  521. package/src/op/resource.ts +20 -2
  522. package/src/op/runtime.ts +203 -0
  523. package/src/op/runtimes/local.test.ts +181 -0
  524. package/src/op/runtimes/local.ts +212 -0
  525. package/src/op/step-output-ref.ts +15 -13
  526. package/src/op/types.ts +106 -26
  527. package/src/ownership.ts +1 -1
  528. package/src/provenance.test.ts +6 -0
  529. package/src/provenance.ts +21 -1
  530. package/src/serializer-walker.test.ts +42 -0
  531. package/src/serializer-walker.ts +21 -2
  532. package/src/terraform/aws-resources.test.ts +13 -4
  533. package/src/terraform/bridge.test.ts +22 -9
  534. package/src/terraform/bridge.ts +89 -28
  535. package/src/terraform/carve-provider.ts +38 -2
  536. package/src/terraform/data-source-shape.ts +95 -0
  537. package/src/terraform/graph.ts +35 -7
  538. package/src/terraform/providers/kubernetes.ts +48 -2
  539. package/src/terraform/tier-map.ts +21 -6
  540. package/src/terraform/types.ts +8 -0
  541. package/dist/cli/handlers/op-progress.d.ts +0 -90
  542. package/dist/cli/handlers/op-progress.d.ts.map +0 -1
  543. package/dist/cli/handlers/run-client.d.ts +0 -127
  544. package/dist/cli/handlers/run-client.d.ts.map +0 -1
  545. package/dist/cli/handlers/run-report.d.ts +0 -5
  546. package/dist/cli/handlers/run-report.d.ts.map +0 -1
  547. package/dist/components/temporal-codegen-loader.d.ts +0 -27
  548. package/dist/components/temporal-codegen-loader.d.ts.map +0 -1
  549. package/dist/lint/rules/comp/comp004-gate-needs-temporal.d.ts +0 -37
  550. package/dist/lint/rules/comp/comp004-gate-needs-temporal.d.ts.map +0 -1
  551. package/src/cli/handlers/op-progress.test.ts +0 -268
  552. package/src/cli/handlers/op-progress.ts +0 -248
  553. package/src/cli/handlers/run-client.test.ts +0 -82
  554. package/src/cli/handlers/run-client.ts +0 -219
  555. package/src/cli/handlers/run-report.test.ts +0 -62
  556. package/src/cli/handlers/run-report.ts +0 -122
  557. package/src/components/temporal-codegen-loader.ts +0 -41
  558. package/src/lint/rules/comp/comp004-gate-needs-temporal.ts +0 -66
@@ -0,0 +1,182 @@
1
+ /**
2
+ * lexiconUpgrade — the upgrade-detection and PR-automation activity for
3
+ * in-scope lexicons (k8s, gcp, docker, gitlab, aws, azure, github).
4
+ *
5
+ * Classifies the lexicon as pinned or rolling, calls the right check function,
6
+ * then surfaces the result in the requested mode: report (default), issue, or
7
+ * pull-request. In pull-request mode it maintains a long-lived branch per
8
+ * lexicon (`lexicon-upgrade/<lexicon>`), updates the PR in place when the delta
9
+ * changes, and applies a semver label derived from the surface severity.
10
+ *
11
+ * For pinned lexicons in pull-request mode, the PR also bumps the lexicon's
12
+ * own package.json version according to the semver label (minor → minor bump,
13
+ * breaking → major bump). Merging the PR carries the version change so
14
+ * publish-on-merge can ship just that lexicon without a full monorepo release.
15
+ *
16
+ * Rolling lexicons (aws, azure, github) drift on their own cadence and are not
17
+ * version-bumped here — they move to drift-issues per #546.
18
+ *
19
+ * Supply-chain note: this activity never executes spec-provided content.
20
+ * It only reads the artifacts produced by the lexicon's own generate step,
21
+ * which is called through the lexicon's npm prepack chain.
22
+ */
23
+ import type { UpgradeCheckResult, LexiconId } from "../../codegen/pinned-upgrade.js";
24
+ import type { RollingUpgradeResult, RollingLexicon } from "../../codegen/rolling-upgrade.js";
25
+ import { bumpPackageJsonVersion } from "../../codegen/version-bump.js";
26
+ export { bumpPackageJsonVersion };
27
+ /** Finding mode, mirrors ReconcileOp's mode. */
28
+ export type LexiconUpgradeMode = "report" | "issue" | "pull-request";
29
+ /** All lexicons supported by this activity. */
30
+ export type SupportedLexicon = LexiconId | RollingLexicon;
31
+ /** Semver label applied to upgrade PRs. */
32
+ export type SemverLabel = "minor" | "breaking";
33
+ export interface LexiconUpgradeArgs {
34
+ /**
35
+ * Which lexicon to check. Determines pinned vs rolling dispatch:
36
+ * PINNED: k8s, gcp, docker, gitlab, cedar
37
+ * ROLLING: aws, azure, github, fly
38
+ */
39
+ lexicon: SupportedLexicon;
40
+ /**
41
+ * Absolute path to the lexicon root directory.
42
+ * Defaults to `<cwd>/lexicons/<lexicon>`.
43
+ */
44
+ lexiconDir?: string;
45
+ /** What to produce. Default: "report". */
46
+ mode?: LexiconUpgradeMode;
47
+ /**
48
+ * Override the pinned check function — inject a mock in tests.
49
+ * The real implementation calls checkPinnedUpgrade from core.
50
+ */
51
+ _checkPinned?: CheckPinnedFn;
52
+ /**
53
+ * Override the rolling check function — inject a mock in tests.
54
+ * The real implementation calls checkRollingUpgrade from core.
55
+ */
56
+ _checkRolling?: CheckRollingFn;
57
+ /**
58
+ * Override the gh/git runner — inject a mock in tests.
59
+ */
60
+ _gh?: GhRunner;
61
+ /**
62
+ * Override the applyPinnedVersionBump function — inject a mock in tests.
63
+ */
64
+ _applyBump?: ApplyBumpFn;
65
+ /**
66
+ * Override the package.json version writer — inject a mock in tests.
67
+ * Defaults to bumpPackageJsonVersion.
68
+ */
69
+ _bumpPackageVersion?: BumpPackageVersionFn;
70
+ }
71
+ export interface LexiconUpgradeResult {
72
+ lexicon: SupportedLexicon;
73
+ mode: LexiconUpgradeMode;
74
+ /** True when an upgrade is available and validation passed. */
75
+ hasUpgrade: boolean;
76
+ /** Human-readable surface delta summary. Empty when no upgrade. */
77
+ deltaText: string;
78
+ /** Semver label applied to the PR. null when no upgrade or no change. */
79
+ semverLabel: SemverLabel | null;
80
+ /** URL of the opened/updated PR (pull-request mode). */
81
+ prUrl?: string;
82
+ /** URL of the opened issue (issue mode). */
83
+ issueUrl?: string;
84
+ /** Full markdown summary, used as PR/issue body or printed in report mode. */
85
+ summary: string;
86
+ /** Whether validation passed. False means a breakage report was produced. */
87
+ validationOk: boolean;
88
+ }
89
+ /** Matches checkPinnedUpgrade from core. */
90
+ export type CheckPinnedFn = (opts: {
91
+ lexiconDir: string;
92
+ lexicon: LexiconId;
93
+ force?: boolean;
94
+ verbose?: boolean;
95
+ }) => Promise<UpgradeCheckResult>;
96
+ /** Matches checkRollingUpgrade from core. */
97
+ export type CheckRollingFn = (opts: {
98
+ lexiconDir: string;
99
+ force?: boolean;
100
+ verbose?: boolean;
101
+ }) => Promise<RollingUpgradeResult>;
102
+ /** Minimal shell-exec interface for gh/git invocations. */
103
+ export type GhRunner = (cmd: string) => Promise<{
104
+ stdout: string;
105
+ stderr: string;
106
+ }>;
107
+ /** Applies a pinned version bump permanently (no revert). Async (core loads the lexicon's pin descriptor); a sync mock is also accepted. */
108
+ export type ApplyBumpFn = (lexicon: LexiconId, lexiconDir: string, newVersion: string) => {
109
+ filePath: string;
110
+ } | Promise<{
111
+ filePath: string;
112
+ }>;
113
+ /**
114
+ * Write a new version into a package.json, returning the file path.
115
+ * Injectable for tests via LexiconUpgradeArgs._bumpPackageVersion.
116
+ */
117
+ export type BumpPackageVersionFn = (packageJsonPath: string, newVersion: string) => void;
118
+ /**
119
+ * Compute a bumped semver string from a current version and a semver label.
120
+ *
121
+ * The mapping is 0.x-aware, because promoting to 1.0.0 should signal the
122
+ * lexicon's own API stability, not track an upstream spec's breaking change:
123
+ *
124
+ * - Pre-1.0 (major === 0): "breaking" bumps the minor (0.13.1 → 0.14.0),
125
+ * "minor" (additive) bumps the patch (0.13.1 → 0.13.2). Never auto-1.0.0.
126
+ * - >= 1.0.0: "minor" bumps the minor (1.2.3 → 1.3.0), "breaking" bumps the
127
+ * major (1.2.3 → 2.0.0).
128
+ *
129
+ * Handles the common "MAJOR.MINOR.PATCH" form. Returns null when the
130
+ * current version string cannot be parsed as M.m.p.
131
+ */
132
+ export declare function computeBumpedVersion(current: string, label: SemverLabel): string | null;
133
+ /** Return true when the lexicon uses a pinned version constant. */
134
+ export declare function isPinned(lexicon: SupportedLexicon): lexicon is LexiconId;
135
+ /** Return true when the lexicon follows a rolling spec (no pinned constant). */
136
+ export declare function isRolling(lexicon: SupportedLexicon): lexicon is RollingLexicon;
137
+ /**
138
+ * Map a surface severity to a semver label for the PR.
139
+ *
140
+ * "additive" → "minor" (new resources/properties added)
141
+ * "breaking" → "breaking" (removed or changed resources/properties)
142
+ * "none" → null (surface unchanged)
143
+ */
144
+ export declare function severityToLabel(severity: string): SemverLabel | null;
145
+ /** Long-lived branch name for a lexicon upgrade PR. */
146
+ export declare function upgradeBranchName(lexicon: SupportedLexicon): string;
147
+ /** PR title for an upgrade. */
148
+ export declare function upgradePrTitle(lexicon: SupportedLexicon, from?: string, to?: string | null): string;
149
+ /** Build the PR/issue/report body from the upgrade result data. */
150
+ export declare function buildUpgradeSummary(opts: {
151
+ lexicon: SupportedLexicon;
152
+ from?: string;
153
+ to?: string | null;
154
+ deltaText: string;
155
+ semverLabel: SemverLabel | null;
156
+ validationOk: boolean;
157
+ failures?: Array<{
158
+ step: string;
159
+ output: string;
160
+ }>;
161
+ }): string;
162
+ /**
163
+ * Run the lexicon upgrade check for one lexicon and surface the result.
164
+ *
165
+ * Pinned lexicons (k8s, gcp, docker, gitlab):
166
+ * Calls checkPinnedUpgrade. A PR is opened only when hasUpgrade=true AND
167
+ * validation passed. Validation failures produce a report or issue.
168
+ *
169
+ * Rolling lexicons (aws, azure, github):
170
+ * Calls checkRollingUpgrade. A PR is opened only when the surface changed
171
+ * AND validation passed. Surface unchanged = no action.
172
+ *
173
+ * In pull-request mode:
174
+ * - Branch: lexicon-upgrade/<lexicon> (long-lived, one per lexicon).
175
+ * - Idempotent: if the open PR body matches the new summary, skip re-push.
176
+ * - Semver label: "minor" (additive) or "breaking" (changed/removed).
177
+ * - Validation failure falls back to issue mode.
178
+ *
179
+ * Never auto-merges or auto-publishes.
180
+ */
181
+ export declare function lexiconUpgrade(args: LexiconUpgradeArgs): Promise<LexiconUpgradeResult>;
182
+ //# sourceMappingURL=lexicon-upgrade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lexicon-upgrade.d.ts","sourceRoot":"","sources":["../../../src/op/activities/lexicon-upgrade.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ export interface LifecycleSnapshotArgs {
2
+ /** Environment name (e.g. "dev", "staging", "prod"). */
3
+ env: string;
4
+ }
5
+ /**
6
+ * Take a chant lifecycle snapshot for the given environment.
7
+ * Uses fastIdempotent profile — 5m timeout, 3 retries.
8
+ */
9
+ export declare function lifecycleSnapshot(args: LifecycleSnapshotArgs, signal?: AbortSignal): Promise<void>;
10
+ export interface LifecycleDiffArgs {
11
+ /** Environment name (e.g. "dev", "staging", "prod"). */
12
+ env: string;
13
+ /**
14
+ * When true, run `chant lifecycle diff <env> --live` (queries cloud APIs).
15
+ * When false (default), run digest-only diff against the last snapshot.
16
+ */
17
+ live?: boolean;
18
+ }
19
+ export interface LifecycleDiffResult {
20
+ /** Combined stdout + stderr from the chant command. */
21
+ output: string;
22
+ /** Process exit code (0 = success). */
23
+ exitCode: number;
24
+ /**
25
+ * True when the diff output contains any drift indicators
26
+ * (MISSING / ORPHAN / DRIFTED / DISAPPEARED section headers from
27
+ * `chant lifecycle diff --live`).
28
+ */
29
+ drifted: boolean;
30
+ }
31
+ /**
32
+ * Run `chant lifecycle diff <env>` and return the output + structured drift
33
+ * flag. Read-only; intended for use inside watch/observation Ops.
34
+ * Uses fastIdempotent profile.
35
+ *
36
+ * The `drifted` field is computed by scanning the output for any of the
37
+ * MISSING / ORPHAN / DRIFTED / DISAPPEARED section headers documented in
38
+ * cli/state.mdx. Pair with `outcomeAttribute: { name: "Drift", from: "drifted" }`
39
+ * on a WatchOp activity step to surface drift as the run's `Drift` outcome.
40
+ */
41
+ export declare function lifecycleDiff(args: LifecycleDiffArgs, signal?: AbortSignal): Promise<LifecycleDiffResult>;
42
+ //# sourceMappingURL=lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../../src/op/activities/lifecycle.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,qBAAqB;IACpC,wDAAwD;IACxD,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAIxG;AAED,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAoBD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAa/G"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * pipelineSupplyChainAudit — the live counterpart to the gitlab post-synth
3
+ * include/component/image checks (#297).
4
+ *
5
+ * Some include/component checks can only be answered against a moving external
6
+ * truth: whether a pinned component/include ref still resolves upstream, whether
7
+ * the upstream project was archived or moved, or whether a new advisory now
8
+ * covers a component/image already in use. These change independent of the
9
+ * source, so they cannot live in the deterministic build — this activity owns
10
+ * *only* the checks that require live resolution.
11
+ *
12
+ * Dependency-free and primitives-only: it reads the emitted `.gitlab-ci.yml`
13
+ * (passed as a string) and resolves references through an injectable
14
+ * `GitlabRefResolver`, so `chant run` can schedule it and tests can run
15
+ * it against recorded responses with no live network.
16
+ */
17
+ /** What the audit produces on findings. For GitLab the PR mode is a merge request. */
18
+ export type PipelineAuditMode = "report" | "issue" | "merge-request";
19
+ /** The kind of reference being resolved. */
20
+ export type PipelineRefKind = "include" | "component" | "image";
21
+ /** Live resolution of a single pipeline reference against its upstream. */
22
+ export interface PipelineRefResolution {
23
+ /** Does the project/component/image (at this ref/version) still resolve? */
24
+ exists: boolean;
25
+ /** Has the upstream project been archived? */
26
+ archived: boolean;
27
+ /** Has the upstream project moved (new path), if known. */
28
+ movedTo?: string;
29
+ /** Disclosed advisory identifiers affecting this reference. */
30
+ advisories: string[];
31
+ }
32
+ /** Pluggable upstream resolver — overridden in tests with recorded responses. */
33
+ export type GitlabRefResolver = (kind: PipelineRefKind, identifier: string, ref: string) => Promise<PipelineRefResolution>;
34
+ export type PipelineAuditFindingKind = "unresolved" | "archived" | "moved" | "advisory";
35
+ export interface PipelineAuditFinding {
36
+ kind: PipelineAuditFindingKind;
37
+ refKind: PipelineRefKind;
38
+ /** project path / component address / image. */
39
+ identifier: string;
40
+ /** ref / version / tag. */
41
+ ref: string;
42
+ detail: string;
43
+ }
44
+ export interface PipelineAuditArgs {
45
+ /** One emitted `.gitlab-ci.yml` document. */
46
+ yaml?: string;
47
+ /** Several emitted documents. */
48
+ yamls?: string[];
49
+ /** Path to an emitted `.gitlab-ci.yml` to read at run time (default `.gitlab-ci.yml`). */
50
+ pipelineFile?: string;
51
+ /** What to produce. Default: report. */
52
+ mode?: PipelineAuditMode;
53
+ /** Injectable upstream resolver. Defaults to the live GitLab REST resolver. */
54
+ resolver?: GitlabRefResolver;
55
+ }
56
+ export interface PipelineAuditResult {
57
+ mode: PipelineAuditMode;
58
+ findings: PipelineAuditFinding[];
59
+ summary: string;
60
+ }
61
+ interface CollectedRef {
62
+ refKind: PipelineRefKind;
63
+ identifier: string;
64
+ ref: string;
65
+ }
66
+ /**
67
+ * Collect `include:project` (+ ref), `component:` (with @version), and `image:`
68
+ * references from a `.gitlab-ci.yml`.
69
+ */
70
+ export declare function collectPipelineRefs(yaml: string): CollectedRef[];
71
+ /**
72
+ * Default resolver: query the GitLab REST API for project existence / archive /
73
+ * move status. Best-effort and resilient — errors yield an "unknown" resolution
74
+ * (exists=true, no findings) rather than a false positive. Component/image
75
+ * advisory lookups are left to a configured resolver.
76
+ */
77
+ export declare const defaultGitlabRefResolver: GitlabRefResolver;
78
+ /**
79
+ * Resolve each include/component/image reference in the emitted pipeline against
80
+ * live upstreams and report drift.
81
+ */
82
+ export declare function pipelineSupplyChainAudit(args: PipelineAuditArgs): Promise<PipelineAuditResult>;
83
+ export {};
84
+ //# sourceMappingURL=pipeline-audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-audit.d.ts","sourceRoot":"","sources":["../../../src/op/activities/pipeline-audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,sFAAsF;AACtF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,OAAO,GAAG,eAAe,CAAC;AAErE,4CAA4C;AAC5C,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAEhE,2EAA2E;AAC3E,MAAM,WAAW,qBAAqB;IACpC,4EAA4E;IAC5E,MAAM,EAAE,OAAO,CAAC;IAChB,8CAA8C;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAClB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,iFAAiF;AACjF,MAAM,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAE3H,MAAM,MAAM,wBAAwB,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;AAExF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,OAAO,EAAE,eAAe,CAAC;IACzB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,0FAA0F;IAC1F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAwChE;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,iBAgBtC,CAAC;AAmBF;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAkCpG"}
@@ -0,0 +1,17 @@
1
+ export interface PolicyGateArgs {
2
+ /** Project/source directory to build and evaluate. Default ".". */
3
+ path?: string;
4
+ /** Environment for policy evaluation (falls back to `ownership.env`). */
5
+ env?: string;
6
+ }
7
+ /**
8
+ * Gate an apply on organizational policy: build the project, run its
9
+ * `lint.policies` over the resolved resources, and **block** on any violation.
10
+ * Place it as a step before the apply phase — a violation fails the run
11
+ * (non-retryable; the `policyCheck` profile is single-attempt) so nothing is
12
+ * applied. A clean evaluation passes through.
13
+ *
14
+ * A plain activity on every runtime, not a `gate` step.
15
+ */
16
+ export declare function policyGate(args: PolicyGateArgs, _signal?: AbortSignal): Promise<void>;
17
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/op/activities/policy.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB3F"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * What the reconcile activity does with the regenerated source.
3
+ *
4
+ * `comment` is the one mode that posts nothing new: it writes the body onto
5
+ * the pull request that triggered the run, updating the same comment on every
6
+ * re-run (chant #2231). It therefore needs a pull-request trigger, and
7
+ * {@link resolvePullRequestContext} fails the step by name when the run has
8
+ * none.
9
+ */
10
+ export type ReconcileMode = "pull-request" | "issue" | "report" | "comment";
11
+ /** A change-set entry that triggered reconciliation. */
12
+ export interface ReconcileEntry {
13
+ /** chant entity name. */
14
+ name: string;
15
+ /** create | update | delete | adopt | noop (from `chant lifecycle plan`). */
16
+ action: string;
17
+ /** Resource type, when known. */
18
+ type?: string;
19
+ }
20
+ export interface ReconcilePrArgs {
21
+ /** Environment to reconcile from (passed to `chant import --from`). */
22
+ env: string;
23
+ /**
24
+ * The change-set entries that triggered this reconcile. Omit to derive them
25
+ * from `chant lifecycle plan <env> --json` at run time — the form used inside
26
+ * an Op, where the entries aren't known until the activity runs.
27
+ */
28
+ entries?: ReconcileEntry[];
29
+ /** What to produce. Default: pull-request. */
30
+ mode?: ReconcileMode;
31
+ /** Output directory for regenerated source. Default: ./infra. */
32
+ output?: string;
33
+ /** Branch to open the PR from. Default: chant/reconcile-<env>. */
34
+ branch?: string;
35
+ /** Restrict live import to chant-owned resources. */
36
+ owned?: boolean;
37
+ /** PR / issue title. Default derived from env. */
38
+ title?: string;
39
+ /**
40
+ * Hidden marker identifying this Op's comment on the pull request (comment
41
+ * mode). The activity writes it as the comment's first line and finds the
42
+ * comment again by it on the next run, so a re-run edits one comment instead
43
+ * of stacking a new one. Default: {@link commentMarker} keyed on `env`, so
44
+ * two Ops over two roots get two comments and each updates in place.
45
+ */
46
+ marker?: string;
47
+ /**
48
+ * A finding body built by the caller, used verbatim as the issue/PR body in
49
+ * place of {@link reconcileSummary} (chant #2087).
50
+ *
51
+ * The summary this activity writes itself is a change-set table, which is
52
+ * the right artifact when the finding IS a change set. Some observe-dial
53
+ * Ops already hold a better one: `TerraformWatchOp` carries the
54
+ * `terraform plan -no-color` render its own Plan step produced, and
55
+ * re-deriving that from `chant lifecycle plan` here would both lose the
56
+ * plan and run a second, differently-timed read.
57
+ *
58
+ * Supplying it also suppresses the `chant lifecycle plan --json` derivation
59
+ * that fills `entries`: a caller that already knows what it wants to say
60
+ * is not asking this activity to go and find out.
61
+ */
62
+ body?: string;
63
+ }
64
+ export interface ReconcileResult {
65
+ mode: ReconcileMode;
66
+ /** Branch created (pull-request mode). */
67
+ branch?: string;
68
+ /** Opened PR URL (pull-request mode). */
69
+ prUrl?: string;
70
+ /** Opened issue URL (issue mode). */
71
+ issueUrl?: string;
72
+ /** The posted or updated PR comment's URL (comment mode). */
73
+ commentUrl?: string;
74
+ /** The pull request the comment landed on, `owner/repo#number` (comment mode). */
75
+ pullRequest?: string;
76
+ /** The markdown summary used as the PR/issue body. */
77
+ summary: string;
78
+ /** The entries that triggered the reconcile. */
79
+ entries: ReconcileEntry[];
80
+ }
81
+ /** Default branch name for a reconcile PR. Deterministic — no timestamp. */
82
+ export declare function reconcileBranchName(env: string): string;
83
+ /**
84
+ * Build the markdown body summarizing which change-set entries triggered the
85
+ * reconcile. Pure — used as the PR/issue body and returned in `report` mode.
86
+ */
87
+ export declare function reconcileSummary(env: string, entries: ReconcileEntry[]): string;
88
+ /** The pull request a `comment`-mode run posts onto. */
89
+ export interface PullRequestContext {
90
+ /** `owner/repo`, from `GITHUB_REPOSITORY`. */
91
+ repo: string;
92
+ /** The pull request number. */
93
+ number: number;
94
+ }
95
+ /**
96
+ * The hidden marker that makes a `comment`-mode finding findable across
97
+ * re-runs: written as the comment's first line, matched with `startswith` on
98
+ * the next run. Keyed on `env` (slugified the same way {@link
99
+ * reconcileBranchName} slugifies it, which also keeps the value free of the
100
+ * quotes and backslashes it is interpolated next to), so two Ops over two
101
+ * environments own two comments and each updates in place.
102
+ */
103
+ export declare function commentMarker(env: string): string;
104
+ /** What a `comment`-mode step says when the run it is in has no pull request. */
105
+ export declare function noPullRequestContextMessage(): string;
106
+ /**
107
+ * Derive the triggering pull request from CI environment variables plus the
108
+ * already-parsed event payload. Pure — exported for testing; the IO (reading
109
+ * `GITHUB_EVENT_PATH`) is {@link resolvePullRequestContext}'s.
110
+ *
111
+ * Returns undefined rather than throwing, so the caller owns the message.
112
+ */
113
+ export declare function pullRequestContextFrom(env: Record<string, string | undefined>, eventPayload?: unknown): PullRequestContext | undefined;
114
+ /**
115
+ * Resolve the triggering pull request, reading and parsing the event payload
116
+ * `GITHUB_EVENT_PATH` names. Throws {@link noPullRequestContextMessage} when
117
+ * the run has no pull request, which is the whole point: a `comment` mode that
118
+ * quietly fell back to an issue would post the finding somewhere nobody asked
119
+ * for it.
120
+ */
121
+ export declare function resolvePullRequestContext(env?: Record<string, string | undefined>): Promise<PullRequestContext>;
122
+ /**
123
+ * Map a `chant lifecycle plan --json` ChangeSet to reconcile entries, dropping
124
+ * `noop` entries (nothing to reconcile). Pure — exported for testing.
125
+ */
126
+ export declare function entriesFromPlan(planJson: string): ReconcileEntry[];
127
+ /**
128
+ * Reconcile activity: turn regenerated TypeScript into a reviewable artifact.
129
+ *
130
+ * - `report` — return the summary only; no git, no network.
131
+ * - `issue` — open a GitHub issue describing the drift (no code change).
132
+ * - `comment` — post the body as one comment on the pull request that
133
+ * triggered the run, editing that same comment on every re-run rather than
134
+ * stacking a new one (#2231). Needs a pull-request-triggered run; fails by
135
+ * name when there is none. No code change, and the `pull-requests: write`
136
+ * the generated workflow already grants on that trigger is the whole scope
137
+ * it spends.
138
+ * - `pull-request` — create a branch, regenerate source via
139
+ * `chant import --from <env>`, commit, push, and open a PR whose diff is the
140
+ * regenerated TypeScript. Never commits to the main branch.
141
+ *
142
+ * The body is {@link reconcileSummary}'s change-set table unless `args.body`
143
+ * supplies one, in which case that text is used verbatim and no plan is
144
+ * derived (chant #2087).
145
+ *
146
+ * Requires `chant` and (for non-report modes) `gh`/`git` in the environment.
147
+ */
148
+ export declare function reconcilePr(args: ReconcilePrArgs, signal?: AbortSignal): Promise<ReconcileResult>;
149
+ //# sourceMappingURL=reconcile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../../src/op/activities/reconcile.ts"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5E,wDAAwD;AACxD,MAAM,WAAW,cAAc;IAC7B,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,uEAAuE;IACvE,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAC;IACpB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,CAkB/E;AAMD,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,iFAAiF;AACjF,wBAAgB,2BAA2B,IAAI,MAAM,CAQpD;AAeD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,YAAY,CAAC,EAAE,OAAO,GACrB,kBAAkB,GAAG,SAAS,CAOhC;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AA2CD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAOlE;AAgBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAmDvG"}
@@ -0,0 +1,13 @@
1
+ export interface ShellCmdArgs {
2
+ cmd: string;
3
+ /** Additional environment variables. */
4
+ env?: Record<string, string>;
5
+ /** Working directory. Default: process.cwd(). */
6
+ cwd?: string;
7
+ }
8
+ /**
9
+ * Run an arbitrary shell command.
10
+ * Uses fastIdempotent profile — 5m timeout, 3 retries.
11
+ */
12
+ export declare function shellCmd(args: ShellCmdArgs, signal?: AbortSignal): Promise<string>;
13
+ //# sourceMappingURL=shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../src/op/activities/shell.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAQxF"}
@@ -0,0 +1,10 @@
1
+ export interface ChantTeardownArgs {
2
+ /** Path to the chant project to tear down. */
3
+ path: string;
4
+ }
5
+ /**
6
+ * Run `chant teardown` in the given project path.
7
+ * Uses longInfra profile — 20m timeout.
8
+ */
9
+ export declare function chantTeardown(args: ChantTeardownArgs, signal?: AbortSignal): Promise<void>;
10
+ //# sourceMappingURL=teardown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"teardown.d.ts","sourceRoot":"","sources":["../../../src/op/activities/teardown.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhG"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Re-export shim — `sleep` is the shared activity-runtime helper one directory
3
+ * up (`../activity-runtime`). Kept here so existing `./util` imports resolve
4
+ * unchanged.
5
+ */
6
+ export { sleep } from "../activity-runtime.js";
7
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/op/activities/util.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,28 @@
1
+ export interface WaitForStackArgs {
2
+ /** Stack name — used to locate the kubectl deployment/statefulset to poll. */
3
+ name: string;
4
+ /** Kubernetes namespace. */
5
+ namespace?: string;
6
+ /** kubectl context. */
7
+ context?: string;
8
+ /** Poll interval in ms. Default: 10000. */
9
+ intervalMs?: number;
10
+ }
11
+ /**
12
+ * Poll until a Kubernetes Deployment or StatefulSet named `name` is fully rolled out.
13
+ * Uses the `k8sWait` profile — 15m timeout.
14
+ *
15
+ * Progress goes to stdout, one line per poll, which is the executor's step-record
16
+ * channel: the local executor streams an activity's output alongside the step it
17
+ * belongs to, so a long rollout is visible without a liveness protocol. Nothing
18
+ * mid-run is durable here by design (chant #2114) — the op re-runs and converges.
19
+ *
20
+ * Deliberately NOT migrated onto the generic `waitForReady` (#957): `kubectl
21
+ * rollout status` encodes rollout-specific semantics — progress-deadline
22
+ * timeouts, partial/paused rollouts, generation tracking — that a status-field
23
+ * predicate spec does not replicate, and it targets built-in workloads rather
24
+ * than arbitrary operator CRDs. `waitForReady` is the right tool for CRD
25
+ * readiness; `waitForStack` stays the right tool for workload rollouts.
26
+ */
27
+ export declare function waitForStack(args: WaitForStackArgs, signal?: AbortSignal): Promise<void>;
28
+ //# sourceMappingURL=wait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait.d.ts","sourceRoot":"","sources":["../../../src/op/activities/wait.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmC9F"}