fix: bump actions to clear Node 20 deprecation and repair caching - #10
Conversation
astral-sh/setup-uv@v3 bundles an @actions/cache old enough to call the
retired GitHub Cache Service v1 API, so every run logged:
Failed to restore: Cache service responded with 400
Failed to save: <h2>Our services aren't available right now</h2>
The uv cache has therefore been dead for a while, silently redownloading
every wheel on each run despite enable-cache: true.
Separately, the runner reported that checkout@v4, upload-artifact@v4 and
setup-uv@v3 all target Node.js 20 and are being force-run on Node.js 24.
That shim goes away eventually, at which point the steps break outright.
Bump all three to their latest majors, which declare `using: node24` and
retain every input this workflow passes (enable-cache,
cache-dependency-glob, name, path, retention-days, compression-level).
Summary by CodeRabbit
WalkthroughThe benchmark workflow updates ChangesBenchmark workflow
Estimated code review effort: 1 (Trivial) | ~3 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 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. Comment |
astral-sh/setup-uv stopped publishing floating major tags after v7, so @v9 failed to resolve. Releases v8.x and v9.0.0 exist as exact tags only.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/benchmark.yml:
- Around line 19-22: Pin the action references in
.github/workflows/benchmark.yml at lines 19-22 (actions/checkout@v7 and
astral-sh/setup-uv@v9) and line 149 (actions/upload-artifact@v7) to their full
immutable commit SHAs, retaining each original release tag in an inline comment.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: c38eaf3c-c809-4523-a6c2-5e05bb23bfd4
📒 Files selected for processing (1)
.github/workflows/benchmark.yml
| uses: actions/checkout@v7 | ||
|
|
||
| - name: Set up Python with uv | ||
| uses: astral-sh/setup-uv@v3 | ||
| uses: astral-sh/setup-uv@v9 |
There was a problem hiding this comment.
🔒 Security & Privacy | 🟠 Major | ⚡ Quick win
Pin all changed action references to immutable commit SHAs.
The three upgraded actions still use mutable tags. Replace each tag with the full commit SHA for that release and retain the version in an inline comment. GitHub recommends full-length SHAs for immutable action references. (docs.github.com)
.github/workflows/benchmark.yml#L19-L22: Pinactions/checkout@v7andastral-sh/setup-uv@v9..github/workflows/benchmark.yml#L149-L149: Pinactions/upload-artifact@v7.
🧰 Tools
🪛 zizmor (1.28.0)
[error] 19-19: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)
(unpinned-uses)
[error] 22-22: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)
(unpinned-uses)
📍 Affects 1 file
.github/workflows/benchmark.yml#L19-L22(this comment).github/workflows/benchmark.yml#L149-L149
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/benchmark.yml around lines 19 - 22, Pin the action
references in .github/workflows/benchmark.yml at lines 19-22
(actions/checkout@v7 and astral-sh/setup-uv@v9) and line 149
(actions/upload-artifact@v7) to their full immutable commit SHAs, retaining each
original release tag in an inline comment.
Source: Linters/SAST tools
Updated Github actions to avoid deprecated versions.