diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml index 8a53d195..e40d5ccd 100644 --- a/.github/workflows/fuzz.yml +++ b/.github/workflows/fuzz.yml @@ -5,6 +5,7 @@ on: - v*.x schedule: - cron: '11 15 * * *' # every day at 15:11 UTC + workflow_dispatch: {} name: Fuzz env: FUZZ_CORPUS_URL: 'https://jxl-oxide-fixtures.tirr.dev/fuzz-corpus.tar.zst' @@ -61,8 +62,15 @@ jobs: -max_len=4096 \ -timeout=5 \ -max_total_time=1200 + - name: Minimize corpus + id: minimize + run: | + cargo fuzz cmin libfuzzer-decode -- \ + -max_len=8192 \ + -timeout=5 \ + -max_total_time=600 - uses: actions/upload-artifact@v4 - if: ${{ !cancelled() && steps.fuzz.outcome == 'failure' }} + if: ${{ !cancelled() && (steps.fuzz.outcome == 'failure' || steps.minimize.outcome == 'failure') }} with: name: fuzz-artifacts path: fuzz/artifacts/