Task: Move repo runtime to Node.js 25.9.0 #526

Open
opened 2026-05-01 08:05:13 +00:00 by Phoenixxo · 0 comments
Phoenixxo commented 2026-05-01 08:05:13 +00:00 (Migrated from github.com)

Task Summary

Move the repo runtime baseline to Node.js 25.9.0 while retaining Node.js 24.x LTS compatibility across local development, install-time validation, CI defaults, Docker, and setup documentation.

Context

The repo currently supports Node 20/22, with .nvmrc files pinned to Node 20.20.1 and install-time validation allowing Node 20 and 22. We want Node.js 25.9.0 to be the default runtime for forward-compatibility testing, while allowing Node.js 24.x LTS as the stable contributor path.

Node.js 25.9.0 release reference: https://nodejs.org/blog/release/v25.9.0
Node.js release schedule reference: https://github.com/nodejs/Release

Scope

  • Pin root and app Node version files to Node.js 25.9.0 as the default.
  • Support Node.js 24.x LTS and Node.js 25.9.x in package metadata and install-time validation.
  • Update the Docker base image to a Node 25.9-compatible image.
  • Keep CI reading next/.nvmrc through actions/setup-node.
  • Update environment setup docs with fnm-based Node installation and auto-switching instructions for macOS, Linux, and Windows.
  • Keep docs text-only with official links and command examples.

Acceptance Criteria

  • .nvmrc and next/.nvmrc both pin 25.9.0 as the default runtime.
  • next/package.json engines support Node 24.x LTS and Node 25.9.x.
  • next/scripts/check-node-version.cjs accepts Node 24.x LTS and Node 25.9.x, and updates its error/help text.
  • next/Dockerfile uses a Node 25.9-compatible image, preferably node:25.9.0-bookworm-slim if available.
  • CI continues using next/.nvmrc through actions/setup-node.
  • documentation/EnvironmentSetup.md explains fnm-based installation and project auto-switching for macOS, Linux, and Windows.
  • Lockfiles are updated if npm records changed engine metadata.

Subtasks / Checklist

  • Update Node version files and package metadata.
  • Update install-time Node version check.
  • Update Docker base image.
  • Update environment setup documentation.
  • Run local validation.

Validation

  • From next/, verify node -v reports v25.9.0 when using the default .nvmrc.
  • Run npm ci to confirm the preinstall version gate accepts Node 25.9.
  • Run npm run lint.
  • Run npm run test.
  • Run npm run typecheck.
  • Run npm run build.
  • Build the Docker image from next/.
# Task Summary Move the repo runtime baseline to Node.js 25.9.0 while retaining Node.js 24.x LTS compatibility across local development, install-time validation, CI defaults, Docker, and setup documentation. ## Context The repo currently supports Node 20/22, with .nvmrc files pinned to Node 20.20.1 and install-time validation allowing Node 20 and 22. We want Node.js 25.9.0 to be the default runtime for forward-compatibility testing, while allowing Node.js 24.x LTS as the stable contributor path. Node.js 25.9.0 release reference: https://nodejs.org/blog/release/v25.9.0 Node.js release schedule reference: https://github.com/nodejs/Release ## Scope - Pin root and app Node version files to Node.js 25.9.0 as the default. - Support Node.js 24.x LTS and Node.js 25.9.x in package metadata and install-time validation. - Update the Docker base image to a Node 25.9-compatible image. - Keep CI reading next/.nvmrc through actions/setup-node. - Update environment setup docs with fnm-based Node installation and auto-switching instructions for macOS, Linux, and Windows. - Keep docs text-only with official links and command examples. ## Acceptance Criteria - [x] .nvmrc and next/.nvmrc both pin 25.9.0 as the default runtime. - [x] next/package.json engines support Node 24.x LTS and Node 25.9.x. - [x] next/scripts/check-node-version.cjs accepts Node 24.x LTS and Node 25.9.x, and updates its error/help text. - [x] next/Dockerfile uses a Node 25.9-compatible image, preferably node:25.9.0-bookworm-slim if available. - [x] CI continues using next/.nvmrc through actions/setup-node. - [x] documentation/EnvironmentSetup.md explains fnm-based installation and project auto-switching for macOS, Linux, and Windows. - [x] Lockfiles are updated if npm records changed engine metadata. ## Subtasks / Checklist - [x] Update Node version files and package metadata. - [x] Update install-time Node version check. - [x] Update Docker base image. - [x] Update environment setup documentation. - [x] Run local validation. ## Validation - [x] From next/, verify node -v reports v25.9.0 when using the default .nvmrc. - [x] Run npm ci to confirm the preinstall version gate accepts Node 25.9. - [x] Run npm run lint. - [x] Run npm run test. - [x] Run npm run typecheck. - [x] Run npm run build. - [x] Build the Docker image from next/.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
SSE/WebsiteTheSSEquel#526
No description provided.