fix(ci): remove matrix from prepare job to fix fromJson empty input#8053
Draft
cryptodev-2s wants to merge 1 commit intomainfrom
Draft
fix(ci): remove matrix from prepare job to fix fromJson empty input#8053cryptodev-2s wants to merge 1 commit intomainfrom
cryptodev-2s wants to merge 1 commit intomainfrom
Conversation
The upgrade to action-checkout-and-setup@v3 skips checkout on cache hits, causing yarn workspaces list to produce empty output. Combined with the matrix race condition, this results in fromJson receiving an empty string. Fix by removing the unnecessary matrix and disabling caching on the prepare job.
4 tasks
auto-merge was automatically disabled
February 26, 2026 23:32
Pull request was converted to draft
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.
Explanation
The upgrade to
action-checkout-and-setupfrom v2 to v3 (#8047) introduced a fast-path optimization that skips the git checkout when there's anode_modulescache hit. This caused thepreparejob'syarn workspaces listcommand to produce empty output, since the repo was never checked out. Combined with the matrix strategy race condition (3 Node versions racing to set a single job output),fromJsonreceives an empty string and fails.Fix by:
prepare(package names are identical across Node versions)cache-node-modulesso the action always performs the checkout22.x)References
Checklist
Note
Low Risk
Low risk CI-only change, but it can affect workflow runtime and caching behavior by disabling
node_modulescache and pinning thepreparejob to a single Node version.Overview
Fixes CI workflow flakiness in
.github/workflows/lint-build-test.ymlby removing the Node version matrix from thepreparejob so it produces a single, deterministicchild-workspace-package-namesoutput.Forces a real checkout in
prepareby settingcache-node-modules: falseand pinspreparetonode-version: 22.x, avoiding emptyfromJsoninputs caused by skipped checkout/output races.Written by Cursor Bugbot for commit b892925. This will update automatically on new commits. Configure here.