Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I3120 — A scheduled mutation run over the declared critical predicates records its survivors as evidence

Declare the critical predicates once in .ai/repo/ci (mesh trust and protocol, guard judge, evidence freshness, finish vacuous-verify, release compatibility). Run cargo-mutants over those files on a schedule or an offload host. Record the run (killed, survived, timeout per mutant) through the existing ledger path, and list the survivors in docs/COVERAGE.md's evidence section.

PŘIPRAVENO wave 0 · p2 · deep-work profile · parallel safe

Part of a-test-fails-when-the-code-is-wrong — The suites that guard critical predicates are shown to fail when those predicates are wrong.

Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I3120 bude přijato.

Cíl

Declare the critical predicates once in .ai/repo/ci (mesh trust and protocol, guard judge, evidence freshness, finish vacuous-verify, release compatibility). Run cargo-mutants over those files on a schedule or an offload host. Record the run (killed, survived, timeout per mutant) through the existing ledger path, and list the survivors in docs/COVERAGE.md's evidence section.

Proč

The owner asked for mutation testing of critical subsystems on 2026-09-11 (c113#16), 2026-09-16 (c158#10, \"coverage theatre\"), and again on 2026-10-17 (c293#2). docs/COVERAGE.md states that the gate does no mutation testing or fault injection. Proposed in ADR 0190 (Mutation testing is scheduled evidence over declared critical predicates, never a gate on every change) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c113#16, chatgpt-majordomus:c139#5, chatgpt-majordomus:c158#10, chatgpt-majordomus:c158#20, chatgpt-majordomus:c293#2, chatgpt-majordomus:c087#1.

Aktuální stav

No mutation tooling in the tree. Adversarial suites exist for the mesh (proptest in mesh/*).

Cílový stav

One scheduled job, its declaration in gates.yaml (not in every plan), and survivors visible with the revision.

Rozsah

  • .ai/repo/ci/gates.yaml
  • .github/workflows
  • docs/COVERAGE.md
  • docs/CLAIMS.yaml
  • .ai/repo/project/intents
  • scripts/ci/evidence-collect
  • scripts/ci/claim-proof-check
  • .ai/repo/evidence/ledger.json
  • test/fixtures/coverage
  • .ai/repo/adrs/0190-mutation-testing-is-scheduled-evidence-over-declared-critical-pr.md

Mimo rozsah

  • Blocking pull requests on mutation score
  • Shell mutation

Závislosti

Žádné. Tento úkol je kořenem grafu.

Kritéria přijetí

  • A recorded run on a named revision lists every mutant of the declared files with its outcome
  • A deliberately weakened predicate in a fixture crate shows as a survivor
  • docs/CLAIMS.yaml gains claim critical-predicates-are-mutated citing the mutation_run_recorded record, and intent criterion critical-predicates-mutated is rebound to that claim
  • The mutation run is started by one command that .ai/repo/ci/gates.yaml declares; a hand run on an offload host records the same execution shape as the scheduled one

Validace

  • scripts/ci/claim-proof-check
  • majordomus plan validate

Požadované důkazy

  • mutation_run_recorded

Důkazy

Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.

Časová osa

zahájeno
—
ověřeno
—
dokončeno
—

Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.

Canonical record: .ai/repo/project/issues/I3120.yaml. Read it back with majordomus plan show I3120.

Prohledává názvy a popisy všech stránek, které tento web publikuje.