The #[Override] that caught a library rename

A minor version of a library renamed a protected hook method, and the attribute turned a silent behaviour change into a fatal error at load.

final class TurkerDevClient extends VendorClient
{
    #[Override]
    protected function handleResponse(ResponseInterface $r): mixed { /* ... */ }
}

// after composer update:
// Fatal error: TurkerDevClient::handleResponse() has
// #[Override] attribute, but no matching parent method
// exists

// the library's changelog:
//   "internal: renamed handleResponse to processResponse"

Calling it internal is defensible for a protected method and it is a break for anybody who extended the class, which the library encourages in its own documentation. Without the attribute this would have been a deployment where our response handling silently stopped running and the library default applied — which was close enough to correct that it might have taken months to notice.