@intentius/chant 0.124.13 → 0.124.14

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 (907) hide show
  1. package/bin/chant +11 -0
  2. package/dist/agents/checks.js +326 -0
  3. package/dist/agents/discover.js +885 -0
  4. package/dist/agents/importer.js +17 -0
  5. package/dist/agents/index.js +12 -0
  6. package/dist/agents/types.js +19 -0
  7. package/dist/apply.js +151 -0
  8. package/dist/attrref.js +70 -0
  9. package/dist/audit/catalog.js +350 -0
  10. package/dist/audit/core.js +252 -0
  11. package/dist/audit/discover.js +633 -0
  12. package/dist/audit/fetch.js +666 -0
  13. package/dist/audit/lineage.js +91 -0
  14. package/dist/audit/nginx.js +366 -0
  15. package/dist/audit/prior-art.js +132 -0
  16. package/dist/audit/proof.js +321 -0
  17. package/dist/audit/report-html.js +194 -0
  18. package/dist/audit/report-model.js +198 -0
  19. package/dist/audit/report.js +102 -0
  20. package/dist/audit/rules-doc.js +144 -0
  21. package/dist/audit/secrets.js +405 -0
  22. package/dist/audit/terraform-state.js +140 -0
  23. package/dist/audit/wrangler.js +262 -0
  24. package/dist/behaviour-delta.js +401 -0
  25. package/dist/behaviour-engine.js +357 -0
  26. package/dist/behaviour-graph.js +83 -0
  27. package/dist/behaviour-http.js +188 -0
  28. package/dist/behaviour-kinds.js +172 -0
  29. package/dist/behaviour-overlay.js +50 -0
  30. package/dist/behaviour-predict.js +188 -0
  31. package/dist/behaviour-request.js +194 -0
  32. package/dist/behaviour.js +1325 -0
  33. package/dist/build-params.js +108 -0
  34. package/dist/build.js +668 -0
  35. package/dist/builder.js +44 -0
  36. package/dist/cdk/advise.js +30 -0
  37. package/dist/cdk/assembly.js +122 -0
  38. package/dist/cdk/graph.js +444 -0
  39. package/dist/cdk/tier-map.js +64 -0
  40. package/dist/cdk/types.js +24 -0
  41. package/dist/change-set.js +312 -0
  42. package/dist/child-project.js +21 -0
  43. package/dist/claimed-fields.js +135 -0
  44. package/dist/cli/build-options.js +70 -0
  45. package/dist/cli/build-params-cli.js +139 -0
  46. package/dist/cli/command-group.js +123 -0
  47. package/dist/cli/commands/audit-agents.js +326 -0
  48. package/dist/cli/commands/audit.js +571 -0
  49. package/dist/cli/commands/build.js +920 -0
  50. package/dist/cli/commands/carve-apply.js +153 -0
  51. package/dist/cli/commands/carve-bridge.js +201 -0
  52. package/dist/cli/commands/carve-emit.js +332 -0
  53. package/dist/cli/commands/carve-status.js +119 -0
  54. package/dist/cli/commands/carve.js +204 -0
  55. package/dist/cli/commands/check-lexicon-docs.js +79 -0
  56. package/dist/cli/commands/check-lexicon-examples.js +177 -0
  57. package/dist/cli/commands/check-lexicon-intrinsics.js +291 -0
  58. package/dist/cli/commands/check-lexicon-mcp.js +82 -0
  59. package/dist/cli/commands/check-lexicon-plugin.d.ts.map +1 -1
  60. package/dist/cli/commands/check-lexicon-plugin.js +104 -0
  61. package/dist/cli/commands/check-lexicon.js +766 -0
  62. package/dist/cli/commands/describe.js +85 -0
  63. package/dist/cli/commands/diff.js +175 -0
  64. package/dist/cli/commands/doctor.js +350 -0
  65. package/dist/cli/commands/import-agents.js +155 -0
  66. package/dist/cli/commands/import.js +670 -0
  67. package/dist/cli/commands/init-lexicon/templates/codegen.js +194 -0
  68. package/dist/cli/commands/init-lexicon/templates/docs.js +100 -0
  69. package/dist/cli/commands/init-lexicon/templates/examples.js +29 -0
  70. package/dist/cli/commands/init-lexicon/templates/lint.js +34 -0
  71. package/dist/cli/commands/init-lexicon/templates/lsp.js +37 -0
  72. package/dist/cli/commands/init-lexicon/templates/plugin.js +108 -0
  73. package/dist/cli/commands/init-lexicon/templates/project.js +240 -0
  74. package/dist/cli/commands/init-lexicon/templates/spec.js +56 -0
  75. package/dist/cli/commands/init-lexicon/templates/tests.js +66 -0
  76. package/dist/cli/commands/init-lexicon.js +172 -0
  77. package/dist/cli/commands/init.js +381 -0
  78. package/dist/cli/commands/lexicon-rolling-upgrade.js +145 -0
  79. package/dist/cli/commands/lexicon-surface-diff.js +145 -0
  80. package/dist/cli/commands/licenses.js +125 -0
  81. package/dist/cli/commands/lint.d.ts.map +1 -1
  82. package/dist/cli/commands/lint.js +948 -0
  83. package/dist/cli/commands/list.js +63 -0
  84. package/dist/cli/commands/migrate.d.ts.map +1 -1
  85. package/dist/cli/commands/migrate.js +423 -0
  86. package/dist/cli/commands/onboard.js +403 -0
  87. package/dist/cli/commands/pinned-upgrade.js +191 -0
  88. package/dist/cli/commands/update.js +194 -0
  89. package/dist/cli/commands/vendor.js +217 -0
  90. package/dist/cli/conflict-check.js +104 -0
  91. package/dist/cli/debug.js +8 -0
  92. package/dist/cli/format.js +104 -0
  93. package/dist/cli/handlers/build.js +267 -0
  94. package/dist/cli/handlers/carve-apply.js +30 -0
  95. package/dist/cli/handlers/carve-bridge.js +28 -0
  96. package/dist/cli/handlers/carve-emit.js +50 -0
  97. package/dist/cli/handlers/carve-status.js +26 -0
  98. package/dist/cli/handlers/carve.js +40 -0
  99. package/dist/cli/handlers/change-set.js +46 -0
  100. package/dist/cli/handlers/components.js +730 -0
  101. package/dist/cli/handlers/dev.js +113 -0
  102. package/dist/cli/handlers/emulator.js +233 -0
  103. package/dist/cli/handlers/explain.js +54 -0
  104. package/dist/cli/handlers/fan-out.js +422 -0
  105. package/dist/cli/handlers/gate-resume.js +275 -0
  106. package/dist/cli/handlers/generate.js +84 -0
  107. package/dist/cli/handlers/graph.js +969 -0
  108. package/dist/cli/handlers/init.js +102 -0
  109. package/dist/cli/handlers/lifecycle.js +1727 -0
  110. package/dist/cli/handlers/lint.js +62 -0
  111. package/dist/cli/handlers/migrate.js +48 -0
  112. package/dist/cli/handlers/misc.js +391 -0
  113. package/dist/cli/handlers/operator.js +1162 -0
  114. package/dist/cli/handlers/override-approve.js +102 -0
  115. package/dist/cli/handlers/pr.js +503 -0
  116. package/dist/cli/handlers/promote.js +342 -0
  117. package/dist/cli/handlers/run-generate.js +206 -0
  118. package/dist/cli/handlers/run-wave.js +66 -0
  119. package/dist/cli/handlers/run.js +1191 -0
  120. package/dist/cli/handlers/scenario.js +325 -0
  121. package/dist/cli/handlers/search.js +924 -0
  122. package/dist/cli/handlers/serve.js +32 -0
  123. package/dist/cli/handlers/vendor.js +154 -0
  124. package/dist/cli/index.js +3 -0
  125. package/dist/cli/is-entry-point.js +23 -0
  126. package/dist/cli/lsp/capabilities.js +28 -0
  127. package/dist/cli/lsp/diagnostics.js +34 -0
  128. package/dist/cli/lsp/server.js +329 -0
  129. package/dist/cli/main.d.ts.map +1 -1
  130. package/dist/cli/main.js +2540 -0
  131. package/dist/cli/mcp/lifecycle-tools.js +80 -0
  132. package/dist/cli/mcp/op-tools.js +306 -0
  133. package/dist/cli/mcp/resource-handlers.js +258 -0
  134. package/dist/cli/mcp/resources/context.js +85 -0
  135. package/dist/cli/mcp/server.js +353 -0
  136. package/dist/cli/mcp/tools/build.js +111 -0
  137. package/dist/cli/mcp/tools/composites.js +95 -0
  138. package/dist/cli/mcp/tools/explain.js +166 -0
  139. package/dist/cli/mcp/tools/import.js +49 -0
  140. package/dist/cli/mcp/tools/lint.js +41 -0
  141. package/dist/cli/mcp/tools/scaffold.js +111 -0
  142. package/dist/cli/mcp/tools/search.js +112 -0
  143. package/dist/cli/mcp/types.js +1 -0
  144. package/dist/cli/mcp/workspace-plugins.js +91 -0
  145. package/dist/cli/mcp/workspace-tools.d.ts +1 -1
  146. package/dist/cli/mcp/workspace-tools.js +564 -0
  147. package/dist/cli/mcp-config.js +70 -0
  148. package/dist/cli/plugins.js +313 -0
  149. package/dist/cli/registry.js +23 -0
  150. package/dist/cli/reporters/stylish.js +329 -0
  151. package/dist/cli/version.js +15 -0
  152. package/dist/cli/watch.js +79 -0
  153. package/dist/codegen/bound-property-types.js +82 -0
  154. package/dist/codegen/coverage.js +119 -0
  155. package/dist/codegen/docs-file-markers.js +60 -0
  156. package/dist/codegen/docs-pages.js +115 -0
  157. package/dist/codegen/docs-rule-scanning.js +164 -0
  158. package/dist/codegen/docs-rules.js +76 -0
  159. package/dist/codegen/docs-sections.js +117 -0
  160. package/dist/codegen/docs-sidebar.js +65 -0
  161. package/dist/codegen/docs-types.js +4 -0
  162. package/dist/codegen/docs.js +356 -0
  163. package/dist/codegen/fetch.js +340 -0
  164. package/dist/codegen/generate-post-synth-barrel.js +63 -0
  165. package/dist/codegen/generate-registry.js +71 -0
  166. package/dist/codegen/generate-runtime-index.js +56 -0
  167. package/dist/codegen/generate-typescript.js +119 -0
  168. package/dist/codegen/generate.js +115 -0
  169. package/dist/codegen/json-patch.js +141 -0
  170. package/dist/codegen/json-schema-to-ts.js +344 -0
  171. package/dist/codegen/json-schema.js +246 -0
  172. package/dist/codegen/lexicon-regen.js +412 -0
  173. package/dist/codegen/naming.js +217 -0
  174. package/dist/codegen/okf-lexicon.js +245 -0
  175. package/dist/codegen/package.js +150 -0
  176. package/dist/codegen/pinned-upgrade.d.ts.map +1 -1
  177. package/dist/codegen/pinned-upgrade.js +494 -0
  178. package/dist/codegen/registry.js +60 -0
  179. package/dist/codegen/rehype-base-url.mjs +68 -0
  180. package/dist/codegen/rolling-upgrade.js +217 -0
  181. package/dist/codegen/surface-snapshot.js +537 -0
  182. package/dist/codegen/testdata/postgres-tags.json +242 -0
  183. package/dist/codegen/topo-sort.js +36 -0
  184. package/dist/codegen/typecheck.js +115 -0
  185. package/dist/codegen/validate.js +200 -0
  186. package/dist/codegen/version-bump.js +35 -0
  187. package/dist/components/auto-release.js +143 -0
  188. package/dist/components/builders.js +47 -0
  189. package/dist/components/capability-plugin-loader.js +175 -0
  190. package/dist/components/capability-plugin-schema.js +46 -0
  191. package/dist/components/capability-plugin.js +99 -0
  192. package/dist/components/capability.js +60 -0
  193. package/dist/components/changed-files.js +72 -0
  194. package/dist/components/cli-support.js +427 -0
  195. package/dist/components/component.js +120 -0
  196. package/dist/components/component.schema.json +271 -0
  197. package/dist/components/config-defaults.js +130 -0
  198. package/dist/components/deploy-units.js +60 -0
  199. package/dist/components/discover.d.ts.map +1 -1
  200. package/dist/components/discover.js +189 -0
  201. package/dist/components/driver-output.js +86 -0
  202. package/dist/components/driver.js +728 -0
  203. package/dist/components/fan-out-output.js +165 -0
  204. package/dist/components/fan-out-record.js +94 -0
  205. package/dist/components/fan-out-run.js +373 -0
  206. package/dist/components/fan-out-support.js +60 -0
  207. package/dist/components/fan-out.js +273 -0
  208. package/dist/components/gate-plan.js +41 -0
  209. package/dist/components/gated-wave-pipeline.js +46 -0
  210. package/dist/components/index.js +24 -0
  211. package/dist/components/layers.js +28 -0
  212. package/dist/components/manifest-persistence.js +108 -0
  213. package/dist/components/pilots/alb-ecs.pilot.js +59 -0
  214. package/dist/components/pilots/dynamodb.pilot.js +51 -0
  215. package/dist/components/pilots/jar-emr.pilot.js +65 -0
  216. package/dist/components/pilots/lambda.pilot.js +52 -0
  217. package/dist/components/pilots/neo4j-fanout.pilot.js +68 -0
  218. package/dist/components/pilots/project.js +12 -0
  219. package/dist/components/pr-pipeline.js +134 -0
  220. package/dist/components/pr-run.js +363 -0
  221. package/dist/components/presets/ecs-fargate.js +72 -0
  222. package/dist/components/presets/index.js +28 -0
  223. package/dist/components/presets/lambda.js +34 -0
  224. package/dist/components/presets/single-host-compose.js +41 -0
  225. package/dist/components/promote.js +549 -0
  226. package/dist/components/registry.js +34 -0
  227. package/dist/components/run-progress.js +33 -0
  228. package/dist/components/sandbox/driver.d.ts.map +1 -1
  229. package/dist/components/sandbox/driver.js +93 -0
  230. package/dist/components/sandbox/run.js +115 -0
  231. package/dist/components/starter-plugin.js +104 -0
  232. package/dist/components/verbs/__tests__/mock-cloud-executor.js +68 -0
  233. package/dist/components/verbs/__tests__/mock-process-runner.js +45 -0
  234. package/dist/components/verbs/__tests__/mock-sbom-generator.js +56 -0
  235. package/dist/components/verbs/bom-writer.js +287 -0
  236. package/dist/components/verbs/build-archive.js +188 -0
  237. package/dist/components/verbs/build.js +142 -0
  238. package/dist/components/verbs/cloud-executor.js +110 -0
  239. package/dist/components/verbs/component-bom.js +125 -0
  240. package/dist/components/verbs/ensure-secret.js +50 -0
  241. package/dist/components/verbs/index.js +61 -0
  242. package/dist/components/verbs/license-policy.js +75 -0
  243. package/dist/components/verbs/lockfile-sbom-generator.js +191 -0
  244. package/dist/components/verbs/process-runner.js +78 -0
  245. package/dist/components/verbs/r2-sync.js +93 -0
  246. package/dist/components/verbs/reproducibility.js +62 -0
  247. package/dist/components/verbs/run-agent.js +577 -0
  248. package/dist/components/verbs/sbom-generator.js +119 -0
  249. package/dist/components/verbs/sbom.js +97 -0
  250. package/dist/components/verbs/shell.js +32 -0
  251. package/dist/components/verbs/sign.js +221 -0
  252. package/dist/components/verbs/stub.js +28 -0
  253. package/dist/components/verbs/tool-sbom-generator.js +154 -0
  254. package/dist/components/verbs/verify.js +112 -0
  255. package/dist/components/verbs/vex.js +131 -0
  256. package/dist/components/verbs/vuln-gate.js +152 -0
  257. package/dist/components/verbs/vuln-scan.js +288 -0
  258. package/dist/components/verbs/wait-verify.js +106 -0
  259. package/dist/components/verbs/wrangler.js +179 -0
  260. package/dist/components/wave-plan.js +102 -0
  261. package/dist/composite.js +305 -0
  262. package/dist/config-import.d.ts.map +1 -1
  263. package/dist/config-import.js +22 -0
  264. package/dist/config-sandbox.js +122 -0
  265. package/dist/config-static.js +206 -0
  266. package/dist/config.js +605 -0
  267. package/dist/content-digest.js +23 -0
  268. package/dist/declarable.js +114 -0
  269. package/dist/deep-observation.js +437 -0
  270. package/dist/detectLexicon.js +54 -0
  271. package/dist/discovery/cache.js +70 -0
  272. package/dist/discovery/collect.js +208 -0
  273. package/dist/discovery/cycles.js +95 -0
  274. package/dist/discovery/entity-wire-codec.js +391 -0
  275. package/dist/discovery/entity-wire.js +42 -0
  276. package/dist/discovery/files.js +121 -0
  277. package/dist/discovery/fold-import.d.ts.map +1 -1
  278. package/dist/discovery/fold-import.js +4178 -0
  279. package/dist/discovery/fold-rank.js +292 -0
  280. package/dist/discovery/graph.js +115 -0
  281. package/dist/discovery/import.d.ts.map +1 -1
  282. package/dist/discovery/import.js +65 -0
  283. package/dist/discovery/index.js +333 -0
  284. package/dist/discovery/param-deps.js +487 -0
  285. package/dist/discovery/resolve.js +39 -0
  286. package/dist/discovery/sandbox/bundle.js +214 -0
  287. package/dist/discovery/sandbox/child-errors.js +26 -0
  288. package/dist/discovery/sandbox/config-run.js +100 -0
  289. package/dist/discovery/sandbox/config-wire.js +183 -0
  290. package/dist/discovery/sandbox/driver.d.ts.map +1 -1
  291. package/dist/discovery/sandbox/driver.js +333 -0
  292. package/dist/discovery/sandbox/fork.js +229 -0
  293. package/dist/discovery/sandbox/policy-run.js +142 -0
  294. package/dist/discovery/sandbox/policy-wire.js +152 -0
  295. package/dist/discovery/sandbox/run.js +77 -0
  296. package/dist/discovery/specifier-resolve.js +320 -0
  297. package/dist/discovery/walk.js +284 -0
  298. package/dist/effect-receipt.js +340 -0
  299. package/dist/env.js +55 -0
  300. package/dist/errors.js +62 -0
  301. package/dist/fold/fold.js +1434 -0
  302. package/dist/fold/foldable-helpers.js +229 -0
  303. package/dist/fold/subset.js +696 -0
  304. package/dist/fold-provenance.js +414 -0
  305. package/dist/gate-decision.js +260 -0
  306. package/dist/gate-resume-run.js +154 -0
  307. package/dist/gated-waves.js +165 -0
  308. package/dist/governance.js +43 -0
  309. package/dist/graph-declared.js +45 -0
  310. package/dist/graph-detail.js +207 -0
  311. package/dist/graph-dot.js +54 -0
  312. package/dist/graph-effective.js +107 -0
  313. package/dist/graph-ir.js +623 -0
  314. package/dist/graph-layout.js +184 -0
  315. package/dist/graph-lens.js +105 -0
  316. package/dist/graph-mermaid.js +83 -0
  317. package/dist/graph-ops.js +39 -0
  318. package/dist/graph-refs.js +156 -0
  319. package/dist/held-elsewhere.js +87 -0
  320. package/dist/identity.js +251 -0
  321. package/dist/import/base-parser.js +34 -0
  322. package/dist/import/embedded.js +255 -0
  323. package/dist/import/generator.js +1 -0
  324. package/dist/import/ir-utils.js +85 -0
  325. package/dist/import/parser-options.js +45 -0
  326. package/dist/import/parser.js +1 -0
  327. package/dist/index.js +118 -0
  328. package/dist/intrinsic-interpolation.js +73 -0
  329. package/dist/intrinsic.js +31 -0
  330. package/dist/join-key.js +35 -0
  331. package/dist/kubectl-context.js +150 -0
  332. package/dist/lexicon-config.js +58 -0
  333. package/dist/lexicon-integrity.js +47 -0
  334. package/dist/lexicon-manifest.js +70 -0
  335. package/dist/lexicon-module.d.ts.map +1 -1
  336. package/dist/lexicon-module.js +241 -0
  337. package/dist/lexicon-output.js +218 -0
  338. package/dist/lexicon-plugin-helpers.js +104 -0
  339. package/dist/lexicon-schema.js +136 -0
  340. package/dist/lexicon.js +130 -0
  341. package/dist/lifecycle/affected.js +224 -0
  342. package/dist/lifecycle/assert-live.js +110 -0
  343. package/dist/lifecycle/build-ledger-store.js +160 -0
  344. package/dist/lifecycle/build-ledger.js +155 -0
  345. package/dist/lifecycle/change-set.js +356 -0
  346. package/dist/lifecycle/converge-ledger.js +161 -0
  347. package/dist/lifecycle/deep-diff.js +233 -0
  348. package/dist/lifecycle/deep-observe.js +147 -0
  349. package/dist/lifecycle/digest.js +143 -0
  350. package/dist/lifecycle/disruption.js +135 -0
  351. package/dist/lifecycle/gate-applied.js +113 -0
  352. package/dist/lifecycle/gate-audit.js +341 -0
  353. package/dist/lifecycle/gate-ledger-select.js +89 -0
  354. package/dist/lifecycle/gate-ledger.js +193 -0
  355. package/dist/lifecycle/gate-origin.js +117 -0
  356. package/dist/lifecycle/gate-pending.js +58 -0
  357. package/dist/lifecycle/git.js +1182 -0
  358. package/dist/lifecycle/identity.js +58 -0
  359. package/dist/lifecycle/index.js +26 -0
  360. package/dist/lifecycle/lease.js +283 -0
  361. package/dist/lifecycle/ledger-port.js +1 -0
  362. package/dist/lifecycle/legacy-digest.js +91 -0
  363. package/dist/lifecycle/live-diff.js +274 -0
  364. package/dist/lifecycle/local-note.js +15 -0
  365. package/dist/lifecycle/member-ledger.js +122 -0
  366. package/dist/lifecycle/observation-baseline.js +155 -0
  367. package/dist/lifecycle/observe.js +375 -0
  368. package/dist/lifecycle/oras-referrer-lookup.js +82 -0
  369. package/dist/lifecycle/override-ledger.js +54 -0
  370. package/dist/lifecycle/plan-digest.js +110 -0
  371. package/dist/lifecycle/plan-ledger.js +129 -0
  372. package/dist/lifecycle/receipt-plan.js +192 -0
  373. package/dist/lifecycle/release-ledger.js +155 -0
  374. package/dist/lifecycle/release-read.js +64 -0
  375. package/dist/lifecycle/replay.js +193 -0
  376. package/dist/lifecycle/rollback.js +102 -0
  377. package/dist/lifecycle/run-ledger.js +183 -0
  378. package/dist/lifecycle/scenario-eval.js +204 -0
  379. package/dist/lifecycle/scenario.js +214 -0
  380. package/dist/lifecycle/snapshot.js +239 -0
  381. package/dist/lifecycle/status.js +447 -0
  382. package/dist/lifecycle/symptoms.js +117 -0
  383. package/dist/lifecycle/teardown.js +255 -0
  384. package/dist/lifecycle/types.js +1 -0
  385. package/dist/lifecycle/unobserved-gate.js +33 -0
  386. package/dist/lifecycle/wave-plans.js +68 -0
  387. package/dist/lifecycle/work-item-id.js +36 -0
  388. package/dist/lifecycle/work-lease.js +393 -0
  389. package/dist/lint/component-checks.js +87 -0
  390. package/dist/lint/config.js +483 -0
  391. package/dist/lint/declarative.js +122 -0
  392. package/dist/lint/discover.d.ts.map +1 -1
  393. package/dist/lint/discover.js +138 -0
  394. package/dist/lint/engine.js +246 -0
  395. package/dist/lint/knowledge-checks.js +64 -0
  396. package/dist/lint/named-checks.js +22 -0
  397. package/dist/lint/output-checks.js +87 -0
  398. package/dist/lint/output-docs.js +163 -0
  399. package/dist/lint/parser.js +33 -0
  400. package/dist/lint/pipeline-change-gate.js +70 -0
  401. package/dist/lint/policy-import.d.ts +1 -1
  402. package/dist/lint/policy-import.d.ts.map +1 -1
  403. package/dist/lint/policy-import.js +62 -0
  404. package/dist/lint/policy-sandbox.js +86 -0
  405. package/dist/lint/policy.js +122 -0
  406. package/dist/lint/post-synth.js +87 -0
  407. package/dist/lint/presets/relaxed.json +26 -0
  408. package/dist/lint/presets/strict.json +24 -24
  409. package/dist/lint/receipt-checks.js +83 -0
  410. package/dist/lint/rule-loader.d.ts.map +1 -1
  411. package/dist/lint/rule-loader.js +89 -0
  412. package/dist/lint/rule-registry.js +86 -0
  413. package/dist/lint/rule.js +1 -0
  414. package/dist/lint/rules/__fixtures__/comp/comp000-discovery-error/broken-a.component.js +7 -0
  415. package/dist/lint/rules/__fixtures__/comp/comp000-discovery-error/broken-b.component.js +7 -0
  416. package/dist/lint/rules/__fixtures__/comp/comp001/fail/orphan-lib.component.js +9 -0
  417. package/dist/lint/rules/__fixtures__/comp/comp001/pass/emr-job.component.js +11 -0
  418. package/dist/lint/rules/__fixtures__/comp/comp001/pass/jar-lib.component.js +9 -0
  419. package/dist/lint/rules/__fixtures__/comp/comp002/fail/search-service.component.js +25 -0
  420. package/dist/lint/rules/__fixtures__/comp/comp002/pass/jar-lib.component.js +8 -0
  421. package/dist/lint/rules/__fixtures__/comp/comp002/pass/search-service.component.js +21 -0
  422. package/dist/lint/rules/__fixtures__/comp/comp003/fail/migrator.component.js +8 -0
  423. package/dist/lint/rules/__fixtures__/comp/comp003/pass/agent-turn.component.js +24 -0
  424. package/dist/lint/rules/__fixtures__/comp/comp003/pass/migrator.component.js +17 -0
  425. package/dist/lint/rules/__fixtures__/comp/comp003/pass/orders-table.component.js +8 -0
  426. package/dist/lint/rules/__fixtures__/comp/comp004/fail/neo4j-cluster.component.js +18 -0
  427. package/dist/lint/rules/__fixtures__/comp/comp004/pass/neo4j-cluster.component.js +20 -0
  428. package/dist/lint/rules/__fixtures__/comp/comp004/pass/orders-table.component.js +8 -0
  429. package/dist/lint/rules/__fixtures__/comp/comp005/fail/search-service.component.js +12 -0
  430. package/dist/lint/rules/__fixtures__/comp/comp005/pass/search-service.component.js +16 -0
  431. package/dist/lint/rules/__fixtures__/comp/comp006/fail/legacy-tool.component.js +8 -0
  432. package/dist/lint/rules/__fixtures__/comp/comp006/pass/legacy-tool.component.js +12 -0
  433. package/dist/lint/rules/__fixtures__/comp/comp007/fail/inventory-table.component.js +11 -0
  434. package/dist/lint/rules/__fixtures__/comp/comp007/fail/orders-table.component.js +11 -0
  435. package/dist/lint/rules/__fixtures__/comp/comp007/pass/orders-table.component.js +10 -0
  436. package/dist/lint/rules/__fixtures__/comp/comp007/pass/search-service.component.js +16 -0
  437. package/dist/lint/rules/comp/comp001-publishes-never-applies.js +69 -0
  438. package/dist/lint/rules/comp/comp002-dangling-wiring-ref.js +84 -0
  439. package/dist/lint/rules/comp/comp003-mutating-no-rollback.js +103 -0
  440. package/dist/lint/rules/comp/comp004-gate-needs-durable-runtime.js +70 -0
  441. package/dist/lint/rules/comp/comp005-capability-kind-is-noun.js +109 -0
  442. package/dist/lint/rules/comp/comp006-shell-needs-reason.js +49 -0
  443. package/dist/lint/rules/comp/comp007-composition-sprawl.js +64 -0
  444. package/dist/lint/rules/comp/index.js +33 -0
  445. package/dist/lint/rules/comp/support.js +129 -0
  446. package/dist/lint/rules/composite-scope.js +51 -0
  447. package/dist/lint/rules/cor017-composite-name-match.js +93 -0
  448. package/dist/lint/rules/cor018-composite-prefer-lexicon-type.js +136 -0
  449. package/dist/lint/rules/cor021-env-literal-name.js +100 -0
  450. package/dist/lint/rules/cor022-receipt-leaf.js +118 -0
  451. package/dist/lint/rules/cor024-receipt-secret-pointer.js +199 -0
  452. package/dist/lint/rules/declarable-naming-convention.js +62 -0
  453. package/dist/lint/rules/evl001-non-literal-expression.js +66 -0
  454. package/dist/lint/rules/evl002-control-flow-resource.js +69 -0
  455. package/dist/lint/rules/evl003-dynamic-property-access.js +44 -0
  456. package/dist/lint/rules/evl004-spread-non-const.js +94 -0
  457. package/dist/lint/rules/evl005-resource-block-body.js +41 -0
  458. package/dist/lint/rules/evl007-invalid-siblings.js +105 -0
  459. package/dist/lint/rules/evl009-composite-no-constant.js +158 -0
  460. package/dist/lint/rules/evl010-composite-no-transform.js +59 -0
  461. package/dist/lint/rules/evl011-symbolic-in-template.js +106 -0
  462. package/dist/lint/rules/export-required.js +115 -0
  463. package/dist/lint/rules/file-declarable-limit.js +88 -0
  464. package/dist/lint/rules/flat-declarations.js +62 -0
  465. package/dist/lint/rules/index.js +90 -0
  466. package/dist/lint/rules/no-cyclic-declarable-ref.js +138 -0
  467. package/dist/lint/rules/no-redundant-type-import.js +76 -0
  468. package/dist/lint/rules/no-redundant-value-cast.js +41 -0
  469. package/dist/lint/rules/no-string-ref.js +59 -0
  470. package/dist/lint/rules/no-unused-declarable-import.js +75 -0
  471. package/dist/lint/rules/no-unused-declarable.js +142 -0
  472. package/dist/lint/rules/op/index.js +28 -0
  473. package/dist/lint/rules/op/ops012-activity-contract.js +54 -0
  474. package/dist/lint/rules/op/ops013-step-output-ref.js +88 -0
  475. package/dist/lint/rules/op/ops014-converge-rule-refusals.js +114 -0
  476. package/dist/lint/rules/op/ops015-gate-approval.js +45 -0
  477. package/dist/lint/rules/op/support.js +11 -0
  478. package/dist/lint/rules/op/sys010-key-over-plain-http.js +100 -0
  479. package/dist/lint/rules/property-kind.js +56 -0
  480. package/dist/lint/rules/single-concern-file.js +71 -0
  481. package/dist/lint/rules/sys001-no-literal-key.js +60 -0
  482. package/dist/lint/selectors.js +168 -0
  483. package/dist/lint/suppressions.js +129 -0
  484. package/dist/lint/typescript.js +17 -0
  485. package/dist/live-endpoint.js +113 -0
  486. package/dist/live-read-session.js +76 -0
  487. package/dist/lsp/lexicon-providers.js +163 -0
  488. package/dist/lsp/types.js +5 -0
  489. package/dist/managed-fields.js +293 -0
  490. package/dist/mcp/types.js +4 -0
  491. package/dist/notify-verify.js +0 -1
  492. package/dist/notify.js +0 -1
  493. package/dist/notify.schema.json +72 -0
  494. package/dist/observation.js +266 -0
  495. package/dist/okf-read.js +134 -0
  496. package/dist/okf.js +275 -0
  497. package/dist/op/__fixtures__/decide-stub-backend.js +125 -0
  498. package/dist/op/activities/activity-contracts.js +313 -0
  499. package/dist/op/activities/apply.js +582 -0
  500. package/dist/op/activities/build.js +18 -0
  501. package/dist/op/activities/change-coverage.js +40 -0
  502. package/dist/op/activities/change-set.js +64 -0
  503. package/dist/op/activities/converge.js +492 -0
  504. package/dist/op/activities/decide.js +211 -0
  505. package/dist/op/activities/env-teardown.js +110 -0
  506. package/dist/op/activities/factory.js +591 -0
  507. package/dist/op/activities/forge-pull-request.js +82 -0
  508. package/dist/op/activities/gh-host.js +78 -0
  509. package/dist/op/activities/guard-validate.js +165 -0
  510. package/dist/op/activities/http-check.js +40 -0
  511. package/dist/op/activities/index.js +59 -0
  512. package/dist/op/activities/lexicon-upgrade.js +629 -0
  513. package/dist/op/activities/lifecycle.js +109 -0
  514. package/dist/op/activities/pipeline-audit.js +147 -0
  515. package/dist/op/activities/policy.js +26 -0
  516. package/dist/op/activities/predict-behaviour.js +341 -0
  517. package/dist/op/activities/propose-upgrade.js +165 -0
  518. package/dist/op/activities/reconcile.js +997 -0
  519. package/dist/op/activities/shell.js +118 -0
  520. package/dist/op/activities/source-release.js +97 -0
  521. package/dist/op/activities/source-rollback.js +165 -0
  522. package/dist/op/activities/teardown.js +17 -0
  523. package/dist/op/activities/util.js +6 -0
  524. package/dist/op/activities/wait.js +51 -0
  525. package/dist/op/activities/work-evidence.js +35 -0
  526. package/dist/op/activities/workflow-audit.js +133 -0
  527. package/dist/op/activity-contract-registry.js +106 -0
  528. package/dist/op/activity-contract.js +232 -0
  529. package/dist/op/activity-failure.js +31 -0
  530. package/dist/op/activity-profiles.js +129 -0
  531. package/dist/op/activity-registry.js +105 -0
  532. package/dist/op/activity-runtime.js +28 -0
  533. package/dist/op/builders.js +801 -0
  534. package/dist/op/change-signal.js +118 -0
  535. package/dist/op/composites/apply-op.js +151 -0
  536. package/dist/op/composites/behaviour-op.js +65 -0
  537. package/dist/op/composites/converge-op.js +141 -0
  538. package/dist/op/composites/index.js +19 -0
  539. package/dist/op/composites/lexicon-upgrade-op.js +107 -0
  540. package/dist/op/composites/pipeline-audit-op.js +50 -0
  541. package/dist/op/composites/reconcile-op.js +84 -0
  542. package/dist/op/composites/watch-op.js +69 -0
  543. package/dist/op/composites/workflow-audit-op.js +57 -0
  544. package/dist/op/converge-rule.js +205 -0
  545. package/dist/op/cron.js +146 -0
  546. package/dist/op/decide-backend.js +181 -0
  547. package/dist/op/decide-config.js +68 -0
  548. package/dist/op/decide-read-inputs.js +141 -0
  549. package/dist/op/discover.d.ts.map +1 -1
  550. package/dist/op/discover.js +213 -0
  551. package/dist/op/duration.js +21 -0
  552. package/dist/op/emulator-freshness.js +80 -0
  553. package/dist/op/emulator-lifecycle.js +269 -0
  554. package/dist/op/factory.js +83 -0
  555. package/dist/op/gate-approval.js +172 -0
  556. package/dist/op/gate-name.js +86 -0
  557. package/dist/op/gate-plan-context.js +167 -0
  558. package/dist/op/gate-point-run.js +67 -0
  559. package/dist/op/gate-point.js +111 -0
  560. package/dist/op/gate-resume-plan.js +155 -0
  561. package/dist/op/gate-resume.js +31 -0
  562. package/dist/op/gate-review.js +290 -0
  563. package/dist/op/gate-run-locator.js +85 -0
  564. package/dist/op/gate-summary.js +100 -0
  565. package/dist/op/gate-wait.js +56 -0
  566. package/dist/op/gate.js +449 -0
  567. package/dist/op/generate-pipeline.js +124 -0
  568. package/dist/op/index.js +51 -0
  569. package/dist/op/lifecycle-receipt-store.js +45 -0
  570. package/dist/op/local-executor.js +1164 -0
  571. package/dist/op/local-output.js +140 -0
  572. package/dist/op/op-ir.js +317 -0
  573. package/dist/op/op-verb-class.js +131 -0
  574. package/dist/op/op-waves-notify.js +136 -0
  575. package/dist/op/op-waves-run.js +1657 -0
  576. package/dist/op/op-waves.js +409 -0
  577. package/dist/op/operator.js +743 -0
  578. package/dist/op/receipt-store.js +94 -0
  579. package/dist/op/resource.js +23 -0
  580. package/dist/op/run-context.js +28 -0
  581. package/dist/op/run-live.js +256 -0
  582. package/dist/op/runtime.js +21 -0
  583. package/dist/op/runtimes/local.js +195 -0
  584. package/dist/op/source-archive.js +131 -0
  585. package/dist/op/step-output-ref.js +397 -0
  586. package/dist/op/steward-beside.js +169 -0
  587. package/dist/op/steward-points.js +138 -0
  588. package/dist/op/steward-turn.js +59 -0
  589. package/dist/op/steward.js +317 -0
  590. package/dist/op/types.js +25 -0
  591. package/dist/op/work-lease-decl.js +81 -0
  592. package/dist/op/work-lease-run.js +393 -0
  593. package/dist/override-gate.js +284 -0
  594. package/dist/owner-chain.js +74 -0
  595. package/dist/ownership.js +92 -0
  596. package/dist/params.js +61 -0
  597. package/dist/plan-summary.js +711 -0
  598. package/dist/point-decision.js +211 -0
  599. package/dist/pr-forge.js +810 -0
  600. package/dist/pr-loop.js +203 -0
  601. package/dist/project-codegen.js +191 -0
  602. package/dist/project-root.js +74 -0
  603. package/dist/project-validation.js +50 -0
  604. package/dist/provenance.js +157 -0
  605. package/dist/pseudo-parameter.js +40 -0
  606. package/dist/reconcile.js +450 -0
  607. package/dist/resource-attributes.js +33 -0
  608. package/dist/runtime-adapter.js +77 -0
  609. package/dist/runtime.js +66 -0
  610. package/dist/secret-materialization.js +153 -0
  611. package/dist/secret-provenance.js +250 -0
  612. package/dist/serializer-walker.js +112 -0
  613. package/dist/serializer.js +1 -0
  614. package/dist/sort.js +45 -0
  615. package/dist/stack-output.js +115 -0
  616. package/dist/telemetry-attribution.js +149 -0
  617. package/dist/terraform/__fixtures__/build-graph.js +63 -0
  618. package/dist/terraform/adopt-state.js +40 -0
  619. package/dist/terraform/aws-resources.js +384 -0
  620. package/dist/terraform/bridge.js +204 -0
  621. package/dist/terraform/carve-provider.js +155 -0
  622. package/dist/terraform/carve.js +138 -0
  623. package/dist/terraform/data-source-shape.js +57 -0
  624. package/dist/terraform/emit-source.js +36 -0
  625. package/dist/terraform/excise.js +123 -0
  626. package/dist/terraform/graduate.js +128 -0
  627. package/dist/terraform/graph.js +435 -0
  628. package/dist/terraform/hcl2json.js +60 -0
  629. package/dist/terraform/manifest.js +149 -0
  630. package/dist/terraform/parse.js +81 -0
  631. package/dist/terraform/providers/aws.js +146 -0
  632. package/dist/terraform/providers/gcp.js +294 -0
  633. package/dist/terraform/providers/index.js +17 -0
  634. package/dist/terraform/providers/kubernetes.js +253 -0
  635. package/dist/terraform/score.js +151 -0
  636. package/dist/terraform/state.js +67 -0
  637. package/dist/terraform/tier-map.js +74 -0
  638. package/dist/terraform/types.js +13 -0
  639. package/dist/terraform/unified-diff.js +132 -0
  640. package/dist/testing.js +295 -0
  641. package/dist/toml-emit.js +153 -0
  642. package/dist/toml-parse.js +355 -0
  643. package/dist/toml-utils.js +60 -0
  644. package/dist/toml.js +428 -0
  645. package/dist/ts-loader.d.ts +46 -0
  646. package/dist/ts-loader.d.ts.map +1 -0
  647. package/dist/ts-loader.js +103 -0
  648. package/dist/types.js +1 -0
  649. package/dist/utils.js +61 -0
  650. package/dist/validation.js +20 -0
  651. package/dist/vendor/js-yaml-load.js +1662 -0
  652. package/dist/workspace/__fixtures__/contract-repo.js +103 -0
  653. package/dist/workspace/__fixtures__/decide-workspace.js +112 -0
  654. package/dist/workspace/__fixtures__/sessions.js +91 -0
  655. package/dist/workspace/__fixtures__/two-member-workspace.js +34 -0
  656. package/dist/workspace/agent-cli.js +99 -0
  657. package/dist/workspace/agent.schema.json +390 -0
  658. package/dist/workspace/answers-ledger.js +89 -0
  659. package/dist/workspace/box-cli.js +142 -0
  660. package/dist/workspace/box-factory-write.js +196 -0
  661. package/dist/workspace/box-factory-write.schema.json +342 -0
  662. package/dist/workspace/box-factory.js +88 -0
  663. package/dist/workspace/box-intent.js +126 -0
  664. package/dist/workspace/box-isolation.js +169 -0
  665. package/dist/workspace/box-listing-write.schema.json +204 -0
  666. package/dist/workspace/box-listing.js +298 -0
  667. package/dist/workspace/box-publish.js +352 -0
  668. package/dist/workspace/box-publish.schema.json +498 -0
  669. package/dist/workspace/box-services.js +39 -0
  670. package/dist/workspace/broker-protocol.js +359 -0
  671. package/dist/workspace/broker-protocol.schema.json +228 -0
  672. package/dist/workspace/change-set.schema.json +460 -0
  673. package/dist/workspace/changes-cli.js +56 -0
  674. package/dist/workspace/changes.js +446 -0
  675. package/dist/workspace/changes.schema.json +642 -0
  676. package/dist/workspace/chant-migrations/chud-lexicon-exit-fly-site.js +198 -0
  677. package/dist/workspace/chant-migrations/chud-lexicon-exit-live-names.js +155 -0
  678. package/dist/workspace/chant-migrations/chud-lexicon-exit-rollback.js +214 -0
  679. package/dist/workspace/chant-migrations/chud-lexicon-exit-ship-inputs.js +180 -0
  680. package/dist/workspace/chant-migrations/chud-lexicon-exit-ship-policy.js +99 -0
  681. package/dist/workspace/chant-migrations/chud-lexicon-exit.js +847 -0
  682. package/dist/workspace/chant-migrations.js +113 -0
  683. package/dist/workspace/check.schema.json +433 -0
  684. package/dist/workspace/checks/box-isolation.js +62 -0
  685. package/dist/workspace/checks/boxes.js +491 -0
  686. package/dist/workspace/checks/diagrams.js +104 -0
  687. package/dist/workspace/checks/generated.js +419 -0
  688. package/dist/workspace/checks/ledgers.js +212 -0
  689. package/dist/workspace/checks/links.js +191 -0
  690. package/dist/workspace/checks/live.js +100 -0
  691. package/dist/workspace/checks/pipelines.js +188 -0
  692. package/dist/workspace/checks/records.js +169 -0
  693. package/dist/workspace/checks.js +426 -0
  694. package/dist/workspace/ci-green-cli.js +125 -0
  695. package/dist/workspace/ci-green-forge.js +83 -0
  696. package/dist/workspace/ci-green-workflow.js +199 -0
  697. package/dist/workspace/ci-green.js +325 -0
  698. package/dist/workspace/ci-last-green.schema.json +158 -0
  699. package/dist/workspace/compose-graph.js +235 -0
  700. package/dist/workspace/compose-reports.js +146 -0
  701. package/dist/workspace/composites.js +264 -0
  702. package/dist/workspace/composites.schema.json +617 -0
  703. package/dist/workspace/conformance/__fixture__/app/package.json +7 -0
  704. package/dist/workspace/conformance/__fixture__/app/src/server.mjs +29 -0
  705. package/dist/workspace/conformance/__fixture__/decisions/decision.kind.mjs +54 -0
  706. package/dist/workspace/conformance/__fixture__/decisions/decision.schema.json +512 -0
  707. package/dist/workspace/conformance/__fixture__/decisions/fix-001-how-the-app-is-deployed.md +40 -0
  708. package/dist/workspace/conformance/__fixture__/delivery/chant.config.ts +7 -0
  709. package/dist/workspace/conformance/__fixture__/delivery/lexicon/index.ts +26 -0
  710. package/dist/workspace/conformance/__fixture__/delivery/package.json +7 -0
  711. package/dist/workspace/conformance/__fixture__/delivery/src/app.component.ts +14 -0
  712. package/dist/workspace/conformance/__fixture__/delivery/src/app.ts +4 -0
  713. package/dist/workspace/conformance/__fixtures__/reference-broker.js +205 -0
  714. package/dist/workspace/conformance/__writer_fixture__/answers/answer.kind.mjs +32 -0
  715. package/dist/workspace/conformance/__writer_fixture__/answers/answer.schema.json +135 -0
  716. package/dist/workspace/conformance/__writer_fixture__/contracts/contract.kind.mjs +37 -0
  717. package/dist/workspace/conformance/__writer_fixture__/contracts/contract.schema.json +213 -0
  718. package/dist/workspace/conformance/__writer_fixture__/decisions/points.json +228 -0
  719. package/dist/workspace/conformance/__writer_fixture__/drivers/driver.kind.mjs +15 -0
  720. package/dist/workspace/conformance/__writer_fixture__/drivers/driver.schema.json +38 -0
  721. package/dist/workspace/conformance/__writer_fixture__/sessions/session.kind.mjs +54 -0
  722. package/dist/workspace/conformance/__writer_fixture__/sessions/session.schema.json +289 -0
  723. package/dist/workspace/conformance/__writer_fixture__/work/W-001-the-writer-suite-works-this-item.md +25 -0
  724. package/dist/workspace/conformance/__writer_fixture__/work/work.kind.mjs +60 -0
  725. package/dist/workspace/conformance/__writer_fixture__/work/work.schema.json +603 -0
  726. package/dist/workspace/conformance/broker.js +736 -0
  727. package/dist/workspace/conformance/index.js +673 -0
  728. package/dist/workspace/conformance/vitest.js +108 -0
  729. package/dist/workspace/conformance/writer.js +1080 -0
  730. package/dist/workspace/decide.js +879 -0
  731. package/dist/workspace/decision-points.schema.json +135 -135
  732. package/dist/workspace/declaration-write-cli.js +74 -0
  733. package/dist/workspace/declaration-write.js +238 -0
  734. package/dist/workspace/declaration.js +938 -0
  735. package/dist/workspace/declaration.schema.json +1413 -1413
  736. package/dist/workspace/declared-kinds.js +106 -0
  737. package/dist/workspace/environments.js +164 -0
  738. package/dist/workspace/evidence.schema.json +279 -0
  739. package/dist/workspace/export-cli.js +185 -0
  740. package/dist/workspace/export.js +499 -0
  741. package/dist/workspace/factory-rules.js +175 -0
  742. package/dist/workspace/generated-files.js +92 -0
  743. package/dist/workspace/glob.js +45 -0
  744. package/dist/workspace/graph-cache.js +352 -0
  745. package/dist/workspace/graph-cli.js +348 -0
  746. package/dist/workspace/graph.schema.json +1338 -0
  747. package/dist/workspace/identity-gate-rule.js +75 -0
  748. package/dist/workspace/identity.js +126 -0
  749. package/dist/workspace/import.js +283 -0
  750. package/dist/workspace/init.js +620 -0
  751. package/dist/workspace/intent-cli.js +263 -0
  752. package/dist/workspace/intent-joins.js +201 -0
  753. package/dist/workspace/intent-record.js +352 -0
  754. package/dist/workspace/intent-record.schema.json +864 -0
  755. package/dist/workspace/intent.js +1582 -0
  756. package/dist/workspace/intent.schema.json +2420 -0
  757. package/dist/workspace/json-edit.js +221 -0
  758. package/dist/workspace/jsonc.js +235 -0
  759. package/dist/workspace/kind-readers.js +103 -0
  760. package/dist/workspace/kinds.js +587 -0
  761. package/dist/workspace/lexicon-symbols.js +112 -0
  762. package/dist/workspace/lineage-adopt-cli.js +102 -0
  763. package/dist/workspace/lineage-adopt.js +360 -0
  764. package/dist/workspace/lineage-check.js +282 -0
  765. package/dist/workspace/lineage-cli.js +121 -0
  766. package/dist/workspace/lineage-hash-index.js +284 -0
  767. package/dist/workspace/lineage-init.js +507 -0
  768. package/dist/workspace/lineage-lock.js +387 -0
  769. package/dist/workspace/lineage-merge.js +45 -0
  770. package/dist/workspace/lineage-migrations.d.ts.map +1 -1
  771. package/dist/workspace/lineage-migrations.js +329 -0
  772. package/dist/workspace/lineage-provenance.js +36 -0
  773. package/dist/workspace/lineage-update.js +138 -0
  774. package/dist/workspace/lineage-upgrade-cli.js +131 -0
  775. package/dist/workspace/lineage-upgrade.js +889 -0
  776. package/dist/workspace/lineage-vendor.js +171 -0
  777. package/dist/workspace/lineage-version.js +128 -0
  778. package/dist/workspace/lineage-versions.js +275 -0
  779. package/dist/workspace/links.js +330 -0
  780. package/dist/workspace/ls-generated.js +95 -0
  781. package/dist/workspace/ls.js +277 -0
  782. package/dist/workspace/ls.schema.json +333 -0
  783. package/dist/workspace/member-commands.js +508 -0
  784. package/dist/workspace/member-handles.js +216 -0
  785. package/dist/workspace/member-pipeline.js +258 -0
  786. package/dist/workspace/member-run.js +117 -0
  787. package/dist/workspace/member-write.schema.json +193 -0
  788. package/dist/workspace/nested-graph.js +156 -0
  789. package/dist/workspace/nesting.js +38 -0
  790. package/dist/workspace/patch.js +301 -0
  791. package/dist/workspace/patch.schema.json +321 -0
  792. package/dist/workspace/pin-cli.js +55 -0
  793. package/dist/workspace/pin-integrity.js +100 -0
  794. package/dist/workspace/plan-summary.schema.json +155 -0
  795. package/dist/workspace/point-answer.schema.json +129 -129
  796. package/dist/workspace/points-cli.js +291 -0
  797. package/dist/workspace/points-write.schema.json +660 -0
  798. package/dist/workspace/points.js +521 -0
  799. package/dist/workspace/points.schema.json +916 -0
  800. package/dist/workspace/pr-report.schema.json +108 -0
  801. package/dist/workspace/principal-classes.js +245 -0
  802. package/dist/workspace/reason-codes.js +326 -0
  803. package/dist/workspace/record-assets.js +151 -0
  804. package/dist/workspace/record-decided.js +105 -0
  805. package/dist/workspace/record-sessions.js +96 -0
  806. package/dist/workspace/record-source.js +114 -0
  807. package/dist/workspace/records-amend.schema.json +284 -0
  808. package/dist/workspace/records-checkout.js +76 -0
  809. package/dist/workspace/records-cli.js +707 -0
  810. package/dist/workspace/records-close.js +116 -0
  811. package/dist/workspace/records-close.schema.json +278 -0
  812. package/dist/workspace/records-new.schema.json +202 -0
  813. package/dist/workspace/records-review.schema.json +367 -0
  814. package/dist/workspace/records-since.js +317 -0
  815. package/dist/workspace/records-since.schema.json +218 -0
  816. package/dist/workspace/records-write.js +1229 -0
  817. package/dist/workspace/records.js +1345 -0
  818. package/dist/workspace/records.schema.json +604 -0
  819. package/dist/workspace/reference-kinds/app/package.json +10 -0
  820. package/dist/workspace/reference-kinds/app/workspace-kinds.json +45 -0
  821. package/dist/workspace/returns.js +303 -0
  822. package/dist/workspace/root-refusal.js +75 -0
  823. package/dist/workspace/run-statement.schema.json +622 -0
  824. package/dist/workspace/runs-cli.js +584 -0
  825. package/dist/workspace/runs-write.schema.json +994 -0
  826. package/dist/workspace/runs.js +708 -0
  827. package/dist/workspace/runs.schema.json +1257 -0
  828. package/dist/workspace/runtimes.js +76 -0
  829. package/dist/workspace/session-kinds.js +83 -0
  830. package/dist/workspace/signers.schema.json +206 -0
  831. package/dist/workspace/source-block.js +125 -0
  832. package/dist/workspace/squash.js +177 -0
  833. package/dist/workspace/status-gates.js +162 -0
  834. package/dist/workspace/status-stewards.js +330 -0
  835. package/dist/workspace/status.js +514 -0
  836. package/dist/workspace/status.schema.json +998 -0
  837. package/dist/workspace/steward-index.js +191 -0
  838. package/dist/workspace/symbols.js +188 -0
  839. package/dist/workspace/template-manifest.js +227 -0
  840. package/dist/workspace/template-pins.js +115 -0
  841. package/dist/workspace/trailer-joins.js +65 -0
  842. package/dist/workspace/trailers.js +111 -0
  843. package/dist/workspace/tree.js +136 -0
  844. package/dist/workspace/trust/attestor.js +63 -0
  845. package/dist/workspace/trust/dsse.js +108 -0
  846. package/dist/workspace/trust/evidence-cli.js +175 -0
  847. package/dist/workspace/trust/evidence.js +161 -0
  848. package/dist/workspace/trust/gate-seal.js +226 -0
  849. package/dist/workspace/trust/policy.js +190 -0
  850. package/dist/workspace/trust/provenance.js +180 -0
  851. package/dist/workspace/trust/rotation.js +298 -0
  852. package/dist/workspace/trust/run-commits.js +101 -0
  853. package/dist/workspace/trust/run-statement.js +182 -0
  854. package/dist/workspace/trust/seal.js +272 -0
  855. package/dist/workspace/trust/signers-cli.js +152 -0
  856. package/dist/workspace/trust/ssh-commit.js +178 -0
  857. package/dist/workspace/trust/test-repo.js +118 -0
  858. package/dist/workspace/trust/trust-files.js +193 -0
  859. package/dist/workspace/trust/verify-cli.js +63 -0
  860. package/dist/workspace/trust/verify.js +192 -0
  861. package/dist/workspace/which-chant.js +141 -0
  862. package/dist/workspace/wip-cli.js +95 -0
  863. package/dist/workspace/wip-write.schema.json +504 -0
  864. package/dist/workspace/wip.js +631 -0
  865. package/dist/workspace/wip.schema.json +334 -0
  866. package/dist/workspace/work-cli.js +448 -0
  867. package/dist/workspace/work-evidence.js +122 -0
  868. package/dist/workspace/work-evidence.schema.json +222 -0
  869. package/dist/workspace/work-history.schema.json +421 -0
  870. package/dist/workspace/work-lease.schema.json +246 -0
  871. package/dist/workspace/work-size.js +77 -0
  872. package/dist/workspace/work.js +283 -0
  873. package/dist/workspace/workspace-kinds.schema.json +259 -259
  874. package/dist/workspace/workspace-principals.schema.json +53 -53
  875. package/dist/workspace/write-lock-cli.js +105 -0
  876. package/dist/workspace/write-lock.js +424 -0
  877. package/dist/workspace/write-lock.schema.json +172 -0
  878. package/dist/workspace/write-scope.js +484 -0
  879. package/dist/yaml.js +459 -0
  880. package/package.json +2 -2
  881. package/src/cli/commands/check-lexicon-plugin.ts +2 -0
  882. package/src/cli/commands/lint.ts +3 -0
  883. package/src/cli/commands/migrate.ts +2 -0
  884. package/src/cli/compiled-cli.e2e.test.ts +165 -0
  885. package/src/cli/main.ts +121 -27
  886. package/src/cli/mcp/workspace-tools.ts +1 -1
  887. package/src/codegen/pinned-upgrade.ts +2 -0
  888. package/src/components/discover.ts +2 -0
  889. package/src/components/sandbox/driver.ts +3 -1
  890. package/src/config-import.ts +3 -0
  891. package/src/discovery/fold-import.ts +23 -14
  892. package/src/discovery/import.ts +2 -0
  893. package/src/discovery/sandbox/driver.ts +3 -1
  894. package/src/lexicon-module.ts +3 -0
  895. package/src/lint/config.ts +1 -1
  896. package/src/lint/discover.ts +28 -8
  897. package/src/lint/policy-import.ts +4 -1
  898. package/src/lint/rule-loader.ts +2 -0
  899. package/src/op/discover.ts +3 -0
  900. package/src/ts-loader.test.ts +23 -0
  901. package/src/ts-loader.ts +122 -0
  902. package/src/workspace/chant-migrations/chud-lexicon-exit.ts +1 -1
  903. package/src/workspace/declaration.ts +1 -1
  904. package/src/workspace/kinds.ts +1 -1
  905. package/src/workspace/lineage-migrations.ts +2 -0
  906. package/src/workspace/points.ts +1 -1
  907. package/src/workspace/principal-classes.ts +1 -1
