fix(#6178): bump actions/cache to v6.1.0, add actions:write to harness-dispatch - #6279
Conversation
…s-dispatch The harness-dispatch job pinned actions/cache at v4.3.0 (Node.js 20), which produces deprecation warnings on every dispatch. Bumping to v6.1.0 targets Node.js 24. The job also lacked actions:write permission, so cache saves failed with "token has no writable scopes"; adding the permission fixes that. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Hector Martinez <hemartin@redhat.com>
PR Summary by QodoFix Harness dispatch cache writes by bumping actions/cache and granting actions:write
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
|
🤖 Finished Review · ✅ Success · Started 9:54 AM UTC · Completed 10:04 AM UTC Commit: |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can route each action level your way: inline, summary, both, or drop |
ReviewFindingsMedium
Previous runReviewFindingsMedium
Low
Labels: PR modifies the dispatch workflow (.github/workflows/reusable-dispatch.yml) to fix cache action deprecation and permission issues |
|
/fs-review |
|
🤖 Finished Review · ✅ Success · Started 6:59 AM UTC · Completed 7:10 AM UTC Commit: |
waynesun09
left a comment
There was a problem hiding this comment.
Validated at head 87848b41 — both changes are correct and needed.
SHA pin verified: 55cc8345863c7cc4c66a329aec7e433d2d1c52a9 is exactly the v6.1.0 tag (and current floating v6) on actions/cache — resolves the bot's supply-chain question. v6 targets Node 24, killing the deprecation warning; v6.1.0 specifically adds graceful read-only-cache handling (actions/cache#1768), which downgrades the issue's "Cache save failed" error noise to a single warning when writes are denied.
actions: write — confirmed needed, with one nuance worth knowing:
- Needed: the job's permissions block is all-read (
contents: read,pull-requests: read), so the derived cache token has no writable scopes — that is precisely thecache write denied: token has no writable scopeserror in #6178. No write scope, no save, ever. - Safe to request: per the workflow_call intersection rule, every caller must already grant it or the run would fail — and they do: the per-repo shim template grants
actions: write(it always had to, sinceharness-runin this same workflow already requests it), and fullsend's ownfullsend.yamlshim does too. No shim-rollout hazard, no new trust exposure:harness-dispatchexecutes only trusted code (base-SHA checkout,persist-credentials: false), and the cached artifact is the CLI from vendored/pinned-upstream sources. - Nuance: since GitHub's 2026-06-26 change (read-only Actions cache for untrusted triggers),
pull_request_target/issue_commentruns get a read-only cache token at the event level regardless of permissions — so saves will still be skipped on those triggers even after this merges (quietly, thanks to v6.1.0). Saves will succeed on trusted triggers (schedulepolling dispatch,push,workflow_dispatch), and those entries serve restores for the untrusted-trigger runs — exactly GitHub's recommended pattern, and the cache key (fullsend-cli-<mode>-<workflow_sha>) is shared across events, so this works end-to-end. Worth a one-line comment in the workflow so nobody files a "cache still not saving on PR events" bug later; non-blocking.
|
🤖 Finished Retro · ✅ Success · Started 5:08 PM UTC · Completed 5:24 PM UTC Commit: |
Retro: PR #6279 — bump actions/cache to v6.1.0, add actions:writeWorkflow went well overall. This was a human-authored, single-file fix (3 additions, 2 deletions in Timeline
Improvement areas (all covered by existing issues)SHA-to-tag verification (#2624): The review agent flagged the SHA bump as a supply-chain concern but stopped at "the hash should be verified" rather than performing the verification itself. The human reviewer explicitly confirmed Permission inheritance analysis (fullsend-ai/agents#142): The review agent didn't analyze whether adding Same-commit re-review (#4681, fullsend-ai/agents#323): The second What went well
|
Summary
actions/cache/restoreandactions/cache/savefrom v4.3.0 to v6.1.0 in theharness-dispatchjob, removing the Node.js 20 deprecation warning.actions: writepermission toharness-dispatchso the GitHub Actions cache API can save entries (fixes "cache write denied: token has no writable scopes").Fixes #6178
🤖 Generated with Claude Code