Skip to content

[CI] Repair Stryker.NET config schema and prove backend mutation lane #1500

Description

@Chris0Jeky

Context

This is the bounded runway-repair child of #1275. All 16 recorded scheduled Mutation Testing runs have failed; the latest two exact logs (30191449339 and 29676656172) show the same deterministic backend failure. Stryker.NET 4.16.0 rejects ignored-methods and excluded-mutations; its schema expects ignore-methods and ignore-mutations. Frontend mutation completed successfully in both runs.

Required main CI and CodeQL are green. This lane is advisory, but it has never produced trustworthy backend mutation evidence and now satisfies the repository's two-strikes runway rule.

Refs #1275.

Scope boundary

Repair and prove the executable backend mutation lane only. Do not decide whether the weekly schedule stays, is disabled, or changes cadence; #1275 retains that strategic keep/kill decision and its ADR. Preserve frontend mutation behavior.

Acceptance criteria

  • Pin the intended Stryker.NET version through a checked-in tool contract or exact-version install; the workflow must not consume unpinned latest.
  • Replace the invalid backend config keys with names supported by the pinned Stryker.NET schema while preserving their intended empty-list semantics.
  • Add a fast deterministic regression/preflight that rejects the obsolete keys before a long mutation run starts.
  • Run a backend-only workflow dispatch on the PR's exact head through mutation execution and produce a non-empty Stryker report artifact; record the run URL and SHA.
  • Preserve the frontend mutation job and the existing manual-dispatch inputs.
  • Record this real repeated failure and its resolution in docs/agentic/failure_ledger.jsonl, regenerate FAILURE_LEDGER.md, and update current testing/status evidence where reality changes.
  • Pass workflow lint, relevant local tests/docs gates, exact-head Required CI, CI Extended, and CodeQL.
  • Complete two independent exact-head adversarial reviews, triage every human/bot comment, and post finding-to-fix evidence.

Merge boundary

This touches a workflow/security gate and requires designated maintainer/CODEOWNER review. After that review and every current exact-head gate, merge execution follows the repository authority and canonical global pipeline; an authorized agent may perform it.

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status
    Blocked

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions