The static call I replaced with an injected dependency

A static helper called from forty places, and a test that needed it to return something different.

// before
$rate = TaxRates::for($order->country);

// after
public function __construct(private TaxRates $rates) {}

$rate = $this->rates->for($order->country);

// the static method stayed for one release, delegating
// to a container-resolved instance, so the forty call
// sites could be moved in batches rather than at once.

Keeping the static as a delegating shim is what makes a change like this reviewable — forty call sites in one commit is a diff nobody reads. The shim is also the thing that will still be there in three years if nobody removes it, so it went in with a deprecation attribute and a ticket, and it was removed six weeks later, which is faster than usual.