Skip to content

actions.yml: drop stale stable tag on dtolnay/rust-toolchain - #1163

Open
potiuk wants to merge 1 commit into
mainfrom
fix-dtolnay-rolling-stable-pin
Open

actions.yml: drop stale stable tag on dtolnay/rust-toolchain#1163
potiuk wants to merge 1 commit into
mainfrom
fix-dtolnay-rolling-stable-pin

Conversation

@potiuk

@potiuk potiuk commented Aug 9, 2026

Copy link
Copy Markdown
Member

check_action_tags is currently failing on every open PR:

❌ GitHub action dtolnay/rust-toolchain references Git branch 'stable' via
   SHAs '{'4cda84d5...'}' but none of those SHAs are ancestors of that branch

Upstream publishes stable as a rolling branch and force-pushes it on each
toolchain release. The SHA was pinned on 2026-07-19 when it was the branch
head; stable has since moved to 4360b525, so the annotation no longer
holds and the checker hard-fails the whole run. Seven open PRs (#1145, #1147,
#1148, #1150, #1157, #1158, #1161) are red for a reason none of them caused,
and every new PR inherits it.

The change

Drop the tag: stable annotation from the pinned SHA. With no tag: key,
action_tags.py verifies only that the commit exists and emits a warning
(action_tags.py:208-216) rather than validating ancestry against a branch.
That is the accurate statement: commit 4cda84d5 is immutable and still valid
to pin, it is simply no longer on any ref.

What this deliberately does not do

It does not bump to the current stable head. That would add an unreviewed
version of the action to the allowlist for every ASF project - a version bump
needing its own review, not something to smuggle in as a CI fix. Consumers are
pinned to the SHA via approved_patterns.yml, so nothing downstream changes.

This will recur on the next force-push if the entry is ever re-annotated with
a rolling ref. Upstream ships exactly one tag (v1) and uses branches for
everything else, so pinning by SHA without a tag: is the stable arrangement
here.

Note on the diff

approved_patterns.yml also loses zizmorcore/zizmor-action@b1d7e1fb
(v0.5.3). Its expires_at was 2026-08-09, so the gateway regeneration drops
it. Unrelated to this fix, but the sync produces it either way.

Test plan

  • prek run --all-files clean.
  • Derived files regenerated with the same gateway sync the update workflow
    runs (update_actions / update_workflow / update_patterns).
  • Verified 4cda84d5 still resolves via the commits API (HTTP 200), which is
    the path that now yields a warning instead of a failure.

Upstream publishes `stable` as a rolling branch and force-pushes it on each
toolchain release. The pinned SHA stopped being an ancestor of that branch, so
check_action_tags hard-failed on every PR in the repo, not just ones touching
this entry - seven open PRs were red for a reason none of them caused.

Without a `tag:` key the checker only verifies the commit exists and emits a
warning, which is the accurate statement: the commit is immutable and still
valid to pin, it is simply no longer on any ref.

Deliberately not bumping to the current `stable` head. That would approve an
unreviewed version of the action for every ASF project, which is a version
bump needing its own review rather than a CI fix.

Also regenerates approved_patterns.yml, which drops zizmor-action v0.5.3
(b1d7e1fb) - its expires_at was today, unrelated to this change.

Generated-by: Claude Opus 5 (1M context) via Claude Code
@potiuk
potiuk requested review from dfoulks1, ppkarwasz and raboof and removed request for dfoulks1 and ppkarwasz August 9, 2026 02:13
@potiuk

potiuk commented Aug 9, 2026

Copy link
Copy Markdown
Member Author

Would bae great to get that one merged quickly to avoid all PRs being red.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant