Repository navigation
fix(release): map changelog runs to squash-merge commits in the evidence check - #6373
Conversation
…nce check
Auto Changelog runs on pull_request_target, so each run's head_sha is the
PR branch head. PRs are squash-merged and their branches auto-deleted, so
that commit is neither in master's history nor fetchable, and
check-changelog-runs.py failed closed ("Cannot determine whether changelog
run commit ... is in this release"). Any release containing a merged PR
with a deleted branch was blocked, including the scheduled nightly.
- Only unsuccessful runs are looked up; a successful run never blocks.
- A run's commit counts as included when it, or the merge commit of the
merged PR headed at it, is an ancestor of the release snapshot.
- An unknown commit with no merged PR still fails closed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Caution Review failedThe pull request is closed. WalkthroughThe script filters successful and skipped runs before checking snapshot membership. It recognizes commits through ancestry or an associated merged PR commit. Unknown commits without a matching merged PR raise an error. ChangesChangelog snapshot matching
Priority: Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Suggested labels: Suggested reviewers: Merge Risk:
|
…ngelog runs to squash-merge commits in the evidence check
) The weekly checks out the newest green commit before releasing, and every later step then ran the release checks from that commit. CI-only PRs never become "green" (the v3 test workflow does not run on them), so the snapshot can predate fixes to the checks: the weekly dry run after #6373 still ran the old evidence script and failed on a deleted PR branch. Copy master's check-changelog-runs.py and its tests before the snapshot checkout and run that copy. The release gate and green-commit selection already run before the checkout; the release script still runs on the snapshot, which its tag-only mode needs. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Merge before 15:00 UTC today, or the first scheduled nightly will fail.
Found in the weekly dry run (run 40401196251). It failed at "Verify changelog workflow evidence":
Cause
pull_request_target, so each run'shead_shais the PR branch head, here6a0733f3afor ci(release): look past auto-changelog commits in the green-commit check #6372.delete_branch_on_merge=true, so that commit is neither in master's history nor fetchable by the release checkout.git merge-base --is-ancestortherefore errors, and the script fails closed. Any release containing a merged PR with a deleted branch is blocked, which covers nearly all of them, including tonight's nightly. The nightly dry run on Monday only passed because the docs(v3): full v3.0.0 release notes and correct the advisory claim #6363 to docs: open the same page on v2.wails.io from the 404 page #6366 branches still existed.Fix (
v3/scripts/check-changelog-runs.py)commits/{sha}/pulls), is an ancestor of the release snapshot. That's what the check was meant to verify.Tested
6a740e59candmaster.6a0733f3aresolves to ci(release): look past auto-changelog commits in the green-commit check #6372's merge commitd2ac69f24.🤖 Generated with Claude Code
Summary by CodeRabbit