@kungfu-tech/buildchain 3.0.3-alpha.0 → 3.0.3-alpha.2
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/AGENTS.md +1 -1
- package/CONTRIBUTING.md +1 -1
- package/README.md +32 -1
- package/actions/promote-buildchain-ref/README.md +90 -19
- package/actions/report-buildchain-issue/README.md +19 -1
- package/actions/run-lifecycle/README.md +5 -0
- package/actions/validate-config/README.md +19 -1
- package/bin/buildchain.mjs +41 -241
- package/bin/internal/command-registry.mjs +82 -0
- package/bin/internal/trust-release-cli.mjs +1 -0
- package/contracts/auditable-demo-media-profiles-v1.json +116 -1
- package/contracts/buildchain-v2-residuals-v1.json +0 -45
- package/contracts/evidence/auditable-demo-responsive-web-delivery-v1.json +143 -0
- package/contracts/evidence/auditable-demo-web-delivery-v1.json +7 -3
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/complete-transcript.txt +2 -0
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/public-projection.json +16 -0
- package/contracts/fixtures/auditable-demo-responsive-web-delivery-v1/scene.json +12 -0
- package/dist/site/buildchain-contract.json +161 -42
- package/dist/site/buildchain-site.json +180 -84
- package/dist/site/capability-registry.json +6 -6
- package/dist/site/cli-registry.json +932 -98
- package/dist/site/controller-registry.json +97 -5
- package/dist/site/kfd-claims.json +316 -23
- package/dist/site/kfd-upstream-aggregate.json +1 -1
- package/dist/site/manual-registry.json +20 -20
- package/dist/site/node-api-registry.json +371 -56
- package/dist/site/page-registry.json +155 -59
- package/dist/site/public-surface-audit.json +286 -24
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/release-provenance.json +3 -0
- package/dist/site/site-manifest.json +24 -24
- package/dist/site/workflow-registry.json +570 -79
- package/docs/MAP.md +22 -4
- package/docs/auditable-demo.md +35 -12
- package/docs/aws-us-elastic-runner-burst-plane.md +381 -0
- package/docs/cli.md +143 -12
- package/docs/consumer-issue-reporting.md +19 -1
- package/docs/github-governance-authority.md +2 -2
- package/docs/lifecycle-protocol.md +20 -2
- package/docs/migration-inventory.md +24 -5
- package/docs/ownership.md +19 -1
- package/docs/publication-artifacts.md +185 -18
- package/docs/publication-authority.md +4 -4
- package/docs/publish-transaction.md +78 -31
- package/docs/release-candidate.md +24 -0
- package/docs/release-flow.md +50 -32
- package/docs/release-governance.md +31 -31
- package/docs/release-passport.md +4 -0
- package/docs/release-propagation.md +57 -12
- package/docs/reusable-build-surface.md +95 -27
- package/docs/runtime-train-validation.md +20 -2
- package/docs/stable-candidate-patrol.md +6 -6
- package/docs/toolkit-observability.md +22 -0
- package/docs/versioning.md +6 -4
- package/docs/web-surface-deployments.md +62 -0
- package/package.json +7 -5
- package/packages/core/README.md +61 -4
- package/packages/core/buildchain-contract.js +8 -4
- package/packages/core/cache-evidence.js +1 -0
- package/packages/core/diagnostics.js +105 -30
- package/packages/core/github-governance-authority.js +10 -25
- package/packages/core/index.js +40 -0
- package/packages/core/paper-fleet.js +260 -0
- package/packages/core/paper-repository.js +210 -0
- package/packages/core/paper-work.js +365 -0
- package/packages/core/paper.js +3180 -0
- package/packages/core/public-surface-audit.js +26 -75
- package/packages/core/public-surface-cli.js +117 -0
- package/packages/core/publication-artifact.js +1 -6
- package/packages/core/publication-authority.js +1 -0
- package/packages/core/publication-reproducibility.js +947 -0
- package/packages/core/publication-sealed-bundle.js +190 -0
- package/packages/core/publish-transaction.js +147 -17
- package/packages/core/release-candidate.js +234 -0
- package/packages/core/release-passport.js +483 -201
- package/packages/core/release-propagation.js +175 -1
- package/scripts/auditable-demo.mjs +119 -5
- package/scripts/aws-codebuild-toolchain.mjs +285 -0
- package/scripts/aws-macos-jit-core.mjs +378 -0
- package/scripts/aws-macos-jit.mjs +123 -0
- package/scripts/aws-runner-burst-core.mjs +248 -0
- package/scripts/aws-runner-burst.mjs +79 -0
- package/scripts/aws-windows-jit-core.mjs +374 -0
- package/scripts/aws-windows-jit.mjs +121 -0
- package/scripts/build-contract-core.mjs +69 -6
- package/scripts/build-standalone-binary.mjs +23 -0
- package/scripts/buildchain-cli-help.mjs +256 -0
- package/scripts/buildchain-contract-lock.mjs +1 -1
- package/scripts/check-internal-architecture.mjs +69 -2
- package/scripts/check-inventory.mjs +69 -2
- package/scripts/check-javascript-syntax.mjs +31 -0
- package/scripts/check-maintainability.mjs +371 -0
- package/scripts/compiler-cache-evidence.mjs +221 -0
- package/scripts/dev-alpha-candidate-patrol.mjs +268 -43
- package/scripts/finalize-native-artifact-signing-result.mjs +75 -4
- package/scripts/generate-channel-promotion-workflow.mjs +3 -12
- package/scripts/generate-release-candidate-passport.mjs +4 -0
- package/scripts/generate-site-bundle.mjs +68 -188
- package/scripts/import-artifact-signing-results.mjs +64 -5
- package/scripts/inspect-artifact-signing-requests.mjs +7 -0
- package/scripts/maintainability-metrics.mjs +339 -0
- package/scripts/npm-publish-transaction.mjs +57 -6
- package/scripts/paper-work-fleet-cli.mjs +563 -0
- package/scripts/paper.mjs +631 -0
- package/scripts/promotion-channel-router.mjs +16 -4
- package/scripts/publication-reproducibility.mjs +62 -0
- package/scripts/release-propagation.mjs +39 -0
- package/scripts/resolve-build-contract.mjs +6 -0
- package/scripts/route-offline-runners.mjs +236 -0
- package/scripts/run-lifecycle-core.mjs +62 -1
- package/scripts/runtime-ref-core.mjs +23 -2
- package/scripts/seal-artifact-signing-requests.mjs +13 -6
- package/scripts/site-capability-metadata.mjs +202 -0
- package/scripts/stable-candidate-qualification.mjs +42 -0
- package/scripts/web-surface-core.mjs +272 -86
package/AGENTS.md
CHANGED
|
@@ -23,7 +23,7 @@ override that policy:
|
|
|
23
23
|
uses: kungfu-systems/buildchain/.github/workflows/build.yml@v3
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
During
|
|
26
|
+
During v3 prerelease evaluation windows, canaries call the same router through
|
|
27
27
|
the matching prerelease ref:
|
|
28
28
|
|
|
29
29
|
```yaml
|
package/CONTRIBUTING.md
CHANGED
|
@@ -120,7 +120,7 @@ release/vX/vX.Y -> publish-gate/major
|
|
|
120
120
|
branch prefixes, max merges, and dry-run are all declared inputs.
|
|
121
121
|
- When a Buildchain change needs downstream validation before stable refs move,
|
|
122
122
|
publish a temporary runtime train ref such as
|
|
123
|
-
`train/
|
|
123
|
+
`train/v3/v3.0/<capability>` and ask consumers to run trusted
|
|
124
124
|
`workflow_dispatch` with `buildchain-ref` set to that train. Keep the pull
|
|
125
125
|
request against the `dev/*` branch; the train is only a validation pointer,
|
|
126
126
|
not a pending merge target. After validation succeeds, merge into the active
|
package/README.md
CHANGED
|
@@ -191,6 +191,27 @@ npx @kungfu-tech/buildchain validate --require-version-state
|
|
|
191
191
|
npx @kungfu-tech/buildchain release --dry-run --target-ref alpha/v3/v3.0
|
|
192
192
|
```
|
|
193
193
|
|
|
194
|
+
Bootstrap and inspect a governed paper repository through one interface:
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
npx @kungfu-tech/buildchain paper scaffold \
|
|
198
|
+
--package @kungfu-tech/paper-example \
|
|
199
|
+
--repository kungfu-systems/paper-example
|
|
200
|
+
pnpm add -D @kungfu-tech/buildchain@<exact-v3-version>
|
|
201
|
+
pnpm exec buildchain paper work start <topic>
|
|
202
|
+
pnpm exec buildchain paper work submit
|
|
203
|
+
pnpm exec buildchain paper preflight --offline
|
|
204
|
+
pnpm exec buildchain paper status
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
The paper surface is dry-run first. Add `--write` only to create missing
|
|
208
|
+
scaffold files. `work start` and `work submit` validate the canonical remote,
|
|
209
|
+
exact development SHA, clean source, safe branch, and fast-forward boundary
|
|
210
|
+
before changing local or GitHub state. External mutations such as npm
|
|
211
|
+
bootstrap, Alpha PR creation, and release resumption require `--execute`. See
|
|
212
|
+
[`docs/publication-artifacts.md`](docs/publication-artifacts.md) for the
|
|
213
|
+
evidence-state model and operator flow.
|
|
214
|
+
|
|
194
215
|
Buildchain supports package and non-package projects through
|
|
195
216
|
`.buildchain/buildchain.toml`. Legacy root `buildchain.toml` files remain
|
|
196
217
|
readable, but new consumers should keep Buildchain-owned files under
|
|
@@ -212,13 +233,23 @@ plus fail-closed product-evidence gates for KFD-4, KFD-5, and KFD-7. These
|
|
|
212
233
|
gates preserve product-owned qualification and support decisions; they do not
|
|
213
234
|
turn a schema-valid record into certification or shipped support.
|
|
214
235
|
|
|
215
|
-
Buildchain's
|
|
236
|
+
Buildchain's action registry currently contains six active entries. Four are
|
|
237
|
+
direct consumer integration actions:
|
|
216
238
|
|
|
217
239
|
- `actions/validate-config`
|
|
218
240
|
- `actions/run-lifecycle`
|
|
219
241
|
- `actions/promote-buildchain-ref`
|
|
220
242
|
- `actions/report-buildchain-issue`
|
|
221
243
|
|
|
244
|
+
Two additional release-authority components are also registered and versioned:
|
|
245
|
+
|
|
246
|
+
- `actions/github-artifact-attestation`
|
|
247
|
+
- `actions/macos-credential-island`
|
|
248
|
+
|
|
249
|
+
`dist/site/workflow-registry.json#actions` is the machine-readable inventory;
|
|
250
|
+
this split keeps the older four-action consumer list from being mistaken for
|
|
251
|
+
the complete current registry.
|
|
252
|
+
|
|
222
253
|
The active reusable workflow surfaces are:
|
|
223
254
|
|
|
224
255
|
- `.github/workflows/.gate-profile.yml` for project-neutral Shifu Gate profile
|
|
@@ -1,28 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: active
|
|
3
|
+
period: ongoing
|
|
4
|
+
theme: buildchain-ref-promotion-action
|
|
5
|
+
doc_type: technical-reference
|
|
6
|
+
source_level: local-files
|
|
7
|
+
confidence: high
|
|
8
|
+
sensitivity: public
|
|
9
|
+
evidence_grade: A
|
|
10
|
+
review_state: unreviewed
|
|
11
|
+
last_reviewed: 2026-07-31
|
|
12
|
+
ai_provenance:
|
|
13
|
+
model_family: GPT-5
|
|
14
|
+
product: Codex
|
|
15
|
+
generated_at: 2026-07-31
|
|
16
|
+
invisible_context: not asserted
|
|
17
|
+
---
|
|
18
|
+
|
|
1
19
|
# promote-buildchain-ref
|
|
2
20
|
|
|
3
21
|
Internal buildchain action for promoting verified buildchain release-line and
|
|
4
22
|
compatibility refs from buildchain release channels:
|
|
5
23
|
|
|
6
|
-
- `alpha/
|
|
7
|
-
`
|
|
24
|
+
- `alpha/v3/v3.0` creates or reuses the next exact prerelease tag such as
|
|
25
|
+
`v3.0.3-alpha.0`, writes that version into package version state, points the
|
|
8
26
|
alpha and dev channel branches at the version commit, then promotes
|
|
9
|
-
`
|
|
10
|
-
- `release/
|
|
11
|
-
`
|
|
27
|
+
`v3.0-alpha` and, when this is the highest published alpha minor, `v3-alpha`;
|
|
28
|
+
- `release/v3/v3.0` creates or reuses the next exact release tag such as
|
|
29
|
+
`v3.0.2`, writes that version into package version state, points the release
|
|
12
30
|
channel branch and release tags at the release commit, then prepares a second
|
|
13
|
-
source commit for the next exact prerelease tag such as `
|
|
14
|
-
points the alpha/dev channel branches plus `
|
|
15
|
-
commit, and moves `v3-alpha` only if no higher
|
|
31
|
+
source commit for the next exact prerelease tag such as `v3.0.3-alpha.0` and
|
|
32
|
+
points the alpha/dev channel branches plus `v3.0-alpha` at that prerelease
|
|
33
|
+
commit, and moves `v3-alpha` only if no higher v3 minor has published an alpha;
|
|
16
34
|
- `publish-gate/major` accepts a reviewed PR from a production release line such
|
|
17
|
-
as `release/
|
|
18
|
-
`
|
|
19
|
-
at that release commit, then prepares `
|
|
20
|
-
`alpha/
|
|
35
|
+
as `release/v3/v3.0`, writes the next major production version such as
|
|
36
|
+
`v4.0.0`, points `publish-gate/major`, `release/v4/v4.0`, `v4.0`, and `v4`
|
|
37
|
+
at that release commit, then prepares `v4.0.1-alpha.0` for
|
|
38
|
+
`alpha/v4/v4.0`, `dev/v4/v4.0`, `v4.0-alpha`, and `v4-alpha`. The older `major-gate`
|
|
21
39
|
branch name is a compatibility alias only.
|
|
22
40
|
|
|
23
41
|
The release branch name defines the minor line. For example,
|
|
24
|
-
`release/
|
|
25
|
-
when the next minor tag such as `
|
|
42
|
+
`release/v3/v3.1` creates `v3.1.N`, promotes `v3.1`, and promotes `v3` only
|
|
43
|
+
when the next minor tag such as `v3.2` does not already exist.
|
|
26
44
|
|
|
27
45
|
The action updates version state in `lerna.json`, root `package.json`, and
|
|
28
46
|
workspace package manifests discovered from package manager metadata
|
|
@@ -134,7 +152,7 @@ trusted channel workflow:
|
|
|
134
152
|
token: ${{ secrets.BUILDCHAIN_PROMOTION_TOKEN }}
|
|
135
153
|
generated-ref-update-token: ${{ github.token }}
|
|
136
154
|
sha: ${{ github.sha }}
|
|
137
|
-
target-ref: release/
|
|
155
|
+
target-ref: release/v3/v3.0
|
|
138
156
|
publish-transaction: "true"
|
|
139
157
|
publish-mode: publish-final-version
|
|
140
158
|
publish-auth: trusted-publishing
|
|
@@ -219,6 +237,10 @@ and fail before publish-gate side effects if it no longer matches:
|
|
|
219
237
|
promote-only-release-candidate: "true"
|
|
220
238
|
release-candidate-passport-path: .buildchain/artifacts/release-candidate-passport.json
|
|
221
239
|
release-candidate-build-summary-path: .buildchain/artifacts/build-summary.json
|
|
240
|
+
release-candidate-family-evidence-required: "true"
|
|
241
|
+
release-candidate-family-evidence-root: sha256:<initiative-family-root>
|
|
242
|
+
release-candidate-family-initiative-id: 2026-07-30-example-initiative
|
|
243
|
+
release-candidate-family-assignment-id: 2026-07-30-example-release
|
|
222
244
|
```
|
|
223
245
|
|
|
224
246
|
The action validates repository, channel, source identity, platform matrix, and
|
|
@@ -229,6 +251,14 @@ channel HEAD's Git tree SHA matching the passport tree hash. If validation
|
|
|
229
251
|
fails, run or attach the verified channel PR build first instead of promoting a
|
|
230
252
|
stale or unproven artifact set.
|
|
231
253
|
|
|
254
|
+
The four family-evidence inputs are optional. When enabled, the action requires
|
|
255
|
+
the candidate passport to carry the exact
|
|
256
|
+
`kungfu-buildchain-initiative-family-release-evidence/v1` envelope and checks
|
|
257
|
+
its family root, Initiative id, and Assignment id before any promotion
|
|
258
|
+
mutation. Buildchain only transports and validates this adapter-edge release
|
|
259
|
+
evidence; Kungfu Work Control remains authoritative for native Family State v1
|
|
260
|
+
and its additive v2 typed envelope.
|
|
261
|
+
|
|
232
262
|
When enabled, the action creates or resumes a release transaction keyed by
|
|
233
263
|
repository, version, source SHA, and target ref. It persists that transaction to
|
|
234
264
|
a machine-managed branch under `buildchain/release-state/<version>`, with
|
|
@@ -244,6 +274,16 @@ Passport collection. This is explicit opt-in because registry publication and
|
|
|
244
274
|
other provider mutations must not be replayed blindly; the option rejects
|
|
245
275
|
`promote-existing-version`.
|
|
246
276
|
|
|
277
|
+
Build-once callers additionally pass `publish-sealed-bundle-root` and
|
|
278
|
+
`publish-sealed-bundle-manifest`. The action verifies the typed manifest and
|
|
279
|
+
persists every declared file below
|
|
280
|
+
`sealed-bundle/<candidate-root>/files/` on the same durable ref before it starts
|
|
281
|
+
the publish command. A fresh runner can omit both inputs: the action restores
|
|
282
|
+
the exact binary bundle into `.buildchain/recovered-publication/<version>/`,
|
|
283
|
+
re-verifies it, and exports the recovered npm tarball through
|
|
284
|
+
`BUILDCHAIN_SEALED_NPM_TARBALL` with its exact integrity and SHA-256. This path
|
|
285
|
+
never repacks the npm tarball.
|
|
286
|
+
|
|
247
287
|
The action runs `lifecycle.publish` from `buildchain.toml` or the explicit
|
|
248
288
|
`publish-command` input, then validates publish evidence before exact tags and
|
|
249
289
|
floating refs move. If durable state persistence fails, the action fails closed
|
|
@@ -275,6 +315,10 @@ BUILDCHAIN_RELEASE_SHA
|
|
|
275
315
|
BUILDCHAIN_RELEASE_MATERIAL_SHA
|
|
276
316
|
BUILDCHAIN_PUBLISH_TOOLING_SHA
|
|
277
317
|
BUILDCHAIN_PUBLISH_EVIDENCE
|
|
318
|
+
BUILDCHAIN_SEALED_BUNDLE_ROOT
|
|
319
|
+
BUILDCHAIN_SEALED_NPM_TARBALL
|
|
320
|
+
BUILDCHAIN_SEALED_NPM_INTEGRITY
|
|
321
|
+
BUILDCHAIN_SEALED_NPM_SHA256
|
|
278
322
|
BUILDCHAIN_REQUIRED_ARTIFACTS
|
|
279
323
|
```
|
|
280
324
|
|
|
@@ -287,11 +331,17 @@ before `lifecycle.publish`. Requirement descriptors may omit `digest`; final
|
|
|
287
331
|
publish evidence may not.
|
|
288
332
|
|
|
289
333
|
The action outputs `transaction-id`, `transaction-state`,
|
|
334
|
+
`transaction-publication-state`, `transaction-sealed-bundle-root`,
|
|
335
|
+
`transaction-resume-command`,
|
|
290
336
|
`transaction-exact-tag`, `public-release-tag`, `transaction-release-sha`,
|
|
291
337
|
`transaction-state-ref`, `transaction-state-sha`, `transaction-state-path`,
|
|
292
338
|
`publish-evidence-path`, and `release-passport-path`, `release-passport-output-dir`,
|
|
293
339
|
`release-passport-state-sha`, and `finalization-needed`.
|
|
294
340
|
`transaction-state-ref` is the durable recovery location.
|
|
341
|
+
`transaction-publication-state` provides the stable
|
|
342
|
+
`prepared`, `sealed`, `package-published`, `alpha-complete`, or
|
|
343
|
+
`release-complete` operator view. `transaction-resume-command` is the exact
|
|
344
|
+
consumer-facing resume entrypoint bound into the sealed manifest.
|
|
295
345
|
`release-passport-state-sha` is the durable ref commit after the generated
|
|
296
346
|
`release-passport/*` files have been uploaded into that recovery ref.
|
|
297
347
|
`finalization-needed=true` means publish evidence is valid, but protected branch
|
|
@@ -311,7 +361,11 @@ package releases, `public-release-tag` is derived
|
|
|
311
361
|
from the published package version, while `transaction-exact-tag` remains the
|
|
312
362
|
internal Buildchain transaction ref for recovery and audit. If the transaction is
|
|
313
363
|
not complete yet, the action defers GitHub Release publication to the next
|
|
314
|
-
idempotent promotion run.
|
|
364
|
+
idempotent promotion run. When sealed release assets are present, those restored
|
|
365
|
+
files replace caller-supplied artifact paths. After upload succeeds, the action
|
|
366
|
+
writes the `github_release` milestone back to the durable transaction; an
|
|
367
|
+
interruption before that write is safe to retry because release creation and
|
|
368
|
+
asset replacement are idempotent.
|
|
315
369
|
|
|
316
370
|
After a publish transaction reaches `complete`, the action generates the unified
|
|
317
371
|
`buildchain-release-passport` in `.buildchain/release-passport` by default and
|
|
@@ -351,6 +405,23 @@ requires a `verified` verdict, complete platform coverage, a clean exact source
|
|
|
351
405
|
revision, and then binds the result into `buildchain.release.json`. Missing,
|
|
352
406
|
stale, falsified, incomplete, dirty, or tampered Passport evidence fails the
|
|
353
407
|
release transaction closed.
|
|
408
|
+
Set `release-passport-evidence-jsons` to newline-separated product-owned release
|
|
409
|
+
evidence attachment indexes. Each JSON document must declare `schemaVersion`, a
|
|
410
|
+
stable `id`, a product contract, and the exact release source SHA, tag, and
|
|
411
|
+
channel. Buildchain copies and hashes the documents, verifies their coordinates
|
|
412
|
+
against the final Passport, and retains them in the release evidence bundle
|
|
413
|
+
without interpreting product-specific or legal claims.
|
|
414
|
+
|
|
415
|
+
When release coordinates are not known until promotion, set
|
|
416
|
+
`release-passport-attachment-command`. Buildchain supplies
|
|
417
|
+
`BUILDCHAIN_RELEASE_SOURCE_SHA`, `BUILDCHAIN_RELEASE_TAG`,
|
|
418
|
+
`BUILDCHAIN_RELEASE_CHANNEL`, `BUILDCHAIN_RELEASE_VERSION`,
|
|
419
|
+
`BUILDCHAIN_RELEASE_DEPLOYMENT_COORDINATE`, `BUILDCHAIN_RELEASE_TARGET_REF`, and
|
|
420
|
+
`BUILDCHAIN_RELEASE_PASSPORT_OUTPUT_DIR`; the command must emit a JSON array or
|
|
421
|
+
an object with a non-empty `files` array. Direct Action callers may still use
|
|
422
|
+
the v2 alias `release-passport-evidence-command`. Reusable v3 workflows reserve
|
|
423
|
+
that older name for the distinct post-activation released-evidence command.
|
|
424
|
+
|
|
354
425
|
Buildchain's own release workflow sets `release-passport-buildchain-self-kfd:
|
|
355
426
|
"true"`. In that mode the action generates Buildchain-owned KFD-1/2/3 witnesses
|
|
356
427
|
inside the final version-state workspace, after the release transaction has
|
|
@@ -446,15 +517,15 @@ so the mutation path cannot widen the authority descriptor.
|
|
|
446
517
|
|
|
447
518
|
The tag names intentionally follow the old ABV release semantics:
|
|
448
519
|
exact release tags are `vX.Y.Z`, exact alpha tags are `vX.Y.Z-alpha.N`, floating
|
|
449
|
-
release tags are minor/major tags such as `
|
|
450
|
-
tags are minor-line tags such as `
|
|
520
|
+
release tags are minor/major tags such as `v3.0` and `v3`, and floating alpha
|
|
521
|
+
tags are minor-line tags such as `v3.0-alpha` plus cross-minor major tags such
|
|
451
522
|
as `v3-alpha`. A major alpha tag only moves for the highest minor in that major
|
|
452
523
|
with a published alpha, so older-line maintenance cannot roll consumers back.
|
|
453
524
|
Bare tags such as `1.0.0` are not
|
|
454
525
|
maintained as buildchain release entrypoints.
|
|
455
526
|
|
|
456
527
|
Repository rulesets should protect exact tags, not every `v*` tag. A ruleset
|
|
457
|
-
such as `refs/tags/v*` also protects floating channel tags like `
|
|
528
|
+
such as `refs/tags/v*` also protects floating channel tags like `v3.0-alpha` and `v3-alpha`,
|
|
458
529
|
which Buildchain must update after exact tags and publish evidence are durable.
|
|
459
530
|
Use an exact-tag rule such as `refs/tags/v*.*.*` for immutable evidence tags and
|
|
460
531
|
leave floating channel tags mutable for the promotion token.
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: active
|
|
3
|
+
period: ongoing
|
|
4
|
+
theme: buildchain-consumer-issue-action
|
|
5
|
+
doc_type: technical-reference
|
|
6
|
+
source_level: local-files
|
|
7
|
+
confidence: high
|
|
8
|
+
sensitivity: public
|
|
9
|
+
evidence_grade: A
|
|
10
|
+
review_state: unreviewed
|
|
11
|
+
last_reviewed: 2026-07-31
|
|
12
|
+
ai_provenance:
|
|
13
|
+
model_family: GPT-5
|
|
14
|
+
product: Codex
|
|
15
|
+
generated_at: 2026-07-31
|
|
16
|
+
invisible_context: not asserted
|
|
17
|
+
---
|
|
18
|
+
|
|
1
19
|
# report-buildchain-issue
|
|
2
20
|
|
|
3
21
|
Create or update a Buildchain repository issue from a consumer workflow or from
|
|
@@ -76,7 +94,7 @@ steps:
|
|
|
76
94
|
workflow: ${{ github.workflow }}
|
|
77
95
|
run-id: ${{ github.run_id }}
|
|
78
96
|
run-attempt: ${{ github.run_attempt }}
|
|
79
|
-
channel: alpha/
|
|
97
|
+
channel: alpha/v3/v3.0
|
|
80
98
|
source-sha: ${{ github.sha }}
|
|
81
99
|
friction-class: duplicate-build
|
|
82
100
|
related-runs-json: ${{ steps.classify.outputs.related-runs-json }}
|
|
@@ -26,6 +26,11 @@ be diagnosed after the runner is released.
|
|
|
26
26
|
The action writes both a full manifest and a compact summary. It also exposes
|
|
27
27
|
the summary as outputs for reusable workflow callers:
|
|
28
28
|
|
|
29
|
+
For a `build` stage, paths selected by `[[signing.artifacts]]` for the current
|
|
30
|
+
`platform-id` are automatically included in the lifecycle manifest even when
|
|
31
|
+
they sit outside `artifact-paths`. This binds every byte sent to the signing
|
|
32
|
+
authority without changing which ordinary product paths the caller uploads.
|
|
33
|
+
|
|
29
34
|
| Output | Meaning |
|
|
30
35
|
| --- | --- |
|
|
31
36
|
| `manifest-path` | Full manifest path |
|
|
@@ -1,6 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: active
|
|
3
|
+
period: ongoing
|
|
4
|
+
theme: buildchain-config-validation-action
|
|
5
|
+
doc_type: technical-reference
|
|
6
|
+
source_level: local-files
|
|
7
|
+
confidence: high
|
|
8
|
+
sensitivity: public
|
|
9
|
+
evidence_grade: A
|
|
10
|
+
review_state: unreviewed
|
|
11
|
+
last_reviewed: 2026-07-31
|
|
12
|
+
ai_provenance:
|
|
13
|
+
model_family: GPT-5
|
|
14
|
+
product: Codex
|
|
15
|
+
generated_at: 2026-07-31
|
|
16
|
+
invisible_context: not asserted
|
|
17
|
+
---
|
|
18
|
+
|
|
1
19
|
# validate-config
|
|
2
20
|
|
|
3
|
-
Buildchain
|
|
21
|
+
Buildchain v3 action for validating `.buildchain/buildchain.toml` without running lifecycle
|
|
4
22
|
commands.
|
|
5
23
|
|
|
6
24
|
Use this action during repository migration when a heavyweight project needs to
|