@kungfu-tech/buildchain 4.0.1-alpha.5 → 4.0.1-alpha.55

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 (159) hide show
  1. package/README.md +9 -6
  2. package/actions/release-tail/README.md +8 -0
  3. package/actions/v4-release-candidate-promote/README.md +3 -0
  4. package/architecture/agent-change-map.md +1015 -0
  5. package/architecture/ci-lane-change-budget.json +256 -0
  6. package/architecture/decisions/0004-v4-declarative-release-tail.md +47 -0
  7. package/architecture/internal-capabilities.json +220 -15
  8. package/architecture/maintainability-debt.json +3229 -0
  9. package/architecture/maintainability-policy.json +489 -132
  10. package/architecture/release-tail-contract-inventory.json +5 -2
  11. package/architecture/v3-core-mechanism-inventory.json +4 -3
  12. package/architecture/v3-v4-capability-closure.md +59 -0
  13. package/architecture/v3-v4-live-capability-inventory.json +102404 -0
  14. package/architecture/v4-adopter-delivery-parity.json +32 -5
  15. package/architecture/v4-cross-platform-adopter-qualification.json +52 -0
  16. package/architecture/v4-delivery-warrant-shadow-fixtures.json +3 -3
  17. package/architecture/v4-floating-consumer-policy.json +6 -0
  18. package/architecture/v4-publication-rehearsal-parity.json +84 -0
  19. package/architecture/v4-runtime-semantic-closure.json +710 -0
  20. package/bin/buildchain.mjs +7 -1
  21. package/bin/internal/adopter-delivery-cli.mjs +70 -0
  22. package/bin/internal/command-registry.mjs +1 -0
  23. package/bin/internal/trust-release-release-handlers.mjs +5 -0
  24. package/contracts/fixtures/v4-adopter-delivery-v1/archive-template.json +19 -0
  25. package/contracts/fixtures/v4-adopter-delivery-v1/bootstrap-positive.json +93 -0
  26. package/contracts/fixtures/v4-adopter-delivery-v1/gate-positive.json +29 -0
  27. package/contracts/fixtures/v4-adopter-delivery-v1/gate-unknown-selector.json +26 -0
  28. package/contracts/fixtures/v4-adopter-delivery-v1/offline-vectors.json +50 -0
  29. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/artifacts/product.bin +1 -0
  30. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/config/buildchain.toml +5 -0
  31. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/documents/release-activation.json +1 -0
  32. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/documents/signed-channel.json +1 -0
  33. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/evidence/qualification.json +1 -0
  34. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/manifests/candidate.json +5 -0
  35. package/contracts/fixtures/v4-publication-rehearsal-v1/candidate/manifests/release-passport.json +1 -0
  36. package/contracts/fixtures/v4-publication-rehearsal-v1/capsule.json +707 -0
  37. package/contracts/fixtures/v4-publication-rehearsal-v1/offline-vectors.json +27 -0
  38. package/contracts/fixtures/v4-tail-reseal-v1/valid.json +1 -1
  39. package/contracts/v4-adopter-delivery-v1.schema.json +81 -0
  40. package/contracts/v4-floating-consumer-policy-receipt-v1.schema.json +4 -2
  41. package/contracts/v4-publication-qualification-v1.schema.json +51 -0
  42. package/contracts/v4-publication-rehearsal-capsule-v1.schema.json +233 -0
  43. package/dist/site/agent-index.json +4 -0
  44. package/dist/site/artifact-schemas.json +8 -0
  45. package/dist/site/buildchain-contract.json +125 -34
  46. package/dist/site/buildchain-site.json +308 -33
  47. package/dist/site/capability-registry.json +13 -12
  48. package/dist/site/cli-registry.json +57 -2
  49. package/dist/site/controller-registry.json +41 -5
  50. package/dist/site/kfd-claims.json +438 -24
  51. package/dist/site/kfd-upstream-aggregate.json +1 -1
  52. package/dist/site/manual-registry.json +22 -7
  53. package/dist/site/node-api-registry.json +12843 -9314
  54. package/dist/site/page-registry.json +288 -21
  55. package/dist/site/public-surface-audit.json +281 -21
  56. package/dist/site/publication-authority-registry.json +66 -8
  57. package/dist/site/publication-registry.json +4 -4
  58. package/dist/site/release-provenance.json +20 -0
  59. package/dist/site/schemas/release-tail-capabilities-v1.schema.json +199 -0
  60. package/dist/site/schemas/v4-adopter-delivery-v1.schema.json +81 -0
  61. package/dist/site/schemas/v4-publication-qualification-v1.schema.json +51 -0
  62. package/dist/site/schemas/v4-publication-rehearsal-capsule-v1.schema.json +233 -0
  63. package/dist/site/site-manifest.json +19 -11
  64. package/dist/site/workflow-registry.json +195 -17
  65. package/docs/MAP.md +4 -2
  66. package/docs/cli-reference.md +70 -2
  67. package/docs/cli.md +8 -0
  68. package/docs/dev-delivery-warrant.md +34 -10
  69. package/docs/node-api-reference.md +524 -279
  70. package/docs/publish-transaction.md +11 -4
  71. package/docs/release-candidate.md +7 -0
  72. package/docs/release-tail-provider-plane.md +30 -0
  73. package/docs/v4-adopter-delivery.md +152 -0
  74. package/docs/v4-declarative-release-tail-migration.md +43 -0
  75. package/docs/v4-publication-rehearsal.md +130 -0
  76. package/package.json +24 -4
  77. package/packages/core/adopter-delivery-passport.js +295 -0
  78. package/packages/core/adopter-delivery-vectors.js +158 -0
  79. package/packages/core/adopter-delivery-vectors.json +77 -0
  80. package/packages/core/buildchain-agent-manuals.js +1 -0
  81. package/packages/core/buildchain-config.js +84 -0
  82. package/packages/core/buildchain-contract.js +31 -1
  83. package/packages/core/buildchain-delivery-bootstrap.js +240 -0
  84. package/packages/core/buildchain-delivery-infrastructure.js +164 -0
  85. package/packages/core/buildchain-delivery-self-dogfood.js +395 -0
  86. package/packages/core/buildchain-publication-authority.js +2 -0
  87. package/packages/core/ci-lane-change-budget.js +247 -0
  88. package/packages/core/dev-delivery-native-proof.js +43 -27
  89. package/packages/core/dev-delivery-warrant-settlement.js +239 -3
  90. package/packages/core/dev-delivery-warrant-state.js +46 -10
  91. package/packages/core/dev-delivery-warrant.js +29 -7
  92. package/packages/core/github-governance-authority.js +5 -4
  93. package/packages/core/index.js +6 -0
  94. package/packages/core/legacy-kfd-adopter-driver.js +167 -0
  95. package/packages/core/paper-scaffold-content.js +401 -0
  96. package/packages/core/paper.js +12 -378
  97. package/packages/core/publication-control-plane-audit.js +135 -111
  98. package/packages/core/publication-rehearsal-projection.js +104 -0
  99. package/packages/core/publication-rehearsal-runtime.js +190 -0
  100. package/packages/core/published-delivery-authority.js +266 -0
  101. package/packages/core/release-candidate-recovery.js +71 -15
  102. package/packages/core/release-candidate.js +2 -2
  103. package/packages/core/release-passport.js +95 -170
  104. package/packages/core/v4-adopter-delivery-parity.js +3 -3
  105. package/packages/core/v4-adopter-delivery.js +359 -0
  106. package/packages/core/v4-cross-platform-adopter-qualification.js +343 -0
  107. package/packages/core/v4-delivery-warrant-read-candidate.js +10 -3
  108. package/packages/core/v4-floating-consumer-evidence.js +18 -4
  109. package/packages/core/v4-floating-consumer-policy.js +139 -35
  110. package/packages/core/v4-floating-consumer-release-passport.js +154 -8
  111. package/packages/core/v4-publication-qualification.js +222 -0
  112. package/packages/core/v4-publication-rehearsal-capsule.js +468 -0
  113. package/packages/core/v4-publication-rehearsal-provider-bindings.js +212 -0
  114. package/packages/core/v4-publication-rehearsal.js +481 -0
  115. package/packages/core/workflow-yaml-contract.js +24 -2
  116. package/scripts/artifact-signing-controller-core.mjs +1 -1
  117. package/scripts/audit-publication-control-plane.mjs +17 -17
  118. package/scripts/buildchain-cli-help.mjs +13 -0
  119. package/scripts/check-ci-lane-change-budget.mjs +100 -0
  120. package/scripts/check-internal-architecture.mjs +23 -3
  121. package/scripts/check-inventory.mjs +24 -6
  122. package/scripts/check-maintainability.mjs +145 -4
  123. package/scripts/check-project-cut-merge-queue-admission.mjs +87 -0
  124. package/scripts/check-v3-v4-capability-inventory.mjs +574 -0
  125. package/scripts/check-v4-floating-consumer-policy-contract.mjs +30 -4
  126. package/scripts/check-v4-runtime-semantic-closure.mjs +266 -0
  127. package/scripts/dev-delivery-source-proof-replay.mjs +153 -0
  128. package/scripts/dev-delivery-source-proof-reuse.mjs +13 -97
  129. package/scripts/dev-delivery-warrant-options.mjs +27 -11
  130. package/scripts/dev-delivery-warrant-store.mjs +10 -6
  131. package/scripts/dev-delivery-warrant.mjs +50 -6
  132. package/scripts/dev-pr-auto-merge.mjs +25 -11
  133. package/scripts/dev-pr-delivery-warrant.mjs +45 -0
  134. package/scripts/dev-pr-prequeue-guard.mjs +0 -18
  135. package/scripts/dev-qualification-patrol.mjs +9 -9
  136. package/scripts/dispatch-artifact-signing-authority.mjs +1 -1
  137. package/scripts/generate-agent-change-map.mjs +118 -0
  138. package/scripts/generate-channel-promotion-workflow.mjs +2 -2
  139. package/scripts/generate-release-candidate-passport.mjs +177 -0
  140. package/scripts/generate-site-bundle.mjs +36 -0
  141. package/scripts/maintainability-domain-metrics.mjs +237 -0
  142. package/scripts/maintainability-governance.mjs +473 -0
  143. package/scripts/maintainability-metrics.mjs +28 -6
  144. package/scripts/project-cut-merge-queue-admission.mjs +394 -0
  145. package/scripts/promotion-channel-router.mjs +4 -4
  146. package/scripts/promotion-routing-evidence.mjs +35 -6
  147. package/scripts/release-candidate-anchor-provenance.mjs +99 -0
  148. package/scripts/release-candidate-resolver.mjs +44 -0
  149. package/scripts/release-line-policy.mjs +25 -15
  150. package/scripts/release-tail.mjs +68 -3
  151. package/scripts/resume-from-candidate-run.mjs +595 -65
  152. package/scripts/run-lifecycle-core.mjs +341 -376
  153. package/scripts/site-capability-metadata.mjs +21 -0
  154. package/scripts/stable-candidate-qualification.mjs +9 -10
  155. package/scripts/v3-v4-capability-catalog.mjs +439 -0
  156. package/scripts/v4-consumer-policy.mjs +4 -0
  157. package/scripts/v4-cross-platform-adopter-qualification.mjs +228 -0
  158. package/scripts/v4-declarative-promotion-admission.mjs +42 -0
  159. package/scripts/v4-publication-rehearsal-fixture.mjs +144 -0
