Files
OmniRoute/.github/workflows/nightly-mutation.yml
Diego Rodrigues de Sa e Souza 9f5e651b42 ci(quality): wire Stryker mutation testing as advisory nightly (Fase 7 Task 11) (#3898)
Integrated into release/v3.8.26
2026-06-15 14:11:06 -03:00

38 lines
1.1 KiB
YAML

name: Nightly Mutation
on:
schedule:
- cron: "17 3 * * *"
workflow_dispatch:
permissions:
contents: read
jobs:
stryker:
name: Stryker mutation testing (8 critical modules — advisory)
runs-on: ubuntu-latest
# Mutation testing is expensive (~200-500 mutants, 30-90 min). It runs only
# on the nightly schedule / manual dispatch, never on PRs. The score is NOT
# yet enforced as a ratchet (wired in a later INT phase) — for now the job
# just produces the HTML/JSON report and uploads it as an artifact.
timeout-minutes: 120
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "24"
cache: npm
- run: npm ci
- name: Run Stryker (advisory)
id: stryker
continue-on-error: true
run: npx stryker run
- name: Upload mutation report
if: always()
uses: actions/upload-artifact@v4
with:
name: mutation-report
path: reports/mutation/
if-no-files-found: warn
retention-days: 14