Coverage on changed lines only

A merge gate on the coverage of lines the pull request touched, which is a different and better question.

$ ./bin/coverage-diff --base=origin/main --report=coverage.json
  changed lines:        188
  covered:              171
  uncovered:             17
  coverage of changes: 90.9%

  uncovered lines:
    src/Billing/Refund.php:41-48   an error branch
    src/Http/OrderController.php:88 a guard clause

A global coverage threshold is satisfiable by testing the easy parts and says nothing about the change in front of you. Ninety per cent of changed lines is a question a reviewer can act on, and the seventeen uncovered lines are listed rather than aggregated — which is what makes the gate a prompt rather than an obstacle.