where('tenant_id', (int) $tenant->getKey()) ->where('report_type', StoredReport::REPORT_TYPE_ENTRA_ADMIN_ROLES) ->latest('id') ->first(); $payload = is_array($report?->payload) ? $report->payload : []; $roles = is_array($payload['roles'] ?? null) ? $payload['roles'] : []; return [ 'dimension_key' => $this->key(), 'state' => $report instanceof StoredReport ? EvidenceCompletenessState::Complete->value : EvidenceCompletenessState::Missing->value, 'required' => true, 'source_kind' => 'stored_report', 'source_record_type' => StoredReport::class, 'source_record_id' => $report instanceof StoredReport ? (string) $report->getKey() : null, 'source_fingerprint' => $report?->fingerprint, 'measured_at' => $report?->updated_at, 'freshness_at' => $report?->updated_at, 'summary_payload' => [ 'role_count' => count($roles), 'roles' => $roles, ], 'fingerprint_payload' => [ 'fingerprint' => $report?->fingerprint, 'role_count' => count($roles), ], 'sort_order' => 30, ]; } }