subject_type === 'company' && $submission->subject_id !== null) { $subject = $submission->subject; if ($subject instanceof Company) { return $subject; } throw new PurposeSubjectResolutionException( 'supplier_intake', 'subject_not_found', (string) $submission->id, "submission claims company subject {$submission->subject_id} but record is gone", ); } throw new PurposeSubjectResolutionException( 'supplier_intake', 'no_production_request', (string) $submission->id, 'supplier_intake submission has no Company subject — production_request link missing', ); } }