Skip remote npm cache on VPS runners - #451
Conversation
There was a problem hiding this comment.
nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_57ac10c0-c498-42f6-9660-60bbec790cbb) |
📝 WalkthroughWalkthroughThe workflows now enable npm caching only on GitHub-hosted runners, with lockfile-aware conditions in CI. A Vitest test parses routed workflows and verifies runner selection, setup-node cache inputs, and the expected count of configured setup-node steps. ChangesHosted runner cache configuration
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
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 `@tests/self-hosted-node-cache-workflows.test.ts`:
- Line 55: Update the runnerRoutedJobs count assertion in the self-hosted node
cache workflow test to expect the 11 jobs produced by runnerRoutedWorkflows,
unless the missing twelfth job is intentionally required and should be added to
that workflow definition.
🪄 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: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 90e6da13-f805-44ba-9d13-915be07f30a7
📒 Files selected for processing (8)
.github/workflows/ci.yml.github/workflows/cross-browser-matrix.yml.github/workflows/d1-backup-r2.yml.github/workflows/d1-backup-validate.yml.github/workflows/d1-remote-restore-evidence.yml.github/workflows/deploy-production.yml.github/workflows/finalize-production-soak.ymltests/self-hosted-node-cache-workflows.test.ts
There was a problem hiding this comment.
nish3451 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_50037e88-ce73-428e-ad23-92031c9ab954) |
Summary
Why
The exact-main production preflight stalled for more than 15 minutes restoring the npm Actions cache, then hit an Azure cache authentication failure. The VPS runners already share a persistent local npm cache, so the remote archive is redundant and blocks evidence/deploy throughput.
Verification
No deploy or provider mutation is included in this PR.
Note
Low Risk
Workflow-only changes to dependency caching; no application, auth, or deploy logic is modified.
Overview
Disables GitHub Actions npm caching on self-hosted runners while keeping it on
github-hostedfallbacks, so VPS jobs no longer spend time restoring large remote cache archives that duplicate the machine’s persistent local npm store.Across CI, deploy, D1 backup/restore, cross-browser matrix, and production soak workflows,
actions/setup-node@v6now setscacheandpackage-manager-cacheonly whenrunner.environment == 'github-hosted'. CI’scodex-node-checksjob still ties caching to a presentpackage-lock.jsonso the no-lockfilenpm installpath stays unchanged.Adds
tests/self-hosted-node-cache-workflows.test.tsto assert runner-routed jobs use the hosted-only cache expressions (including the CI lockfile guard).Reviewed by Cursor Bugbot for commit 03fc2f9. Bugbot is set up for automated code reviews on this repo. Configure here.
Summary by CodeRabbit
package-manager-cachesettings alongside runner-gated cache values, with lockfile-aware caching where applicable.actions/setup-nodecaching configuration across selected workflows.