@kungfu-tech/buildchain 4.0.2-alpha.9 → 4.0.3-alpha.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 (281) hide show
  1. package/AGENTS.md +14 -5
  2. package/CONTRIBUTING.md +58 -0
  3. package/README.md +3 -3
  4. package/actions/promote-buildchain-ref/README.md +1 -1
  5. package/actions/release-candidate-promote/README.md +31 -0
  6. package/architecture/agent-change-map.md +190 -126
  7. package/architecture/{v4-architecture-constitution.md → architecture-constitution.md} +33 -30
  8. package/architecture/{v3-core-mechanism-inventory.md → baseline-core-mechanism-inventory.md} +1 -1
  9. package/architecture/{v4-bootstrap-authority.json → bootstrap-authority.json} +3 -3
  10. package/architecture/{v3-v4-capability-closure.md → capability-parity-closure.md} +3 -3
  11. package/architecture/{v3-v4-live-capability-inventory.json → capability-parity-live-capability-inventory.json} +4 -4
  12. package/architecture/{v4-capability-state-machine-manifest.json → capability-state-machine-manifest.json} +2 -2
  13. package/architecture/{v4-capability-state-machine-manifest.schema.json → capability-state-machine-manifest.schema.json} +2 -2
  14. package/architecture/ci-lane-change-budget.json +384 -0
  15. package/architecture/{v4-cross-platform-adopter-qualification.json → cross-platform-adopter-qualification.json} +4 -4
  16. package/architecture/{v4-delivery-authority-parity.json → delivery-authority-parity.json} +17 -17
  17. package/architecture/{v4-delivery-warrant-shadow-bootstrap-plan.json → delivery-warrant-shadow-bootstrap-plan.json} +4 -4
  18. package/architecture/{v4-delivery-warrant-shadow-bootstrap-plan.md → delivery-warrant-shadow-bootstrap-plan.md} +7 -7
  19. package/architecture/{v4-floating-consumer-policy.json → floating-consumer-policy.json} +2 -2
  20. package/architecture/{v4-floating-consumer-policy.md → floating-consumer-policy.md} +1 -1
  21. package/architecture/implementation-naming.json +1273 -0
  22. package/architecture/internal-capabilities.json +201 -154
  23. package/architecture/maintainability-debt.json +205 -146
  24. package/architecture/maintainability-policy.json +37 -33
  25. package/architecture/{v4-next-development-parity.json → next-development-parity.json} +12 -12
  26. package/architecture/{v4-partial-mutation-recovery-qualification.json → partial-mutation-recovery-qualification.json} +8 -5
  27. package/architecture/{v4-platform-stage-checkpoints.json → platform-stage-checkpoints.json} +3 -3
  28. package/architecture/{v4-provider-operation-journal-contract.json → provider-operation-journal-contract.json} +10 -7
  29. package/architecture/publication-facade-patches.json +64 -0
  30. package/architecture/{v4-publication-rehearsal-parity.json → publication-rehearsal-parity.json} +4 -4
  31. package/architecture/{v4-release-activation-shadow-domain.json → release-activation-shadow-domain.json} +9 -6
  32. package/architecture/release-tail-contract-inventory.json +6 -6
  33. package/architecture/{v4-release-topology.json → release-topology.json} +163 -72
  34. package/architecture/{v4-release-train-parity.json → release-train-parity.json} +2 -2
  35. package/architecture/{v4-runtime-ref-resume-authority.json → runtime-ref-resume-authority.json} +1 -1
  36. package/architecture/{v4-runtime-semantic-closure.json → runtime-semantic-closure.json} +2 -2
  37. package/architecture/{v4-rust-libnode-bridge-evaluation.json → rust-libnode-bridge-evaluation.json} +3 -3
  38. package/architecture/{v4-rust-libnode-bridge-spike.md → rust-libnode-bridge-spike.md} +6 -6
  39. package/architecture/rust-wasm-production-authority.json +58 -0
  40. package/architecture/{v4-stable-publication-fence.json → stable-publication-fence.json} +7 -4
  41. package/architecture/{v4-stage-capsule-contract.json → stage-capsule-contract.json} +1 -1
  42. package/architecture/{v4-stage-capsule-qualification.json → stage-capsule-qualification.json} +8 -8
  43. package/architecture/{v4-stage-capsule-resume-planner.json → stage-capsule-resume-planner.json} +2 -2
  44. package/architecture/{v4-stage-capsule-store-contract.json → stage-capsule-store-contract.json} +4 -4
  45. package/architecture/{v4-tail-reseal-parity.json → tail-reseal-parity.json} +35 -33
  46. package/architecture/universal-workflow-bootstrap.json +176 -0
  47. package/architecture/universal-workflow-fault-campaign.json +72 -0
  48. package/architecture/universal-workflow-train-admission.json +40 -0
  49. package/architecture/workflow-taxonomy.json +1462 -0
  50. package/bin/buildchain.mjs +10 -10
  51. package/bin/internal/adopter-delivery-cli.mjs +9 -9
  52. package/contracts/buildchain-v2-residuals-v1.json +57 -48
  53. package/contracts/dev-delivery-authority-v2.schema.json +16 -2
  54. package/contracts/fixtures/v4-tail-reseal-v1/valid.json +1 -1
  55. package/contracts/v4-canonical-contracts-v1.schema.json +1 -0
  56. package/crates/{buildchain-v4-bridge → buildchain-host-bridge}/Cargo.lock +1 -1
  57. package/crates/{buildchain-v4-bridge → buildchain-host-bridge}/Cargo.toml +1 -1
  58. package/crates/{buildchain-v4-bridge → buildchain-host-bridge}/src/main.rs +3 -3
  59. package/dist/site/buildchain-contract.json +98 -53
  60. package/dist/site/buildchain-site.json +351 -102
  61. package/dist/site/capability-registry.json +7 -7
  62. package/dist/site/controller-registry.json +50 -13
  63. package/dist/site/kfd-claims.json +2773 -1052
  64. package/dist/site/kfd-upstream-aggregate.json +1 -1
  65. package/dist/site/manual-registry.json +14 -14
  66. package/dist/site/node-api-registry.json +13176 -10733
  67. package/dist/site/page-registry.json +332 -83
  68. package/dist/site/public-surface-audit.json +3227 -1222
  69. package/dist/site/publication-authority-registry.json +1135 -363
  70. package/dist/site/publication-registry.json +4 -4
  71. package/dist/site/release-provenance.json +18 -9
  72. package/dist/site/schemas/dev-delivery-authority-v2.schema.json +16 -2
  73. package/dist/site/site-manifest.json +18 -18
  74. package/dist/site/workflow-registry.json +5367 -1931
  75. package/docs/MAP.md +5 -3
  76. package/docs/auditable-demo.md +1 -1
  77. package/docs/cli.md +21 -8
  78. package/docs/dev-delivery-warrant.md +1 -1
  79. package/docs/engineering-housekeeper.md +3 -3
  80. package/docs/kfd-support.md +26 -2
  81. package/docs/next-development-transition.md +26 -3
  82. package/docs/node-api-reference.md +618 -358
  83. package/docs/oci-publication.md +173 -0
  84. package/docs/publication-authority.md +2 -2
  85. package/docs/publish-transaction.md +36 -3
  86. package/docs/release-candidate.md +3 -3
  87. package/docs/release-flow.md +67 -19
  88. package/docs/release-governance.md +8 -8
  89. package/docs/release-passport.md +27 -2
  90. package/docs/reusable-build-surface.md +17 -1
  91. package/docs/v4-adopter-delivery.md +4 -4
  92. package/docs/v4-canonical-contracts.md +7 -7
  93. package/docs/v4-delivery-warrant-read-candidate.md +3 -3
  94. package/docs/v4-delivery-warrant-semantic-diff.md +3 -3
  95. package/docs/v4-production-release.md +77 -8
  96. package/docs/v4-publication-rehearsal.md +3 -3
  97. package/docs/v4-runtime-ref-resume-authority.md +2 -2
  98. package/docs/v4-rust-wasm-production-authority.md +58 -0
  99. package/docs/v4-stage-capsule.md +9 -9
  100. package/docs/v4-tail-reseal.md +2 -2
  101. package/docs/workflow-catalog.md +155 -0
  102. package/docs/workflow-path-migration.md +109 -0
  103. package/package.json +39 -24
  104. package/packages/compatibility/adopter-delivery.js +16 -0
  105. package/packages/compatibility/cross-platform-adopter-qualification.js +12 -0
  106. package/packages/compatibility/floating-consumer-policy.js +14 -0
  107. package/packages/compatibility/publication-qualification.js +11 -0
  108. package/packages/compatibility/publication-rehearsal.js +18 -0
  109. package/packages/compatibility/runtime-ref-resume-authority.js +13 -0
  110. package/packages/compatibility/tail-reseal-receipt.js +7 -0
  111. package/packages/compatibility/tail-reseal.js +11 -0
  112. package/packages/core/{v4-adopter-delivery-parity.js → adopter-delivery-parity.js} +12 -12
  113. package/packages/core/{v4-adopter-delivery.js → adopter-delivery.js} +24 -24
  114. package/packages/core/artifact-verification-envelope.js +5 -5
  115. package/packages/core/buildchain-contract.js +6 -6
  116. package/packages/core/buildchain-domain.wasm +0 -0
  117. package/packages/core/buildchain-kfd-claims.js +2 -2
  118. package/packages/core/buildchain-publication-authority.js +43 -26
  119. package/packages/core/{v4-canonical-contracts.js → canonical-contracts.js} +39 -103
  120. package/packages/core/ci-lane-change-budget.js +14 -1
  121. package/packages/core/controller-evidence.js +4 -1
  122. package/packages/core/{v4-cross-platform-adopter-qualification.js → cross-platform-adopter-qualification.js} +19 -19
  123. package/packages/core/{v4-delivery-warrant-fixture-runner.js → delivery-warrant-fixture-runner.js} +36 -32
  124. package/packages/core/{v4-delivery-warrant-read-candidate.js → delivery-warrant-read-candidate.js} +40 -40
  125. package/packages/core/{v4-delivery-warrant-semantic-diff-gate.js → delivery-warrant-semantic-diff-gate.js} +58 -59
  126. package/packages/core/{v4-delivery-warrant-shadow-adapter.js → delivery-warrant-shadow-adapter.js} +15 -15
  127. package/packages/core/dev-delivery-candidate-identity.js +40 -6
  128. package/packages/core/dev-delivery-execution-transfer.js +6 -6
  129. package/packages/core/dev-delivery-native-proof.js +12 -8
  130. package/packages/core/dev-delivery-warrant-legacy-recovery.js +1 -1
  131. package/packages/core/dev-delivery-warrant-native-compatibility.js +4 -4
  132. package/packages/core/dev-delivery-warrant-state.js +14 -15
  133. package/packages/core/dev-delivery-warrant.js +15 -5
  134. package/packages/core/domain-wasm-artifact.js +7 -0
  135. package/packages/core/domain-wasm.js +216 -0
  136. package/packages/core/{v4-floating-consumer-evidence.js → floating-consumer-evidence.js} +14 -14
  137. package/packages/core/{v4-floating-consumer-policy.js → floating-consumer-policy.js} +28 -30
  138. package/packages/core/{v4-floating-consumer-release-passport.js → floating-consumer-release-passport.js} +25 -25
  139. package/packages/core/github-governance-authority.js +4 -4
  140. package/packages/core/index.js +4 -8
  141. package/packages/core/kfd-adopter-manifest.js +46 -47
  142. package/packages/core/next-development-projection.js +26 -3
  143. package/packages/core/next-development-transition.js +5 -6
  144. package/packages/core/oci-compose-qualification.js +143 -0
  145. package/packages/core/oci-publication-bundle.js +281 -0
  146. package/packages/core/oci-publication-graph.js +206 -0
  147. package/packages/core/paper-agent-entry.js +30 -4
  148. package/packages/core/paper-fleet.js +1 -1
  149. package/packages/core/paper-runtime-channels.js +348 -0
  150. package/packages/core/paper-scaffold-content.js +10 -0
  151. package/packages/core/paper.js +37 -71
  152. package/packages/core/partial-mutation-recovery-qualification.js +18 -0
  153. package/packages/core/{v4-platform-stage-checkpoints.js → platform-stage-checkpoints.js} +37 -37
  154. package/packages/core/product-publication.js +59 -0
  155. package/packages/core/{v4-protected-publication-source.js → protected-publication-source.js} +22 -24
  156. package/packages/core/provider-operation-journal.js +62 -0
  157. package/packages/core/{v4-provider-readback-idempotency.js → provider-readback-idempotency.js} +40 -125
  158. package/packages/core/public-export-compatibility.js +33 -0
  159. package/packages/core/publication-development.js +72 -0
  160. package/packages/core/{v4-publication-qualification.js → publication-qualification.js} +17 -17
  161. package/packages/core/{v4-publication-rehearsal-capsule.js → publication-rehearsal-capsule.js} +23 -23
  162. package/packages/core/publication-rehearsal-projection.js +2 -2
  163. package/packages/core/{v4-publication-rehearsal-provider-bindings.js → publication-rehearsal-provider-bindings.js} +4 -4
  164. package/packages/core/publication-rehearsal-runtime.js +21 -21
  165. package/packages/core/{v4-publication-rehearsal.js → publication-rehearsal.js} +33 -33
  166. package/packages/core/publication-sealed-bundle.js +78 -13
  167. package/packages/core/release-activation-shadow.js +32 -0
  168. package/packages/core/release-candidate.js +6 -6
  169. package/packages/core/release-invocation.js +64 -0
  170. package/packages/core/release-line-dry-run.js +1 -1
  171. package/packages/core/release-passport-contract.js +5 -5
  172. package/packages/core/release-passport.js +41 -40
  173. package/packages/core/release-tail-product-capabilities.js +9 -0
  174. package/packages/core/release-tail-provider-plane.js +68 -1048
  175. package/packages/core/{v4-runtime-ref-resume-authority.js → runtime-ref-resume-authority.js} +36 -40
  176. package/packages/core/{v4-runtime-selector-persistence.js → runtime-selector-persistence.js} +7 -7
  177. package/packages/core/stable-publication-fence.js +28 -0
  178. package/packages/core/{v4-stage-capsule-local-store.js → stage-capsule-local-store.js} +56 -54
  179. package/packages/core/{v4-stage-capsule-qualification-campaign.js → stage-capsule-qualification-campaign.js} +37 -38
  180. package/packages/core/{v4-stage-capsule-qualification.js → stage-capsule-qualification.js} +28 -29
  181. package/packages/core/{v4-stage-capsule-resume-planner.js → stage-capsule-resume-planner.js} +29 -29
  182. package/packages/core/{v4-stage-capsule-store.js → stage-capsule-store.js} +59 -56
  183. package/packages/core/{v4-stage-capsule.js → stage-capsule.js} +45 -45
  184. package/packages/core/{v4-tail-reseal-contract.js → tail-reseal-contract.js} +6 -6
  185. package/packages/core/{v4-tail-reseal-github.js → tail-reseal-github.js} +12 -12
  186. package/packages/core/{v4-tail-reseal-receipt.js → tail-reseal-receipt.js} +22 -22
  187. package/packages/core/{v4-tail-reseal.js → tail-reseal.js} +29 -29
  188. package/packages/core/universal-workflow-bootstrap.js +586 -0
  189. package/scripts/{v4-architecture.mjs → architecture.mjs} +6 -6
  190. package/scripts/binary-publication-evidence.mjs +135 -0
  191. package/scripts/{v4-bridge-bootstrap.mjs → bridge-bootstrap.mjs} +14 -18
  192. package/scripts/{v4-bridge-evidence.mjs → bridge-evidence.mjs} +8 -8
  193. package/scripts/build-contract-core.mjs +1 -14
  194. package/scripts/build-domain-wasm.mjs +177 -0
  195. package/scripts/{v3-v4-capability-catalog.mjs → capability-parity-catalog.mjs} +19 -19
  196. package/scripts/check-action-bundles.mjs +12 -2
  197. package/scripts/{check-v3-v4-capability-inventory.mjs → check-capability-parity-inventory.mjs} +42 -42
  198. package/scripts/check-ci-lane-change-budget.mjs +4 -1
  199. package/scripts/check-core-mechanism-inventory.mjs +8 -4
  200. package/scripts/{check-v4-floating-consumer-policy-contract.mjs → check-floating-consumer-policy-contract.mjs} +10 -10
  201. package/scripts/check-implementation-naming.mjs +135 -0
  202. package/scripts/check-inventory.mjs +39 -47
  203. package/scripts/check-maintainability.mjs +25 -115
  204. package/scripts/{check-v4-public-dogfood-contract.mjs → check-public-dogfood-contract.mjs} +37 -24
  205. package/scripts/{check-v4-release-topology.mjs → check-release-topology.mjs} +131 -52
  206. package/scripts/{check-v4-runtime-semantic-closure.mjs → check-runtime-semantic-closure.mjs} +23 -17
  207. package/scripts/check-universal-workflow-bootstrap.mjs +266 -0
  208. package/scripts/check-workflow-taxonomy.mjs +6 -0
  209. package/scripts/{v4-consumer-policy.mjs → consumer-policy.mjs} +15 -15
  210. package/scripts/copy-domain-wasm.mjs +14 -0
  211. package/scripts/{v4-cross-platform-adopter-qualification.mjs → cross-platform-adopter-qualification.mjs} +9 -9
  212. package/scripts/{v4-declarative-promotion-admission.mjs → declarative-promotion-admission.mjs} +4 -4
  213. package/scripts/dev-delivery-authority-command-adapters.mjs +1 -1
  214. package/scripts/dev-delivery-authority.mjs +8 -8
  215. package/scripts/dev-delivery-source-proof-reuse.mjs +2 -1
  216. package/scripts/dev-delivery-warrant-options.mjs +15 -10
  217. package/scripts/dev-delivery-warrant-store.mjs +98 -13
  218. package/scripts/dev-delivery-warrant-transition.mjs +109 -0
  219. package/scripts/dev-delivery-warrant.mjs +80 -103
  220. package/scripts/dev-pr-auto-merge.mjs +15 -15
  221. package/scripts/dev-pr-delivery-warrant.mjs +1 -1
  222. package/scripts/generate-channel-build-workflow.mjs +7 -2
  223. package/scripts/generate-channel-promotion-workflow.mjs +19 -34
  224. package/scripts/generate-release-candidate-passport.mjs +23 -23
  225. package/scripts/generate-site-bundle.mjs +28 -28
  226. package/scripts/generate-universal-workflow-facades.mjs +498 -0
  227. package/scripts/generate-workflow-taxonomy.mjs +25 -0
  228. package/scripts/github-output.mjs +31 -0
  229. package/scripts/{v4-host-adapter.mjs → host-adapter.mjs} +1 -1
  230. package/scripts/implementation-references.mjs +25 -0
  231. package/scripts/init-repo.mjs +1 -1
  232. package/scripts/maintainability-metrics.mjs +16 -5
  233. package/scripts/maintainability-public-surface.mjs +115 -0
  234. package/scripts/next-development-review.mjs +313 -0
  235. package/scripts/oci-compose-preview.mjs +261 -0
  236. package/scripts/paper-work-fleet-cli.mjs +2 -0
  237. package/scripts/{v4-platform-stage-checkpoint-rehearsal.mjs → platform-stage-checkpoint-rehearsal.mjs} +17 -17
  238. package/scripts/{v4-product-publication-intent.mjs → product-publication-intent.mjs} +28 -13
  239. package/scripts/publication-candidate-kind.mjs +93 -0
  240. package/scripts/publication-candidate-sealer.mjs +16 -1
  241. package/scripts/{v4-publication-rehearsal-fixture.mjs → publication-rehearsal-fixture.mjs} +5 -5
  242. package/scripts/publication-settlement.mjs +211 -0
  243. package/scripts/release-asset-client.mjs +91 -0
  244. package/scripts/{v4-release-candidate-adapter.mjs → release-candidate-adapter.mjs} +4 -4
  245. package/scripts/release-candidate-resolver.mjs +24 -35
  246. package/scripts/release-tail.mjs +5 -5
  247. package/scripts/resume-from-candidate-run.mjs +35 -42
  248. package/scripts/site-capability-metadata.mjs +9 -0
  249. package/scripts/source-verification-evidence.mjs +344 -0
  250. package/scripts/stable-candidate-qualification.mjs +1 -1
  251. package/scripts/{v4-stage-capsule-qualification.mjs → stage-capsule-qualification.mjs} +62 -62
  252. package/scripts/{v4-stage-capsule-resume-rehearsal.mjs → stage-capsule-resume-rehearsal.mjs} +6 -6
  253. package/scripts/{v4-tail-reseal-macos-rehearsal.mjs → tail-reseal-macos-rehearsal.mjs} +9 -9
  254. package/scripts/{v4-tail-reseal.mjs → tail-reseal.mjs} +19 -19
  255. package/scripts/universal-facade-maintainability.mjs +91 -0
  256. package/scripts/universal-workflow-backflow.mjs +212 -0
  257. package/scripts/universal-workflow-engine.mjs +620 -0
  258. package/scripts/universal-workflow-self-dogfood.mjs +205 -0
  259. package/scripts/verify-version-state-delta.mjs +175 -0
  260. package/scripts/{v4-warrant-shadow-plan.mjs → warrant-shadow-plan.mjs} +6 -6
  261. package/scripts/workflow-taxonomy.mjs +507 -0
  262. package/templates/native-dev-delivery.yml +4 -7
  263. package/templates/universal-buildchain-bootstrap-recovery.yml +282 -0
  264. package/templates/universal-buildchain-bootstrap.yml +28 -0
  265. package/actions/v4-release-candidate-promote/README.md +0 -3
  266. package/packages/core/v4-partial-mutation-recovery-qualification.js +0 -395
  267. package/packages/core/v4-product-publication.js +0 -387
  268. package/packages/core/v4-provider-operation-journal.js +0 -531
  269. package/packages/core/v4-release-activation-shadow.js +0 -519
  270. package/packages/core/v4-release-invocation.js +0 -425
  271. package/packages/core/v4-stable-publication-fence.js +0 -357
  272. /package/architecture/{v4-adopter-delivery-parity.json → adopter-delivery-parity.json} +0 -0
  273. /package/architecture/{v3-core-mechanism-inventory.json → baseline-core-mechanism-inventory.json} +0 -0
  274. /package/architecture/{v4-canonical-contract-fixtures.json → canonical-contract-fixtures.json} +0 -0
  275. /package/architecture/{v4-compatibility-facts-parity.json → compatibility-facts-parity.json} +0 -0
  276. /package/architecture/{v4-delivery-warrant-shadow-bootstrap-plan.schema.json → delivery-warrant-shadow-bootstrap-plan.schema.json} +0 -0
  277. /package/architecture/{v4-delivery-warrant-shadow-fixtures.json → delivery-warrant-shadow-fixtures.json} +0 -0
  278. /package/architecture/{v4-delivery-warrant-shadow-fixtures.schema.json → delivery-warrant-shadow-fixtures.schema.json} +0 -0
  279. /package/architecture/{v4-exception-ledger.json → exception-ledger.json} +0 -0
  280. /package/architecture/{v4-exception-ledger.schema.json → exception-ledger.schema.json} +0 -0
  281. /package/architecture/{v4-release-invocation-fixtures.json → release-invocation-fixtures.json} +0 -0
@@ -50,7 +50,7 @@ provider effects, modify v3 authority, or provide a v4 write cutover receipt.
50
50
 
51
51
  ## Run the gate
52
52
 
53
- Call `runV4DeliveryWarrantSemanticDiffGate` with exact source revisions,
53
+ Call `runDeliveryWarrantSemanticDiffGate` with exact source revisions,
54
54
  explicit observation time, schema and runner roots, public-safe retained cases,
55
55
  bounded fault probes, an observation retention sink, and a report retention
56
56
  sink. The returned report is canonical JSON data suitable for a caller-owned
@@ -59,7 +59,7 @@ retained evidence file.
59
59
  The checked-in focused suite exercises that API against the real Rust host:
60
60
 
61
61
  ```sh
62
- node --test tests/v4-delivery-warrant-fixture-runner.test.mjs
62
+ node --test tests/delivery-warrant-fixture-runner.test.mjs
63
63
  ```
64
64
 
65
65
  A qualified report makes only the next
@@ -71,5 +71,5 @@ documented in
71
71
  Focused verification:
72
72
 
73
73
  ```sh
74
- pnpm run check:v4-contracts
74
+ pnpm run check:contracts
75
75
  ```
@@ -7,12 +7,12 @@ source_level: repository-contracts + protected-provider-readback
7
7
  confidence: high
8
8
  sensitivity: public
9
9
  evidence_grade: A
10
- review_state: self-reviewed
11
- last_reviewed: 2026-08-13
10
+ review_state: unreviewed
11
+ last_reviewed: 2026-09-07
12
12
  ai_provenance:
13
- model_family: GPT-5
13
+ model_family: GPT-6
14
14
  product: Codex
15
- generated_at: 2026-08-13
15
+ generated_at: 2026-09-07
16
16
  invisible_context: Provider credentials and private provider state were not read.
17
17
  ---
18
18
 
@@ -26,8 +26,15 @@ dev/v4/v4.0 -> alpha/v4/v4.0 -> release/v4/v4.0
26
26
  ```
27
27
 
28
28
  Public consumers use `v4-alpha` for the current prerelease channel and `v4`
29
- for stable. Reproducible consumers may pin an exact 40-character commit or an
30
- exact immutable release tag such as `v4.0.0`.
29
+ for stable, with matching stable and alpha contract locks. Exact commits and
30
+ immutable release tags identify retained evidence and explicitly admitted runtime
31
+ inputs; tracked v4 reusable-workflow selectors remain `@v4` or `@v4-alpha`.
32
+
33
+ Before qualifying a new release, run `node scripts/check-universal-workflow-bootstrap.mjs`.
34
+ The required repository check rejects an expired or not-yet-valid candidate admission
35
+ policy before publication. Renew the bounded validity window through protected review;
36
+ keep its capability, permission, reviewer and exact-source requirements unchanged.
37
+ Historical publication receipts remain immutable when a later admission window expires.
31
38
 
32
39
  The release transaction is fail-closed. The v4 provider-operation journal,
33
40
  activation plan, stable publication fence, and partial-mutation recovery plan
@@ -51,8 +58,9 @@ exact alpha tag, and npm's `alpha` tag.
51
58
  ## Non-destructive rollback
52
59
 
53
60
  Rollback never rewrites an exact tag, release, package version, Passport, or
54
- provider journal. Stop forward promotion, pin consumers to the last verified
55
- exact v4 SHA or exact stable tag, and use the retained `release/v3/v3.0`
61
+ provider journal. Stop forward promotion and select the last verified exact
62
+ v4 runtime through an admitted, non-persistent recovery input; keep tracked v4
63
+ workflow selectors on their locked floating channel. Use `release/v3/v3.0`
56
64
  coordinate only as an explicit compatibility rollback reference. Restoring v3
57
65
  as production authority requires a new reviewed cutover; it is not an implicit
58
66
  fallback.
@@ -61,3 +69,64 @@ Before any retry, compare the current provider state with the retained
61
69
  transaction and operation roots. Resume only missing eligible operations.
62
70
  Conflicting state remains `repair-required` or terminal and must not be
63
71
  converted into success by moving a floating ref.
72
+
73
+ ## Publication settlement and binary recovery
74
+
75
+ Publication, next-development advancement, and binary distribution have separate
76
+ results. A completed native ReleaseReceipt remains publication evidence when the
77
+ later generated Dev PR is still pending or its enqueue call fails. SETTLE verifies
78
+ the immutable invocation, transaction, both provider states, receipt and Passport
79
+ roots even when APPLY fails after publication. It has no provider write permission.
80
+
81
+ APPLY retains that exact chain before waiting for next-development in the existing GitHub Release as
82
+ `buildchain-publication-settlement.json`; it reads the exact tag and original
83
+ `buildchain.release.json` before adding the packet. The APPLY artifact also retains
84
+ `delivery-summary.json`, which reports publication and next-development separately.
85
+ A green workflow label cannot substitute for this receipt verification.
86
+
87
+ Binary Distribution reads this settlement and the original publication Passport.
88
+ Tag creation can precede settlement, so it waits at most 40 observations, 15 seconds
89
+ apart, for missing evidence. A mismatched source, tag, Passport or receipt fails
90
+ immediately. It no longer requires a legacy `buildchain/release-state/*` ref for v4.
91
+
92
+ The sealed binary publisher retains the publication Passport and writes its own
93
+ Passport as `buildchain.binary.release.json`. All v4 asset collisions are checked
94
+ before uploads: identical bytes are preserved, absent assets are added, and
95
+ conflicting bytes are rejected. Each publication authorization is retained as
96
+ `buildchain.binary.capability-<sha256>.json`, so a fresh recovery capability does
97
+ not overwrite an earlier grant. Existing assets are never clobbered. Recovery uses
98
+ the same exact successful Binary Distribution evidence run through
99
+ `self-release-binary-assets.yml`; it does not rebuild already admitted archives or
100
+ create another npm version. Read back all three platform archives, checksums,
101
+ both Passports and the settlement packet before declaring distribution complete.
102
+
103
+ The native publication receipt authorizes no stable promotion and makes no claim
104
+ that a pending next-development PR has merged. Inspect the exact PR head, protected
105
+ base and merge result independently. A retry of the publication phase must first
106
+ read retained provider facts and resume only missing operations.
107
+
108
+ ## Automatic next-development review
109
+
110
+ `self-release-next-development.yml` observes a successful exact `Verify` PR run
111
+ for a same-repository `chore/next-development/*` branch. It executes only the
112
+ protected default branch runtime. The PR must have one parent equal to the
113
+ current protected Dev head. The protected generator reconstructs every tracked
114
+ byte, permits only the declared immediate alpha version increment, and verifies
115
+ the completed alpha settlement against the exact tag and original Passport.
116
+ The published source tree must equal the protected development base tree.
117
+
118
+ The verification step receives no approval credential and never executes PR
119
+ code. A separate step uses `BUILDCHAIN_APPROVAL_TOKEN`, verifies that its identity
120
+ is the independent `kungfu-origin` CODEOWNER, rereads the exact PR/run/base, and
121
+ approves only that commit. Existing requests for changes stop automation.
122
+ The exact approval is read back before queue admission with the separate
123
+ `BUILDCHAIN_PROMOTION_TOKEN`. Required checks, CODEOWNER protection and native
124
+ merge-group verification remain enforced. Missing credentials or evidence,
125
+ forks, source changes and base/head drift fail closed.
126
+
127
+ The producer waits for pending independent review and required checks with a
128
+ bounded retry budget. Publication evidence is already durable during this wait,
129
+ so binaries can proceed independently. The reviewer also enqueues the verified
130
+ head idempotently, allowing a producer interruption to leave a recoverable PR.
131
+ An interrupted producer run remains failed; a successful later release is needed
132
+ to establish an uninterrupted end-to-end publication.
@@ -27,7 +27,7 @@ release candidate and asks the production release-tail planner and executor to
27
27
  simulate, replay, or observe provider-facing publication behavior.
28
28
 
29
29
  The rooted parity matrix is
30
- [`architecture/v4-publication-rehearsal-parity.json`](../architecture/v4-publication-rehearsal-parity.json),
30
+ [`architecture/publication-rehearsal-parity.json`](../architecture/publication-rehearsal-parity.json),
31
31
  and the public schema is
32
32
  [`v4-publication-rehearsal-capsule-v1.schema.json`](../contracts/v4-publication-rehearsal-capsule-v1.schema.json).
33
33
 
@@ -125,6 +125,6 @@ records Linux, macOS and Windows projections. Their capsule, transaction,
125
125
  state, and evidence roots are byte-identical. Regenerate or verify them with:
126
126
 
127
127
  ```sh
128
- node scripts/v4-publication-rehearsal-fixture.mjs
129
- node scripts/v4-publication-rehearsal-fixture.mjs --check
128
+ node scripts/publication-rehearsal-fixture.mjs
129
+ node scripts/publication-rehearsal-fixture.mjs --check
130
130
  ```
@@ -60,9 +60,9 @@ construction and verification.
60
60
 
61
61
  Normative files:
62
62
 
63
- - `architecture/v4-runtime-ref-resume-authority.json`
63
+ - `architecture/runtime-ref-resume-authority.json`
64
64
  - `contracts/v4-runtime-ref-resume-authority-v1.schema.json`
65
- - `packages/core/v4-runtime-ref-resume-authority.js`
65
+ - `packages/core/runtime-ref-resume-authority.js`
66
66
  - `scripts/authorize-promotion-runtime-override.cjs`
67
67
 
68
68
  This contract changes no v3 behavior, grants no provider mutation authority,
@@ -0,0 +1,58 @@
1
+ ---
2
+ status: draft
3
+ period: 2026-09-04
4
+ theme: buildchain-v4-rust-wasm-production-authority
5
+ doc_type: architecture
6
+ source_level: local-files
7
+ confidence: high
8
+ sensitivity: public
9
+ evidence_grade: A
10
+ review_state: self-reviewed
11
+ last_reviewed: 2026-09-04
12
+ ai_provenance:
13
+ model_family: GPT-5
14
+ product: Codex
15
+ generated_at: 2026-09-04
16
+ invisible_context: not-claimed
17
+ ---
18
+
19
+ # Buildchain v4 Rust/WASM production authority
20
+
21
+ Buildchain v4 的确定性发布语义由
22
+ `crates/buildchain-domain-contracts` 编译出的同一份 WebAssembly artifact 执行。Node
23
+ 仍是 GitHub Action 和 npm 包的宿主,但只负责 provider SDK、文件系统、凭据、环境变量及
24
+ workflow 输入输出等副作用边界。权威契约见
25
+ `architecture/rust-wasm-production-authority.json`。
26
+
27
+ ## 分发与调用
28
+
29
+ `packages/core/buildchain-domain.wasm` 与 JavaScript 一起提交和发布。三个生产 Action
30
+ 在构建时把完全相同的字节复制到各自 `dist/`;运行时不进入调用方仓库寻找 Rust
31
+ 源码,也不要求安装 Rust。`packages/core/domain-wasm.js` 从自身相邻路径同步读取
32
+ artifact,先核验生成元数据中的 SHA-256,再实例化 WebAssembly 并通过封闭 JSON/bytes
33
+ ABI 调用领域操作。
34
+
35
+ 缺失、被篡改、无法实例化、缺少导出、ABI 版本不符、trap 或非法响应都会失败关闭;
36
+ 不存在 JavaScript 领域算法回退。公共 JavaScript API 保留为薄 facade,调用者无须改成
37
+ 直接操作 WASM 内存。
38
+
39
+ ## 构建和审计
40
+
41
+ `pnpm run build:wasm` 使用锁定的 Rust 工具链和 `wasm32-unknown-unknown` target 生成
42
+ artifact 与绑定元数据,并把 Cargo 依赖源目录映射到稳定的虚拟路径,禁止主机 Cargo
43
+ registry 路径进入 artifact。`pnpm run check:wasm` 在干净临时 target 目录重新构建并逐字节
44
+ 比较已跟踪 artifact。这个检查不是生产运行时的重复编译:生产只加载已提交字节;检查
45
+ 用于证明这些字节仍能由当前 Rust 真相源和锁定工具链唯一导出,从而阻止源码、二进制或
46
+ 生成元数据静默漂移。
47
+
48
+ 受保护的 Verify 在 Linux 完成可复现构建,并在 Linux x64、macOS arm64 和 Windows x64
49
+ 上用 Node 24 直接加载同一提交中的 artifact。Action bundle 检查同时证明三个 `dist/`
50
+ 副本与核心 artifact 完全一致。
51
+
52
+ ## 权威边界
53
+
54
+ Rust/WASM 决定 canonical JSON/content root、release invocation、product publication、
55
+ provider journal/readback fold、activation、stable fence、partial-mutation recovery 与
56
+ release-tail 的计划、状态转换、重试/readback 和 receipt。Node 执行 Rust 返回的明确
57
+ instruction,把 provider observation 或归类后的 provider fault 回送给 Rust,由 Rust
58
+ 决定下一状态;Node 不写第二套相同领域规则。
@@ -20,7 +20,7 @@ ai_provenance:
20
20
 
21
21
  ## Platform checkpoint projection
22
22
 
23
- `architecture/v4-platform-stage-checkpoints.json` is the single declaration
23
+ `architecture/platform-stage-checkpoints.json` is the single declaration
24
24
  for the macOS arm64, Linux x64, and Windows x64 shadow checkpoint lanes. It
25
25
  defines the allowed platform/stage pairs and the exact declared inputs,
26
26
  outputs, environment names, toolchains, and portable restore paths.
@@ -100,19 +100,19 @@ GitHub Artifact and S3-compatible adapters expose only `effect-disabled` and
100
100
  `fixture-backed` modes in this slice. They accept rooted locators, never raw
101
101
  credentials or signed URLs, and cannot perform a provider upload or restore.
102
102
  The executable architecture ceiling is
103
- [`v4-stage-capsule-store-contract.json`](../architecture/v4-stage-capsule-store-contract.json),
103
+ [`stage-capsule-store-contract.json`](../architecture/stage-capsule-store-contract.json),
104
104
  and the shared Rust/JavaScript fixture is
105
105
  [`shared.json`](../contracts/fixtures/v4-stage-capsule-store-v1/shared.json).
106
106
 
107
107
  Focused verification:
108
108
 
109
109
  ```sh
110
- pnpm run check:v4-contracts
110
+ pnpm run check:contracts
111
111
  ```
112
112
 
113
113
  ## Deterministic resume planning
114
114
 
115
- `architecture/v4-stage-capsule-resume-planner.json` closes the Wave 2 resume
115
+ `architecture/stage-capsule-resume-planner.json` closes the Wave 2 resume
116
116
  planner. Its request is an explicit topological stage graph with targets,
117
117
  expected Capsule identity and retention, current Capsule/availability
118
118
  observations, an evaluation clock, and separately declared provider or
@@ -133,11 +133,11 @@ shadow-only: it does not skip a v3 production stage or move v3 authority.
133
133
 
134
134
  ## Three-platform qualification and Wave reconciliation
135
135
 
136
- `architecture/v4-stage-capsule-qualification.json` closes the Wave 2
136
+ `architecture/stage-capsule-qualification.json` closes the Wave 2
137
137
  qualification boundary. Buildchain and external repositories use the same
138
138
  Buildchain-owned public reusable workflow,
139
- `.github/workflows/v4-stage-capsule-canary.yml`. Buildchain's caller is the thin
140
- `.github/workflows/v4-public-consumer-dogfood.yml`; it has no steps, copied
139
+ `.github/workflows/public-build-stage-capsule-canary.yml`. Buildchain's caller is the thin
140
+ `.github/workflows/self-build-public-consumer-dogfood.yml`; it has no steps, copied
141
141
  orchestration, local action, direct qualification invocation, or private
142
142
  consumer profile. Candidate recursion is resolved only by publishing the exact
143
143
  candidate at `train/v4/v4.0/<capability>` and calling that fully qualified
@@ -182,12 +182,12 @@ authorized by this qualification.
182
182
  Focused local rehearsal:
183
183
 
184
184
  ```sh
185
- node scripts/v4-stage-capsule-qualification.mjs campaign \
185
+ node scripts/stage-capsule-qualification.mjs campaign \
186
186
  --work-root /tmp/buildchain-v4-stage-qualification \
187
187
  --platform linux-x64 \
188
188
  --consumer buildchain \
189
189
  --runtime-ref <exact-buildchain-commit> \
190
190
  --consumer-source-revision <exact-consumer-commit> \
191
191
  --consumer-root . \
192
- --lifecycle-evidence-root .buildchain/artifacts/v4-stage-capsule-canary
192
+ --lifecycle-evidence-root .buildchain/artifacts/stage-capsule-canary
193
193
  ```
@@ -56,7 +56,7 @@ receipt creation and verification.
56
56
  ## Reusable workflow
57
57
 
58
58
  Consumers invoke
59
- `kungfu-systems/buildchain/.github/workflows/v4-tail-reseal.yml@v4-alpha` from a
59
+ `kungfu-systems/buildchain/.github/workflows/public-ops-tail-reseal.yml@v4-alpha` from a
60
60
  trusted, same-repository workflow. The caller supplies the rooted request, the
61
61
  original candidate consumer-policy receipt, a reviewed macOS finalization
62
62
  command, and the explicitly named signing secret. The command must write:
@@ -70,4 +70,4 @@ and archive digest; no credential or provider effect is replayed from a Stage
70
70
  Capsule.
71
71
 
72
72
  The v3-to-v4 invariant mapping is recorded in
73
- [`architecture/v4-tail-reseal-parity.json`](../architecture/v4-tail-reseal-parity.json).
73
+ [`architecture/tail-reseal-parity.json`](../architecture/tail-reseal-parity.json).
@@ -0,0 +1,155 @@
1
+ ---
2
+ status: active
3
+ period: ongoing
4
+ theme: workflow-taxonomy
5
+ doc_type: technical-reference
6
+ source_level: local-files
7
+ confidence: high
8
+ sensitivity: public
9
+ evidence_grade: B
10
+ review_state: unreviewed
11
+ last_reviewed: 2026-09-05
12
+ ai_provenance:
13
+ model_family: GPT-6
14
+ product: Codex
15
+ generated_at: 2026-09-05
16
+ visible_context: Repository workflow source and the approved naming scheme
17
+ invisible_context_boundary: No credentials or unpublished provider configuration inspected
18
+ ---
19
+
20
+ # Workflow catalog
21
+
22
+ Generated from `architecture/workflow-taxonomy.json`; edit that source, then run
23
+ `pnpm run generate:workflows`. Every YAML file, including compatibility paths,
24
+ is checked by the existing required workflow check.
25
+
26
+ ## Naming and ownership
27
+
28
+ `public-<build|release|ops>-<purpose>.yml` is a consumer entry;
29
+ `.<build|release|ops>-<purpose>.yml` is an advanced component;
30
+ `self-<build|release|ops>-<purpose>.yml` is Buildchain's own automation.
31
+ Public is a product role, not GitHub access control. Dispatch services are
32
+ marked separately from reusable workflows. Keep workflow names, job IDs,
33
+ permissions, and trigger semantics stable during path migration.
34
+
35
+ ## Channel rollout
36
+
37
+ Canonical names become callable on a channel only after that channel publishes
38
+ them. Existing `@v4`/`@v4-alpha` consumers keep their exact registered legacy
39
+ paths until provider readback proves canonical availability. New examples below
40
+ describe the target surface, not a claim that both channels already publish it.
41
+ Compatibility files are generated byte-identical projections, not independently
42
+ editable implementations. They retain full jobs to preserve called-workflow
43
+ identity, permission envelopes, and required check names without extra nesting.
44
+
45
+ The controller registry records the actual source path separately from a migrated
46
+ repository controller contractPath. This preserves the established logical
47
+ contract identity while exposing its current execution source. New workflows
48
+ do not acquire historical identities. Public controllers retain their real
49
+ compatibility paths while those paths remain supported.
50
+
51
+ ## Adding or changing a workflow
52
+
53
+ Register a stable identity, role, category, purpose, owner, lifecycle status,
54
+ invocation and concrete summary before creating its derived path. A new entry
55
+ must explain its scope in review. New aliases cannot be invented: compatibility
56
+ must name an exact migration source with a reason and removal condition.
57
+ The policy, generator, checker, tests, required CI chain and CODEOWNERS require
58
+ independent `kungfu-origin` review. No wildcard compatibility admission is allowed.
59
+ Workflow filenames cannot contain version tokens such as `v4` or `v5`.
60
+ Retired aliases cannot be recreated or called; see [path migration](workflow-path-migration.md).
61
+
62
+ A role, category or implementation edit must preserve or deliberately update
63
+ all related declarations. Run `pnpm run generate:workflows` and
64
+ `pnpm run check:workflows`; the full `pnpm run check` remains required.
65
+
66
+ ## public
67
+
68
+ | Canonical workflow | Category | Invocation | Status | Purpose | Compatibility path |
69
+ | --- | --- | --- | --- | --- | --- |
70
+ | [public-build-adopter-qualification.yml](../.github/workflows/public-build-adopter-qualification.yml) | build | reusable | active | V4 Adopter Delivery | — |
71
+ | [public-build-candidate.yml](../.github/workflows/public-build-candidate.yml) | build | reusable | active | Buildchain Channel Build | `build.yml` |
72
+ | [public-build-check.yml](../.github/workflows/public-build-check.yml) | build | reusable | active | Buildchain Check | `check.yml` |
73
+ | [public-build-demo.yml](../.github/workflows/public-build-demo.yml) | build | reusable | active | Buildchain Declarative Binary Auditable Demo | `.declarative-auditable-demo.yml` |
74
+ | [public-build-publication.yml](../.github/workflows/public-build-publication.yml) | build | reusable | active | Buildchain Publication Artifact | `publication-artifact.yml` |
75
+ | [public-build-stage-capsule-canary.yml](../.github/workflows/public-build-stage-capsule-canary.yml) | build | reusable | active | V4 Stage Capsule Canary | — |
76
+ | [public-ops-alpha-candidate-patrol.yml](../.github/workflows/public-ops-alpha-candidate-patrol.yml) | ops | reusable | active | Buildchain Dev to Alpha Candidate Patrol | `dev-alpha-candidate-patrol.yml` |
77
+ | [public-ops-bootstrap-recovery.yml](../.github/workflows/public-ops-bootstrap-recovery.yml) | ops | reusable | active | Universal Buildchain Bootstrap Recovery | `universal-bootstrap-recovery.yml` |
78
+ | [public-ops-bootstrap.yml](../.github/workflows/public-ops-bootstrap.yml) | ops | reusable | active | Buildchain Universal Bootstrap | `bootstrap.yml` |
79
+ | [public-ops-dev-auto-merge.yml](../.github/workflows/public-ops-dev-auto-merge.yml) | ops | reusable | active | Dev PR Auto Merge | `dev-pr-auto-merge.yml` |
80
+ | [public-ops-dev-qualification-patrol.yml](../.github/workflows/public-ops-dev-qualification-patrol.yml) | ops | reusable | active | Buildchain Dev Qualification Patrol | `dev-qualification-patrol.yml` |
81
+ | [public-ops-housekeeping.yml](../.github/workflows/public-ops-housekeeping.yml) | ops | reusable | active | Engineering Housekeeper | `engineering-housekeeper.yml` |
82
+ | [public-ops-observed-evidence.yml](../.github/workflows/public-ops-observed-evidence.yml) | ops | reusable | active | Patrol Observed Evidence | `patrol-observed-evidence.yml` |
83
+ | [public-ops-patrol-daily.yml](../.github/workflows/public-ops-patrol-daily.yml) | ops | reusable | active | Buildchain Patrol Daily | `patrol-daily.yml` |
84
+ | [public-ops-patrol-monthly.yml](../.github/workflows/public-ops-patrol-monthly.yml) | ops | reusable | active | Buildchain Patrol Monthly | `patrol-monthly.yml` |
85
+ | [public-ops-patrol-weekly.yml](../.github/workflows/public-ops-patrol-weekly.yml) | ops | reusable | active | Buildchain Patrol Weekly | `patrol-weekly.yml` |
86
+ | [public-ops-patrol.yml](../.github/workflows/public-ops-patrol.yml) | ops | reusable | active | Buildchain Patrol | `buildchain-patrol.yml` |
87
+ | [public-ops-release-governance.yml](../.github/workflows/public-ops-release-governance.yml) | ops | reusable | active | Release Governance Reconcile | `release-governance-reconcile.yml` |
88
+ | [public-ops-stable-candidate-patrol.yml](../.github/workflows/public-ops-stable-candidate-patrol.yml) | ops | reusable | active | Buildchain Stable Candidate Patrol | `stable-candidate-patrol.yml` |
89
+ | [public-ops-tail-reseal.yml](../.github/workflows/public-ops-tail-reseal.yml) | ops | reusable | active | V4 Retained Candidate Tail Reseal | — |
90
+ | [public-ops-warrant-cancel.yml](../.github/workflows/public-ops-warrant-cancel.yml) | ops | reusable | active | Dev Delivery Warrant Queued Candidate Cancel | `dev-delivery-warrant-cancel.yml` |
91
+ | [public-ops-warrant-close.yml](../.github/workflows/public-ops-warrant-close.yml) | ops | reusable | active | Dev Delivery Warrant Close | `dev-delivery-warrant-close.yml` |
92
+ | [public-release-artifact-attestation.yml](../.github/workflows/public-release-artifact-attestation.yml) | release | reusable | active | Buildchain GitHub Artifact Attestation | `github-artifact-attestation.yml` |
93
+ | [public-release-oci-compose-preview.yml](../.github/workflows/public-release-oci-compose-preview.yml) | release | reusable | active | Buildchain OCI Compose Preview | — |
94
+ | [public-release-paper-sealed.yml](../.github/workflows/public-release-paper-sealed.yml) | release | reusable | active | Buildchain Sealed Paper Release | `paper-release-sealed.yml` |
95
+ | [public-release-paper.yml](../.github/workflows/public-release-paper.yml) | release | reusable | active | Buildchain Paper Release | `paper-release.yml` |
96
+ | [public-release-promote.yml](../.github/workflows/public-release-promote.yml) | release | reusable | active | Release Candidate Promote | `release-candidate-promote.yml` |
97
+ | [public-release-propagation.yml](../.github/workflows/public-release-propagation.yml) | release | reusable | active | Release Propagation | `release-propagation.yml` |
98
+ | [public-release-signing-authority.yml](../.github/workflows/public-release-signing-authority.yml) | release | dispatch-service | active | Buildchain Artifact Signing Authority | `artifact-signing-authority.yml` |
99
+ | [public-release-tail.yml](../.github/workflows/public-release-tail.yml) | release | reusable | active | Declarative Release Tail | `release-tail.yml` |
100
+ | [public-release-web.yml](../.github/workflows/public-release-web.yml) | release | reusable | active | Buildchain Web Surface | `.web-surface.yml` |
101
+
102
+ ## component
103
+
104
+ | Canonical workflow | Category | Invocation | Status | Purpose | Compatibility path |
105
+ | --- | --- | --- | --- | --- | --- |
106
+ | [.build-demo-adapter.yml](../.github/workflows/.build-demo-adapter.yml) | build | reusable | active | Buildchain Auditable Demo | `.auditable-demo.yml` |
107
+ | [.build-engine.yml](../.github/workflows/.build-engine.yml) | build | reusable | active | Buildchain Build | `.build.yml` |
108
+ | [.build-gate-profile.yml](../.github/workflows/.build-gate-profile.yml) | build | reusable | active | Buildchain Shifu Gate Profile | `.gate-profile.yml` |
109
+ | [.build-release-verify-compat.yml](../.github/workflows/.build-release-verify-compat.yml) | build | reusable | compatibility | release verify | `.release-verify.yml` |
110
+ | [.build-sam-verify-compat.yml](../.github/workflows/.build-sam-verify-compat.yml) | build | reusable | compatibility | sam verify | `.sam-verify.yml` |
111
+ | [.build-wheel-verify-compat.yml](../.github/workflows/.build-wheel-verify-compat.yml) | build | reusable | compatibility | wheel verify | `.wheel-verify.yml` |
112
+ | [.ops-git-sync.yml](../.github/workflows/.ops-git-sync.yml) | ops | reusable | active | sync remote git | `.sync-remote-git.yml` |
113
+ | [.release-authority.yml](../.github/workflows/.release-authority.yml) | release | reusable | active | Buildchain Sealed Publication Authority | `.publication-authority.yml` |
114
+ | [.release-binary-assets.yml](../.github/workflows/.release-binary-assets.yml) | release | reusable | active | Buildchain Binary Release Assets | `.binary-release-assets.yml` |
115
+ | [.release-minor-bump-compat.yml](../.github/workflows/.release-minor-bump-compat.yml) | release | reusable | compatibility | bump minor version | `.bump-minor-version.yml` |
116
+ | [.release-page-sync-retired.yml](../.github/workflows/.release-page-sync-retired.yml) | release | reusable | retired | sync release page | `.sync-release-page.yml` |
117
+ | [.release-promote.yml](../.github/workflows/.release-promote.yml) | release | reusable | active | Release Candidate Promote Advanced | `.release-candidate-promote.yml` |
118
+
119
+ ## self
120
+
121
+ | Canonical workflow | Category | Invocation | Status | Purpose | Compatibility path |
122
+ | --- | --- | --- | --- | --- | --- |
123
+ | [self-build-adopter-dogfood.yml](../.github/workflows/self-build-adopter-dogfood.yml) | build | repository | active | V4 Adopter Delivery Dogfood | — |
124
+ | [self-build-alpha-dogfood.yml](../.github/workflows/self-build-alpha-dogfood.yml) | build | repository | active | Buildchain Alpha Self-Dogfood | — |
125
+ | [self-build-binary-distribution.yml](../.github/workflows/self-build-binary-distribution.yml) | build | repository | active | Binary Distribution | — |
126
+ | [self-build-candidate-lab.yml](../.github/workflows/self-build-candidate-lab.yml) | build | repository | active | Candidate Lab | — |
127
+ | [self-build-demo-dogfood.yml](../.github/workflows/self-build-demo-dogfood.yml) | build | repository | active | Buildchain Declarative Demo Dogfood | — |
128
+ | [self-build-demo-media-qualification.yml](../.github/workflows/self-build-demo-media-qualification.yml) | build | repository | active | Auditable Demo Media Profile Qualification | — |
129
+ | [self-build-fixture.yml](../.github/workflows/self-build-fixture.yml) | build | repository | active | Build Surface Fixture | — |
130
+ | [self-build-public-consumer-dogfood.yml](../.github/workflows/self-build-public-consumer-dogfood.yml) | build | repository | active | V4 Public Consumer Dogfood | — |
131
+ | [self-build-release-verify-compat.yml](../.github/workflows/self-build-release-verify-compat.yml) | build | repository | compatibility | Release - Verify | — |
132
+ | [self-build-stable-candidate-qualification.yml](../.github/workflows/self-build-stable-candidate-qualification.yml) | build | repository | active | Buildchain Stable Candidate Qualification | — |
133
+ | [self-build-verify.yml](../.github/workflows/self-build-verify.yml) | build | repository | active | Verify | — |
134
+ | [self-ops-bootstrap-dogfood.yml](../.github/workflows/self-ops-bootstrap-dogfood.yml) | ops | repository | active | Universal Bootstrap Train-First Self-Dogfood | — |
135
+ | [self-ops-dev-delivery.yml](../.github/workflows/self-ops-dev-delivery.yml) | ops | repository | active | Buildchain Dev Delivery | — |
136
+ | [self-ops-governance-audit.yml](../.github/workflows/self-ops-governance-audit.yml) | ops | repository | active | GitHub Governance Authority Audit | — |
137
+ | [self-ops-housekeeping-daily.yml](../.github/workflows/self-ops-housekeeping-daily.yml) | ops | repository | active | Engineering Housekeeper Daily | — |
138
+ | [self-ops-housekeeping-monthly.yml](../.github/workflows/self-ops-housekeeping-monthly.yml) | ops | repository | active | Engineering Housekeeper Monthly | — |
139
+ | [self-ops-housekeeping-weekly.yml](../.github/workflows/self-ops-housekeeping-weekly.yml) | ops | repository | active | Engineering Housekeeper Weekly | — |
140
+ | [self-ops-merge-queue.yml](../.github/workflows/self-ops-merge-queue.yml) | ops | repository | active | Dev Merge Queue Governance | — |
141
+ | [self-ops-patrol-daily.yml](../.github/workflows/self-ops-patrol-daily.yml) | ops | repository | active | Buildchain Dogfood Patrol Daily | — |
142
+ | [self-ops-patrol-monthly.yml](../.github/workflows/self-ops-patrol-monthly.yml) | ops | repository | active | Buildchain Dogfood Patrol Monthly | — |
143
+ | [self-ops-patrol-weekly.yml](../.github/workflows/self-ops-patrol-weekly.yml) | ops | repository | active | Buildchain Dogfood Patrol Weekly | — |
144
+ | [self-ops-promotion-recovery.yml](../.github/workflows/self-ops-promotion-recovery.yml) | ops | repository | active | Buildchain Ref Promotion Recovery | — |
145
+ | [self-ops-recovery-failure-dogfood.yml](../.github/workflows/self-ops-recovery-failure-dogfood.yml) | ops | repository | active | Buildchain Candidate Recovery Dogfood Startup Failure | — |
146
+ | [self-ops-runner-smoke.yml](../.github/workflows/self-ops-runner-smoke.yml) | ops | repository | active | Self-hosted Runner Smoke | — |
147
+ | [self-ops-stable-candidate-patrol.yml](../.github/workflows/self-ops-stable-candidate-patrol.yml) | ops | repository | active | Buildchain Dogfood Stable Candidate Patrol | — |
148
+ | [self-release-binary-assets.yml](../.github/workflows/self-release-binary-assets.yml) | release | repository | active | Binary Release Assets | — |
149
+ | [self-release-line-open.yml](../.github/workflows/self-release-line-open.yml) | release | repository | active | Release Line Bootstrap | — |
150
+ | [self-release-new-version-compat.yml](../.github/workflows/self-release-new-version-compat.yml) | release | repository | compatibility | Release - New Version | — |
151
+ | [self-release-next-development.yml](../.github/workflows/self-release-next-development.yml) | release | repository | active | Next Development Review | — |
152
+ | [self-release-npm-dry-run.yml](../.github/workflows/self-release-npm-dry-run.yml) | release | repository | active | Publish npm package | — |
153
+ | [self-release-promote.yml](../.github/workflows/self-release-promote.yml) | release | repository | active | Buildchain Ref Promotion | — |
154
+ | [self-release-rehearsal-dogfood.yml](../.github/workflows/self-release-rehearsal-dogfood.yml) | release | repository | active | V4 Publication Rehearsal Dogfood | — |
155
+ | [self-release-tail-dogfood.yml](../.github/workflows/self-release-tail-dogfood.yml) | release | repository | active | V4 Declarative Release Tail Dogfood | — |
@@ -0,0 +1,109 @@
1
+ ---
2
+ status: draft
3
+ period: ongoing
4
+ theme: workflow-path-migration
5
+ doc_type: migration-guide
6
+ source_level: local-files
7
+ confidence: high
8
+ sensitivity: public
9
+ evidence_grade: B
10
+ review_state: unreviewed
11
+ last_reviewed: 2026-09-06
12
+ ai_provenance:
13
+ model_family: GPT-6
14
+ product: Codex
15
+ generated_at: 2026-09-05
16
+ visible_context: Exact GitHub channel refs and workflow files on 23 organization default branches
17
+ invisible_context_boundary: Other branches, private or unlisted consumers and future floating ref updates were not established by this audit
18
+ ---
19
+
20
+ # Version-prefixed workflow path migration
21
+
22
+ This source change retires three filenames. Their reusable capabilities, inputs,
23
+ outputs, jobs and permission envelopes remain at the canonical paths below.
24
+ Keep the existing channel selector and dual contract-lock policy when migrating.
25
+
26
+ | Retired path | Canonical path |
27
+ | --- | --- |
28
+ | `v4-adopter-delivery.yml` | `public-build-adopter-qualification.yml` |
29
+ | `v4-stage-capsule-canary.yml` | `public-build-stage-capsule-canary.yml` |
30
+ | `v4-tail-reseal.yml` | `public-ops-tail-reseal.yml` |
31
+
32
+ All paths are beneath `.github/workflows/`. The taxonomy gate rejects version
33
+ segments in filenames and calls to version-prefixed Buildchain workflows. An
34
+ explicit retirement record keeps the original migration identity for historical
35
+ metrics and frozen facade source; generators resolve that identity to the
36
+ canonical implementation and cannot recreate the removed file.
37
+
38
+ ## Development merge and channel rollout
39
+
40
+ The development change retires these filenames on `dev/v4/v4.0`, updates the
41
+ Buildchain-owned callers, and enforces the canonical paths through generators
42
+ and required checks. Its delivery boundary is the protected development merge.
43
+ External-repository migration and stable publication are separate follow-up
44
+ work and do not block this development merge.
45
+
46
+ The published channel boundary still requires the following rollout order:
47
+
48
+ 1. Publish and verify the canonical entries on every affected channel while the
49
+ old entries remain available. The admission identity must match the actual
50
+ invoked canonical workflow, rather than its previous filename.
51
+ 2. Migrate consumers on their existing floating channels, refresh locks through
52
+ the supported contract acceptance path if required, and verify real consumer
53
+ runs. Stable callers remain on stable; alpha callers remain on alpha.
54
+ 3. Before publishing the retirement into a channel, recheck its live consumers
55
+ and resolve any remaining old-path calls. A protected development merge does
56
+ not by itself establish this channel readiness.
57
+
58
+ ## Initial consumer readback
59
+
60
+ On 2026-09-05, all workflow files from 23 accessible `kungfu-systems` repository
61
+ _default branches_ were read at their returned Git revisions. Five calls were
62
+ found in three repositories. This is a bounded inventory, not evidence that
63
+ unknown or non-default-branch consumers do not exist.
64
+
65
+ | Repository and observed revision | Caller | Existing selector |
66
+ | --- | --- | --- |
67
+ | Buildchain `d434a73d2d4fb010ee80fede2bf3ce872b1d04c8` | `self-build-adopter-dogfood.yml` | `v4-alpha` |
68
+ | Buildchain `d434a73d2d4fb010ee80fede2bf3ce872b1d04c8` | `self-build-public-consumer-dogfood.yml` | `v4-alpha` |
69
+ | agent-hub-demo `3f5de882b63464d70c50df0fd7ca418f487b794b` | `v4-adopter-delivery-qualification.yml` | `v4-alpha` |
70
+ | agent-hub-demo `3f5de882b63464d70c50df0fd7ca418f487b794b` | `v4-stage-capsule-canary.yml` | `v4` |
71
+ | taolu `6dcccdc3bd2c8b1801c7f6decea08ae7877aac2b` | `verify.yml` | `v4-alpha` |
72
+
73
+ The initial published channel readback was `v4` at
74
+ `da5e2db8384313e899eace87aea0a1a8e28c0aa8` and `v4-alpha` at
75
+ `dd87f43f7122b41c4ce7f1f6d1888521cc7f892f`. Neither contained the three canonical
76
+ filenames at that initial readback. The later evidence below records progress
77
+ without changing the scope or revisions of that initial inventory.
78
+
79
+ ## Rollout evidence as of 2026-09-06
80
+
81
+ The canonical invocation-identity preparation was merged in
82
+ [Buildchain PR 3508](https://github.com/kungfu-systems/buildchain/pull/3508).
83
+ All three canonical paths are available in the immutable `v4.0.2-alpha.35`
84
+ release (`feab078f5d7c9927a3525154003e321700e8ca30`) and the later
85
+ `v4.0.2-alpha.37` release (`f5fa1a4a3e8d83eccee79c077e5f48417760c9df`).
86
+ The floating `v4-alpha` readback selects alpha.37.
87
+
88
+ [Taolu PR 30](https://github.com/kungfu-systems/taolu/pull/30) migrated its
89
+ Stage Capsule call on `@v4-alpha`, preserving the existing dual locks.
90
+ Its exact source `b3f4c12578d733ff44165ff1acafe131251b8907` passed
91
+ [consumer Verify](https://github.com/kungfu-systems/taolu/actions/runs/33975786413)
92
+ on all declared platforms and
93
+ [native delivery](https://github.com/kungfu-systems/taolu/actions/runs/34005576362).
94
+ The protected dev landing is `7e15123733110ad8ce484241934bbf0ef99fbb45`.
95
+
96
+ The stable `v4` readback remains
97
+ `da5e2db8384313e899eace87aea0a1a8e28c0aa8`, which does not contain the canonical
98
+ paths. Stable publication and the agent-hub-demo migration remain **pending**
99
+ outside this development change's completion boundary. The alpha.35
100
+ [Build Surface Fixture](https://github.com/kungfu-systems/buildchain/actions/runs/34005360217)
101
+ passed, but this individual result does not establish complete stable
102
+ qualification or authorize moving the stable channel.
103
+
104
+ ## Recovery
105
+
106
+ Before channel retirement, revert consumer changes to the still-available old
107
+ paths if verification fails. After retirement, restore the exact previous
108
+ provider implementation through a reviewed corrective commit and normal
109
+ publication; do not rewrite immutable release tags or bypass admission checks.