Repository navigation
docs(ci): correct mutation-gate note (no regression — stryker -c gotcha) + Task 12 spike GO - #4138
Merged
Merged
Conversation
…-concurrency); record Task 12 GO The MUTATION_GATE_STRYKER_REGRESSION.md note shipped in #4134 was WRONG: there is no Stryker 9.6.1 OptionsValidator regression. The false "concurrency must match pattern" failure was operator error — `stryker -c <file>` sets --concurrency, not the config file (which is the positional arg), so concurrency became the string "stryker.conf.json". `npx stryker run` (auto-discovery) validates and runs fine: it instruments 15488 mutants across the 8 modules. Renamed -> MUTATION_GATE_SPIKE_VERDICT.md and rewritten with: - the corrected record + the `-c` CLI gotcha; - the real Task 12 per-test spike verdict (GO, Plan A): a scoped run on open-sse/utils/error.ts killed 86/422 mutants, ALL 86 with a populated `killedBy` resolving to a test file -> per-test attribution works (per-file granularity, as expected for the tap-runner). Onda 2 can use killedBy directly. - the standing Onda-2 blocker is budget (god-files), not tooling.
Contributor
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Merged
tkgo11
pushed a commit
to tkgo11/OmniRoute
that referenced
this pull request
Sep 23, 2026
…-concurrency); record Task 12 GO (cheaper-inference#4138) The MUTATION_GATE_STRYKER_REGRESSION.md note shipped in cheaper-inference#4134 was WRONG: there is no Stryker 9.6.1 OptionsValidator regression. The false "concurrency must match pattern" failure was operator error — `stryker -c <file>` sets --concurrency, not the config file (which is the positional arg), so concurrency became the string "stryker.conf.json". `npx stryker run` (auto-discovery) validates and runs fine: it instruments 15488 mutants across the 8 modules. Renamed -> MUTATION_GATE_SPIKE_VERDICT.md and rewritten with: - the corrected record + the `-c` CLI gotcha; - the real Task 12 per-test spike verdict (GO, Plan A): a scoped run on open-sse/utils/error.ts killed 86/422 mutants, ALL 86 with a populated `killedBy` resolving to a test file -> per-test attribution works (per-file granularity, as expected for the tap-runner). Onda 2 can use killedBy directly. - the standing Onda-2 blocker is budget (god-files), not tooling.
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.
Corrige um achado ERRADO que mergeei no #4134 + registra o veredito real do spike Task 12.
O que estava errado
O #4134 incluiu
docs/ops/MUTATION_GATE_STRYKER_REGRESSION.mdafirmando uma "regressão daOptionsValidatordo Stryker 9.6.1" que farianpx stryker runfalhar na validação de config. Isso está errado — não há regressão. Foi erro meu de CLI:npx stryker run -c stryker.conf.json→ no CLI do Stryker,-cé--concurrency(não config-file). Isso setavaconcurrency = "stryker.conf.json"(string), causando o falsoconcurrency must match pattern. O Stryker carregava o config real via auto-discovery, então parecia config quebrado.OptionsValidatornumnpm cilimpo isolado:options.concurrency === "stryker.conf.json". Rodando sem-c,npx stryker run --dryRunOnlyvalida e instrumenta 15488 mutantes nos 8 módulos — gate saudável.Veredito real do spike Task 12 — GO (Plan A,
killedBy)Rodei um spike escopado em
open-sse/utils/error.ts(2 testes cobridores), CLI correto (npx stryker run <config-posicional>), toolchain v3.8.29 (Stryker 9.6.1 + ajv 8.18.0,perTest, tap-runner):killedBypopulado (86/86), com seçãotestFilesresolvível → atribuição por-teste FUNCIONA (granularidade = arquivo-de-teste, esperado p/ tap-runner). A Onda 2 pode usarkilledBydireto.Mudança
git mv MUTATION_GATE_STRYKER_REGRESSION.md → MUTATION_GATE_SPIKE_VERDICT.md, reescrito com: a correção + o gotcha do-c, o veredito GO com os números, e a nota de que o bloqueador real da Onda 2 é budget (god-files dominam ~⅔ dos 15488 mutantes; nightly conc=4 estourou 180min), não tooling — alvo dos splits da Onda 3.Docs-only. O fix de base-ref do #4134 (correto) permanece intocado.