From c346a436e0e9e46a564e00e3756f334d5dbba75b Mon Sep 17 00:00:00 2001 From: Justin Gordon Date: Tue, 4 Nov 2025 20:03:16 -1000 Subject: [PATCH 1/2] Fix Node.js 22 V8 crash in GitHub Actions workflows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Disable yarn cache for Node.js 22 in all workflows to work around V8 crash bug in version 22.21.0 that occurs when running `yarn cache dir`. The crash manifests as "Fatal error in , line 0 # unreachable code" during the setup-node@v4 cache detection step. This is a known issue tracked at https://github.com/nodejs/node/issues/56010 Modified workflows: - lint-js-and-ruby.yml - package-js-tests.yml - pro-integration-tests.yml (3 occurrences) - pro-lint.yml - pro-package-tests.yml (2 occurrences) The main.yml workflow was already patched in a previous commit. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .github/workflows/lint-js-and-ruby.yml | 4 +++- .github/workflows/package-js-tests.yml | 4 +++- .github/workflows/pro-integration-tests.yml | 12 +++++++++--- .github/workflows/pro-lint.yml | 4 +++- .github/workflows/pro-package-tests.yml | 8 ++++++-- 5 files changed, 24 insertions(+), 8 deletions(-) diff --git a/.github/workflows/lint-js-and-ruby.yml b/.github/workflows/lint-js-and-ruby.yml index 5c345d172d..f87153d5f3 100644 --- a/.github/workflows/lint-js-and-ruby.yml +++ b/.github/workflows/lint-js-and-ruby.yml @@ -55,7 +55,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: '**/yarn.lock' - name: Print system information run: | diff --git a/.github/workflows/package-js-tests.yml b/.github/workflows/package-js-tests.yml index 1411f29a4f..28d3627e8d 100644 --- a/.github/workflows/package-js-tests.yml +++ b/.github/workflows/package-js-tests.yml @@ -60,7 +60,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: ${{ matrix.node-version != '22' && 'yarn' || '' }} cache-dependency-path: '**/yarn.lock' - name: Print system information run: | diff --git a/.github/workflows/pro-integration-tests.yml b/.github/workflows/pro-integration-tests.yml index 78b9917253..365e0e60e7 100644 --- a/.github/workflows/pro-integration-tests.yml +++ b/.github/workflows/pro-integration-tests.yml @@ -52,7 +52,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information @@ -139,7 +141,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information @@ -327,7 +331,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information diff --git a/.github/workflows/pro-lint.yml b/.github/workflows/pro-lint.yml index fa7d85adc9..fc114b8f71 100644 --- a/.github/workflows/pro-lint.yml +++ b/.github/workflows/pro-lint.yml @@ -51,7 +51,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information diff --git a/.github/workflows/pro-package-tests.yml b/.github/workflows/pro-package-tests.yml index e69993ea1e..d6515e3390 100644 --- a/.github/workflows/pro-package-tests.yml +++ b/.github/workflows/pro-package-tests.yml @@ -52,7 +52,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information @@ -144,7 +146,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 - cache: yarn + # Disable cache for Node 22 due to V8 bug in 22.21.0 + # https://github.com/nodejs/node/issues/56010 + cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' - name: Print system information From 43919ad7e1153219b11ad5a8046ebc0ede1f9766 Mon Sep 17 00:00:00 2001 From: Justin Gordon Date: Tue, 4 Nov 2025 20:07:51 -1000 Subject: [PATCH 2/2] Add TODO comments to track cache re-enabling for Node.js 22 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added TODO comments in all affected workflow files to ensure we remember to re-enable yarn cache once the Node.js 22 V8 bug is fixed. This provides a clear path for future cleanup when the upstream bug at https://github.com/nodejs/node/issues/56010 is resolved. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .github/workflows/lint-js-and-ruby.yml | 3 ++- .github/workflows/package-js-tests.yml | 3 ++- .github/workflows/pro-integration-tests.yml | 9 ++++++--- .github/workflows/pro-lint.yml | 3 ++- .github/workflows/pro-package-tests.yml | 6 ++++-- 5 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.github/workflows/lint-js-and-ruby.yml b/.github/workflows/lint-js-and-ruby.yml index f87153d5f3..097a45f13e 100644 --- a/.github/workflows/lint-js-and-ruby.yml +++ b/.github/workflows/lint-js-and-ruby.yml @@ -55,8 +55,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: '**/yarn.lock' - name: Print system information diff --git a/.github/workflows/package-js-tests.yml b/.github/workflows/package-js-tests.yml index 28d3627e8d..a9e6b64acb 100644 --- a/.github/workflows/package-js-tests.yml +++ b/.github/workflows/package-js-tests.yml @@ -60,8 +60,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: ${{ matrix.node-version != '22' && 'yarn' || '' }} cache-dependency-path: '**/yarn.lock' - name: Print system information diff --git a/.github/workflows/pro-integration-tests.yml b/.github/workflows/pro-integration-tests.yml index 365e0e60e7..06edf81dce 100644 --- a/.github/workflows/pro-integration-tests.yml +++ b/.github/workflows/pro-integration-tests.yml @@ -52,8 +52,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' @@ -141,8 +142,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' @@ -331,8 +333,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' diff --git a/.github/workflows/pro-lint.yml b/.github/workflows/pro-lint.yml index fc114b8f71..0ffb183782 100644 --- a/.github/workflows/pro-lint.yml +++ b/.github/workflows/pro-lint.yml @@ -51,8 +51,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' diff --git a/.github/workflows/pro-package-tests.yml b/.github/workflows/pro-package-tests.yml index d6515e3390..d5ccddd6df 100644 --- a/.github/workflows/pro-package-tests.yml +++ b/.github/workflows/pro-package-tests.yml @@ -52,8 +52,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock' @@ -146,8 +147,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22 + # TODO: Re-enable cache when Node.js 22 V8 bug is fixed # Disable cache for Node 22 due to V8 bug in 22.21.0 - # https://github.com/nodejs/node/issues/56010 + # Track: https://github.com/nodejs/node/issues/56010 cache: '' cache-dependency-path: 'react_on_rails_pro/**/yarn.lock'