Incremental execution

Gooze caches mutation results and skips unchanged files on subsequent runs. Use --no-cache to force a full re-test.

Related pages: Reports and gooze run.

Output directory -o/--output

Choose where reports are written. This is also where the incremental cache lives.

gooze run -o .gooze-reports ./...

Reports are written as one YAML per run (<hash>.yaml) plus an index (_index.yaml).

OCI reports (ORAS)

Store and retrieve reports as OCI artifacts (e.g. in GHCR) so CI and teammates can reuse baseline results.

This is an advanced workflow. You need the oras CLI installed.

# create/update local reports
gooze run -o .gooze-reports ./...

# package and push
tar -C .gooze-reports -czf gooze-reports.tgz .
oras push ghcr.io/your-org/your-repo/gooze-reports:main \
  gooze-reports.tgz:application/gzip

# later: pull and restore
rm -rf /tmp/gooze-reports-oci && mkdir -p /tmp/gooze-reports-oci
oras pull ghcr.io/your-org/your-repo/gooze-reports:main -o /tmp/gooze-reports-oci
rm -rf .gooze-reports && mkdir -p .gooze-reports
tar -C .gooze-reports -xzf /tmp/gooze-reports-oci/gooze-reports.tgz

# incremental run uses restored cache
gooze run -o .gooze-reports ./...