fix(ci): fence nightly forward-roll baseline to proven ancestor - #5021
Open
Flandern1211 wants to merge 1 commit into
Open
fix(ci): fence nightly forward-roll baseline to proven ancestor#5021Flandern1211 wants to merge 1 commit into
Flandern1211 wants to merge 1 commit into
Conversation
Generated-by: OpenAI Codex
Flandern1211
force-pushed
the
fix/forward-roll-provenance-ancestor
branch
from
September 8, 2026 09:26
93c46aa to
af8f2c0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The forward-roll baseline was selected from the live npm
nightlytag without proving that the published build came from a commit reachable from the checkout under test. This could make the qualification run against a future or otherwise unverifiable baseline.This change:
gitHeadunset;git merge-base --is-ancestorbefore the forward roll;Fixes #4447
Review focus
The earlier #4604 implementation used
gitHead, which isnullfor currentmaka-agentNightly tarball publications, and assumed full Git history in a validation lane that used the checkout default. This PR uses the live SLSA endpoint and explicitly setsfetch-depth: 0in the affected qualification job.The issue discussion did not receive a direct maintainer confirmation before implementation; the corrected scope follows the provenance direction and P0 findings recorded in the #4604 review. The PR is intentionally limited to the release publication script, its tests, and the affected workflows.
Verification
node --test --test-concurrency=1 scripts/release-cli-publication.test.mjs scripts/release-cli-workflow-policy.test.mjs— 34 passed, 0 failednpm exec -- biome check scripts/release-cli-publication.mjs scripts/release-cli-publication.test.mjs scripts/release-cli-workflow-policy.test.mjs— passednpm exec biome lint scripts/release-cli-publication.mjs scripts/release-cli-publication.test.mjs scripts/release-cli-workflow-policy.test.mjs— passednpm run format:check— passedgit diff --check— passednpm --workspace @maka/runtime-host run build— passed00f2c9e0e3bf6ee443e65b9c2c35c8dc66d77f9dwas resolved and verified as an ancestor of the checkoutnpm run check:asf-npm,npm run check:product-release-identity, andnpm run check:model-metadata— passednpm run buildwas also attempted. It reached the UI build and failed on pre-existing current-main TypeScript/API mismatches in untouched UI files (settledText,autoScroll, andtrailingAction).npm run check:releasewas attempted but stopped at the repository's stale-dist guard because this clean clone had no desktopdistoutputs. These failures are outside the changed files.Historical review
Successful related release/qualification PRs reviewed: #4313, #3481, #4131, and #3192. They consistently bind registry/release evidence to exact immutable identities, keep qualification in the existing release path, and add deterministic policy tests.
Unsuccessful or superseded related PRs reviewed: #4604 (CLOSED, invalid
gitHeadpremise and shallow-history assumption), #4418 (CLOSED, superseded by #4412), and #3241 (CLOSED, redirected to broader release-verifier work). This PR avoids #4604's metadata assumption and explicitly covers the checkout-depth failure mode.AI use
Tool(s) and scope: OpenAI Codex investigated #4447, implemented the provenance/ancestry fence and tests, ran the verification commands, and reviewed the resulting diff. An independent review pass caught and fixed the missing source-commit environment binding in the final revalidation step.
Checklist
Does this PR entail a change in behavior?