Skip to content

chore(ci): align PR validation Node with .nvmrc and enforce engines#432

Merged
johnleider merged 1 commit into
masterfrom
worktree-fix+404-ci-node-nvmrc
Jun 30, 2026
Merged

chore(ci): align PR validation Node with .nvmrc and enforce engines#432
johnleider merged 1 commit into
masterfrom
worktree-fix+404-ci-node-nvmrc

Conversation

@johnleider

Copy link
Copy Markdown
Member

PR validation ran on a different (lower) Node major than the release build and the declared minimum, with nothing enforcing alignment:

  • .github/actions/setup/action.yml used node-version: lts/* (Node 24 as of mid-2026) — and this composite action is used throughout pr-checks.yml.
  • release.yml uses node-version-file: .nvmrc (.nvmrc = 26.0.0); README.md declares Node >= 26; no engines field enforced it.

Risk: a Node-26-only API passes locally / ships via release but fails PR CI on 24 (or the inverse).

Fix:

  • setup action → node-version-file: .nvmrc, so PR CI resolves Node from the same file as the release build (cache: pnpm preserved).
  • add engines.node: ">=26" to package.json to machine-enforce the README/.nvmrc minimum.

Scoped to PR validation per the issue — metrics-regen.yml (separate setup-node usage) left untouched. The --frozen-lockfile note in the issue is a non-issue (pnpm auto-enables it when CI is set), so not changed.

⚠️ CI-workflow change — exercised on this PR's own run, not locally. YAML parses and package.json is valid JSON.

Closes #404

The local setup composite action used `node-version: lts/*` (Node 24), while the
release build and `.nvmrc` use Node 26 and the README declares Node >= 26 — so a
Node-26-only API could pass/ship yet fail PR CI on 24 (or the inverse), with
nothing enforcing alignment. Point the setup action at `.nvmrc` (the same file
release.yml uses) and add `engines.node: ">=26"` to machine-enforce the declared
minimum.

Closes #404
#404
@johnleider johnleider added this to the v1.0.0 milestone Jun 30, 2026
@johnleider johnleider added the T: bug Something isn't working label Jun 30, 2026
@johnleider johnleider self-assigned this Jun 30, 2026
@pkg-pr-new

pkg-pr-new Bot commented Jun 30, 2026

Copy link
Copy Markdown

Open in StackBlitz

commit: bc1006b

@johnleider johnleider merged commit 0266983 into master Jun 30, 2026
19 checks passed
@johnleider johnleider deleted the worktree-fix+404-ci-node-nvmrc branch June 30, 2026 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T: bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[CI] PR validation Node major drifts from .nvmrc / release

1 participant