Skip to content

chore: move the toolchain floor to Node 24 (active LTS) - #36

Open
ajcarberry wants to merge 2 commits into
mainfrom
claude/dependabot-ci-gha-safety-916049
Open

chore: move the toolchain floor to Node 24 (active LTS)#36
ajcarberry wants to merge 2 commits into
mainfrom
claude/dependabot-ci-gha-safety-916049

Conversation

@ajcarberry

Copy link
Copy Markdown
Owner

Node 20 reached end-of-life on 2026-04-30, so the documented floor of
20.19+ pointed at an unsupported runtime. Node 24 "Krypton" has been the
active LTS since 2025-10-28 and is supported through 2028-04-30; Node 26
is still Current and does not enter LTS until 2026-10-28.

Add .nvmrc as the single source of truth and have both workflows read it
via setup-node's node-version-file, so the CI pin cannot drift from the
version contributors run locally.

Verified on Node 24.18.1: type-check, prettier, eslint, the full Jest
suite with coverage thresholds (486 tests, 40 suites), and electron-vite
build all pass.

Closes #6

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01AFS1h5NiMcLD8EbdxvFyK1

claude added 2 commits August 1, 2026 02:01
Node 20 reached end-of-life on 2026-04-30, so the documented floor of
20.19+ pointed at an unsupported runtime. Node 24 "Krypton" has been the
active LTS since 2025-10-28 and is supported through 2028-04-30; Node 26
is still Current and does not enter LTS until 2026-10-28.

Add .nvmrc as the single source of truth and have both workflows read it
via setup-node's node-version-file, so the CI pin cannot drift from the
version contributors run locally.

Verified on Node 24.18.1: type-check, prettier, eslint, the full Jest
suite with coverage thresholds (486 tests, 40 suites), and electron-vite
build all pass.

Closes #6

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AFS1h5NiMcLD8EbdxvFyK1
The toolchain floor moved to Node 24 in f5bcea8, but two things still
pointed at the old world.

CLAUDE.md never named a Node version at all, so an agent reading only the
project instructions had no way to know which runtime to use. Record it in
Core Technologies and above Essential Commands, pointing at .nvmrc as the
single source of truth.

@types/node was on ^26 while the runtime is 24. Typings from a newer major
describe APIs the runtime does not have, so tsc would accept calls that
throw at runtime. Pin it to the runtime major and tell Dependabot not to
walk it forward again — the ignore is scoped to majors, so patch and minor
typing fixes still flow.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AFS1h5NiMcLD8EbdxvFyK1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade Node version

2 participants