2026-07-24 17:36:57 +08:00
|
|
|
{
|
|
|
|
|
"$schema": "https://raw.githubusercontent.com/stryker-mutator/stryker-js/master/packages/api/schema/stryker-core.json",
|
|
|
|
|
"testRunner": "vitest",
|
|
|
|
|
"plugins": ["@stryker-mutator/vitest-runner"],
|
2026-07-27 15:37:30 +08:00
|
|
|
"vitest": {
|
|
|
|
|
"configFile": "vitest.stryker-api.config.ts"
|
|
|
|
|
},
|
2026-07-24 17:36:57 +08:00
|
|
|
"mutate": [
|
|
|
|
|
"apps/api/src/lib/ssrf.ts",
|
|
|
|
|
"apps/api/src/lib/object-storage.ts",
|
|
|
|
|
"apps/api/src/lib/encryption.ts",
|
|
|
|
|
"apps/api/src/lib/sentry-scrub.ts",
|
|
|
|
|
"apps/api/src/lib/external-auth-resolver.ts",
|
|
|
|
|
"apps/api/src/lib/audit-integrity.ts",
|
|
|
|
|
"apps/api/src/lib/audit.ts",
|
|
|
|
|
"apps/api/src/lib/settings-policy.ts",
|
|
|
|
|
"apps/api/src/lib/csp.ts",
|
|
|
|
|
"apps/api/src/lib/analytics-allowlist.ts",
|
|
|
|
|
"apps/api/src/lib/analytics-gate.ts",
|
|
|
|
|
"apps/api/src/lib/file-validation.ts",
|
|
|
|
|
"apps/api/src/lib/ocr-limits.ts",
|
|
|
|
|
"apps/api/src/lib/storage-writable.ts",
|
|
|
|
|
"apps/api/src/lib/svg-sanitize.ts",
|
|
|
|
|
"apps/api/src/lib/webhook-delivery.ts",
|
|
|
|
|
"apps/api/src/lib/exiftool.ts",
|
|
|
|
|
"apps/api/src/jobs/connection.ts",
|
|
|
|
|
"apps/api/src/jobs/enqueue.ts",
|
|
|
|
|
"apps/api/src/jobs/queues.ts",
|
|
|
|
|
"apps/api/src/jobs/gdpr-export.ts",
|
|
|
|
|
"apps/api/src/jobs/audit-archive.ts",
|
|
|
|
|
"apps/api/src/jobs/siem-forward.ts",
|
|
|
|
|
"apps/api/src/jobs/alert-evaluator.ts",
|
|
|
|
|
"apps/api/src/jobs/system-jobs.ts"
|
|
|
|
|
],
|
2026-07-27 15:37:30 +08:00
|
|
|
"ignorePatterns": [
|
|
|
|
|
"dist",
|
|
|
|
|
"coverage",
|
|
|
|
|
"reports",
|
|
|
|
|
"out",
|
|
|
|
|
"tmp",
|
|
|
|
|
".turbo",
|
|
|
|
|
".astro",
|
|
|
|
|
".vite",
|
|
|
|
|
".vitepress",
|
|
|
|
|
"__pycache__",
|
|
|
|
|
"test-results",
|
|
|
|
|
"playwright-report",
|
|
|
|
|
"blob-report",
|
|
|
|
|
".stryker-tmp",
|
|
|
|
|
".stryker-tmp-api",
|
|
|
|
|
".stryker-tmp-shared",
|
|
|
|
|
"/data",
|
|
|
|
|
"/docs",
|
|
|
|
|
"/.local-wiki",
|
|
|
|
|
"/.worktrees",
|
|
|
|
|
"/.claude",
|
|
|
|
|
"/.codex",
|
|
|
|
|
"/.superpowers",
|
|
|
|
|
"/.playwright",
|
|
|
|
|
"/.playwright-mcp",
|
|
|
|
|
"/.i18n-batches",
|
|
|
|
|
"/.qa-maps",
|
|
|
|
|
"/.secrets",
|
|
|
|
|
"/.models",
|
|
|
|
|
"/pentest-results",
|
|
|
|
|
"/remotion",
|
|
|
|
|
"/apps/videos",
|
|
|
|
|
"/demo",
|
|
|
|
|
"/apps/api/data",
|
|
|
|
|
"/tests/e2e/screenshots"
|
|
|
|
|
],
|
2026-07-24 17:36:57 +08:00
|
|
|
"incremental": true,
|
|
|
|
|
"incrementalFile": "reports/stryker-api-incremental.json",
|
2026-07-27 15:37:30 +08:00
|
|
|
"reporters": ["html", "clear-text", "progress", "json"],
|
|
|
|
|
"htmlReporter": {
|
|
|
|
|
"fileName": "reports/mutation-api/mutation.html"
|
|
|
|
|
},
|
|
|
|
|
"jsonReporter": {
|
|
|
|
|
"fileName": "reports/mutation-api/mutation.json"
|
|
|
|
|
},
|
|
|
|
|
"thresholds": {
|
|
|
|
|
"high": 80,
|
|
|
|
|
"low": 60,
|
|
|
|
|
"break": null
|
|
|
|
|
},
|
2026-07-24 17:36:57 +08:00
|
|
|
"tempDirName": ".stryker-tmp-api",
|
2026-07-27 15:37:30 +08:00
|
|
|
"cleanTempDir": "always",
|
2026-07-24 17:36:57 +08:00
|
|
|
"ignoreStatic": true,
|
|
|
|
|
"concurrency": 6
|
|
|
|
|
}
|