ci(security): pin workflow actions by digest - #1250
Conversation
(cherry picked from commit a1559f7)
|
@codex review |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Apocrathia
left a comment
There was a problem hiding this comment.
All hashes are valid and link to a known commit.
jonaowen
left a comment
There was a problem hiding this comment.
All executable third-party action references in the three touched workflows are immutable full SHAs, and I independently verified each advertised tag currently resolves to the pinned commit (checkout v7.0.0, setup-node v7.0.0, upload-artifact v7, download-artifact v8). Disabling checkout credential persistence further narrows authority. I found no blocker at exact head f86d5be998987ba73f6898a1697c4f8454269579.
Summary
contents: writeFixes #926.
Risk
Low. This is limited to workflow references and checkout credential persistence. Action major versions and inputs are unchanged. The release job retains only the write permission required to create and update releases and tags.
Provenance
Extracted directly onto current
mainfrom the independently authored security work in #1159. The commit preserves the original source SHA with acherry picked fromtrailer. No changes were taken from the MCP/provider stack.Validation
npm run checkuses:references are pinned to full 40-character SHA-1 valuespersist-credentials: falsegit ls-remotegit diff --check origin/main...HEADReview focus
Please verify the pinned action identities, checkout credential handling, and the intentionally narrow
contents: writepermission on the publish job.Note
Cursor Bugbot is generating a summary for commit f86d5be. Configure here.
Note
Pin CI workflow actions to specific commit digests
persist-credentials: falseto allactions/checkoutsteps, preventing Git credentials from being stored in the local repository after checkout.Macroscope summarized f86d5be.