chore(docker): align Node toolchain on 24 - #74890
DeliciousHouse wants to merge 1 commit into
Conversation
teknium1
left a comment
There was a problem hiding this comment.
Thanks for aligning the Docker stage and repository metadata around Node 24. The Docker premise is real: current main still uses node:22-bookworm-slim at Dockerfile:51.
Problems
package.json:47raises the root engine requirement to Node 24, but Hermes still provisions and tests Node 22:scripts/install.sh:60,scripts/install.ps1:153, and.github/workflows/js-tests.yml:18/:64. The user docs also promise Node 22 atwebsite/docs/getting-started/installation.md:93andwebsite/docs/user-guide/windows-native.md:59. This leaves the claimed single-major contract inconsistent across supported installation and CI paths.
Suggested changes
- Update the installers, Node CI setup, and affected docs to Node 24 together with this engine change, then validate those paths under Node 24.
Automated hermes-sweeper review.
| }, | ||
| "engines": { | ||
| "node": ">=20.0.0" | ||
| "node": ">=24" |
There was a problem hiding this comment.
This root requirement conflicts with current supported paths: scripts/install.sh:60 and scripts/install.ps1:153 provision Node 22, while .github/workflows/js-tests.yml:18 and :64 run npm CI/checks on Node 22. Please update those toolchain contracts and their user docs in the same change.
DeliciousHouse
left a comment
There was a problem hiding this comment.
Merge-gate disposition at exact head ac2abe4ebcdda8dc226e873a023d5eff59c4e10b: close unmerged as the redundant stream.
PR #74250 is the canonical Node 24 candidate. It contains this PR’s same .nvmrc, root engine/lockfile, and digest-pinned node:24-bookworm-slim source-stage behavior, plus all six actions/setup-node consumers, desktop engine/lock metadata, change classification, and a repository contract test. This four-file branch adds no unique executable behavior.
It also leaves CI on Node 22 while changing the root engine to >=24, and leaves the desktop engine on its older Node 20/22-compatible range. No exact-head checks are reported. The canonical PR has entered its single correction cycle for the broader installer/bootstrap/healing/Nix/docs Node contract and fresh-base CI. Closing this overlapping draft prevents the same implementation from being merged twice.
Summary
.nvmrcwith Node 24 and requirenode >=24in bothpackage.jsonand the root lockfile metadata.Test Coverage
npm install --package-lock-only --ignore-scripts --no-audit --no-fund --dry-run: passed under Node v24.15.0 / npm 11.12.1 without changing the committed tree.NODE_VERSION=24.18.0.WSL/Service/E_UNEXPECTED; the existing Linux Docker CI remains the authoritative image build.Pre-Landing Review
No unresolved issues found. One stale Dockerfile version-bump comment was corrected during review.
Design Review
No frontend files changed; design review skipped.
Scope Drift
Scope Check: CLEAN
Plan Completion
No plan file detected.
Base Freshness
origin/mainat1001cd2d3469236219ae25ddea131299bd48258f, 0 commits behind.upstream/mainat36e41c09ed02bd783c1186564bf08cca5c8e821d, 0 commits behind. The feature commit was rebased onto the real upstream target after detecting that the fork default branch was stale.Test plan
>=24.