chore(tooling): drop Node 20 from supported engines range (EOL April 2026), bump floor to 22

Open
#889 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
52/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Active
Tech stack
aws, node.js, typescript

Research direction

Start with the four workspace package.json files, then inspect integrations/jira-forge-app/package.json and the Lambda runtime tests in cdk/test/constructs/cedar-wasm-layer.test.ts and cdk/test/stacks/agent.test.ts. Trace those tests to the construct source and read ADR-003 before deciding how the nodejs20.x references should be handled. Done means the manifests no longer advertise Node 20, the Lambda decision is recorded, and mise run build passes on Node 22.

Written by the indexing model from the issue text.

Description

v1
Summary

Node.js 20 reaches end-of-life in April 2026, but the repo still advertises it as a supported floor. The runtime toolchain is already on 22 (mise node = "22", workflow node-version: 22.x), so the gap is purely in the declared support range and a few Lambda runtime references.

Affected places (triage across the repo)

engines.node floor — ">= 20.x <= 24.x"">= 22.x <= 24.x" (4 workspace manifests):

  • package.json:8
  • cli/package.json:10
  • cdk/package.json:78
  • docs/package.json:29

Lambda CompatibleRuntimes still list nodejs20.x (decide whether to drop):

  • cdk/test/constructs/cedar-wasm-layer.test.ts:46
  • cdk/test/stacks/agent.test.ts:167
  • (plus the construct source these assert against — trace from the tests)

Standalone integration project (outside yarn workspaces, needs its own edit + re-lock):

  • integrations/jira-forge-app/ — check its package.json engines/Forge runtime and re-lock if changed (see #712 for the standalone-project pin caveat).

No change needed (already on 22, listed for completeness): root/child mise.toml node = "22"; .github/workflows/* node-version: 22.x / "22".

Proposed change

Bump the engines.node floor to >= 22.x in the four manifests; separately decide whether to drop nodejs20.x from Lambda CompatibleRuntimes (that affects deployed function runtime support, so it may warrant its own call).

Acceptance
  • No workspace manifest advertises Node 20 as supported.
  • mise run build passes on Node 22.
  • Decision recorded on the Lambda nodejs20.x runtime references (drop or keep).
Notes

Needs maintainer approved + assignment before implementation (ADR-003). Filing for triage.

Dominant language
TypeScript
Stars
146
Forks
46
Avg merge
3d 2h
Merged PRs (30d)
27

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from aws-samples/sample-autonomous-cloud-coding-agents

All issues in aws-samples/sample-autonomous-cloud-coding-agents

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.