@@ -3,14 +3,16 @@
3
3
  "contract": "kungfu-buildchain-v4-adopter-delivery-parity-plan",
4
4
  "sourceAuthority": {
5
5
  "branch": "dev/v3/v3.0",
6
- "commit": "c3f58d76391c1c6ceddfc900a68e91c7ab82a575",
7
- "vectorSuiteRoot": "sha256:cf329805d928a9883cbafbdfdf21ef66c6a0889ed8dfe14356b4e0d25d6738f9",
8
- "kfdPackage": "@kungfu-tech/kfd@1.0.0-alpha.62"
6
+ "commit": "6b96bdad8d9f8ccf9275f27d9370a226a9c78465",
7
+ "vectorSuiteRoot": "sha256:c978707556406ffda4ef4192032332c01c2da1cebb6ad8c4f0edfc65d5cef0c7",
8
+ "kfdPackage": "@kungfu-tech/kfd@1.0.0-alpha.65"
9
9
  },
10
10
  "target": {
11
11
  "branch": "dev/v4/v4.0",
12
- "baseline": "3079091f770ce9fdca950e106259e34e5171f763",
12
+ "initialBaseline": "e5611377efc03178f8687d99968cfdfa3ce2825b",
13
+ "baseline": "e0342713c7447960c13bd73377282b2e93f4853d",
13
14
  "mode": "effect-disabled",
15
+ "surface": "public-protocol-neutral-adopter-delivery",
14
16
  "productionWriterAuthority": false
15
17
  },
16
18
  "vectors": [
@@ -37,11 +39,36 @@
37
39
  {
38
40
  "id": "fault-driver-throw",
39
41
  "mode": "gate-core-parity"
42
+ },
43
+ {
44
+ "id": "positive-n-minus-one-bootstrap",
45
+ "mode": "public-bootstrap-lineage"
46
+ },
47
+ {
48
+ "id": "positive-published-archive",
49
+ "mode": "public-archive-authority"
50
+ },
51
+ {
52
+ "id": "negative-archive-identity",
53
+ "mode": "public-archive-authority"
54
+ },
55
+ {
56
+ "id": "negative-bootstrap-lineage",
57
+ "mode": "public-bootstrap-lineage"
58
+ },
59
+ {
60
+ "id": "negative-protocol-version",
61
+ "mode": "public-driver-selection"
62
+ },
63
+ {
64
+ "id": "tamper-readback",
65
+ "mode": "public-exact-readback"
40
66
  }
41
67
  ],
42
68
  "nonClaims": [
43
69
  "The Rust projection has no provider, credential, release, signing or production-writer authority.",
44
70
  "KFD semantics are evaluated only by exact published KFD bytes before the effect-disabled carrier projection.",
45
- "Release Passport evidence substitution remains on the protected v3 boundary and is not reimplemented as a v4 writer."
71
+ "Release Passport evidence substitution remains on the protected v3 boundary and is not reimplemented as a v4 writer.",
72
+ "The public CLI, Node API, schema, configuration and reusable workflow retain provider, signing, publication and release authority as explicit non-claims."
46
73
  ]
47
74
  }
@@ -0,0 +1,52 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "contract": "kungfu-buildchain-v4-cross-platform-adopter-qualification",
4
+ "inventoryAuthority": "architecture/v3-v4-live-capability-inventory.json",
5
+ "implementation": "packages/core/v4-cross-platform-adopter-qualification.js",
6
+ "runner": "scripts/v4-cross-platform-adopter-qualification.mjs",
7
+ "publicWorkflow": ".github/workflows/v4-adopter-delivery.yml",
8
+ "sourceBinding": {
9
+ "runtime": "job.workflow_sha",
10
+ "consumer": "exact checked-out consumer commit",
11
+ "sameRuntimeAcrossMatrix": true,
12
+ "sameConsumerAcrossMatrix": true,
13
+ "sameInventoryAcrossMatrix": true
14
+ },
15
+ "candidateDispatch": {
16
+ "externalRepositoryRequiresExactCommit": true,
17
+ "externalRepositoryRequiresPublicFloatingCaller": true,
18
+ "persistentSelectorsRemain": ["v4", "v4-alpha"],
19
+ "providerEffects": false
20
+ },
21
+ "platforms": ["linux-x64", "macos-arm64", "windows-x64"],
22
+ "requiredConsumers": ["buildchain", "agent-hub-demo"],
23
+ "protocolNeutralDriver": {
24
+ "id": "ledger-specification-driver",
25
+ "fixture": "fixtures/ledger-specification-driver",
26
+ "test": "tests/non-kfd-specification-driver-clean-room.test.mjs",
27
+ "platformCoverage": ["linux-x64", "macos-arm64", "windows-x64"],
28
+ "kfdDependencyAllowed": false
29
+ },
30
+ "capabilityMatrix": {
31
+ "rawRowsRequired": true,
32
+ "everyCategoryRequired": true,
33
+ "sourceOnlyApplicability": "exact-source-route",
34
+ "residualMaximum": 0,
35
+ "unknownMaximum": 0,
36
+ "unownedMaximum": 0
37
+ },
38
+ "executedScenarios": [
39
+ "public-run",
40
+ "tampered-readback-failure",
41
+ "public-run-retry",
42
+ "terminal-exact-verify",
43
+ "n-minus-one-bootstrap",
44
+ "protocol-neutral-clean-room"
45
+ ],
46
+ "authority": {
47
+ "productionWrites": false,
48
+ "providerEffects": false,
49
+ "releaseEffects": false,
50
+ "stablePublication": false
51
+ }
52
+ }
@@ -66,7 +66,7 @@
66
66
  "now": "2026-08-07T00:02:00Z"
67
67
  }
68
68
  ],
69
- "expectedLegacyProjectionRoot": "sha256:da58eec588414e16781ffad1b92d3733b207b43e2c7846f6b659c71b150d964d"
69
+ "expectedLegacyProjectionRoot": "sha256:d43159c2ea0d0ea97fb81eb9a2cf262411954d1ce81514c590587e858e95f275"
70
70
  },
71
71
  {
72
72
  "id": "lease-expiry-and-stale-fence",
@@ -134,7 +134,7 @@
134
134
  "now": "2026-08-07T01:02:03Z"
135
135
  }
136
136
  ],
137
- "expectedLegacyProjectionRoot": "sha256:24cf52c9108393b268cb40943f540c0e9a000a782e59251e3a9b6d5a63c1eb06"
137
+ "expectedLegacyProjectionRoot": "sha256:7798efdf136e97afbc65f5e41c8be918a7d00da566716c861c7b1dedb2092f97"
138
138
  },
139
139
  {
140
140
  "id": "settlement-idempotence",
@@ -183,7 +183,7 @@
183
183
  "now": "2026-08-07T02:02:00Z"
184
184
  }
185
185
  ],
186
- "expectedLegacyProjectionRoot": "sha256:60fead53ff605fcd81934e6d752ea5f2b4951c57addcec1c1df87fb6dec9b7ba"
186
+ "expectedLegacyProjectionRoot": "sha256:f1ec1dcd97eb65cc8258bdcf4e17f08311cc23a20acd05f9112a2cef7c685685"
187
187
  },
188
188
  {
189
189
  "id": "queued-cancellation-idempotence",
@@ -36,6 +36,12 @@
36
36
  },
