From 6f2190fc63d6c3cb2f26f2c590560a95222793c0 Mon Sep 17 00:00:00 2001 From: k-taro56 <121674121+k-taro56@users.noreply.github.com> Date: Fri, 30 Oct 2026 13:13:18 +0900 Subject: [PATCH 1/2] fix(ci): run the deploy-tests shards on Node.js 24 Since #393 every shard failed before running a suite: Next.js's run-tests.js requires yargs/yargs, an extensionless file in a "type": "module" package, which Node.js 26 loads as an ES module and rejects ("require is not defined in ES module scope"). The shards go back to Node.js 24, which this repository keeps supporting and every shard ran on until then. --- .github/workflows/deploy-tests.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy-tests.yaml b/.github/workflows/deploy-tests.yaml index 09e26358..0612b5d7 100644 --- a/.github/workflows/deploy-tests.yaml +++ b/.github/workflows/deploy-tests.yaml @@ -385,9 +385,13 @@ jobs: ref: ${{ needs.plan.outputs.nextjs }} path: nextjs fetch-depth: 25 + # Node.js 24, not the 26 this repository builds with: the suite runs out of Next.js's checkout, and + # its harness does not load on 26. `run-tests.js` requires `yargs/yargs`, an extensionless file in + # a `"type": "module"` package, which 26 reads as an ES module ("require is not defined in ES + # module scope"). This repository keeps Node.js 24 working, and every shard ran on it until 26. - uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0 with: - node-version: 26.13.0 + node-version: 24 # Corepack rather than `pnpm/action-setup`, which reads one `packageManager` from where it runs: # there are two checkouts here and no manifest above them, and they do not agree on a version. # This way each directory's own `packageManager` is honoured — Next.js's inside `nextjs`, this From 63386331a8616f76faae6f08d646c79b96f7dd7c Mon Sep 17 00:00:00 2001 From: k-taro56 <121674121+k-taro56@users.noreply.github.com> Date: Fri, 30 Oct 2026 13:20:07 +0900 Subject: [PATCH 2/2] fix(ci): pin the deploy-tests shards to Node.js 24.22.1 The adapter builds a native Function only under the exact Node.js versions it guards, and a floating 24 would move past 24.22.1. --- .github/workflows/deploy-tests.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy-tests.yaml b/.github/workflows/deploy-tests.yaml index 0612b5d7..866b4bec 100644 --- a/.github/workflows/deploy-tests.yaml +++ b/.github/workflows/deploy-tests.yaml @@ -389,9 +389,11 @@ jobs: # its harness does not load on 26. `run-tests.js` requires `yargs/yargs`, an extensionless file in # a `"type": "module"` package, which 26 reads as an ES module ("require is not defined in ES # module scope"). This repository keeps Node.js 24 working, and every shard ran on it until 26. + # Exactly 24.22.1: the adapter builds a native Function only under the Node.js versions it + # guards (`isGuardedNodeVersion`), and a floating `24` would move past it. - uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0 with: - node-version: 24 + node-version: 24.22.1 # Corepack rather than `pnpm/action-setup`, which reads one `packageManager` from where it runs: # there are two checkouts here and no manifest above them, and they do not agree on a version. # This way each directory's own `packageManager` is honoured — Next.js's inside `nextjs`, this