test(ci): isolate notedeck_notebook snapshot tests on Windows - #1498
Merged
Conversation
The notedeck_notebook snapshot_tests binary crashed on the Windows native test job with exit code 0xc0000005 (STATUS_ACCESS_VIOLATION) — a native process death, not a test panic: no assertion failed and no per-test result was printed. Linux and macOS were green. Its non-ignored tests are heavyweight interactive egui_kittest e2e cases (drag, connect edges, create/edit longform, rename, delete) that each spin up a full Notedeck plus Harness and loop run_ok + 25ms sleeps over asynchronous PNS-crypto nostrdb ingest. That is the same class of suite already isolated for notedeck_dave, notedeck_columns e2e, and notedeck_messages e2e, whose concurrent execution inside the parallel workspace step crashed on Windows. notedeck_notebook was the last such suite still running there. Exclude notedeck_notebook from the broad workspace test step and run it in its own one-thread step, matching the established Dave/Columns/Messages model. Coverage is unchanged (the lavapipe snapshot cases stay ignored). Changelog-None: Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe build workflow excludes ChangesCI testing
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
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.
Problem
The
Test (Windows) / runjob crashed withsnapshot_tests-*.exe (exit code: 0xc0000005, STATUS_ACCESS_VIOLATION)— a native process death, not a test panic: no assertion failed and no per-test result was printed. Linux and macOS were green (this is why PR #1497 was merged with Windows red — it's a non-required check).Root cause
Concurrent execution inside the parallel
cargo test --workspacestep.notedeck_notebook's non-ignoredsnapshot_testsare heavyweight interactiveegui_kitteste2e cases (drag, connect edges, create/edit longform, rename, delete) that each spin up a fullNotedeck+Harnessand looprun_ok+ 25ms sleeps over asynchronous PNS-crypto nostrdb ingest.That is the same class of suite already isolated for the other heavyweight harness crates, each fixed the same way:
notedeck_dave— c29f2d5 ("test(ci): isolate Dave tests on Windows")notedeck_columnse2e — 36eb6b4 ("test(ci): isolate Columns e2e on Windows")notedeck_messagese2e — fd311b2 ("Run messages E2E serially in CI")notedeck_notebookwas the last such suite still running inside the parallel workspace step. The lighter single-snapshot harness suites (chrome/dashboard/headway/horizon) finish in ms and don't hit the race window.Fix
Exclude
notedeck_notebookfrom the broad workspace test step and run it in its own--test-threads=1step, matching the established Dave/Columns/Messages model. Coverage is unchanged — the lavapipe snapshot cases stay ignored.Verified green locally on Linux: 28 lib + 7 non-ignored snapshot tests pass, 7 lavapipe tests ignored.
🤖 Generated with Claude Code
Summary by CodeRabbit
notedeck_notebookpackage separately and sequentially.