Run mutation testing only on release PRs and auto-create blocker issues for surviving mutants #336
Labels
No labels
adr
automated
bug
chore
dependencies
documentation
enhancement
epic
github-actions
P1-high
P2-medium
P3-low
release
research
rust
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jwilger/eventcore#336
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Mutation testing (
cargo mutants) currently runs as part of the normal development workflow, but it's expensive and doesn't need to gate every PR. Meanwhile, surviving mutants that slip into a release represent real coverage gaps that should be tracked and resolved.Desired Behavior
Remove mutation testing from regular PR CI — it's too slow for per-PR feedback and adds noise during active development.
Add mutation testing to the release PR workflow — when a release PR is created (by release-please or equivalent), run
cargo mutantsas a required check.Block the release if any mutants survive — the mutation testing check must pass with zero surviving mutants for the release PR to merge.
Auto-create GitHub issues for surviving mutants — when mutation testing finds survivors, automatically create one issue per surviving mutant (or grouped by file/function) with:
P0-critical+bugContext
This project requires 100% mutant kill rate — zero surviving mutants. Running mutation testing on every PR is expensive and often irrelevant for small changes. Moving it to the release gate ensures coverage gaps are caught before shipping while keeping the development feedback loop fast.
Acceptance Criteria
P0-criticalissues with actionable details