onQueue('provisioning'); } public function handle(HostLoadSeries $load): void { // Who counts as collectable lives on the model, in one place: this job // and the host page both read it, and when they disagreed, opening a // host mid-onboarding scanned the whole fleet and still left its tiles // empty. $hosts = Host::query()->collectable()->get(); foreach ($hosts as $host) { // collect() logs its own failures and never throws: one unreachable // host must not stop the collection for the rest of the fleet. $load->collect($host); } } }