@kungfu-tech/buildchain 3.0.9-alpha.0 → 3.0.9-alpha.10
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.
- package/bin/buildchain.mjs +9 -1
- package/contracts/dev-delivery-authority-v2.schema.json +253 -0
- package/contracts/fixtures/kfd-adopter-release-v1/kfd-4-perspective.json +16 -0
- package/contracts/fixtures/kfd-adopter-release-v1/kfd-4-replay.json +57 -0
- package/contracts/fixtures/next-development-transition-v1/anchored-manual-waiting.json +47 -0
- package/contracts/fixtures/next-development-transition-v1/semver-auto-planned.json +47 -0
- package/contracts/fixtures/next-development-transition-v1/version-model-cases.json +40 -0
- package/contracts/next-development-request-v1.schema.json +66 -0
- package/contracts/next-development-transition-v1.schema.json +292 -0
- package/contracts/release-cut-v1.schema.json +1 -0
- package/contracts/release-train-transition-v1.schema.json +1 -0
- package/dist/site/agent-index.json +1 -0
- package/dist/site/artifact-schemas.json +2 -0
- package/dist/site/buildchain-contract.json +91 -32
- package/dist/site/buildchain-site.json +353 -45
- package/dist/site/capability-registry.json +7 -6
- package/dist/site/cli-registry.json +41 -2
- package/dist/site/controller-registry.json +8 -4
- package/dist/site/kfd-claims.json +193 -9
- package/dist/site/kfd-upstream-aggregate.json +9 -9
- package/dist/site/manual-registry.json +26 -10
- package/dist/site/node-api-registry.json +8012 -4574
- package/dist/site/page-registry.json +331 -31
- package/dist/site/public-surface-audit.json +353 -8
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/release-passport-check-manifest.json +1 -0
- package/dist/site/release-provenance.json +12 -0
- package/dist/site/schemas/dev-delivery-authority-v2.schema.json +442 -0
- package/dist/site/schemas/release-passport-v1.schema.json +3 -0
- package/dist/site/site-manifest.json +22 -14
- package/dist/site/workflow-registry.json +15 -7
- package/docs/MAP.md +5 -2
- package/docs/adopter-delivery-gate.md +106 -0
- package/docs/aws-us-elastic-runner-burst-plane.md +30 -3
- package/docs/cli-reference.md +200 -13
- package/docs/dev-alpha-candidate-patrol.md +8 -0
- package/docs/dev-delivery-qualification-landing-adr.md +137 -0
- package/docs/dev-delivery-warrant.md +164 -27
- package/docs/kfd-support.md +7 -2
- package/docs/next-development-transition.md +119 -0
- package/docs/node-api-reference.md +464 -277
- package/docs/release-governance.md +10 -7
- package/docs/release-passport.md +15 -2
- package/docs/release-train.md +46 -4
- package/docs/reusable-build-surface.md +26 -9
- package/docs/runtime-train-validation.md +6 -0
- package/docs/versioning.md +6 -2
- package/package.json +21 -6
- package/packages/core/README.md +25 -0
- package/packages/core/adopter-delivery-gate.js +576 -0
- package/packages/core/adopter-delivery-json.js +66 -0
- package/packages/core/adopter-delivery-passport.js +259 -0
- package/packages/core/adopter-delivery-vectors.js +158 -0
- package/packages/core/adopter-delivery-vectors.json +77 -0
- package/packages/core/artifact-verification-envelope.js +5 -5
- package/packages/core/buildchain-agent-manuals.js +1 -0
- package/packages/core/buildchain-channel-identity.js +118 -0
- package/packages/core/buildchain-compatibility-proof.js +54 -0
- package/packages/core/buildchain-contract.js +7 -0
- package/packages/core/buildchain-delivery-bootstrap.js +240 -0
- package/packages/core/buildchain-delivery-infrastructure.js +164 -0
- package/packages/core/channel-candidate.js +8 -0
- package/packages/core/channel-promotion-baseline.js +52 -0
- package/packages/core/controller-evidence.js +2 -1
- package/packages/core/dev-alpha-candidate-selection.js +10 -2
- package/packages/core/dev-delivery-authority.js +996 -0
- package/packages/core/dev-delivery-native-proof.js +418 -0
- package/packages/core/dev-delivery-warrant-settlement.js +67 -20
- package/packages/core/dev-delivery-warrant.js +141 -48
- package/packages/core/kfd-adopter-category-driver.js +167 -0
- package/packages/core/kfd-adopter-manifest.js +49 -50
- package/packages/core/legacy-kfd-adopter-driver.js +167 -0
- package/packages/core/next-development-candidate-reservation.js +186 -0
- package/packages/core/next-development-controller.js +726 -0
- package/packages/core/next-development-projection.js +288 -0
- package/packages/core/next-development-transition.js +738 -0
- package/packages/core/paper-agent-entry.js +7 -4
- package/packages/core/paper.js +14 -7
- package/packages/core/release-blocker-priority.js +192 -0
- package/packages/core/release-passport-contract.js +10 -6
- package/packages/core/release-passport.js +29 -12
- package/packages/core/release-train.js +220 -0
- package/scripts/aws-macos-jit-controller-core.mjs +239 -4
- package/scripts/aws-macos-jit-controller.mjs +198 -2
- package/scripts/aws-macos-jit-instance-rehydrate.mjs +260 -0
- package/scripts/aws-macos-jit-source-rebind.mjs +235 -14
- package/scripts/aws-macos-jit.mjs +12 -0
- package/scripts/buildchain-channel-router.mjs +18 -2
- package/scripts/buildchain-cli-help.mjs +9 -2
- package/scripts/buildchain-contract-lock.mjs +11 -1
- package/scripts/check-internal-architecture.mjs +1 -0
- package/scripts/check-inventory.mjs +14 -3
- package/scripts/dev-alpha-candidate-patrol.mjs +22 -1
- package/scripts/dev-delivery-authority.mjs +368 -0
- package/scripts/dev-delivery-native-run.mjs +235 -0
- package/scripts/dev-delivery-proof.mjs +64 -2
- package/scripts/dev-delivery-two-phase-resume.mjs +90 -0
- package/scripts/dev-delivery-two-phase.mjs +577 -0
- package/scripts/dev-delivery-warrant.mjs +47 -5
- package/scripts/dev-pr-delivery-warrant.mjs +19 -14
- package/scripts/generate-buildchain-kfd-witnesses.mjs +88 -94
- package/scripts/generate-channel-build-workflow.mjs +82 -31
- package/scripts/generate-next-development-guidance.mjs +49 -0
- package/scripts/generate-site-bundle.mjs +8 -3
- package/scripts/init-repo.mjs +135 -62
- package/scripts/next-development-self-dogfood-harness.mjs +409 -0
- package/scripts/next-development-self-dogfood.mjs +532 -0
- package/scripts/next-development-transition.mjs +47 -0
- package/scripts/promotion-channel-router.mjs +5 -3
- package/scripts/release-candidate-tail-reseal.mjs +426 -0
- package/scripts/release-train-self-dogfood.mjs +579 -0
- package/scripts/runtime-ref-core.mjs +4 -17
- package/scripts/seal-artifact-signing-requests.mjs +7 -4
- package/scripts/site-capability-metadata.mjs +23 -1
- package/scripts/stable-candidate-qualification.mjs +7 -7
- package/scripts/workflow-call-contract.mjs +1 -1
- package/templates/native-dev-delivery.yml +86 -0
|
@@ -263,9 +263,11 @@ semantics and fail-closed verification requirements.
|
|
|
263
263
|
The authority verifies the complete result set on GitHub-hosted infrastructure
|
|
264
264
|
before delivery. The consumer controller also performs final result verification,
|
|
265
265
|
exact-byte import, manifest recomputation, and deterministic-artifact replacement
|
|
266
|
-
on a GitHub-hosted lane.
|
|
267
|
-
|
|
268
|
-
|
|
266
|
+
on a GitHub-hosted lane. macOS results finalize on a GitHub-hosted macOS runner so
|
|
267
|
+
the consumer lifecycle can perform native post-sign checks before publication;
|
|
268
|
+
other platforms retain the GitHub-hosted Ubuntu control lane. Self-hosted build
|
|
269
|
+
runners do not download authority result payloads, and aggregate/release evidence
|
|
270
|
+
fails closed until this finalization succeeds.
|
|
269
271
|
|
|
270
272
|
The central `buildchain-artifact-signing` environment reuses the established
|
|
271
273
|
macOS Credential Island names (`BUILDCHAIN_MACOS_CERTIFICATE_*`,
|
|
@@ -491,10 +493,11 @@ GitHub Merge Queue does not by itself decide which candidate may spend a long
|
|
|
491
493
|
native proof before enqueue. Repositories with that workload use the
|
|
492
494
|
[Dev Delivery Warrant Queue](dev-delivery-warrant.md) as the durable,
|
|
493
495
|
FIFO-aging scheduling and fencing authority before native queue admission. A
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
496
|
+
provisional Warrant reserves the landing order before native shards, while only
|
|
497
|
+
its atomic qualified upgrade can authorize enqueue. Later candidates remain
|
|
498
|
+
visibly queued and continue source/CI work; GitHub still owns the exact
|
|
499
|
+
`merge_group` proof and final ref mutation. Workflow concurrency remains only a
|
|
500
|
+
process critical section and is not fairness or ownership authority.
|
|
498
501
|
|
|
499
502
|
Every required workflow must handle both `pull_request` and `merge_group`
|
|
500
503
|
before the queue is enabled. Queue runs do not provide
|
package/docs/release-passport.md
CHANGED
|
@@ -313,6 +313,13 @@ fails closed if any claim is missing source bindings, machine evidence, hashes,
|
|
|
313
313
|
artifact coordinates, verification result, audit boundary, responsibility, or
|
|
314
314
|
residual risk.
|
|
315
315
|
|
|
316
|
+
The same self-promotion boundary extends the Buildchain-owned KFD witness
|
|
317
|
+
generator against the transaction's exact source SHA. It produces the standard
|
|
318
|
+
full-cut adopter manifest, the non-qualifying KFD-4/5/7 product gates, and the
|
|
319
|
+
one-way legacy projection before the final passport is collected. An explicitly
|
|
320
|
+
supplied adopter manifest still takes precedence; an omitted self-release
|
|
321
|
+
manifest no longer silently produces a KFD-1/2/3-only passport.
|
|
322
|
+
|
|
316
323
|
### KFD-3 collaboration-interface release gate
|
|
317
324
|
|
|
318
325
|
KFD-3 asks a different release question than KFD-1. KFD-1 proves that named
|
|
@@ -403,8 +410,14 @@ Pass the standard full-cut declaration with `--kfd-adopter-manifest-json`
|
|
|
403
410
|
together with three `--kfd-product-gate-json` arguments for KFD-4, KFD-5, and
|
|
404
411
|
KFD-7. The collector invokes the verifier from the exact installed
|
|
405
412
|
`@kungfu-tech/kfd` package, binds the package artifact, registry and verifier
|
|
406
|
-
roots, the exact
|
|
407
|
-
and the existing product-gate roots.
|
|
413
|
+
roots, the collector's exact product repository and source, the
|
|
414
|
+
manifest/report/bundle witness roots, and the existing product-gate roots. A
|
|
415
|
+
non-Buildchain adopter is accepted only when its manifest identity, artifact
|
|
416
|
+
coordinate, and all three product-gate repositories match the collector's
|
|
417
|
+
`--repository` value. The lower-level Node API exposes the same boundary as
|
|
418
|
+
`expectedAdopterId`, `expectedSourceRepository`, and `expectedSourceSha`, while
|
|
419
|
+
omitted identity/repository values retain the Buildchain self-release default.
|
|
420
|
+
It emits `kfd-adopter-manifest.json`,
|
|
408
421
|
`kfd-adopter-manifest-gate.json`, and a legacy `kfd-support.json` projection.
|
|
409
422
|
The release passport and `artifact-evidence.json` carry the same rooted
|
|
410
423
|
`kfdAdopter` binding.
|
package/docs/release-train.md
CHANGED
|
@@ -8,12 +8,12 @@ confidence: high
|
|
|
8
8
|
sensitivity: public
|
|
9
9
|
evidence_grade: A
|
|
10
10
|
review_state: self-reviewed
|
|
11
|
-
last_reviewed: 2026-08-
|
|
11
|
+
last_reviewed: 2026-08-11
|
|
12
12
|
ai_provenance:
|
|
13
13
|
model_family: GPT-5
|
|
14
14
|
product: Codex
|
|
15
|
-
generated_at: 2026-08-
|
|
16
|
-
visible_context: Buildchain v3 release candidate, recovery, Dev to Alpha Candidate Patrol, Warrant, publication transaction, and release governance sources.
|
|
15
|
+
generated_at: 2026-08-11
|
|
16
|
+
visible_context: Buildchain v3 release candidate, recovery, Dev to Alpha Candidate Patrol, rooted blocker repair, Warrant, publication transaction, and release governance sources.
|
|
17
17
|
invisible_context_boundary: Live provider state and credentials were not read.
|
|
18
18
|
---
|
|
19
19
|
|
|
@@ -38,8 +38,9 @@ own those effects and persist the rooted contract in their declared store.
|
|
|
38
38
|
- a canonical creation timestamp.
|
|
39
39
|
|
|
40
40
|
The resulting `cutRoot` covers all of those fields. A generation greater than
|
|
41
|
-
one must name the prior cut root and one of
|
|
41
|
+
one must name the prior cut root and one of five supersession causes:
|
|
42
42
|
|
|
43
|
+
- `release-blocker-repair` (reserved for the rooted repair contract below);
|
|
43
44
|
- `incompatible-semantics`;
|
|
44
45
|
- `alpha-base-incompatibility`;
|
|
45
46
|
- `invalid-authority`; or
|
|
@@ -74,6 +75,23 @@ an invalid transition fails closed.
|
|
|
74
75
|
changing `trainRoot`, `cutRoot`, candidate identity, generation, or state. The
|
|
75
76
|
same exact observation is idempotent.
|
|
76
77
|
|
|
78
|
+
## Rooted release-blocker repair
|
|
79
|
+
|
|
80
|
+
`createReleaseBlockerRepair()` starts only from the active train's exact
|
|
81
|
+
`repair-required` state root. It creates generation N+1 from the frozen cut,
|
|
82
|
+
changing only the candidate commit and tree while preserving the original Dev
|
|
83
|
+
cut, Alpha base, runtime, route, and prior cut root. The prior train receives an
|
|
84
|
+
explicit `release-blocker-repair` supersession transition; later Dev movement
|
|
85
|
+
alone still cannot advance a generation.
|
|
86
|
+
|
|
87
|
+
The repair binds one semantic patch root to a cut landing and a Dev
|
|
88
|
+
forward-port. A successful cut landing makes the successor candidate buildable
|
|
89
|
+
even while the Dev forward-port is in conflict. Publication remains blocked
|
|
90
|
+
until `settleReleaseBlockerDevLanding()` compare-and-swap checks the repair root
|
|
91
|
+
and records a Dev landing with the same patch root. A landed but different Dev
|
|
92
|
+
patch produces a rooted `cut-dev-patch-root-mismatch` gate rather than
|
|
93
|
+
publication authority.
|
|
94
|
+
|
|
77
95
|
Buildchain v3 Candidate Patrol resolves the open managed candidate's persisted
|
|
78
96
|
train before it considers a new qualified development head. It reads back the
|
|
79
97
|
candidate ref and tree, Alpha base, and exact Buildchain runtime. Matching
|
|
@@ -82,6 +100,30 @@ single rooted observation. Candidate, tree, base, runtime, or route drift emits
|
|
|
82
100
|
a rooted hold and stops settlement. Only a validated train already carrying an
|
|
83
101
|
enumerated `superseded` transition is reported as superseded.
|
|
84
102
|
|
|
103
|
+
## Buildchain self-dogfood campaign
|
|
104
|
+
|
|
105
|
+
Buildchain qualifies the complete v3 mechanism with
|
|
106
|
+
`scripts/release-train-self-dogfood.mjs`. The campaign composes one frozen
|
|
107
|
+
Release Cut, moving-dev observation, deterministic failed build, successor
|
|
108
|
+
repair, cut/dev patch-root settlement, publication gate, and bounded Delivery
|
|
109
|
+
Warrant priority. It also proves that an active Warrant is not preempted and
|
|
110
|
+
that duplicate events, invalid authority, and unrelated priority claims fail
|
|
111
|
+
closed.
|
|
112
|
+
|
|
113
|
+
The command accepts an exact evidence input and emits a replayable rooted
|
|
114
|
+
report:
|
|
115
|
+
|
|
116
|
+
```sh
|
|
117
|
+
node scripts/release-train-self-dogfood.mjs \
|
|
118
|
+
--input /path/to/exact-protected-delivery.json \
|
|
119
|
+
--output /tmp/buildchain-release-train-self-dogfood.json
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
A passing report requires a merged protected PR, exact-head approval,
|
|
123
|
+
merge-group CI success, tree-equivalent merge readback, artifact evidence, and
|
|
124
|
+
installed-product evidence. Synthetic or unit-only evidence is useful for
|
|
125
|
+
negative tests but is not sufficient for release qualification.
|
|
126
|
+
|
|
85
127
|
## Readback and legacy state
|
|
86
128
|
|
|
87
129
|
`validateReleaseCut()` checks the standalone immutable cut and its canonical
|
|
@@ -66,10 +66,25 @@ release events, and non-semver release-like tags fail before the build matrix;
|
|
|
66
66
|
they never guess alpha for a stable release.
|
|
67
67
|
|
|
68
68
|
The router automatically selects `.buildchain/alpha-contract-lock.json` for
|
|
69
|
-
alpha and `.buildchain/contract-lock.json` for stable.
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
`buildchain-
|
|
69
|
+
alpha and `.buildchain/contract-lock.json` for stable. The generated workflow
|
|
70
|
+
uses two static advanced-workflow calls: `@vN-alpha` for alpha and `@vN` for
|
|
71
|
+
stable. A repository can override the common path with
|
|
72
|
+
`buildchain-contract-lock-path`, or override one channel with
|
|
73
|
+
`buildchain-alpha-contract-lock-path` / `buildchain-stable-contract-lock-path`,
|
|
74
|
+
but the path is never channel authority. The selected file's
|
|
75
|
+
`buildchain.ref` must prove the same channel and major as the workflow shell and
|
|
76
|
+
runtime.
|
|
77
|
+
|
|
78
|
+
Channel binding is independent of the current Buildchain major. Every
|
|
79
|
+
channel-bound run validates the complete triad before compatibility drift:
|
|
80
|
+
|
|
81
|
+
- stable = shell `vN` + runtime `vN` + a lock whose ref is stable `vN`;
|
|
82
|
+
- alpha = shell `vN-alpha` + runtime `vN-alpha` + a lock whose ref is alpha
|
|
83
|
+
`vN-alpha`.
|
|
84
|
+
|
|
85
|
+
Exact release refs are classified the same way. A missing lock, an ambiguous
|
|
86
|
+
identity, a major mismatch, or any stable/alpha mixture fails even when the
|
|
87
|
+
contract digest is unchanged or the drift would otherwise be additive.
|
|
73
88
|
|
|
74
89
|
Only repositories changing the default policy need extra routing input:
|
|
75
90
|
|
|
@@ -279,7 +294,8 @@ shell. The full train validation protocol is documented in
|
|
|
279
294
|
[`runtime-train-validation.md`](runtime-train-validation.md).
|
|
280
295
|
|
|
281
296
|
For one-off manual validation, a trusted maintainer can run the caller workflow
|
|
282
|
-
with a temporary runtime override
|
|
297
|
+
with a temporary runtime override. The override inherits the caller's declared
|
|
298
|
+
alpha or stable lane; trust authorizes the opaque ref, not cross-channel use:
|
|
283
299
|
|
|
284
300
|
```yaml
|
|
285
301
|
on:
|
|
@@ -1092,10 +1108,11 @@ jobs:
|
|
|
1092
1108
|
```
|
|
1093
1109
|
|
|
1094
1110
|
Existing callers may keep `buildchain-contract-lock-path`; a non-empty explicit
|
|
1095
|
-
path overrides channel-specific selection
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1111
|
+
path overrides channel-specific path selection only. Its lock content must
|
|
1112
|
+
still prove the selected channel and major. Migration only requires adding the
|
|
1113
|
+
two channel lock inputs and may retain the remaining common promotion
|
|
1114
|
+
declaration unchanged. Consumers must not call the dot-prefixed advanced
|
|
1115
|
+
workflow directly.
|
|
1099
1116
|
|
|
1100
1117
|
`buildchain-issue-app-id` and `buildchain-issue-app-private-key` are optional
|
|
1101
1118
|
but recommended for cross-repository consumers. They should identify a GitHub
|
|
@@ -165,6 +165,12 @@ maintain, or admin permission on the caller repository. Pull requests,
|
|
|
165
165
|
including fork-originated pull requests, cannot use train or exact-SHA
|
|
166
166
|
overrides.
|
|
167
167
|
|
|
168
|
+
That permission does not create a third channel. A train, authority ref, or
|
|
169
|
+
exact SHA must be bound to an alpha or stable shell lane, and the consumer lock
|
|
170
|
+
must prove that same lane and major. Trusted overrides can replace the runtime
|
|
171
|
+
coordinate for validation; they cannot combine a stable shell or lock with an
|
|
172
|
+
alpha runtime, or the reverse.
|
|
173
|
+
|
|
168
174
|
Runtime train validation covers Buildchain runtime scripts, CLI code, local
|
|
169
175
|
actions, configuration parsing, and lifecycle behavior. It cannot validate
|
|
170
176
|
changes that require the outer reusable workflow YAML itself to change, such as
|
package/docs/versioning.md
CHANGED
|
@@ -79,8 +79,12 @@ repository changes are patch".
|
|
|
79
79
|
|
|
80
80
|
| Date | Action | Line | Faces | Class | Rationale | PR |
|
|
81
81
|
| ---------- | ------------ | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |
|
|
82
|
-
| 2026-08-
|
|
83
|
-
| 2026-08-
|
|
82
|
+
| 2026-08-11 | extend-minor | `v3.0` | provisional-delivery-warrant, qualified-delivery-warrant, native-qualification-proof, native-proof-reuse-decision, generated-native-delivery-workflow | additive | Reserve protected-dev order after exact source acceptance and approval, then require an atomic native-proof-bound qualification before merge-queue admission. Reuse is limited to stable semantic source, closure, dependencies, and toolchain with a fully attributed disjoint base delta; overlap and uncertainty fail closed to revalidation. | |
|
|
83
|
+
| 2026-08-12 | extend-minor | `v3.0` | bounded-qualification-lease, exclusive-landing-warrant, dev-delivery-authority-v2 | additive | Add an explicit opt-in v2 state that permits bounded qualification-only leases while retaining one exclusive merge-group Landing Warrant. The v1 single-flight Warrant state and commands remain the byte- and behavior-compatible default. | |
|
|
84
|
+
| 2026-08-12 | extend-minor | `v3.0` | native-qualification-proof-v2, native-proof-base-delta, idempotent-native-proof-resume | additive | Bind native proof to the execution environment and a rooted complete Dev-delta/rename attribution, persist completed proof before final classification, and make duplicate qualified-controller dispatch an effect-free replay. Legacy v1 proof remains verifiable but cannot be reused without the v2 environment binding. | |
|
|
85
|
+
| 2026-08-11 | extend-minor | `v3.0` | release-blocker-repair-contract, release-blocker-priority-claim, release-train-node-export, dev-delivery-warrant-node-export, next-development-transition, next-development-projection | additive | Add rooted successor candidate generations on a frozen Release Cut, exact semantic patch identity across cut and Dev landings, publication blocking through conflict or mismatch, a narrow non-preemptive Warrant blocker lane, and a separate rooted transition that preserves completed Alpha success while the following development version is materialized. | |
|
|
86
|
+
| 2026-08-10 | extend-minor | `v3.0` | release-cut-contract, release-train-state-machine, release-train-node-export | additive | Add a provider-neutral rooted Release Cut and idempotent Release Train state contract that freezes candidate, tree, Alpha base, runtime, generation, and authority while treating later Dev movement as observation rather than implicit supersession. | |
|
|
87
|
+
| 2026-08-05 | extend-minor | `v3.0` | auditable-demo-scenario, auditable-demo-capture, auditable-demo-adapter | additive | Add an opt-in deterministic readable-playback declaration that preserves captured terminal payloads and order while normalizing only presentation timing; omitted playback continues to use observed PTY timestamps, and existing composition modes remain unchanged. | |
|
|
84
88
|
| 2026-08-04 | extend-minor | `v3.0` | dev-delivery-warrant-queue, source-qualification-proof, integration-delivery-proof, dev-delivery-cli, reusable-dev-delivery-workflows | additive | Add durable fair and fenced protected-dev scheduling plus split source/integration proof contracts. Existing PR admission remains available through explicit `off` and `shadow` rollout modes; no existing command, export, or release flow is removed. | |
|
|
85
89
|
| 2026-08-01 | extend-minor | `v3.0` | cli-reference-registry, node-api-symbol-registry, golden-path-manual | additive | Add generated, drift-checked CLI and Node API reference registries to the public site bundle, plus a package-tested first-user Golden Path; existing command execution and import semantics remain unchanged. | |
|
|
86
90
|
| 2026-07-31 | extend-minor | `v3.0` | auditable-demo-workflow, auditable-demo-media-profile, auditable-demo-media-receipt | additive | Add an opt-in responsive profile that binds source-resolution and exact 1280x720 MP4/WebM/GIF renditions to one Gate and receipt while rejecting upscales, aspect-ratio drift, and profile changes between Gate-only and full-render paths. | |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kungfu-tech/buildchain",
|
|
3
|
-
"version": "3.0.9-alpha.
|
|
3
|
+
"version": "3.0.9-alpha.10",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Buildchain Release Passport, release governance, CLI toolkit, and site facts.",
|
|
6
6
|
"repository": "https://github.com/kungfu-systems/buildchain",
|
|
@@ -28,12 +28,20 @@
|
|
|
28
28
|
"./cache-evidence": "./packages/core/cache-evidence.js",
|
|
29
29
|
"./controller-evidence": "./packages/core/controller-evidence.js",
|
|
30
30
|
"./diagnostics": "./packages/core/diagnostics.js",
|
|
31
|
+
"./dev-delivery-authority": "./packages/core/dev-delivery-authority.js",
|
|
31
32
|
"./dev-delivery-warrant": "./packages/core/dev-delivery-warrant.js",
|
|
32
33
|
"./homebrew": "./packages/core/homebrew.js",
|
|
33
34
|
"./issue-reporting": "./packages/core/issue-reporting.js",
|
|
34
35
|
"./kfd": "./packages/core/kfd.js",
|
|
35
36
|
"./kfd-product-gates": "./packages/core/kfd-product-gates.js",
|
|
36
37
|
"./kfd-adopter-manifest": "./packages/core/kfd-adopter-manifest.js",
|
|
38
|
+
"./adopter-delivery-gate": "./packages/core/adopter-delivery-gate.js",
|
|
39
|
+
"./kfd-adopter-category-driver": "./packages/core/kfd-adopter-category-driver.js",
|
|
40
|
+
"./buildchain-delivery-infrastructure": "./packages/core/buildchain-delivery-infrastructure.js",
|
|
41
|
+
"./buildchain-delivery-bootstrap": "./packages/core/buildchain-delivery-bootstrap.js",
|
|
42
|
+
"./legacy-kfd-adopter-driver": "./packages/core/legacy-kfd-adopter-driver.js",
|
|
43
|
+
"./adopter-delivery-passport": "./packages/core/adopter-delivery-passport.js",
|
|
44
|
+
"./adopter-delivery-vectors": "./packages/core/adopter-delivery-vectors.js",
|
|
37
45
|
"./kfd-adopter-release-binding": "./packages/core/artifact-verification-envelope.js",
|
|
38
46
|
"./kfd-agent-hub": "./packages/core/kfd-agent-hub.js",
|
|
39
47
|
"./buildchain-layout": "./packages/core/buildchain-layout.js",
|
|
@@ -57,6 +65,9 @@
|
|
|
57
65
|
"./release-candidate": "./packages/core/release-candidate.js",
|
|
58
66
|
"./release-candidate-recovery": "./packages/core/release-candidate-recovery.js",
|
|
59
67
|
"./release-train": "./packages/core/release-train.js",
|
|
68
|
+
"./next-development-transition": "./packages/core/next-development-transition.js",
|
|
69
|
+
"./next-development-controller": "./packages/core/next-development-controller.js",
|
|
70
|
+
"./next-development-projection": "./packages/core/next-development-projection.js",
|
|
60
71
|
"./stable-candidate-ledger": "./packages/core/stable-candidate-ledger.js",
|
|
61
72
|
"./release-passport": "./packages/core/release-passport.js",
|
|
62
73
|
"./release-passport-contract": "./packages/core/release-passport-contract.js",
|
|
@@ -89,6 +100,7 @@
|
|
|
89
100
|
"./site/schemas/release-passport-v1.schema.json": "./dist/site/schemas/release-passport-v1.schema.json",
|
|
90
101
|
"./site/schemas/kfd-agent-hub-adoption.schema.json": "./dist/site/schemas/kfd-agent-hub-adoption.schema.json",
|
|
91
102
|
"./site/schemas/kfd-product-gate-input-v1.schema.json": "./dist/site/schemas/kfd-product-gate-input-v1.schema.json",
|
|
103
|
+
"./site/schemas/dev-delivery-authority-v2.schema.json": "./dist/site/schemas/dev-delivery-authority-v2.schema.json",
|
|
92
104
|
"./site/buildchain-contract.json": "./dist/site/buildchain-contract.json",
|
|
93
105
|
"./site/product-mechanism.json": "./dist/site/product-mechanism.json",
|
|
94
106
|
"./site/release-provenance.json": "./dist/site/release-provenance.json",
|
|
@@ -108,7 +120,8 @@
|
|
|
108
120
|
"SECURITY.md",
|
|
109
121
|
"docs/*.md",
|
|
110
122
|
"actions/*/README.md",
|
|
111
|
-
"fixtures/*/README.md"
|
|
123
|
+
"fixtures/*/README.md",
|
|
124
|
+
"templates/"
|
|
112
125
|
],
|
|
113
126
|
"engines": {
|
|
114
127
|
"node": ">=22.14.0"
|
|
@@ -121,12 +134,14 @@
|
|
|
121
134
|
"scripts": {
|
|
122
135
|
"operator:windows-jit": "bash scripts/aws-windows-jit-operator.sh",
|
|
123
136
|
"check": "pnpm run check:static && node scripts/check-maintainability.mjs && node scripts/check-internal-architecture.mjs && node scripts/check-inventory.mjs && node scripts/check-core-mechanism-inventory.mjs && node scripts/check-release-tail-contract.mjs && node scripts/v4-architecture.mjs validate && pnpm run check:site && pnpm run check:workflows && pnpm run test:unit && pnpm run check:golden-path && node scripts/check-action-bundles.mjs",
|
|
124
|
-
"check:static": "node scripts/check-javascript-syntax.mjs && prettier --check architecture/*.json contracts/release-tail-capabilities-v1.schema.json contracts/release-tail-provider-bindings-v1.schema.json contracts/publication-rehearsal-capsule-v1.schema.json contracts/fixtures/release-tail-capabilities-v1/*.json bin/internal/command-registry.mjs scripts/authorize-promotion-runtime-override.cjs scripts/check-core-mechanism-inventory.mjs scripts/check-release-tail-contract.mjs scripts/check-javascript-syntax.mjs scripts/check-maintainability.mjs scripts/maintainability-metrics.mjs scripts/public-reference.mjs scripts/site-reference-registry.mjs scripts/generate-public-reference.mjs scripts/v4-architecture.mjs scripts/verify-golden-path.mjs tests/authorize-promotion-runtime-override.test.mjs tests/command-registry.test.mjs tests/core-mechanism-inventory.test.mjs tests/release-tail-contract.test.mjs tests/maintainability.test.mjs tests/promotion-responsibilities.test.mjs tests/public-reference.test.mjs tests/v4-architecture.test.mjs",
|
|
137
|
+
"check:static": "node scripts/check-javascript-syntax.mjs && prettier --check architecture/*.json contracts/dev-delivery-authority-v2.schema.json contracts/release-tail-capabilities-v1.schema.json contracts/release-tail-provider-bindings-v1.schema.json contracts/publication-rehearsal-capsule-v1.schema.json contracts/fixtures/release-tail-capabilities-v1/*.json bin/internal/command-registry.mjs scripts/authorize-promotion-runtime-override.cjs scripts/check-core-mechanism-inventory.mjs scripts/check-release-tail-contract.mjs scripts/check-javascript-syntax.mjs scripts/check-maintainability.mjs scripts/maintainability-metrics.mjs scripts/public-reference.mjs scripts/site-reference-registry.mjs scripts/generate-public-reference.mjs scripts/v4-architecture.mjs scripts/verify-golden-path.mjs tests/authorize-promotion-runtime-override.test.mjs tests/command-registry.test.mjs tests/core-mechanism-inventory.test.mjs tests/release-tail-contract.test.mjs tests/maintainability.test.mjs tests/promotion-responsibilities.test.mjs tests/public-reference.test.mjs tests/v4-architecture.test.mjs",
|
|
125
138
|
"check:workflows": "bash scripts/check-workflows.sh",
|
|
126
139
|
"generate:reference": "node scripts/generate-public-reference.mjs",
|
|
127
140
|
"check:reference": "node scripts/generate-public-reference.mjs --check",
|
|
128
|
-
"generate:
|
|
129
|
-
"check:
|
|
141
|
+
"generate:next-development": "node scripts/generate-next-development-guidance.mjs",
|
|
142
|
+
"check:next-development": "node scripts/generate-next-development-guidance.mjs --check",
|
|
143
|
+
"generate:site": "pnpm run generate:next-development && pnpm run generate:reference && node scripts/generate-site-bundle.mjs",
|
|
144
|
+
"check:site": "pnpm run check:next-development && pnpm run check:reference && node scripts/generate-site-bundle.mjs --check",
|
|
130
145
|
"check:golden-path": "node scripts/verify-golden-path.mjs",
|
|
131
146
|
"test:unit": "node --test tests/*.test.mjs",
|
|
132
147
|
"build": "pnpm -r --filter \"./actions/**\" build",
|
|
@@ -140,7 +155,7 @@
|
|
|
140
155
|
"typescript": "^5.9.0"
|
|
141
156
|
},
|
|
142
157
|
"dependencies": {
|
|
143
|
-
"@kungfu-tech/kfd": "1.0.0-alpha.
|
|
158
|
+
"@kungfu-tech/kfd": "1.0.0-alpha.62",
|
|
144
159
|
"ajv": "8.20.0",
|
|
145
160
|
"smol-toml": "1.7.0"
|
|
146
161
|
}
|
package/packages/core/README.md
CHANGED
|
@@ -16,6 +16,9 @@ Current shared surfaces:
|
|
|
16
16
|
`@kungfu-tech/buildchain/build-facts`;
|
|
17
17
|
- release passport creation and verification through
|
|
18
18
|
`@kungfu-tech/buildchain/release-passport`.
|
|
19
|
+
- protocol-neutral adopter delivery gating, published KFD category verification,
|
|
20
|
+
explicit legacy adaptation, Release Passport binding, and rooted offline vectors
|
|
21
|
+
through the `@kungfu-tech/buildchain/adopter-delivery-*` subpaths.
|
|
19
22
|
- anchored/manual derived witness preflight and exact-tree evidence through
|
|
20
23
|
`@kungfu-tech/buildchain/anchored-version-material`.
|
|
21
24
|
- sealed exact-root and KFD assessment inputs for KFX admission through
|
|
@@ -82,6 +85,28 @@ const fact = collectModuleBuildFacts({ moduleId: "native-core" });
|
|
|
82
85
|
writeBuildFacts({ fact, output: ".buildchain/facts/native-core.json" });
|
|
83
86
|
```
|
|
84
87
|
|
|
88
|
+
Adopter delivery consumers compose an exact protocol driver with an explicit
|
|
89
|
+
artifact profile. Buildchain does not infer a driver from project identity:
|
|
90
|
+
|
|
91
|
+
```js
|
|
92
|
+
import {
|
|
93
|
+
createAdopterDeliveryGate,
|
|
94
|
+
createPackageArtifactProfile,
|
|
95
|
+
} from "@kungfu-tech/buildchain/adopter-delivery-gate";
|
|
96
|
+
import { createKfdAdopterCategoryProtocolDriver } from "@kungfu-tech/buildchain/kfd-adopter-category-driver";
|
|
97
|
+
|
|
98
|
+
const gate = createAdopterDeliveryGate({
|
|
99
|
+
drivers: [createKfdAdopterCategoryProtocolDriver()],
|
|
100
|
+
artifactProfiles: [createPackageArtifactProfile()],
|
|
101
|
+
});
|
|
102
|
+
const result = gate.evaluate(request, exactPublishedKfdContext);
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
The returned result remains non-qualifying and non-self-certifying. Bind it to
|
|
106
|
+
Release Passport and artifact evidence only after `status === "passed"`; use the
|
|
107
|
+
rooted suite from `@kungfu-tech/buildchain/adopter-delivery-vectors` for offline
|
|
108
|
+
consumer replay.
|
|
109
|
+
|
|
85
110
|
KFX producers can seal one passing artifact verification with exact roots,
|
|
86
111
|
identity, lifecycle, revocation, and an existing ADR-0052 assessment. Consumers
|
|
87
112
|
verify or project the same envelope instead of reconstructing bindings:
|