Skip to content

Duration-balance the CI pytest shards (~22m target per shard) - #406

Merged
MaxGhenis merged 3 commits into
masterfrom
ci/shard-durations
Aug 18, 2026
Merged

Duration-balance the CI pytest shards (~22m target per shard)#406
MaxGhenis merged 3 commits into
masterfrom
ci/shard-durations

Conversation

@MaxGhenis

Copy link
Copy Markdown
Contributor

Follow-up to #402: commits the .test_durations file from a full local suite run (3h17m serial, 5,667 passed / 91 skipped, Python 3.14) and enables least_duration splitting. The count-balanced shards ran 3m/52m/2m/31m; the wall-clock bound was the 52m shard. Duration balancing targets ~22m per shard — this PR's own run is the benchmark.

The durations file goes stale gracefully (new tests split by count within groups); refresh it opportunistically from future local full runs.

🤖 Generated with Claude Code

Commits the .test_durations file captured from a full local 3h17m
suite run (5,667 passed / 91 skipped on Python 3.14) and switches
pytest-split to least_duration splitting. The count-balanced shards
were lumpy (3m/52m/2m/31m); duration balancing targets ~22m per shard.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
social-security-model Ready Ready Preview Aug 18, 2026 11:12am

Request Review

MaxGhenis and others added 2 commits August 18, 2026 07:10
least_duration scattered the heavy census modules across shards, making
every shard pay their module-scoped fixture setup (39-55m per shard,
~2x total compute). duration_based_chunks balances cumulative duration
over contiguous collection order, keeping expensive modules intact.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@MaxGhenis
MaxGhenis merged commit ce6a1fc into master Aug 18, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant