{
  "$schema": "../../node_modules/@stryker-mutator/core/schema/stryker-schema.json",
  "_comment": "Shared Stryker base config for L3 mutation testing (ADR-020). Per-feature stryker.config.json files extend this. Edit a feature's config to widen scope; rarely needs editing here.",
  "testRunner": "vitest",
  "vitest": {
    "configFile": "vitest.config.ts"
  },
  "mutate": [
    "src/entities/**/*.ts",
    "src/application/use-cases/**/*.ts",
    "!**/*.test.ts",
    "!**/*.test.tsx",
    "!**/__factories__/**",
    "!**/__contracts__/**"
  ],
  "thresholds": {
    "high": 90,
    "low": 80,
    "break": 80
  },
  "reporters": ["progress", "html", "json"],
  "htmlReporter": {
    "fileName": "reports/mutation/index.html"
  },
  "jsonReporter": {
    "fileName": "reports/mutation/mutation.json"
  },
  "tempDirName": ".stryker-tmp",
  "cleanTempDir": true,
  "concurrency": 4,
  "timeoutMS": 10000,
  "logLevel": "info",
  "incremental": true,
  "incrementalFile": ".stryker-tmp/incremental.json"
}
