Repository navigation
Run the Node 22.13.0 engines floor in a separate CI job - #7
Merged
Merged
Conversation
package.json requires node >=22.13.0 but CI only tested Node 22 latest. Add a verify-node-floor job (install + the coverage gate) pinned to 22.13.0. It is a separate job, not a matrix on verify: main requires a check named exactly "verify", and a matrix would rename it to "verify (22)".
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed and why
verify-node-floorjob to.github/workflows/ci.yml. It runscorepack enable,yarn install --immutableandyarn teston Node 22.13.0.package.jsonsaysengines.node >=22.13.0, but CI only ran Node 22 latest, so nothing exercised the floor.yarn testis the coverage gate, so the floor now has to hit 100% per file too.verify,release, permissions and concurrency are untouched. The diff is 19 added lines and none removed.Decisions to look at
verifyalone and addedverify-node-floorverify (22)andverify (22.13.0). main requires one named exactlyverify, so it would never report and every PR would block. Cost: the floor job isn't required, so a red floor won't block a merge.verifyenginesfield of the 76 installed packagesnode-gyp,nopt,abbrev,proc-log,which,undici) want a newer Node, but they only hang off macOS-onlyfsevents, and they installed fine on 22.13.0 here. Nothing blocks the floor.node-version: "22.13.0", with a comment to keep it equal toengines.nodeengines.nodemoves.needs: verifyneedsor branch protection is a separate call.Verified
Local runs on macOS arm64 with the official Node 22.13.0 tarball from nodejs.org, sha256 checked against its
SHASUMS256.txt, used inside the worktree and deleted afterwards. Same commit throughout, a freshnode_modulesper Node,HOMEand XDG dirs sandboxed,CI=true.Floor steps on Node v22.13.0:
yarn testcoverage summary, same commit on both Nodes (8 files, 148 tests, passing on both):Identical totals, so coverage doesn't vary between these two versions. The only output difference is that 22.13.0 prints the
node:sqliteExperimentalWarning.Negative check, one release below the floor: Node 22.12.0 (same checksum routine), running
vitest run --coveragedirectly:Source for the boundary: Node's v22.13.0 changelog lists "unflag sqlite module" (nodejs/node#55890), and the v22.12.0 docs still gate it behind
--experimental-sqlite.Workflow checks:
First run on GitHub (run 35486171971, commit a9fa525):
In the floor job's log: install took 7s,
yarn testran 8 files and 148 tests, printed thenode:sqliteExperimentalWarning, and the coverage table shows 100% on each of the 7 source files.Test review
No tests were added or changed, so no test review ran.
Not verified
verifyandleak-scanrequirement comes from the task brief.node-gyptree on ubuntu (77 packages added there, 78 on macOS). The install passed either way.AI leveraged
AI leveraged:
Tracked under bead myusage-60f
🤖 Generated with Claude Code