chore(ci): pin third-party GitHub Actions to full commit SHAs#2309
chore(ci): pin third-party GitHub Actions to full commit SHAs#2309ruflin wants to merge 1 commit into
Conversation
Floating tags such as `actions/checkout@v4` can be silently re-pointed by the publisher (or by a compromised maintainer account, cf. the March 2025 `tj-actions/changed-files` supply-chain incident). Pin every third-party action used by this repository to a full commit SHA, with a trailing comment recording the human-readable version so Dependabot's GHA ecosystem can keep them up to date safely. Pinned versions: - actions/checkout v4.3.1 (34e114876b0b11c390a56381ad16ebd13914f8d5) - shivammathur/setup-php 2.37.0 (accd6127cb78bee3e8082180cb391013d204ef9f) - ramsey/composer-install 3.2.1 (a8d0d959dab41457692a5e2041bd9b757a119e3f) - codecov/codecov-action v2.1.0 (f32b3a3741e1053eb607407145bc9619351dc93b) - anthropics/claude-code-action beta@2026-04-30 (28f83620103c48a57093dcc2837eec89e036bb9f)
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughGitHub Actions across three CI/CD workflows are pinned to specific commit SHAs instead of floating version tags for reproducibility and security. The change is documented in CHANGELOG.md under an "Unreleased Security" entry. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Review rate limit: 2/8 reviews remaining, refill in 44 minutes and 50 seconds.Comment |
There was a problem hiding this comment.
Pull request overview
Pins all third-party GitHub Actions used in this repository’s workflows to full commit SHAs (with version comments) to reduce supply-chain risk from mutable tags.
Changes:
- Replace floating action tags (e.g.,
@v4,@v2,@beta) with full commit SHAs in CI and Claude workflows. - Add an Unreleased changelog entry documenting the security hardening change.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
CHANGELOG.md |
Documents the SHA-pinning security improvement in the Unreleased section. |
.github/workflows/continuous-integration.yaml |
Pins checkout/setup-php/composer-install/codecov actions to specific SHAs. |
.github/workflows/claude.yml |
Pins checkout + anthropics/claude-code-action to specific SHAs. |
.github/workflows/claude-code-review.yml |
Pins checkout + anthropics/claude-code-action to specific SHAs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| uses: codecov/codecov-action@v2 | ||
| uses: codecov/codecov-action@f32b3a3741e1053eb607407145bc9619351dc93b # v2.1.0 | ||
| with: | ||
| files: build/coverage/unit-coverage.xml,build/coverage/functional-coverage.xml |
Summary
Floating tags such as
actions/checkout@v4can be silently re-pointedby the publisher (or by a compromised maintainer account, cf. the
March 2025 `tj-actions/changed-files` supply-chain incident).
Pin every third-party action used by this repository to a full commit
SHA, with a trailing comment recording the human-readable version so
Dependabot's GHA ecosystem (added in #2306) can keep them up to date
safely.
Pinned versions:
actions/checkout34e114876b0b11c390a56381ad16ebd13914f8d5shivammathur/setup-phpaccd6127cb78bee3e8082180cb391013d204ef9framsey/composer-installa8d0d959dab41457692a5e2041bd9b757a119e3fcodecov/codecov-actionf32b3a3741e1053eb607407145bc9619351dc93banthropics/claude-code-action28f83620103c48a57093dcc2837eec89e036bb9f`codecov/codecov-action` is intentionally left at v2 in this PR so it
can be diffed in isolation. The major bump to v5 lands in #2307.
Identified during a P0/P1 code-review pass.
Test plan
actions.
tag-only references for third-party actions.
Summary by CodeRabbit