@@ -0,0 +1,1338 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://intentius.io/chant/schemas/workspace/graph/v1/graph.schema.json",
4
+ "title": "chant workspace graph output",
5
+ "description": "What `chant workspace graph` prints, version 1 of the read contract for the composed workspace graph (#2524 D8, D15, #2536, #2537). Each member's `chant graph --format ir`, read under the member's own toolchain, with every node id prefixed by its member. Readers ignore fields they do not know; a field is only ever added within a version, and a member's node carries every field its own IR has. The reason and error codes are closed lists: a new code is a new contract version. Contract version 1 is written by chant 0.81.0 and newer; a reader that needs it refuses output whose `contract` it doesn't know. Every code is in the one closed list of `reason-codes.ts`.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "#/$defs/result"
9
+ },
10
+ {
11
+ "$ref": "#/$defs/failure"
12
+ }
13
+ ],
14
+ "$defs": {
15
+ "result": {
16
+ "description": "The declaration was read. Exit code 0 when every chant member was composed, 1 when one failed or couldn't be read; the document is printed either way.",
17
+ "type": "object",
18
+ "required": [
19
+ "$schema",
20
+ "contract",
21
+ "chant",
22
+ "at",
23
+ "version",
24
+ "workspace",
25
+ "members",
26
+ "nodes",
27
+ "edges",
28
+ "groups",
29
+ "exports",
30
+ "imports",
31
+ "links",
32
+ "collectors",
33
+ "records"
34
+ ],
35
+ "properties": {
36
+ "$schema": {
37
+ "const": "https://intentius.io/chant/schemas/workspace/graph/v1/graph.schema.json"
38
+ },
39
+ "contract": {
40
+ "const": 1
41
+ },
42
+ "chant": {
43
+ "type": "string",
44
+ "description": "The version of the chant that read the declaration and composed the graph. Each member's own chant is on its entry."
45
+ },
46
+ "at": {
47
+ "description": "The full commit id the workspace was read at (--at), or null for the working tree.",
48
+ "type": [
49
+ "string",
50
+ "null"
51
+ ],
52
+ "pattern": "^[0-9a-f]{40,64}$"
53
+ },
54
+ "error": false,
55
+ "version": {
56
+ "const": 1,
57
+ "description": "The version of the composed graph format. It moves only for a change a reader could not ignore."
58
+ },
59
+ "workspace": {
60
+ "type": "object",
61
+ "required": [
62
+ "name",
63
+ "root"
64
+ ],
65
+ "properties": {
66
+ "name": {
67
+ "type": "string",
68
+ "description": "The declared name. With `at`, it identifies the workspace."
69
+ },
70
+ "root": {
71
+ "type": "string",
72
+ "description": "The workspace root relative to the git root, with / separators, \".\" for the git root itself. An absolute path outside a git repository."
73
+ }
74
+ }
75
+ },
76
+ "members": {
77
+ "description": "Every member the run covered, in declaration order: composed, skipped or failed.",
78
+ "type": "array",
79
+ "items": {
80
+ "$ref": "#/$defs/member"
81
+ }
82
+ },
83
+ "nodes": {
84
+ "description": "Every composed member's nodes, sorted by id.",
85
+ "type": "array",
86
+ "items": {
87
+ "$ref": "#/$defs/node"
88
+ }
89
+ },
90
+ "edges": {
91
+ "type": "array",
92
+ "items": {
93
+ "$ref": "#/$defs/edge"
94
+ }
95
+ },
96
+ "groups": {
97
+ "type": "object",
98
+ "required": [
99
+ "byMember"
100
+ ],
101
+ "properties": {
102
+ "byMember": {
103
+ "type": "object",
104
+ "additionalProperties": {
105
+ "type": "array",
106
+ "items": {
107
+ "type": "string"
108
+ }
109
+ },
110
+ "description": "Each composed member's node ids."
111
+ },
112
+ "byLexicon": {
113
+ "type": "object",
114
+ "additionalProperties": {
115
+ "type": "array",
116
+ "items": {
117
+ "type": "string"
118
+ }
119
+ },
120
+ "description": "Keys kept, ids merged across members."
121
+ },
122
+ "byComposite": {
123
+ "type": "object",
124
+ "additionalProperties": {
125
+ "type": "array",
126
+ "items": {
127
+ "type": "string"
128
+ }
129
+ },
130
+ "description": "Keys kept, ids merged across members."
131
+ },
132
+ "byStack": {
133
+ "type": "object",
134
+ "additionalProperties": {
135
+ "type": "array",
136
+ "items": {
137
+ "type": "string"
138
+ }
139
+ },
140
+ "description": "Keys prefixed with the member."
141
+ },
142
+ "byContainer": {
143
+ "type": "object",
144
+ "additionalProperties": {
145
+ "type": "array",
146
+ "items": {
147
+ "type": "string"
148
+ }
149
+ },
150
+ "description": "Keys prefixed with the member."
151
+ },
152
+ "byWave": {
153
+ "type": "object",
154
+ "additionalProperties": {
155
+ "type": "array",
156
+ "items": {
157
+ "type": "string"
158
+ }
159
+ },
160
+ "description": "Keys prefixed with the member."
161
+ }
162
+ }
163
+ },
164
+ "exports": {
165
+ "type": "array",
166
+ "items": {
167
+ "type": "object",
168
+ "required": [
169
+ "name",
170
+ "member"
171
+ ],
172
+ "properties": {
173
+ "name": {
174
+ "type": "string"
175
+ },
176
+ "node": {
177
+ "type": "string"
178
+ },
179
+ "attr": {
180
+ "type": "string"
181
+ },
182
+ "member": {
183
+ "type": "string"
184
+ }
185
+ }
186
+ }
187
+ },
188
+ "imports": {
189
+ "type": "array",
190
+ "items": {
191
+ "type": "object",
192
+ "required": [
193
+ "name",
194
+ "node",
195
+ "member"
196
+ ],
197
+ "properties": {
198
+ "name": {
199
+ "type": "string"
200
+ },
201
+ "node": {
202
+ "type": "string"
203
+ },
204
+ "member": {
205
+ "type": "string"
206
+ }
207
+ }
208
+ }
209
+ },
210
+ "derivedAttrs": {
211
+ "type": "object",
212
+ "additionalProperties": {
213
+ "type": "array",
214
+ "items": {
215
+ "type": "string"
216
+ }
217
+ },
218
+ "description": "Attributes derived per resource kind, merged across members."
219
+ },
220
+ "links": {
221
+ "type": "array",
222
+ "description": "Member links (#2524 D6, #2539): the ones declared on a consumer and the ones inferred from join keys, resolved against the composed graph. A reader draws a row from its `from` node to its `to` node when both are set. With --kind, the links of the records read follow (#2549): an `asset` row for each file a record pins by hash, and a `constrains` row for each member or path it governs. These rows have `record` and `target` instead of `consumer` and `producer`.",
223
+ "items": {
224
+ "$ref": "#/$defs/link"
225
+ }
226
+ },
227
+ "collectors": {
228
+ "type": "array",
229
+ "description": "The collector pipelines and exporters of each member that declares a collector, in declaration order (#2559). A member reports them from its own IR (`meta.collector`), which the lexicon that types the collector config writes, so chant itself reads no collector config. Empty when no member declares one. A reader joins a telemetry endpoint to the pipeline or exporter it names through `exporters[].endpoints` and `pipelines[].id`.",
230
+ "items": {
231
+ "$ref": "#/$defs/collector"
232
+ }
233
+ },
234
+ "records": {
235
+ "type": "array",
236
+ "description": "The records read with --kind (#2524 D4, #2549), sorted by path; empty without it. A record link in `links` names its record by id.",
237
+ "items": {
238
+ "$ref": "#/$defs/record"
239
+ }
240
+ },
241
+ "plantable": {
242
+ "description": "Added in contract 1 by #3146. Whether a host such as a studio's planter can plant the workspace as one box: exactly one member's box block declares services, read from the declaration at the revision read. Not a check: a records-only or infra workspace is valid and simply not plantable.",
243
+ "$ref": "#/$defs/plantable"
244
+ }
245
+ }
246
+ },
247
+ "member": {
248
+ "type": "object",
249
+ "required": [
250
+ "name",
251
+ "dir",
252
+ "kind",
253
+ "status",
254
+ "reason",
255
+ "chant",
256
+ "irVersion"
257
+ ],
258
+ "properties": {
259
+ "name": {
260
+ "type": "string"
261
+ },
262
+ "dir": {
263
+ "type": "string",
264
+ "description": "Relative to the workspace root, with / separators; \".\" is the root member."
265
+ },
266
+ "kind": {
267
+ "type": "string"
268
+ },
269
+ "status": {
270
+ "enum": [
271
+ "composed",
272
+ "skipped",
273
+ "failed"
274
+ ]
275
+ },
276
+ "reason": {
277
+ "oneOf": [
278
+ {
279
+ "type": "null"
280
+ },
281
+ {
282
+ "type": "object",
283
+ "required": [
284
+ "code",
285
+ "message"
286
+ ],
287
+ "properties": {
288
+ "code": {
289
+ "enum": [
290
+ "kind-not-run",
291
+ "dir-missing",
292
+ "unknown-kind",
293
+ "kind-probe-failed",
294
+ "command-failed",
295
+ "output-unreadable",
296
+ "ir-version-unsupported"
297
+ ]
298
+ },
299
+ "message": {
300
+ "type": "string"
301
+ }
302
+ }
303
+ }
304
+ ]
305
+ },
306
+ "chant": {
307
+ "type": [
308
+ "string",
309
+ "null"
310
+ ],
311
+ "description": "The chant version the member's toolchain reported, or null when a chant older than member-run read it."
312
+ },
313
+ "irVersion": {
314
+ "type": [
315
+ "integer",
316
+ "null"
317
+ ],
318
+ "description": "The IR version the member printed, or null when it printed none and was read as version 1."
319
+ },
320
+ "live": {
321
+ "type": "boolean",
322
+ "description": "Whether the member was read with --live (#2875): its graph is the account as it stands, and its nodes carry whatever _drift, _overlay and _behaviour attributes its chant wrote. false for a source read and for a member that did not run. A document from a chant before #2875 has no live field, and a reader may take that as false."
323
+ },
324
+ "readAt": {
325
+ "type": "string",
326
+ "description": "For a live read, as an ISO 8601 time: when the member's read finished. A live member of a toolchain whose member-run names no time gets the time its toolchain's process ended."
327
+ },
328
+ "cached": {
329
+ "type": "boolean",
330
+ "description": "Whether chant's per-member cache answered this read (#2876). Present on composed members. A cached read is the output the member's own chant printed for the same stamp, toolchain, command line and environment."
331
+ },
332
+ "stamp": {
333
+ "type": [
334
+ "string",
335
+ "null"
336
+ ],
337
+ "description": "What the per-member cache keys this read on (#2876): sha256 over the member's files and install state, or over the commit id with --at. Present on composed members; null for a live read or when no stamp could be taken. Two reads of a member with equal stamps read the same source."
338
+ },
339
+ "meta": {
340
+ "type": "object",
341
+ "description": "The member IR's whole-read facts."
342
+ },
343
+ "pipeline": {
344
+ "description": "The member IR's pipeline projection, when it has one."
345
+ },
346
+ "nested": {
347
+ "type": "object",
348
+ "description": "For a member of kind workspace (#2551): the nested workspace, read read-only through its own chant workspace graph. Its nodes, edges, exports and imports are in the outer sections with `<member>/<nested member>/<id>` ids, and each node names its nested member in `nested`. The outer workspace never writes inside it.",
349
+ "required": [
350
+ "name",
351
+ "contract",
352
+ "members",
353
+ "links"
354
+ ],
355
+ "properties": {
356
+ "name": {
357
+ "type": "string",
358
+ "description": "The nested declaration's name."
359
+ },
360
+ "contract": {
361
+ "type": "integer",
362
+ "description": "The contract version of the nested read's document."
363
+ },
364
+ "members": {
365
+ "type": "array",
366
+ "items": {
367
+ "$ref": "#/$defs/member"
368
+ },
369
+ "description": "The nested workspace's members as its own graph lists them, with their own names and directories (relative to the nested root)."
370
+ },
371
+ "links": {
372
+ "type": "array",
373
+ "items": {
374
+ "$ref": "#/$defs/link"
375
+ },
376
+ "description": "The nested workspace's links, naming its members as the nested side does."
377
+ }
378
+ }
379
+ },
380
+ "box": {
381
+ "description": "Added in contract 1 by #3146. The factory and listing the member's box block declares (ws-077), read from the declaration at the revision read, so --at gives them as they were. null when the box declares neither, or the member has no box block; the rest of the box block is in chant workspace status --json.",
382
+ "oneOf": [
383
+ {
384
+ "type": "null"
385
+ },
386
+ {
387
+ "type": "object",
388
+ "required": [
389
+ "factory",
390
+ "listing"
391
+ ],
392
+ "properties": {
393
+ "factory": {
394
+ "oneOf": [
395
+ {
396
+ "type": "null"
397
+ },
398
+ {
399
+ "$ref": "#/$defs/factory"
400
+ }
401
+ ]
402
+ },
403
+ "listing": {
404
+ "oneOf": [
405
+ {
406
+ "type": "null"
407
+ },
408
+ {
409
+ "$ref": "#/$defs/listing"
410
+ }
411
+ ]
412
+ }
413
+ }
414
+ }
415
+ ]
416
+ }
417
+ },
418
+ "if": {
419
+ "type": "object",
420
+ "properties": {
421
+ "status": {
422
+ "const": "composed"
423
+ }
424
+ },
425
+ "required": [
426
+ "status"
427
+ ]
428
+ },
429
+ "then": {
430
+ "type": "object",
431
+ "properties": {
432
+ "reason": {
433
+ "type": "null"
434
+ }
435
+ }
436
+ },
437
+ "else": {
438
+ "type": "object",
439
+ "properties": {
440
+ "reason": {
441
+ "type": "object"
442
+ }
443
+ }
444
+ }
445
+ },
446
+ "node": {
447
+ "type": "object",
448
+ "required": [
449
+ "id",
450
+ "kind",
451
+ "lexicon",
452
+ "attrs",
453
+ "member"
454
+ ],
455
+ "properties": {
456
+ "id": {
457
+ "type": "string",
458
+ "description": "`<member>/<id>`: the member's own id with the member's name in front."
459
+ },
460
+ "kind": {
461
+ "type": "string"
462
+ },
463
+ "lexicon": {
464
+ "type": "string"
465
+ },
466
+ "attrs": {
467
+ "type": "object",
468
+ "description": "The member's attributes, with every `$ref` prefixed like the ids."
469
+ },
470
+ "member": {
471
+ "type": "string"
472
+ },
473
+ "compositeParent": {
474
+ "type": "string"
475
+ },
476
+ "compositeInstance": {
477
+ "type": "string"
478
+ },
479
+ "runtimeOwner": {
480
+ "type": "string"
481
+ },
482
+ "nested": {
483
+ "type": "string",
484
+ "description": "For a node read through a nested workspace (#2551): the nested workspace's member it belongs to. `member` is then the outer member, and the id is `<member>/<nested>/<id>`."
485
+ },
486
+ "sourceLoc": {
487
+ "type": "object",
488
+ "required": [
489
+ "file"
490
+ ],
491
+ "properties": {
492
+ "file": {
493
+ "type": "string",
494
+ "description": "Relative to the member's directory."
495
+ },
496
+ "line": {
497
+ "type": "integer"
498
+ }
499
+ }
500
+ }
501
+ }
502
+ },
503
+ "edge": {
504
+ "type": "object",
505
+ "required": [
506
+ "from",
507
+ "to",
508
+ "kind",
509
+ "member"
510
+ ],
511
+ "properties": {
512
+ "from": {
513
+ "type": "string"
514
+ },
515
+ "to": {
516
+ "type": "string"
517
+ },
518
+ "kind": {
519
+ "type": "string"
520
+ },
521
+ "viaAttr": {
522
+ "type": "string"
523
+ },
524
+ "toAttr": {
525
+ "type": "string"
526
+ },
527
+ "member": {
528
+ "type": "string"
529
+ }
530
+ }
531
+ },
532
+ "failure": {
533
+ "description": "The declaration could not be read, and nothing was composed. Exit code 1.",
534
+ "type": "object",
535
+ "required": [
536
+ "$schema",
537
+ "contract",
538
+ "chant",
539
+ "error"
540
+ ],
541
+ "properties": {
542
+ "$schema": {
543
+ "const": "https://intentius.io/chant/schemas/workspace/graph/v1/graph.schema.json"
544
+ },
545
+ "contract": {
546
+ "const": 1
547
+ },
548
+ "chant": {
549
+ "type": "string"
550
+ },
551
+ "error": {
552
+ "type": "object",
553
+ "required": [
554
+ "code",
555
+ "message",
556
+ "location"
557
+ ],
558
+ "properties": {
559
+ "code": {
560
+ "enum": [
561
+ "declaration-missing",
562
+ "declaration-ambiguous",
563
+ "declaration-unparseable",
564
+ "declaration-invalid",
565
+ "placement-invalid",
566
+ "reader-too-old",
567
+ "root-chant-required",
568
+ "not-a-git-repository",
569
+ "revision-unknown",
570
+ "live-at-revision"
571
+ ]
572
+ },
573
+ "message": {
574
+ "type": "string"
575
+ },
576
+ "location": {
577
+ "description": "Where in the declaration the problem is, or null when it is not in the file.",
578
+ "oneOf": [
579
+ {
580
+ "type": "null"
581
+ },
582
+ {
583
+ "type": "object",
584
+ "required": [
585
+ "file",
586
+ "line",
587
+ "column"
588
+ ],
589
+ "properties": {
590
+ "file": {
591
+ "type": "string"
592
+ },
593
+ "line": {
594
+ "type": "integer",
595
+ "minimum": 1
596
+ },
597
+ "column": {
598
+ "type": "integer",
599
+ "minimum": 1
600
+ }
601
+ }
602
+ }
603
+ ]
604
+ }
605
+ }
606
+ },
607
+ "members": false,
608
+ "nodes": false
609
+ }
610
+ },
611
+ "link": {
612
+ "oneOf": [
613
+ {
614
+ "type": "object",
615
+ "required": [
616
+ "consumer",
617
+ "kind",
618
+ "origin",
619
+ "resolves",
620
+ "reason",
621
+ "status",
622
+ "producer",
623
+ "output",
624
+ "label",
625
+ "input"
626
+ ],
627
+ "properties": {
628
+ "consumer": {
629
+ "type": "string",
630
+ "description": "The member that consumes."
631
+ },
632
+ "kind": {
633
+ "type": "string",
634
+ "description": "What the link joins: `output`, or `telemetry` (#2558), where the consumer sends its telemetry to a pipeline or exporter of the producer's collector and `output` names it."
635
+ },
636
+ "origin": {
637
+ "enum": [
638
+ "declared",
639
+ "inferred:joinKey"
640
+ ]
641
+ },
642
+ "resolves": {
643
+ "const": "source"
644
+ },
645
+ "reason": {
646
+ "type": [
647
+ "string",
648
+ "null"
649
+ ],
650
+ "description": "Why the row is not resolved, or null."
651
+ },
652
+ "from": {
653
+ "type": "string",
654
+ "description": "The consumer's parameter node, when known."
655
+ },
656
+ "input": {
657
+ "type": [
658
+ "string",
659
+ "null"
660
+ ]
661
+ },
662
+ "status": {
663
+ "enum": [
664
+ "resolved",
665
+ "missing",
666
+ "unresolved",
667
+ "invalid"
668
+ ]
669
+ },
670
+ "producer": {
671
+ "type": "string"
672
+ },
673
+ "output": {
674
+ "type": "string"
675
+ },
676
+ "label": {
677
+ "enum": [
678
+ "exact",
679
+ "folded"
680
+ ]
681
+ },
682
+ "to": {
683
+ "type": "string",
684
+ "description": "The producer's output node, when known."
685
+ },
686
+ "pointer": {
687
+ "type": "string",
688
+ "description": "The declared link's JSON Pointer in the declaration; left out of the graph for a declared link."
689
+ },
690
+ "protocol": {
691
+ "enum": [
692
+ "grpc",
693
+ "http/protobuf",
694
+ "http/json"
695
+ ],
696
+ "description": "A telemetry link: the OTLP protocol it states."
697
+ },
698
+ "target": {
699
+ "enum": [
700
+ "pipeline",
701
+ "exporter"
702
+ ],
703
+ "description": "A telemetry link that found its target: whether `output` named a pipeline or an exporter in the producer's `collectors` entry."
704
+ }
705
+ }
706
+ },
707
+ {
708
+ "type": "object",
709
+ "required": [
710
+ "consumer",
711
+ "kind",
712
+ "origin",
713
+ "resolves",
714
+ "reason",
715
+ "status",
716
+ "input",
717
+ "candidates"
718
+ ],
719
+ "properties": {
720
+ "consumer": {
721
+ "type": "string",
722
+ "description": "The member that consumes."
723
+ },
724
+ "kind": {
725
+ "type": "string",
726
+ "description": "What the link joins, such as output."
727
+ },
728
+ "origin": {
729
+ "enum": [
730
+ "declared",
731
+ "inferred:joinKey"
732
+ ]
733
+ },
734
+ "resolves": {
735
+ "const": "source"
736
+ },
737
+ "reason": {
738
+ "type": [
739
+ "string",
740
+ "null"
741
+ ],
742
+ "description": "Why the row is not resolved, or null."
743
+ },
744
+ "from": {
745
+ "type": "string",
746
+ "description": "The consumer's parameter node, when known."
747
+ },
748
+ "input": {
749
+ "type": "string"
750
+ },
751
+ "status": {
752
+ "const": "ambiguous"
753
+ },
754
+ "candidates": {
755
+ "type": "array",
756
+ "items": {
757
+ "type": "object",
758
+ "required": [
759
+ "producer",
760
+ "output",
761
+ "label"
762
+ ],
763
+ "properties": {
764
+ "producer": {
765
+ "type": "string"
766
+ },
767
+ "output": {
768
+ "type": "string"
769
+ },
770
+ "label": {
771
+ "enum": [
772
+ "exact",
773
+ "folded"
774
+ ]
775
+ },
776
+ "to": {
777
+ "type": "string"
778
+ }
779
+ }
780
+ }
781
+ }
782
+ }
783
+ },
784
+ {
785
+ "type": "object",
786
+ "description": "A record link (#2549): from a current record to a file it pins (kind asset) or to a member or path it constrains (kind constrains). Superseded records have none. A reader finds the artifacts behind a file by taking the decisions whose constrains cover it and then their asset rows.",
787
+ "required": [
788
+ "kind",
789
+ "origin",
790
+ "resolves",
791
+ "recordKind",
792
+ "record",
793
+ "recordPath",
794
+ "target",
795
+ "member",
796
+ "status",
797
+ "reason"
798
+ ],
799
+ "properties": {
800
+ "kind": {
801
+ "enum": [
802
+ "asset",
803
+ "constrains"
804
+ ]
805
+ },
806
+ "origin": {
807
+ "const": "declared"
808
+ },
809
+ "resolves": {
810
+ "const": "source"
811
+ },
812
+ "recordKind": {
813
+ "type": "string",
814
+ "description": "The record's kind, such as decision."
815
+ },
816
+ "record": {
817
+ "type": "string",
818
+ "description": "The record's id."
819
+ },
820
+ "recordPath": {
821
+ "type": "string",
822
+ "description": "The record file, from the repository root."
823
+ },
824
+ "target": {
825
+ "type": "string",
826
+ "description": "For asset, the pinned path from the workspace root. For constrains, the entry as written: member:<name> or path:<path>."
827
+ },
828
+ "member": {
829
+ "type": [
830
+ "string",
831
+ "null"
832
+ ],
833
+ "description": "The member the target names or sits in; null when no member does."
834
+ },
835
+ "status": {
836
+ "enum": [
837
+ "pinned",
838
+ "drifted",
839
+ "missing",
840
+ "stale",
841
+ "resolved"
842
+ ],
843
+ "description": "For asset: pinned, drifted, missing or stale, as records reports the pin. For constrains: resolved, or missing when the member is not declared or the path does not exist."
844
+ },
845
+ "reason": {
846
+ "type": [
847
+ "string",
848
+ "null"
849
+ ],
850
+ "description": "Why the row is not pinned or resolved, or null."
851
+ },
852
+ "sha256": {
853
+ "type": "string",
854
+ "pattern": "^[0-9a-f]{64}$",
855
+ "description": "For asset: the pinned hash."
856
+ },
857
+ "actual": {
858
+ "type": [
859
+ "string",
860
+ "null"
861
+ ],
862
+ "pattern": "^[0-9a-f]{64}$",
863
+ "description": "For asset: the hash of the file in the tree read, or null when it is missing."
864
+ }
865
+ }
866
+ }
867
+ ]
868
+ },
869
+ "collector": {
870
+ "type": "object",
871
+ "required": [
872
+ "member",
873
+ "pipelines",
874
+ "components",
875
+ "exporters"
876
+ ],
877
+ "properties": {
878
+ "member": {
879
+ "type": "string",
880
+ "description": "The member whose source declares the collector."
881
+ },
882
+ "pipelines": {
883
+ "type": "array",
884
+ "description": "Each pipeline under `service.pipelines`.",
885
+ "items": {
886
+ "type": "object",
887
+ "required": [
888
+ "id",
889
+ "signal",
890
+ "receivers",
891
+ "processors",
892
+ "exporters"
893
+ ],
894
+ "properties": {
895
+ "id": {
896
+ "type": "string",
897
+ "description": "The pipeline id, such as `traces` or `traces/backend`."
898
+ },
899
+ "signal": {
900
+ "type": "string",
901
+ "description": "`traces`, `metrics` or `logs`."
902
+ },
903
+ "receivers": {
904
+ "type": "array",
905
+ "items": {
906
+ "type": "string"
907
+ }
908
+ },
909
+ "processors": {
910
+ "type": "array",
911
+ "items": {
912
+ "type": "string"
913
+ }
914
+ },
915
+ "exporters": {
916
+ "type": "array",
917
+ "items": {
918
+ "type": "string"
919
+ }
920
+ }
921
+ }
922
+ }
923
+ },
924
+ "components": {
925
+ "type": "array",
926
+ "description": "Every receiver, processor, exporter, connector and extension, with the addresses its config states.",
927
+ "items": {
928
+ "type": "object",
929
+ "required": [
930
+ "id",
931
+ "kind",
932
+ "type",
933
+ "endpoints",
934
+ "protocols",
935
+ "pipelines"
936
+ ],
937
+ "properties": {
938
+ "id": {
939
+ "type": "string",
940
+ "description": "The collector id, `type` or `type/name`."
941
+ },
942
+ "kind": {
943
+ "type": "string",
944
+ "description": "`receiver`, `processor`, `exporter`, `connector` or `extension`."
945
+ },
946
+ "type": {
947
+ "type": "string"
948
+ },
949
+ "endpoints": {
950
+ "type": "array",
951
+ "items": {
952
+ "type": "string"
953
+ }
954
+ },
955
+ "protocols": {
956
+ "type": "array",
957
+ "items": {
958
+ "type": "string"
959
+ },
960
+ "description": "The wire protocols the component speaks, as OTLP SDKs name them: `grpc`, `http/protobuf` or `http/json`. Empty when its definition states none, which a telemetry link's protocol check reads as unknown."
961
+ },
962
+ "pipelines": {
963
+ "type": "array",
964
+ "items": {
965
+ "type": "string"
966
+ }
967
+ }
968
+ }
969
+ }
970
+ },
971
+ "exporters": {
972
+ "type": "array",
973
+ "description": "The exporters again, with the signals that reach each: where the member's telemetry is sent.",
974
+ "items": {
975
+ "type": "object",
976
+ "required": [
977
+ "id",
978
+ "type",
979
+ "endpoints",
980
+ "pipelines",
981
+ "signals"
982
+ ],
983
+ "properties": {
984
+ "id": {
985
+ "type": "string"
986
+ },
987
+ "type": {
988
+ "type": "string"
989
+ },
990
+ "endpoints": {
991
+ "type": "array",
992
+ "items": {
993
+ "type": "string"
994
+ }
995
+ },
996
+ "pipelines": {
997
+ "type": "array",
998
+ "items": {
999
+ "type": "string"
1000
+ }
1001
+ },
1002
+ "signals": {
1003
+ "type": "array",
1004
+ "items": {
1005
+ "type": "string"
1006
+ }
1007
+ }
1008
+ }
1009
+ }
1010
+ }
1011
+ }
1012
+ },
1013
+ "record": {
1014
+ "type": "object",
1015
+ "required": [
1016
+ "kind",
1017
+ "id",
1018
+ "path",
1019
+ "state",
1020
+ "valid",
1021
+ "supersededBy",
1022
+ "remediatedBy"
1023
+ ],
1024
+ "properties": {
1025
+ "kind": {
1026
+ "type": "string",
1027
+ "description": "The record kind's name, such as decision."
1028
+ },
1029
+ "id": {
1030
+ "type": [
1031
+ "string",
1032
+ "null"
1033
+ ]
1034
+ },
1035
+ "path": {
1036
+ "type": "string",
1037
+ "description": "The record file, from the repository root, with / separators."
1038
+ },
1039
+ "state": {
1040
+ "type": [
1041
+ "string",
1042
+ "null"
1043
+ ]
1044
+ },
1045
+ "valid": {
1046
+ "type": "boolean",
1047
+ "description": "As chant workspace records reports it."
1048
+ },
1049
+ "supersededBy": {
1050
+ "type": [
1051
+ "string",
1052
+ "null"
1053
+ ]
1054
+ },
1055
+ "remediatedBy": {
1056
+ "description": "Added in contract 1 by #2774. The ids of records whose remediates link names this one.",
1057
+ "type": "array",
1058
+ "items": {
1059
+ "type": "string"
1060
+ }
1061
+ }
1062
+ }
1063
+ },
1064
+ "plantable": {
1065
+ "type": "object",
1066
+ "required": [
1067
+ "plantable",
1068
+ "box",
1069
+ "reason"
1070
+ ],
1071
+ "properties": {
1072
+ "plantable": {
1073
+ "type": "boolean"
1074
+ },
1075
+ "box": {
1076
+ "type": [
1077
+ "string",
1078
+ "null"
1079
+ ],
1080
+ "description": "The member whose box block declares services, or null when the workspace isn't plantable."
1081
+ },
1082
+ "reason": {
1083
+ "description": "Why the workspace isn't plantable, or null when it is.",
1084
+ "oneOf": [
1085
+ {
1086
+ "type": "null"
1087
+ },
1088
+ {
1089
+ "type": "object",
1090
+ "required": [
1091
+ "code",
1092
+ "message"
1093
+ ],
1094
+ "properties": {
1095
+ "code": {
1096
+ "enum": [
1097
+ "box-none",
1098
+ "box-several"
1099
+ ]
1100
+ },
1101
+ "message": {
1102
+ "type": "string"
1103
+ }
1104
+ }
1105
+ }
1106
+ ]
1107
+ }
1108
+ }
1109
+ },
1110
+ "factory": {
1111
+ "type": "object",
1112
+ "required": [
1113
+ "builds",
1114
+ "check",
1115
+ "checks",
1116
+ "builders",
1117
+ "tiers",
1118
+ "builderFor",
1119
+ "publish"
1120
+ ],
1121
+ "properties": {
1122
+ "builds": {
1123
+ "type": "array",
1124
+ "minItems": 1,
1125
+ "items": {
1126
+ "type": "string"
1127
+ },
1128
+ "description": "The members the factory builds, in declaration order. A work item a person asks for constrains member:<the first>."
1129
+ },
1130
+ "check": {
1131
+ "description": "The verdict command, run from the workspace root, and what it is; null when none is declared.",
1132
+ "oneOf": [
1133
+ {
1134
+ "type": "null"
1135
+ },
1136
+ {
1137
+ "type": "object",
1138
+ "required": [
1139
+ "run",
1140
+ "kind"
1141
+ ],
1142
+ "properties": {
1143
+ "run": {
1144
+ "type": "string"
1145
+ },
1146
+ "kind": {
1147
+ "enum": [
1148
+ "test",
1149
+ "build",
1150
+ "lint",
1151
+ "plan",
1152
+ "conformance"
1153
+ ]
1154
+ }
1155
+ }
1156
+ }
1157
+ ]
1158
+ },
1159
+ "checks": {
1160
+ "type": [
1161
+ "string",
1162
+ "null"
1163
+ ],
1164
+ "description": "Where a work item's builder writes its check, from the workspace root, or null for the orchestrator's choice."
1165
+ },
1166
+ "builders": {
1167
+ "type": [
1168
+ "string",
1169
+ "null"
1170
+ ],
1171
+ "description": "The member that declares the builder agents, or null."
1172
+ },
1173
+ "tiers": {
1174
+ "type": "array",
1175
+ "items": {
1176
+ "type": "object",
1177
+ "required": [
1178
+ "tier",
1179
+ "agent",
1180
+ "kinds",
1181
+ "session"
1182
+ ],
1183
+ "properties": {
1184
+ "tier": {
1185
+ "type": "string"
1186
+ },
1187
+ "agent": {
1188
+ "type": "string"
1189
+ },
1190
+ "kinds": {
1191
+ "oneOf": [
1192
+ {
1193
+ "type": "null"
1194
+ },
1195
+ {
1196
+ "type": "array",
1197
+ "items": {
1198
+ "type": "string"
1199
+ }
1200
+ }
1201
+ ]
1202
+ },
1203
+ "session": {
1204
+ "type": [
1205
+ "string",
1206
+ "null"
1207
+ ]
1208
+ }
1209
+ }
1210
+ },
1211
+ "description": "Which builder agent builds at which tier, as declared (#3152, ws-094), each { tier, agent, kinds, session } with kinds and session null when not declared; empty when none is. Added in contract 1 by chant 0.103.0."
1212
+ },
1213
+ "builderFor": {
1214
+ "type": "object",
1215
+ "additionalProperties": {
1216
+ "type": "object",
1217
+ "additionalProperties": {
1218
+ "type": "object",
1219
+ "required": [
1220
+ "agent",
1221
+ "session"
1222
+ ],
1223
+ "properties": {
1224
+ "agent": {
1225
+ "type": "string"
1226
+ },
1227
+ "session": {
1228
+ "type": [
1229
+ "string",
1230
+ "null"
1231
+ ]
1232
+ }
1233
+ }
1234
+ }
1235
+ },
1236
+ "description": "The builder for each member the factory builds, by tier (#3152): member name, then tier, then { agent, session }. For a member the entry naming its kind is used, else the tier's entry with no kinds; a tier with neither is left out. Added in contract 1 by chant 0.103.0."
1237
+ },
1238
+ "publish": {
1239
+ "description": "Where a finished build is published, or null when the factory doesn't publish past the box.",
1240
+ "oneOf": [
1241
+ {
1242
+ "type": "null"
1243
+ },
1244
+ {
1245
+ "type": "object",
1246
+ "required": [
1247
+ "forge",
1248
+ "repo",
1249
+ "base",
1250
+ "branchPrefix",
1251
+ "head"
1252
+ ],
1253
+ "properties": {
1254
+ "forge": {
1255
+ "const": "github"
1256
+ },
1257
+ "repo": {
1258
+ "type": "string",
1259
+ "description": "owner/name: where the pull request is opened."
1260
+ },
1261
+ "base": {
1262
+ "type": [
1263
+ "string",
1264
+ "null"
1265
+ ],
1266
+ "description": "The branch the pull request targets, or null for the repository's default branch."
1267
+ },
1268
+ "branchPrefix": {
1269
+ "type": "string",
1270
+ "description": "What the published branch's name starts with, before the work item's id. chant/work/ unless declared."
1271
+ },
1272
+ "head": {
1273
+ "type": [
1274
+ "string",
1275
+ "null"
1276
+ ],
1277
+ "description": "owner/name of the fork the branch is pushed to, or null to push to repo."
1278
+ }
1279
+ }
1280
+ }
1281
+ ]
1282
+ }
1283
+ }
1284
+ },
1285
+ "listing": {
1286
+ "type": "object",
1287
+ "required": [
1288
+ "published",
1289
+ "title",
1290
+ "line",
1291
+ "cover"
1292
+ ],
1293
+ "properties": {
1294
+ "published": {
1295
+ "type": "boolean",
1296
+ "description": "Whether the box is listed; true unless declared otherwise."
1297
+ },
1298
+ "title": {
1299
+ "type": "string",
1300
+ "description": "Empty when not declared: a reader shows a name of its own."
1301
+ },
1302
+ "line": {
1303
+ "type": "string",
1304
+ "description": "Empty when not declared."
1305
+ },
1306
+ "cover": {
1307
+ "description": "The cover image, or null when none is declared.",
1308
+ "oneOf": [
1309
+ {
1310
+ "type": "null"
1311
+ },
1312
+ {
1313
+ "type": "object",
1314
+ "required": [
1315
+ "path",
1316
+ "sha256"
1317
+ ],
1318
+ "properties": {
1319
+ "path": {
1320
+ "type": "string",
1321
+ "description": "From the workspace root."
1322
+ },
1323
+ "sha256": {
1324
+ "type": [
1325
+ "string",
1326
+ "null"
1327
+ ],
1328
+ "pattern": "^[0-9a-f]{64}$",
1329
+ "description": "The sha256 of the file's bytes at the revision read, or null when it can't be read."
1330
+ }
1331
+ }
1332
+ }
1333
+ ]
1334
+ }
1335
+ }
1336
+ }
1337
+ }
1338
+ }