Skip to content

Prove in CI that Stryker scores a load-breaking mutant as killed #856

Closed

Description

@blafourcade

What happens

#852 makes Stryker count a test file that fails to load as a failed test, through a vitest reporter. The suite proves the reporter's transform and what a real vitest run hands a Stryker-style collection, but not the last step: that Stryker itself then scores the mutant Killed. Only the mutation scopes' scores show it, and only indirectly.

Stryker cannot be configured out of this. @stryker-mutator/vitest-runner 10.0.0, the latest release, still builds results from collected tests only (vitest-test-runner.js:171-172); its options are dir, related and configFile; ignoreStatic drops such mutants rather than killing them. So a runner or vitest upgrade that bypasses the reporter would bring the false survivors back silently.

Expected

A mutation scope whose only mutant stops a module from loading, with a floor of 100. If Stryker ever reports that mutant as anything but Killed, the scope fails. It runs whenever the harness changes, so on every Stryker or vitest upgrade.

Activity

  1. added theissue type on Sep 11, 2026
  2. moved this from Ideation to In Progress in AIDD Roadmapon Sep 11, 2026
  3. moved this from In Progress to In review in AIDD Roadmapon Sep 11, 2026
  4. added a commit that references this issue on Sep 11, 2026
    596967b
  5. moved this from In review to Done in AIDD Roadmapon Sep 11, 2026
  6. closed this as completedby moving to Done in AIDD Roadmapon Sep 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Priority

    Medium

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions