👷 github: isolate coverage uploads - #1314
nfmelendez wants to merge 1 commit into
Conversation
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. WalkthroughThe GitHub Actions ChangesCI configuration
Priority: ⬇️ Low Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The workflow changes preserve coverage uploads and Nx caching without an established CI failure risk. 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5e2c0c0e2d
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| path: .nx/cache | ||
| path: | | ||
| .nx/cache | ||
| .nx/workspace-data/*.db* |
There was a problem hiding this comment.
Separate the two jobs' Nx cache keys
Once this database path makes restored Nx entries usable, the test and e2e cache steps still race on the identical nx-${{ runner.os }}-${{ github.sha }} key. GitHub Actions caches are immutable, so whichever job finishes first saves its .nx/cache and matching database while the other job's distinct entries are discarded; subsequent commits and reruns therefore cannot reuse all tasks produced by both jobs. Include the job identity in both the primary key and restore prefix so each job can persist its own coherent cache.
Useful? React with 👍 / 👎.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1314 +/- ##
==========================================
- Coverage 72.33% 71.60% -0.74%
==========================================
Files 279 279
Lines 11375 10973 -402
Branches 3851 3679 -172
==========================================
- Hits 8228 7857 -371
+ Misses 2898 2878 -20
+ Partials 249 238 -11
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 37beb585f1
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
37beb58 to
2a9d4f5
Compare
what
pass
disable_search: trueto everycodecov-actionstep and list the coverage files of thetestjob explicitly, so each commit uploads only its own reports.why
the
testande2ejobs restore.nx/cachewithrestore-keys: nx-Linux-, which brings back the most recent cache from any branch.test:viandtest:coveragedeclarecoverageandlcov.infoas nx outputs, so the cache carrieslcov.infofiles from other commits.codecov-actionsearches the whole tree and uploads them alongside the real report, and codecov merges them into the current commit.that is why
codecov/projectfails on release prs like #1298, #1299 and #1300: the base commite1aa1b5absorbed an older version ofserver/hooks/panda.tswith different line numbers and gained 97 tracked lines and 91 hits that do not exist. re-running the head cannot fix that, since the base report stays inflated.confirmed by deleting all
nx-Linux-*caches and re-running #1298: thee2ejob uploaded 2 files instead of 5, thetestjob 4 instead of 5, and the head coverage stayed at 72.14%. with this change each job uploads exactly 2 coverage files and 1 test results file.codecov on this pr
codecov/projectis red here for the reason this pr fixes: the base ismainat73fdca5, whose report still merges the stale uploads of its earlier attempts (server/hooks/panda.tsshows 559 tracked lines there against 353 on a clean head with all four flavors uploaded). uploads accumulate per commit, so no re-run ofmaincan clean it. this pr needs an admin merge; the next commit onmainwill then report clean numbers and every later pr will compare against it.the nx cache follow-up lives in #1315, stacked on this one.
🤖 Generated with Claude Code