Skip to content

chore: pin GitHub Actions to commit SHAs - #132

Open
BGos87 wants to merge 1 commit into
mainfrom
chore/pin-github-actions-20260921
Open

BGos87 wants to merge 1 commit into
mainfrom
chore/pin-github-actions-20260921

Conversation

@BGos87

@BGos87 BGos87 commented Sep 21, 2026 •

Copy link
Copy Markdown

Summary

Pin every uses: ref in .github/workflows/ (and any composite action
files) to a full 40-character commit SHA, with the original tag
preserved as a # vX comment.

Why

Tags and branches are mutable, so a compromised action can replace what
runs in our pipelines without changing the tag we reference. Pinning to
a SHA closes that supply-chain vector. See GitHub's hardening guide:
https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions.

Deadline

TechOps is enforcing SHA-pinned GitHub Actions across the org.
Merging this PR brings the repo into compliance; workflows that still
reference mutable tags or branches may be blocked from running.

How

Generated mechanically with pinact run.
No version bumps were applied (strict pin); follow-up upgrades can come
from Renovate or a separate pinact run -u PR.

Test plan

  • CI green on this branch

Note

Low Risk
Mechanical workflow-only change with no application or release logic edits; behavior should match the previously referenced tag versions.

Overview
Replaces mutable uses: refs (tags like @v4) with full commit SHAs across the main CI/release workflows, keeping the original version in a # vX comment for readability.

Affected workflows: build-lint, create-release-pr, main, publish-gh-pages, and publish-release. Third-party and MetaMask actions touched include actions/checkout, actions/setup-node, action-create-release-pr, action-is-release, action-publish-gh-pages, action-publish-release, and action-npm-publish. Step inputs, job graphs, and shell commands are unchanged—only how actions are resolved at runtime.

This aligns the repo with org supply-chain hardening (immutable action content instead of retargetable tags).

Reviewed by Cursor Bugbot for commit a5da87f. Bugbot is set up for automated code reviews on this repo. Configure here.

Pin every `uses:` ref in .github/workflows and composite actions to a
full 40-character commit SHA, with the original tag preserved as a
comment, e.g.

    uses: actions/checkout@11bd719 # v4

Tags and branches are mutable; commit SHAs are not. Pinning to a SHA
closes a supply-chain vector where a compromised action could replace
what runs in CI without changing the tag we reference.

Generated mechanically with `pinact run`
(https://github.com/suzuki-shunsuke/pinact). No version bumps were
applied (strict pin).

This branch has not been deployed

No deployments
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