Skip to content

chore(ci): every first-party ref runs the v9.0.0 composite - #15

Merged
hseshadr merged 2 commits into
mainfrom
chore/repin-first-party-ci-v3.1.0
Aug 3, 2026
Merged

chore(ci): every first-party ref runs the v9.0.0 composite#15
hseshadr merged 2 commits into
mainfrom
chore/repin-first-party-ci-v3.1.0

Conversation

@hseshadr

@hseshadr hseshadr commented Aug 3, 2026

Copy link
Copy Markdown
Owner

#14 bumped the composite. Nothing that calls it moved — all 9 first-party self-pins still resolved to ci-v3.0.0, and that tree carries setup-uv v8.3.2. So python-gate, python-publish and security-audit were still executing the old version.

This re-points all nine at 33c5e5fa (ci-v3.1.0), moving each version comment in lockstep with its SHA.

File Action
python-gate.yml:82, security-audit.yml:110, python-publish.yml:118 setup-python-uv
frontend-gate.yml:91, security-audit.yml:166, cloudflare-pages-deploy.yml:195, ts-publish.yml:144 setup-pnpm
frontend-gate.yml:102 setup-playwright
cloudflare-pages-deploy.yml:216 pages-deploy-dist

Claim touched

Every first-party ref executes the version its comment names.

Proof

The rewrite asserts its own completeness rather than trusting sed: 9 pins counted before, 0 remaining at 2a575cd after, checked as a hard guard that aborts and deletes the branch on any survivor. A partial re-pin is the failure mode here — it leaves a split-brain that looks fixed.

GH_TOKEN=… uvx zizmor@1.26.1 .exit 0, "No findings to report."

Note on release ordering

ci-v3.1.0 fixes the composite but its own self-pins point backwards, so it is not the tag to consume. ci-v3.2.0, cut from this merge, is what consumers should pin. Two releases rather than one is deliberate: labelling a pin with a tag it isn't is the exact defect that turned main red this morning.

🤖 Generated with Claude Code

https://claude.ai/code/session_015o7tjWLFZvzRv4KyNfDukx

hseshadr and others added 2 commits August 3, 2026 07:17
The nine self-pins still resolved to ci-v3.0.0, whose tree carries setup-uv
v8.3.2 — so python-gate, python-publish and security-audit all executed the old
version while ci.yml ran v9.0.0. Bumping the composite in #14 fixed the file;
nothing that calls it moved until now.

Comments move with the SHAs. A stale version comment is what zizmor's
ref-version-mismatch fails on, and it turned main red this morning.

Verified: 9 pins before, 0 remaining at 2a575cd after — asserted, not assumed.
zizmor exit 0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015o7tjWLFZvzRv4KyNfDukx
The first-party currency guard covers examples/, not just .github/ — and it is
right to. examples/ is the path consumers copy; ci-v2.0.0 got into every consumer
exactly this way, because every example pointed at it while it carried nested
@ci-v1 moving tags.

17 example refs moved to 33c5e5f (ci-v3.1.0). tests/security-policy.sh exits 0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@cursor

cursor Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@hseshadr
hseshadr merged commit 7226072 into main Aug 3, 2026
4 checks passed
@hseshadr
hseshadr deleted the chore/repin-first-party-ci-v3.1.0 branch August 3, 2026 14:22
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