37
37
  "runtimeEscapeBoundary": {
38
38
  "persistedSelectorOverride": false,
39
+ "protectedAlphaRecoveryBootstrap": {
40
+ "selector": "alpha/v4/v4.0",
41
+ "sourcePath": ".github/workflows/buildchain-ref-promotion-recovery.yml",
42
+ "workflow": ".github/workflows/.release-candidate-promote.yml",
43
+ "repository": "kungfu-systems/buildchain"
44
+ },
39
45
  "trustedNonPersistentInput": true,
40
46
  "requiresSeparateAuthority": true,
41
47
  "requiresReadback": true,
@@ -0,0 +1,84 @@
1
+ {
2
+ "schema": "buildchain.v4.publication-rehearsal-parity/v1",
3
+ "source": {
4
+ "branch": "dev/v3/v3.0",
5
+ "commit": "6b96bdad8d9f8ccf9275f27d9370a226a9c78465",
6
+ "runtime": "packages/core/publication-rehearsal-runtime.js"
7
+ },
8
+ "target": {
9
+ "branch": "dev/v4/v4.0",
10
+ "commit": "bc12cd0ff18a7e1d918777ea093c169349952d34",
11
+ "capsuleContract": "packages/core/v4-publication-rehearsal-capsule.js",
12
+ "runtime": "packages/core/v4-publication-rehearsal.js",
13
+ "providerBindings": "packages/core/v4-publication-rehearsal-provider-bindings.js"
14
+ },
15
+ "sharedProductionCore": {
16
+ "planner": "compileReleaseTailDeclaration",
17
+ "initializer": "createReleaseTailTransaction",
18
+ "executor": "executeReleaseTailTransaction",
19
+ "version": "buildchain.release-tail/v1"
20
+ },
21
+ "stageCapsuleBoundary": {
22
+ "contract": "buildchain-v4-stage-capsule/v1",
23
+ "purpose": "pure platform-stage build checkpoint reuse",
24
+ "publicationEffects": false,
25
+ "publicationAuthority": false
26
+ },
27
+ "matrix": [
28
+ {
29
+ "invariant": "capsule-purpose",
30
+ "v3": "publication rehearsal",
31
+ "v4": "publication rehearsal distinct from Stage Capsule",
32
+ "parity": "safety-strengthened"
33
+ },
34
+ {
35
+ "invariant": "content-addressed-inputs",
36
+ "v3": "capsule, declaration, transaction, files, data-only provider bindings, policy and observations",
37
+ "v4": "capsule, source, candidate, manifest, config, provider bindings, provider policy, expected observations and core version",
38
+ "parity": "safety-strengthened"
39
+ },
40
+ {
41
+ "invariant": "provider-request-binding",
42
+ "v3": "provider binding payload is capsule-rooted and every input path is in files",
43
+ "v4": "providerBindingsRoot covers canonical bindings and every request byte is inventory-rooted before adapters",
44
+ "parity": "exact"
45
+ },
46
+ {
47
+ "invariant": "shared-release-tail-core",
48
+ "v3": "shared planner and executor",
49
+ "v4": "same production planner, initializer and executor",
50
+ "parity": "exact"
51
+ },
52
+ {
53
+ "invariant": "effect-default",
54
+ "v3": "simulate and replay local defaults",
55
+ "v4": "provider policy is rooted and effect-disabled by default",
56
+ "parity": "safety-strengthened"
57
+ },
58
+ {
59
+ "invariant": "authorized-provider-rehearsal",
60
+ "v3": "provider observations are recorded without authority",
61
+ "v4": "exact capsule-bound rehearsal-only authority plus request and readback transcript",
62
+ "parity": "safety-strengthened"
63
+ },
64
+ {
65
+ "invariant": "release-authority",
66
+ "v3": "externalPublicationClaimed false",
67
+ "v4": "productionAuthority false and releasePassport null",
68
+ "parity": "exact"
69
+ },
70
+ {
71
+ "invariant": "tamper-response",
72
+ "v3": "capsule and file mismatch fail closed",
73
+ "v4": "every named identity root and core version mismatch fails closed",
74
+ "parity": "safety-strengthened"
75
+ },
76
+ {
77
+ "invariant": "portability",
78
+ "v3": "platform-independent local capsule root",
79
+ "v4": "byte-identical offline linux, macos and windows vector",
80
+ "parity": "exact"
81
+ }
82
+ ],
83
+ "matrixRoot": "sha256:521694ce2cc1d5b383eaa6b84f1b6926ef8ce8f33085e02507e611e9f9b6e784"
84
+ }