Skip to content

ci(node): add matrix testing for Node 18 and LTS versions with engine checks - #243

Merged
Emmy123222 merged 7 commits into
Emmy123222:mainfrom
Risktaker001:freebuff/202-test-the-supported-node-version-2n8dgwdq
Sep 3, 2026
Merged

ci(node): add matrix testing for Node 18 and LTS versions with engine checks#243
Emmy123222 merged 7 commits into
Emmy123222:mainfrom
Risktaker001:freebuff/202-test-the-supported-node-version-2n8dgwdq

Conversation

@Risktaker001

Copy link
Copy Markdown
Contributor

closes #202

Summary

Updates the CI workflow matrix to test across all supported Node.js versions (Node 18+ and current LTS versions) and enforces strict Node runtime validation using package engines constraints.

Changes Included

  • CI Matrix Pipeline (.github/workflows/ci.yml):

  • Added a job strategy matrix to run automated tests across Node 18 (minimum supported) and current LTS versions (Node 20, Node 22).

  • Aligned matrix checks across Express backend, Vercel deployments, browser runtime, and MCP server boundaries.

  • Engine Enforcement (package.json, .nvmrc):

  • Configured package.json (engines field and .npmrc / engine-strict=true) to ensure early failure with a clear error message when executed on unsupported Node versions.

  • Updated .nvmrc to align local development defaults with current LTS while preserving Node 18+ compatibility.

  • Coverage & Documentation:

  • Updated build and CI setup documentation to explicitly list supported Node runtime ranges.

  • Preserved x402 payment settlement semantics across test suites for paid routes.

Verification

  • Executed CI workflows across Node 18, Node 20, and Node 22 environments to verify clean test suite executions.
  • Attempted running setup/build on unsupported Node runtimes (<18) to verify early engine check failures.
  • Confirmed x402 settlement route test assertions pass consistently across all matrix targets.

Risktaker001 and others added 3 commits August 31, 2026 05:08
node cannot run .ts files directly on Node 18, causing the CI gate job
to fail with ERR_UNKNOWN_FILE_EXTENSION. Rewrite check-node-version
as plain .js with zero dependencies so it runs on any Node version
without tsx.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
…ements

Vite 8 requires ^20.19.0 || >=22.12.0 but package.json declared
>=18.0.0, causing Node 18 CI jobs to fail with util.styleText errors.
Update engines field, CI matrix, and version check script to align
with the actual supported range.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@vercel

vercel Bot commented Aug 31, 2026

Copy link
Copy Markdown

@Risktaker001 is attempting to deploy a commit to the Emmanuel's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Aug 31, 2026

Copy link
Copy Markdown

@Risktaker001 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@AbuJulaybeeb AbuJulaybeeb left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

resolve conflicts

@AbuJulaybeeb AbuJulaybeeb left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

resolve conflicts

Risktaker001 and others added 2 commits September 1, 2026 12:43
…-2n8dgwdq

Resolve merge conflict in .github/workflows/ci.yml:
- Kept branch's Node 22 coverage gate with caching and real threshold verification
- Included upstream's supply-chain job (SBOM generation + OSV vulnerability scanning)
- Removed echo placeholder from fork's main

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@Risktaker001

Copy link
Copy Markdown
Contributor Author

it has been resolved

@Emmy123222
Emmy123222 merged commit 3edf390 into Emmy123222:main Sep 3, 2026
0 of 2 checks passed
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.

Test the supported Node version range in CI

3 participants