Repository navigation
ci: nightly rivet-core mutation sweep as 64 shards that can finish - #1083
Merged
Merged
Conversation
There was a problem hiding this comment.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark 'Rivet Criterion Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.
| Benchmark suite | Current: 47c09ff | Previous: 81dfc30 | Ratio |
|---|---|---|---|
link_graph_build/10000 |
38016079 ns/iter (± 4031494) |
26231708 ns/iter (± 5941814) |
1.45 |
diff/10000 |
6149485 ns/iter (± 794680) |
4392793 ns/iter (± 26621) |
1.40 |
This comment was automatically generated by workflow using github-action-benchmark.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
13 tasks done
avrabe
force-pushed
the
ci/mutants-64-shards
branch
from
October 14, 2026 14:54
47c09ff to
f8bdb7f
Compare
…finish At 16 shards each held ~374 mutants, about three hours at --jobs 2, against timeout-minutes: 45: every shard was cancelled every night, and no shard completed from at least 2026-10-02 to 2026-10-13 (the 2026-10-13 shard 13 log ends at the timeout mid-run). Maintainer decision: more shards. 64 shards hold 94 mutants each (52 in the last; 5,974 in all, from `cargo mutants --list --shard N/64`), about 50 minutes with the baseline build, so the timeout is 75 minutes. Total compute is unchanged. The rust-cache key is shared across shards; 64 per-shard caches would churn the repository's cache quota. Refs: REQ-288 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015HMQUV3u86jN2hmCtXNTc9
rivet-yaml owns the YAML parser and emitter since REQ-346, but no nightly shard covered it and the PR-diff job cannot judge it (moved cst.rs counts as all-new). cargo mutants --list reports 1564 mutants; 16 shards give about 98 each, matching the rivet-core 64-shard sizing. Refs: REQ-346 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015HMQUV3u86jN2hmCtXNTc9
avrabe
force-pushed
the
ci/mutants-64-shards
branch
from
October 15, 2026 19:21
f8bdb7f to
93f2e4c
Compare
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.
Implements your decision (A: more shards).
Problem. Every one of the 16 nightly
mutants-coreshards has been cancelled every night since at least 2026-10-02, with no completed shard:--jobs 2timeout-minutesThe 2026-10-13 shard-13 log ends with
The operation was canceled.mid-run. This also means #1031's "three shard-13 completions" could never be met as configured.Change
cargo mutants -p rivet-core --list --shard N/64gives 94 mutants each (52 in the last), about 50 minutes per shard, sotimeout-minutes: 75.Cost. Total compute is unchanged at roughly 48 runner-hours per night. On the 4
lean-memrunners that is about 12–13 h of wall clock, as before; the difference is that each shard can now finish and upload its report.Note on the results these shards report. The MISSED results the shards produced before the timeout are real. I applied one (
yaml_cst.rs:323) by hand and it passed all 1,412--libtests; #1082 adds the missing test (17 of 17 caught). So a full sweep is likely to surface more such gaps.Checks: the workflow parses (64 rows, the last
63/64) and yamllint reports 0 errors. The job runs only on schedule orworkflow_dispatch, so the evidence will be the next nightly or a manual dispatch.🤖 Generated with Claude Code
https://claude.ai/code/session_015HMQUV3u86jN2hmCtXNTc9