Skip to content

Upgrade GitHub Action from Node 20 to Node 22#702

Merged
epompeii merged 1 commit intodevelfrom
u/ep/node22
Mar 13, 2026
Merged

Upgrade GitHub Action from Node 20 to Node 22#702
epompeii merged 1 commit intodevelfrom
u/ep/node22

Conversation

@epompeii
Copy link
Member

Node 20 has been deprecated by GitHub. This changeset upgrades to Node 22, as requested in #698.

@epompeii epompeii self-assigned this Mar 13, 2026
@github-actions
Copy link

🤖 Claude Code Review

PR: #702
Base: devel
Head: u/ep/node22
Commit: c5655e414218321fa49632aa3006395d2e661cd1


Now I have a clear picture. Here's the review:


PR Review: node22 + rate limiting for OCI bandwidth

This PR contains 2 commits:

Commit 1: node22 — Node.js 20 → 22 upgrade

Changes: Updates Node.js version from 20 to 22 across CI workflows, the GitHub Action runtime, TypeScript config, and type definitions.

Files changed:

  • .github/actions/setup-node/action.yml — Node 20 → 22
  • .github/workflows/claude-review.yml — Node 20 → 22
  • action.ymlusing: node20using: node22
  • services/action/package.json@tsconfig/node18@tsconfig/node22, @types/node^22
  • services/action/tsconfig.json — extends @tsconfig/node22
  • services/action/package-lock.json — lockfile updated
  • services/action/dist/index.js — rebuilt bundle (single-line JSON change reflecting new API spec version)

Review notes:

  1. Inconsistency in tsconfig lineage: The previous config extended @tsconfig/node18 but the CI was running Node 20. Now it's consistent at Node 22 — good improvement.

  2. dist/index.js rebuild: The diff in the bundled file is a single line change to an embedded JSON string (OpenAPI spec version bump 0.5.100.5.11). This appears to be from a rebuild that picked up a spec change, not from the Node upgrade itself. This is fine but worth noting — the bundle was regenerated.

  3. Node 22 is LTS: Node 22 entered LTS in October 2024 and is actively maintained. GitHub Actions supports node22 as a runtime. This is a safe upgrade.

  4. No issues found. The changes are mechanical and consistent across all locations.

Commit 2: Add rate limiting for OCI bandwidth usage (#700)

This commit is not included in the diff (git diff devel...HEAD doesn't show it beyond the stat line). Looking at the commit log, it appears commit 178c98ddf is between c5655e414 (node22) and HEAD, but the diff shows only the node22 changes. This likely means the rate limiting commit was already merged into devel or its changes are already present on both sides.

Verdict: Only the Node 22 upgrade changes are net-new in this PR.


Summary

Area Assessment
Code quality Clean, consistent mechanical change
Bugs None identified
Security No concerns — Node 22 LTS is well-supported
Performance Node 22 includes V8 performance improvements; net positive
CLAUDE.md compliance N/A (no Rust changes)

Overall: Looks good. Straightforward Node.js version bump with consistent updates across all touchpoints.


Model: claude-opus-4-6

@epompeii epompeii merged commit 5310b7e into devel Mar 13, 2026
33 of 35 checks passed
@epompeii epompeii deleted the u/ep/node22 branch March 13, 2026 04:33
@epompeii
Copy link
Member Author

Current runner version: '2.332.0'                                                                                                                                                                                                                                                        
Runner Image Provisioner                                                                                                                                                                                                                                                                   
Operating System                                                                                                                                                                                                                                                                           
Runner Image                                                                                                                                                                                                                                                                               
GITHUB_TOKEN Permissions                                                                                                                                                                                                                                                                   
Secret source: Actions                                                                                                                                                                                                                                                                     
Prepare workflow directory                                                                                                                                                                                                                                                                 
Prepare all required actions                                                                                                                                                                                                                                                               
Getting action download info                                                                                                                                                                                                                                                               
Download action repository 'bencherdev/bencher@devel' (SHA:5310b7ef32c95c5aba006104212d94b33c5afcb3)                                                                                                                                                                                       
Error: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter ''using: node22' is not supported, use 'docker', 'node12', 'node16', 'node20' or 'node24' instead.')                                                                        
   at GitHub.Runner.Worker.ActionManifestManagerLegacy.ConvertRuns(IExecutionContext executionContext, TemplateContext templateContext, TemplateToken inputsToken, String fileRelativePath, MappingToken outputs)                                                                          
   at GitHub.Runner.Worker.ActionManifestManagerLegacy.Load(IExecutionContext executionContext, String manifestFile)                                                                                                                                                                       
Error: Failed to load bencherdev/bencher/devel/action.yml  

Moved to node24 here: 55b8b7a

@epompeii epompeii changed the title Upgrade GitHub Action from Node 20 to Node 22 Upgrade GitHub Action from Node 20 to Node ~~22~~ 24 Mar 13, 2026
@epompeii epompeii changed the title Upgrade GitHub Action from Node 20 to Node ~~22~~ 24 Upgrade GitHub Action from Node 20 to Node 22 Mar 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant