@kungfu-tech/buildchain 2.14.18-alpha.10 → 2.14.18-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.
@@ -89,11 +89,10 @@ tries to apply that commit directly. If GitHub still rejects release
89
89
  finalization bookkeeping, Buildchain creates or reuses a same-repository
90
90
  `buildchain/version-state/*` PR based on the current target channel head and
91
91
  returns `finalization-needed=true`; a later idempotent promotion run can resume
92
- from the durable transaction state. Strict alpha uses the same protected
93
- version-state PR recovery for its target and dev bookkeeping, and does not move
94
- tags until those provider-enforced transactions land. Reusable wrapper callers
95
- should allow `checks: write` so the generated checks are owned by GitHub Actions
96
- and match the managed branch protection rule.
92
+ from the durable transaction state. Strict alpha promotion still fails with a
93
+ configuration diagnostic instead of opening a post-publish human PR. Reusable
94
+ wrapper callers should allow `checks: write` so the generated checks are owned by
95
+ GitHub Actions and matches the managed branch protection rule.
97
96
 
98
97
  Stable promotion also protects concurrent development work. The reusable
99
98
  wrapper checks out the exact current `dev/vN/vN.M` head as a reconciliation
@@ -115,14 +114,6 @@ allowance only lets the named automation identity apply generated version-state
115
114
  or channel bookkeeping without a second human review after the reviewed channel
116
115
  PR has already merged.
117
116
 
118
- GitHub may return either `403` or a deliberately opaque `404` when a
119
- non-administrator token reads the full branch-protection endpoint. In that
120
- case, promotion reads the provider's branch summary and accepts only an
121
- already-protected branch that enforces the exact required check for everyone.
122
- It does not interpret the opaque response as missing protection or try to
123
- rewrite policy with a developer token. The independent publication-authority
124
- audit remains responsible for the complete read-only governance proof.
125
-
126
117
  ## Publish Transactions
127
118
 
128
119
  Promotion can also own external publish side effects. Enable this only from a
@@ -413,16 +404,16 @@ governance semantics:
413
404
  with either the `verification-command` input or `buildchain.toml`
414
405
  `lifecycle.verify` before any tags or channel refs move.
415
406
 
416
- The reusable promotion workflow keeps governance reads, generated status checks,
417
- and generated ref updates on the run-scoped `github.token`. When branch
418
- protection rejects generated bookkeeping, it supplies `BUILDCHAIN_PROMOTION_TOKEN`
419
- only through `generated-pull-request-token` so the same-repository recovery PR can
420
- be listed or created without broadening the governance client. Protected branch
421
- review and check rules guard human channel merges, while the reusable build trust
422
- gate checks the source-lock channel HEAD and merged same-repository PR lineage
423
- before heavy build runners start. This action still independently rechecks PR
424
- lineage, alpha/release tree equivalence, and generated version-state verification
425
- before moving channel refs and tags.
407
+ The promotion workflow should use `BUILDCHAIN_PROMOTION_TOKEN` for non-dry-run
408
+ promotion. The token is the buildchain equivalent of the old ABV runner release
409
+ authority: protected branch review and check rules guard human channel merges,
410
+ while the reusable build trust gate now checks the source-lock channel HEAD and
411
+ merged same-repository PR lineage before heavy build runners start. This action
412
+ still independently rechecks PR lineage, alpha/release tree equivalence, and
413
+ generated version-state verification before moving channel refs and tags.
414
+ Generated version-state direct ref updates can use a separate
415
+ `generated-ref-update-token`; the reusable wrapper binds it to the run-scoped
416
+ `github.token`.
426
417
  The reusable `release-candidate-promote.yml` wrapper defaults
427
418
  `branch-protection-bypass-apps` to `github-actions`, so flow-internal promotion
428
419
  can complete generated `dev`/`alpha`/`release` bookkeeping while ordinary human
@@ -4,7 +4,7 @@
4
4
  "product": {
5
5
  "name": "Buildchain",
6
6
  "package": "@kungfu-tech/buildchain",
7
- "version": "2.14.18-alpha.10",
7
+ "version": "2.14.18-alpha.2",
8
8
  "repository": "https://github.com/kungfu-systems/buildchain"
9
9
  },
10
10
  "majorLine": "v2",
@@ -170,7 +170,7 @@
170
170
  "GitHub Release passport and evidence publication is delegated to promote-buildchain-ref after the semver release transaction completes"
171
171
  ],
172
172
  "breakingDigest": "sha256:1f476fb9a4854b362c4b24cef89a3c7675d7d63baf3bc828d7b8ae7d2787cead",
173
- "auditDigest": "sha256:5a5cbec0b5382c34101623ed11f264797b618920d8c98c78e0d14af9f07a1f6b"
173
+ "auditDigest": "sha256:a328740bbd24990af1a95e93055de54ff6261ec6c9943b53d209440c7cb4a4cc"
174
174
  },
175
175
  {
176
176
  "contractVersion": 1,
@@ -212,7 +212,7 @@
212
212
  "promotion reuses PR-stage release-candidate artifacts and does not run the heavy native build matrix"
213
213
  ],
214
214
  "breakingDigest": "sha256:aa30f22e3af0a89841310bdbdc900844dd95a66974db173fa140a71bbd7e82c0",
215
- "auditDigest": "sha256:ba3117f22b343d5f18cd48d327bffaa8ed442cb6150b6c2f95d091808cd009a7"
215
+ "auditDigest": "sha256:fc3bab430f17f990948c98b93cf1d07643982548881c230e37adac8ad9bdb662"
216
216
  },
217
217
  {
218
218
  "contractVersion": 1,
@@ -256,7 +256,7 @@
256
256
  "channel-aware artifact host facts are checked against the deploy plan before adapter side effects"
257
257
  ],
258
258
  "breakingDigest": "sha256:da569f90374e878948e3d5160ed9929338ce0572473ca8ee54867b0fe1aaeace",
259
- "auditDigest": "sha256:063dfe24e1ccdd95b4ffbf89a154aa71197c8bd1cb98b4705d8663917c026366"
259
+ "auditDigest": "sha256:3032fbbba0920b0ec2b7e1e4ba96a5a7e51c10249ff4e5bc9f0ad81b933eae45"
260
260
  },
261
261
  {
262
262
  "contractVersion": 1,
@@ -327,7 +327,7 @@
327
327
  "sha256:a59f0910e6df842e7699139472e5dd69ac2fdd7f7213bf2cb346d1d622556874"
328
328
  ],
329
329
  "breakingDigest": "sha256:6147c0a8d5c36bfaa6021871574e1fc28192a3f1b8cfdae4d24ef3059ac1ebda",
330
- "auditDigest": "sha256:c23298988d29d6dbf99c65fd7d5567d704f012cc7a061c46a848c26814cab4b9"
330
+ "auditDigest": "sha256:40247c580fb55f387c0d0c9f26adb7e7f111dafe600444ec815134c080b09cff"
331
331
  },
332
332
  {
333
333
  "contractVersion": 1,
@@ -641,7 +641,7 @@
641
641
  "manual entries carry source file digests so downstream sites and agents can detect stale hand-written documentation"
642
642
  ],
643
643
  "breakingDigest": "sha256:7d0d2819e3a3e72989d9c57b5efe9d0bc0a79bc0f2c82a0c7b9d6c5a211a91f2",
644
- "auditDigest": "sha256:29b45afe77400b5b38872574cdf7ccfcf8abc93b7f78ad32d994a6636a4f9f68"
644
+ "auditDigest": "sha256:06b0ce651bca9d9f9cd53bf734f391bb55851945c8049fb854d881676d0d025a"
645
645
  },
646
646
  {
647
647
  "contractVersion": 1,
@@ -663,7 +663,7 @@
663
663
  "agents can discover supported Node APIs without importing internal file paths"
664
664
  ],
665
665
  "breakingDigest": "sha256:48f925608d3e2131d90936b07dc2a30341204cae3e6e785c0f77d61ad755c945",
666
- "auditDigest": "sha256:4572769775450f49fa37a72e6dda211eea0af0a4dd73ad1d188dbb34782a35a9"
666
+ "auditDigest": "sha256:6f459e9bad07f4ec63ce1de30edaacef33587bc939c77140d5c31b75679a5091"
667
667
  },
668
668
  {
669
669
  "contractVersion": 1,
@@ -2018,7 +2018,7 @@
2018
2018
  "missing receipts are non-qualifying and must not be represented as a successful controller run"
2019
2019
  ],
2020
2020
  "breakingDigest": "sha256:f14825324a16b51c2e9ed708ebe64e1932e05b6d5e0866f83aea8439decb4a27",
2021
- "auditDigest": "sha256:063dfe24e1ccdd95b4ffbf89a154aa71197c8bd1cb98b4705d8663917c026366"
2021
+ "auditDigest": "sha256:3032fbbba0920b0ec2b7e1e4ba96a5a7e51c10249ff4e5bc9f0ad81b933eae45"
2022
2022
  },
2023
2023
  {
2024
2024
  "contractVersion": 1,
@@ -2428,7 +2428,7 @@
2428
2428
  "missing receipts are non-qualifying and must not be represented as a successful controller run"
2429
2429
  ],
2430
2430
  "breakingDigest": "sha256:0eb318df455ef9cb737a7c2515a2411b685d34ed0bde7b5f5b173a7a42513114",
2431
- "auditDigest": "sha256:fd939f9dcce745f3e1b8063b68715460cb8e1af6d2b813a96b37a741740122b9"
2431
+ "auditDigest": "sha256:56a9f981034988be3d796119a5704c592bd080d61211a03eb364e93210323d9d"
2432
2432
  },
2433
2433
  {
2434
2434
  "contractVersion": 1,
@@ -2928,7 +2928,7 @@
2928
2928
  "missing receipts are non-qualifying and must not be represented as a successful controller run"
2929
2929
  ],
2930
2930
  "breakingDigest": "sha256:015d8de793adbd4c539416be7d7512e18cc92097e629b0203fa06d2c183e98bd",
2931
- "auditDigest": "sha256:ba3117f22b343d5f18cd48d327bffaa8ed442cb6150b6c2f95d091808cd009a7"
2931
+ "auditDigest": "sha256:fc3bab430f17f990948c98b93cf1d07643982548881c230e37adac8ad9bdb662"
2932
2932
  },
2933
2933
  {
2934
2934
  "contractVersion": 1,
@@ -3126,5 +3126,5 @@
3126
3126
  }
3127
3127
  ],
3128
3128
  "compatibilityDigest": "sha256:df13c3b8066068925ce847b31002201d533034d10d342542422db3a665c10475",
3129
- "contractDigest": "sha256:f762f013ae69bdf5f313c1801408be47af9e7d0270c28de7ecd040aa3483f99d"
3129
+ "contractDigest": "sha256:b68d06cff4de41052d18b13e7c7af9890331a4e8fa626bb452f48c912a9a1ba1"
3130
3130
  }