chore(ci): SHA-pin third-party GitHub Actions - #57
Conversation
Supply-chain hardening (Asana 1216667157595351): pin every third-party GitHub Action on a mutable tag/branch to a current-major commit SHA (no version bumps) — the tj-actions/changed-files (CVE-2025-30066) attack class. First-party actions/* are deferred to a later pass. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
|
LGTM — pins verified against upstream, coverage is complete.
All 6 One non-obvious thing I checked
Verified it's safe: Two follow-ups (non-blocking)
Nit: The "no behavior change" claim holds exactly, by the way — the |
What
Supply-chain hardening (Asana
1216667157595351): SHA-pin every third-party GitHub Action on a mutable tag/branch to a current-major commit SHA (no version bumps).Notably: Pins
pypa/gh-action-pypi-publish@release/v1— previously a moving branch — the PyPI publish step.Why
A mutable tag/branch can be silently repointed at attacker code that runs in our workflows with our secrets — the
tj-actions/changed-files(CVE-2025-30066) attack class. Pinning to an immutable SHA closes it. No behavior change — each ref is pinned to the commit its current major tag already points to. First-partyactions/*are deferred to a later pass.🤖 Generated with Claude Code