Skip to content

Pin Node version to a supported LTS #258

Description

@tykeal

Problem

package.json declares engines.node: ">=14" and the repository has
no .nvmrc / .node-version. Because the floor is open-ended and Node
14/16/18 are end-of-life, Vercel and CI run whatever the newest
supported runtime is. Following the most recent deploy this has drifted
to Node 24.x (it was 22.x previously). The declared floor no longer
reflects what the app actually runs on, and there is no single source of
truth pinning the version across local dev, CI, and Vercel.

Proposed change

  • Update engines.node to a supported LTS range (e.g. ">=22").
  • Add .nvmrc and/or .node-version so local dev, CI
    (actions/setup-node), and Vercel agree on one version.
  • Align the CI workflow node-version (currently lts/*) accordingly.

Acceptance criteria

  • engines.node reflects a supported LTS.
  • .nvmrc / .node-version present and consistent with CI.
  • Test suite passes on the pinned version.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions