revert: roll back Node 26 / npm 12 toolchain stack (#76459, #76306, #76295, #75037) - #76563
Closed
teknium1 wants to merge 5 commits into
Closed
revert: roll back Node 26 / npm 12 toolchain stack (#76459, #76306, #76295, #75037)#76563teknium1 wants to merge 5 commits into
teknium1 wants to merge 5 commits into
Conversation
Contributor
૮ >ﻌ< ა ci reviewran on 6a9c035 ❌ Job failuresPython tests / Run tests slice 4/8 · View jobJob Python tests / Run tests slice 4/8 failed.
|
The #75037 revert restored pyproject.toml's pre-sweep dependency bounds and removed the global exclude-newer floor, so the lockfile had to be re-resolved. Regenerated with --no-config: the worktree sits under the main checkout, and uv's ancestor-config discovery was leaking the parent pyproject's exclude-newer stamp into the lock — which CI (no ancestor config) then rejected.
teknium1
force-pushed
the
revert/node26-npm12-rollback
branch
from
August 2, 2026 04:06
8782d5a to
6a9c035
Compare
Contributor
Author
1 task
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Reverts the Node-26 / npm-12 toolchain stack that broke every installer and updater surface tonight (GUI installer, GUI updater,
hermes update, nix), returning the toolchain floors to where they were:engines.node >=20, noengines.npmpin, noengine-strict, Node target major 22. System Node 22 / npm 10.x installs work again.Reverted, newest first (per emozilla/ethernet's call):
85c8956ec7, includes713a983e4a)f88ed6c717)d5e135a513)6ecd335aa8)Deliberately KEPT: the EBADENGINE recovery machinery from #76464 (
hermes_cli/npm_engine.py,bootstrap_hermes_managed_node(), tests) — it originated in #75037's lineage but is floor-agnostic: it reads the required range from npm's own error output, so it stays dormant while no pin exists and works unchanged if/when the npm-12 migration is re-attempted with an installer-first rollout.Conflict resolutions
All resolved to the pre-PR state (
<mergeSha>^):package.json/website/package.jsonengines,apps/desktop/package.jsondeps, both lockfiles,uv.lock,backend-env.test.ts(later fmt commit touched it).hermes_cli/main.pykept the #76464 call sites (they no-op without an engine failure).Validation
124 targeted tests green (
test_npm_engine.py,test_cmd_update.py,test_hermes_constants.py,test_web_ui_build.py,test_gui_command.py,test_desktop_exe_integrity.py);hermes_constants+npm_enginereal-import check passes; no residue (nix/npm-12-0-2.nix,nix/node-gyp-11-4-0.nix,.npmrc,website/.npmrcall gone).Infographic