Skip to content

Build: Bump Node.js to 22.22.3#34883

Open
valentinpalkovic wants to merge 1 commit into
nextfrom
valentin/bump-node-22.22.3
Open

Build: Bump Node.js to 22.22.3#34883
valentinpalkovic wants to merge 1 commit into
nextfrom
valentin/bump-node-22.22.3

Conversation

@valentinpalkovic
Copy link
Copy Markdown
Contributor

@valentinpalkovic valentinpalkovic commented May 22, 2026

What I did

The Angular CLI now requires a minimum Node.js version of v22.22.3 (or v24.15.0 / v26.0.0). Our pinned version v22.22.1 fails Angular prerelease sandbox generation with:

Node.js version v22.22.1 detected. The Angular CLI requires a minimum Node.js version of v22.22.3 or v24.15.0 or v26.0.0.

This bumps the pinned Node.js version from 22.22.1 to 22.22.3 everywhere it is hardcoded:

  • .nvmrc — the single source of truth consumed by actions/setup-node via node-version-file in all .github/actions/setup-node-and-install based workflows.
  • .github/workflows/nx.yml — switched the NX workflow from a hardcoded node-version: 22 to node-version-file: '.nvmrc' so it stays pinned and consistent with every other workflow.
  • scripts/ci/utils/executors.ts — CircleCI executor images cimg/node:22.22.1 and cimg/node:22.22.1-browsers22.22.3.
  • scripts/ci/sandboxes.ts — the node-version enforced for Angular sandbox CI steps (ensureMinNodeVersion), the exact spot that produced the error above.
  • code/lib/cli-storybook/src/sandbox-templates.ts — comment referencing the minimum supported version.
  • AGENTS.md — contributor-facing Node.js version reference.

No .npmrc exists in the repo, and all other GitHub Actions workflows already resolve Node from .nvmrc via the setup-node-and-install composite action, so no further changes are needed.

This mirrors the previous Node bump (#34079, 22.21.122.22.1), which was done for the same Angular sandbox reason.

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

This is a CI/build configuration change with no application code impact. It is exercised by CI itself: the CircleCI jobs run on the bumped cimg/node:22.22.3 executor images, and the Angular sandbox generation step now installs Node 22.22.3, satisfying the Angular CLI minimum.

To verify locally:

  1. nvm install (or nvm use) — picks up 22.22.3 from .nvmrc.
  2. node --versionv22.22.3.
  3. Generate an Angular sandbox: yarn task sandbox --template angular-cli/default-ts --start-from auto — no longer fails the Angular CLI Node version check.

Documentation

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli-storybook/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Updated Node.js version to 22.22.3 across CI configurations and documentation.
    • Modified CI workflow to dynamically read Node.js version from a centralized version file instead of using a hardcoded value.

Review Change Stack

@valentinpalkovic valentinpalkovic added build Internal-facing build tooling & test updates ci:normal labels May 22, 2026
@valentinpalkovic valentinpalkovic self-assigned this May 22, 2026
@valentinpalkovic valentinpalkovic added ci:daily Run the CI jobs that normally run in the daily job. and removed ci:normal labels May 22, 2026
@valentinpalkovic valentinpalkovic moved this to In Progress in Core Team Projects May 22, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 22, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f48ea105-d6ca-4f2c-a89a-611c21ea5562

📥 Commits

Reviewing files that changed from the base of the PR and between b9fe4d1 and 6e309ce.

📒 Files selected for processing (5)
  • .github/workflows/nx.yml
  • .nvmrc
  • AGENTS.md
  • code/lib/cli-storybook/src/sandbox-templates.ts
  • scripts/ci/sandboxes.ts
✅ Files skipped from review due to trivial changes (4)
  • .nvmrc
  • code/lib/cli-storybook/src/sandbox-templates.ts
  • AGENTS.md
  • .github/workflows/nx.yml

📝 Walkthrough

Walkthrough

Node.js minimum version is bumped from 22.22.1 to 22.22.3 across .nvmrc, the GitHub Actions workflow setup (which now reads from .nvmrc), CI sandbox configuration, and documentation.

Changes

Node.js Version Bump

Layer / File(s) Summary
Version source and workflow configuration
​.nvmrc, .github/workflows/nx.yml
.nvmrc updates to 22.22.3 as the canonical Node version; GitHub Actions workflow switches from hardcoded node-version: 22 to reading from .nvmrc via node-version-file.
CI sandbox setup configuration
scripts/ci/sandboxes.ts
CI sandbox setup that enforces minimum Node version is updated to pin 22.22.3 when ensureMinNodeVersion is enabled.
Documentation and comments
AGENTS.md, code/lib/cli-storybook/src/sandbox-templates.ts
Agent documentation and sandbox template comments reference the new minimum Node.js version 22.22.3.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • storybookjs/storybook#34079: Both PRs directly change the Node.js version string used for CI/sandbox generation by updating .nvmrc (22.22.1→22.22.3 in main vs 22.21.1→22.22.1 in the retrieved PR).
  • storybookjs/storybook#33846: Both PRs adjust GitHub Actions Node.js setup to source the Node version from .nvmrc via node-version-file (main PR in nx.yml, retrieved PR via a new composite setup-node-and-install action and its publish workflow usage).
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Comment @coderabbitai help to get the list of available commands and usage tips.

The Angular CLI now requires Node.js >= v22.22.3 (or v24.15.0 /
v26.0.0); v22.22.1 fails Angular prerelease sandbox generation.

Bump the pinned version in .nvmrc, the Angular sandbox node-version
CI step, the nx.yml workflow, and AGENTS.md. Angular sandboxes run on
22.22.3 via the node/install CI step, the established mechanism for
enforcing a minimum Node version regardless of the base image.

The CircleCI executor base image is intentionally left on
cimg/node:22.22.1 -- switching it to cimg/node:22.22.3 broke
oxc-parser resolution during sandbox creation across all CI jobs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Internal-facing build tooling & test updates ci:daily Run the CI jobs that normally run in the daily job.

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant