Running mutation testing on the diff, not the suite

A full mutation run takes long enough to be a nightly job, and running it on the changed lines makes it usable in a pull request.

$ vendor/bin/infection 
    --git-diff-lines --git-diff-base=origin/main 
    --min-covered-msi=80 --threads=4

# 41 mutants instead of 4,102, and about ninety seconds.

# the nightly run stays, on the whole suite, reporting a
# trend rather than gating anything.

Gating on the diff and trending on the whole is the arrangement that gets adopted, because a full-suite threshold fails on unrelated code the first time somebody touches a legacy file. The diff mode needs the base branch fetched, which in a shallow CI checkout it is not — a fetch depth of zero is the fix and is easy to miss.