Skip to content

Update Node.js to v22 and modernize CI workflow - #1460

Open
drusepth wants to merge 2 commits into
tailwind-redesignfrom
claude/tailwind-redesign-test-fixes-3fujy3
Open

Update Node.js to v22 and modernize CI workflow#1460
drusepth wants to merge 2 commits into
tailwind-redesignfrom
claude/tailwind-redesign-test-fixes-3fujy3

Conversation

@drusepth

@drusepth drusepth commented Aug 7, 2026

Copy link
Copy Markdown
Member

Fixes #

Changes proposed:

  • Update Node.js version from 16 to 22 in mise.toml and GitHub Actions workflow
  • Upgrade GitHub Actions to latest versions (actions/checkout@v4, actions/setup-node@v4)
  • Add explicit yarn cache configuration and yarn install --frozen-lockfile step to CI
  • Configure NODE_OPTIONS: --openssl-legacy-provider environment variable for webpack 4 compatibility with Node 17+
  • Update tailwind-redesign branch to run tests in CI pipeline alongside master

@indentlabs/contributors

https://claude.ai/code/session_017a6kbgVDn4PohPxtdnx9Cs

claude added 2 commits August 7, 2026 19:27
yarn install was aborting in CI because postcss-load-config@6 (pulled in
by tailwindcss v3) requires Node >= 18 while the workflow pinned Node
14.15.0, leaving webpack uninstalled and failing assets:precompile
before any tests ran.

- Bump CI to Node 22 with NODE_OPTIONS=--openssl-legacy-provider, which
  webpack 4's md4 hashing needs on Node 17+
- Add an explicit 'yarn install --frozen-lockfile' step with yarn caching
- Update actions/checkout and actions/setup-node off deprecated versions
- Run the Tests workflow on pushes/PRs targeting tailwind-redesign, not
  just master
- Align mise.toml with the same Node version and flag for local dev

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017a6kbgVDn4PohPxtdnx9Cs
- Include ActiveJob::TestHelper in DocumentTest so assert_enqueued_with /
  assert_no_enqueued_jobs are available
- Align the document status default test with the schema's intentional
  default of 'writing' (migration sets default: 2)
- SyllablesService: check overrides before the short-word shortcut so
  'ion' => 2 is reachable, and count vowel runs of any length as one
  syllable so 'beautiful' counts as 3 instead of 4
- Relax the concurrent pin toggle test to assert at most one pinned
  image; toggling an already-pinned image can legitimately land as an
  unpin, so 'exactly one' was racy

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017a6kbgVDn4PohPxtdnx9Cs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants