Skip to content

tools: fall back to a larger runner on cache miss - #66964

Closed
inoway46 wants to merge 1 commit into
nodejs:mainfrom
inoway46:lint-js-md-cache-fallback
Closed

inoway46 wants to merge 1 commit into
nodejs:mainfrom
inoway46:lint-js-md-cache-fallback

Conversation

@inoway46

Copy link
Copy Markdown
Contributor

Run lint-js-and-md on ubuntu-slim when the ESLint cache is restored, and fall back to ubuntu-latest otherwise. Share the lint steps through a composite action and preserve the existing lint-js-and-md required check.

Validation on the fork passed for cache misses, exact and prefix matches, and lint failure propagation.

Refs: #64972 (comment)

Run JavaScript and Markdown linting on ubuntu-slim when the ESLint
cache is restored, including prefix matches. Otherwise, run the
linters in a separate ubuntu-latest job.

Share the lint steps through a composite action and aggregate the
selected job's result under the existing lint-js-and-md check name.

Signed-off-by: inoway46 <[email protected]>
Assisted-by: Codex
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/actions

@nodejs-github-bot nodejs-github-bot added the meta Issues and PRs related to the general management of the project. label Oct 23, 2026
@inoway46
inoway46 marked this pull request as ready for review October 23, 2026 16:53
@inoway46

inoway46 commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor Author

Of 300 recent lint-js-and-md runs, 8 (2.7%) experienced a timeout, including 3 that later passed on rerun. All 8 had ESLint cache restoration failures due to HTTP 429.

Summary of the latest 300 runs:

ESLint cache Runs (% of total) Timeouts Timeout rate
Restored 213 (71.0%) 0 0%
HTTP 429 58 (19.3%) 8 13.8%
Cache miss 14 (4.7%) 0 0%
Not configured 15 (5.0%) 0 0%
Total 300 8 2.7%

Fallback would switch roughly 25% of runs with ESLint caching to ubuntu-latest. Our benchmarks showed faster execution, but used public 4-CPU runners; the cost-effectiveness of private 2-CPU runners remains unverified. Given the potential cost increase and added workflow complexity, I'm closing this PR.

@inoway46 inoway46 closed this Oct 24, 2026
@inoway46
inoway46 deleted the lint-js-md-cache-fallback branch October 24, 2026 03:20
@MikeMcC399

MikeMcC399 commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

I think especially the added workflow complexity is not justified. I still believe that the runner should be updated, as you already proposed in #66409

You might consider re-opening / re-submitting #66409. It should get the chance for review from a wider range of contributors, including from @trivikr whose original #64972 issue remains unresolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

meta Issues and PRs related to the general management of the project.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants