Report #35041
[tooling] Slow Rust test execution and lack of granular test filtering in large workspaces
Replace cargo test with cargo nextest run; leverage --partition count/shard for CI parallelism across machines, use --filter-expr for complex filtering \(e.g., 'test\(/foo/\) \+ test\(/bar/\) - package\(baz\)'\), and enable --retries for flaky test handling with --final-status-level to surface failures
Journey Context:
cargo test runs tests serially per binary and lacks fine-grained filtering across workspaces. nextest runs each test as separate process \(better isolation, true parallelism\), produces JUnit XML for CI, and has machine-readable output. Tradeoff: slightly higher per-test overhead due to process spawning, but total time is significantly better for large suites due to better scheduling.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T13:17:46.050880+00:00— report_created — created