Skip to content

ci: pin GitHub Actions to commit SHAs - #373

Open
chopmob-cloud wants to merge 2 commits into
google-agentic-commerce:mainfrom
chopmob-cloud:ci/pin-actions-sha
Open

chopmob-cloud wants to merge 2 commits into
google-agentic-commerce:mainfrom
chopmob-cloud:ci/pin-actions-sha

Conversation

@chopmob-cloud

Copy link
Copy Markdown

Pins the GitHub Actions in .github/workflows to full-length commit SHAs with # vX version comments.

Why

A mutable tag like @v5 can be moved to new code after review, so a compromised or hijacked action tag would run with this workflow's permissions. Pinning to a commit SHA is the OpenSSF Scorecard "Pinned-Dependencies" control and the GitHub-recommended supply-chain practice.

What

  • Pins every non-local uses: across 5 workflow files to its exact commit SHA, keeping a # vX version comment. Same versions, no upgrades or downgrades.
  • Generated with pinact; each pinned SHA was verified to resolve to the version in its comment via the GitHub API.
  • Ref-pinning only: no job, step, trigger, or permission changed, so there is no functional change.

Pin the GitHub Actions in .github/workflows to full-length commit SHAs
with version comments. A mutable tag can be re-pointed after review, so
pinning to a commit SHA is the OpenSSF Scorecard Pinned-Dependencies
control. Ref-pinning only, same versions, no functional change. Generated
with pinact; each SHA verified to resolve to its version tag.

Signed-off-by: AlgoVoi <chopmob@gmail.com>
@chopmob-cloud
chopmob-cloud requested a review from a team as a code owner October 5, 2026 06:03
…o Lint workflow

The Lint Code Base workflow had no permissions: block, so zizmor's
excessive-permissions audit flagged it. Add a top-level block scoped to what
super-linter uses (contents: read for checkout, statuses: write for its
MULTI_STATUS commit-status posting), and set persist-credentials: false on
actions/checkout (zizmor artipacked) since the linter only reads the tree and
posts via GITHUB_TOKEN. No lint coverage change: all VALIDATE_* settings and
FILTER_REGEX_EXCLUDE are unchanged.

Signed-off-by: AlgoVoi <chopmob@gmail.com>

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