} */ public function company(Tenant $company): array { $stored = array_key_exists('intelligence_policy', $company->getAttributes()) ? $company->intelligence_policy : null; return $stored ?? ['revision' => 0, 'configured' => false, 'procurement_brief' => true, 'people_brief' => true]; } /** @param array $input * @return array{revision:int,configured:bool,procurement_brief:bool,people_brief:bool,ai_plan?:array} */ public function next(Tenant $company, array $input): array { $values = Validator::make($input, ['procurement_brief' => 'required|boolean', 'people_brief' => 'required|boolean'])->validate(); return [...$this->company($company), 'revision' => $this->company($company)['revision'] + 1, 'configured' => true, 'procurement_brief' => (bool) $values['procurement_brief'], 'people_brief' => (bool) $values['people_brief']]; } }