# Weekly, and on demand: the slow layers (docs/testing.md). name: scheduled on: schedule: - cron: "17 6 * * 1" workflow_dispatch: jobs: prove: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just prove oracle: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just oracle fuzz: runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: target: [fuzz_journal_line, fuzz_entry_validate, fuzz_op_sequence, fuzz_core_serde, fuzz_store_open, fuzz_store_replay, fuzz_import_csv, fuzz_config_parse] steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just fuzz ${{ matrix.target }} 600 mutants: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just mutants - run: TMPDIR=/dev/shm just mutants-store - if: always() uses: actions/upload-artifact@v4 with: name: mutants path: | mutants.out mutants-store/mutants.out mutants-import: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just mutants-import - run: just mutants-config - if: always() uses: actions/upload-artifact@v4 with: name: mutants-import path: | mutants-import/mutants.out mutants-config/mutants.out mutants-mcp: runs-on: ubuntu-24.04 timeout-minutes: 350 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: just mutants-mcp - if: always() uses: actions/upload-artifact@v4 with: name: mutants-mcp path: mutants-mcp/mutants.out mutants-gui: runs-on: ubuntu-24.04 timeout-minutes: 350 steps: - uses: actions/checkout@v4 - uses: jdx/mise-action@v2 - run: sudo apt-get update && sudo apt-get install -y libxkbcommon-dev libgtk-3-dev - run: just mutants-gui - if: always() uses: actions/upload-artifact@v4 with: name: mutants-gui path: mutants-gui/mutants.out