map(fn ($result): string => (string) $result->title)->all(); } it('keeps retired tenant resources out of global search', function (): void { $active = ManagedEnvironment::factory()->active()->create(['name' => 'Lifecycle Active']); [$user, $active] = createUserWithTenant(tenant: $active, role: 'owner'); $onboarding = ManagedEnvironment::factory()->onboarding()->create([ 'workspace_id' => (int) $active->workspace_id, 'name' => 'Lifecycle Onboarding', ]); $draft = ManagedEnvironment::factory()->draft()->create([ 'workspace_id' => (int) $active->workspace_id, 'name' => 'Lifecycle Draft', ]); $archived = ManagedEnvironment::factory()->archived()->create([ 'workspace_id' => (int) $active->workspace_id, 'name' => 'Lifecycle Archived', ]); createUserWithTenant(tenant: $onboarding, user: $user, role: 'owner'); createUserWithTenant(tenant: $draft, user: $user, role: 'owner'); createUserWithTenant(tenant: $archived, user: $user, role: 'owner'); $this->actingAs($user); Filament::setCurrentPanel('admin'); Filament::setTenant(null, true); Filament::bootCurrentPanel(); session()->put(WorkspaceContext::SESSION_KEY, (int) $active->workspace_id); $results = ManagedEnvironmentResource::getGlobalSearchResults('Lifecycle'); expect(ManagedEnvironmentResource::canGloballySearch())->toBeFalse() ->and(tenantSearchTitles($results))->toBe([]); }); it('keeps first-slice taxonomy resources out of global search', function (): void { expect(OperationRunResource::canGloballySearch())->toBeFalse() ->and(EvidenceSnapshotResource::canGloballySearch())->toBeFalse() ->and(BaselineSnapshotResource::canGloballySearch())->toBeFalse() ->and(EnvironmentReviewResource::canGloballySearch())->toBeFalse(); });