$entries) { foreach ($entries as $state => $entry) { if ($entry['classification'] !== OperatorStateClassification::Diagnostic) { continue; } if (! in_array($entry['color'], ['warning', 'danger'], true)) { continue; } $violations[] = sprintf('%s:%s => %s', $domain, $state, $entry['color']); } } expect($violations)->toBeEmpty("Diagnostic taxonomy entries must not use warning or danger colors:\n".implode("\n", $violations)); }); it('does not keep overloaded bare labels in the adopted taxonomy slice', function (): void { $forbiddenLabels = ['Blocked', 'Missing', 'Partial', 'Stale', 'Unsupported', 'Warning', 'Safe']; $violations = []; foreach (OperatorOutcomeTaxonomy::all() as $domain => $entries) { foreach ($entries as $state => $entry) { if (! in_array($entry['label'], $forbiddenLabels, true)) { continue; } $violations[] = sprintf('%s:%s => %s', $domain, $state, $entry['label']); } } expect($violations)->toBeEmpty("Overloaded bare operator labels remain in the first-slice taxonomy:\n".implode("\n", $violations)); });