You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
mutation-gate: remove the 3 Stryker directives re-added upstream in gemini.ts (#2033) after #2054's evidence snapshot #2147
#2054 removes every Stryker suppression directive that existed when its evidence snapshot was taken (38 directives / 9 files / 105 mutants, Closes: #2060). While refreshing #2054 onto upstream/main (05d01f33d) three new directives appeared upstream that were added after that snapshot:
File:line
Mutators suppressed
Claim in the directive
src/api/providers/gemini.ts:183
Regex,LogicalOperator,ConditionalExpression
equivalent mutants — new URL() rejects malformed/out-of-range octets before the check
src/api/providers/gemini.ts:198
ConditionalExpression
equivalent mutants — new URL() rejects non-numeric/out-of-range middle octets
src/api/providers/gemini.ts:647
StringLiteral
completePrompt's catch reads only .message before rethrowing, so the operation argument is unobservable
Origin: e6edad1ef — fix(api): require HTTPS for custom Google Gemini base URLs (CWE-319) (#2033), merged 2026-10-18.
#2054 is evidence-backed: each guarded statement is re-exposed to the real gate pipeline before the directive is deleted, and the survivors are recorded in scripts/stryker-equivalences.json + the PR table. Adding three unbalanced statements without that run would turn a verified cleanup into an unverified one. Keeping it separate also keeps #2054's diff reviewable.
Killed mutants: directive deleted. Surviving equivalents: recorded in scripts/stryker-equivalences.json with the equivalence argument, then the directive deleted.
git grep -n "Stryker disable" -- src scripts returns only the gate's own test fixtures (scripts/stryker-diff.test.mjs), so the "no directives in source" invariant holds repo-wide.
Activity