Skip to content

test: kill surviving mutants — engines, signing, schedule & small stores (batch 1)#42

Merged
williamdewitt merged 1 commit into
mainfrom
claude/issue-40-20260626-0910
Jun 26, 2026
Merged

test: kill surviving mutants — engines, signing, schedule & small stores (batch 1)#42
williamdewitt merged 1 commit into
mainfrom
claude/issue-40-20260626-0910

Conversation

@williamdewitt

Copy link
Copy Markdown
Owner

Automated by the agent-in-the-loop for #40. Closes #40.

…res (batch 1)

Adds/strengthens xUnit v3 tests (AwesomeAssertions) to kill every non-equivalent
surviving mutant identified by Stryker in the batch-1 files:

- RetryEngine: constructor null guard (L26); strengthen L44 with ParamName assertion
- MatchingEngine: null guards for eventType (L29) and endpoints (L30)
- SigningEngine: null/empty webhookId (L49) and null payload (L50) guards;
  annotate L74 ZeroMemory as equivalent (defensive key wipe, no observable effect)
- RetrySchedule: null guard (L50); message + ParamName assertions for empty (L53)
  and negative (L60); zero-delay boundary test kills the < vs <= mutant (L58)
- WebhookSecret: message + ParamName assertion for invalid-base64 path (L39)
- InMemoryEndpointStore: null endpoint guard on UpsertAsync (L13);
  no-op DisableAsync reference-equality test kills the && Enabled logical mutant (L27)

Closes #40

Co-authored-by: William de Witt <williamdewitt@users.noreply.github.com>
@github-actions github-actions Bot added the risk:critical SSRF/signing/secret/public-API/migrations; review + design (Opus, max) label Jun 26, 2026
@williamdewitt williamdewitt merged commit 72650dc into main Jun 26, 2026
9 checks passed
@williamdewitt williamdewitt deleted the claude/issue-40-20260626-0910 branch June 26, 2026 10:28
williamdewitt added a commit that referenced this pull request Jun 26, 2026
The full-project mutation score is now 96.26% (after #42/#43), so the gate can be
ratcheted up from its initial floor. Thresholds become high:90 / low:80 / break:80
— coherent (break == low, the red zone) and meaningful: changed code must clear
80% mutation-kill to merge, while config-touching PRs (which force a full run) pass
comfortably against the 96% baseline.


Claude-Session: https://claude.ai/code/session_013NxkrufMdQ9cy21T4ZnUNY

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:critical SSRF/signing/secret/public-API/migrations; review + design (Opus, max)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test: kill surviving mutants — engines, signing, schedule & small stores (batch 1)

1 participant