Skip to content

ci: pin GitHub Actions to commit SHAs (supply-chain hardening)#132

Merged
Technologicat merged 1 commit into
masterfrom
harden/pin-actions-sha
Jun 11, 2026
Merged

ci: pin GitHub Actions to commit SHAs (supply-chain hardening)#132
Technologicat merged 1 commit into
masterfrom
harden/pin-actions-sha

Conversation

@Technologicat

Copy link
Copy Markdown
Owner

Supply-chain hardening, fan-out from the wlsqm pilot.

Pins every uses: to an immutable commit SHA (+ # vX.Y.Z comment) instead of a floating tag/branch. A floating ref can be silently repointed if an action repo or maintainer account is compromised (cf. tj-actions/changed-files, March 2025); a SHA cannot. SHAs target the latest release of each action — all reviewed this session (codecov v7.0.0 GPG-signed with maintainer-key continuity; cibuildwheel v4.0.0 PyPA/henryiii). Dependabot understands SHA-pinned actions and bumps both the SHA and the comment, so updates still flow as reviewable PRs.

Pure hardening — pinned commits are the current latest releases, so CI runs the same code.

🤖 Generated with Claude Code

Every `uses:` is pinned to a full 40-char commit SHA with a trailing
`# vX.Y.Z` comment, replacing floating major tags (and the `release/v1`
branch for gh-action-pypi-publish). A mutable ref can be silently
repointed if an action repo or maintainer account is compromised
(cf. tj-actions/changed-files, March 2025); a SHA pin cannot.

Pins target the latest release of each action, all reviewed this
session. Dependabot (github-actions ecosystem, already configured)
updates SHA pins and bumps the version comment alongside, so security
fixes still arrive as reviewable PRs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Technologicat Technologicat merged commit 167eca3 into master Jun 11, 2026
9 checks passed
@Technologicat Technologicat deleted the harden/pin-actions-sha branch June 11, 2026 17:29
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