import { type DiagnosticId } from "./diagnostic-ids.js"; import type { Diagnostic, Finding, RepairConstraint, VerificationStep } from "./types/diagnostics.js"; interface CatalogFindingDefinition { code: DiagnosticId; title: string; category: Finding["category"]; severity: Finding["severity"]; confidence: Finding["confidence"]; whyItMatters: string; remediation: string; repairConstraints: readonly RepairConstraint[]; verificationSteps: readonly VerificationStep[]; llmHint: string; } type CatalogFindingDefinitionRegistry = { readonly [Definition in Definitions[number] as Definition["code"]]: Definition; }; export declare const CATALOG_FINDING_DEFINITIONS: CatalogFindingDefinitionRegistry; export declare const CATALOG_FINDING_DIAGNOSTIC_CODES: readonly ["META-INVALID-STATUS", "META-INVALID-LAST-REVIEWED-AT", "META-INVALID-EXPIRES-AT", "META-INVALID-REVIEW-CYCLE", "META-INVALID-RENMA-FRONTMATTER", "META-INVALID-STATUS-CHANGED-AT", "META-SUSPENDED-STATUS-METADATA-INCOMPLETE", "META-REQUIRED-SUSPENDED-DEPENDENCY", "META-OPTIONAL-SUSPENDED-DEPENDENCY", "META-REVOKED-STATUS-METADATA-INCOMPLETE", "META-REQUIRED-REVOKED-DEPENDENCY", "META-OPTIONAL-REVOKED-DEPENDENCY", "META-FRONTMATTER-TOO-LARGE", "META-LIST-ITEM-TOO-LONG", "META-CONTEXT-MISSING-WHEN-TO-USE", "META-CONTEXT-MISSING-WHEN-NOT-TO-USE", "META-CONTEXT-PLACEHOLDER-USAGE-BOUNDARY", "META-MISSING-ID", "META-POLICY-REQUIRED-FIELD-MISSING", "META-UNKNOWN-DEPENDENCY", "META-INACTIVE-DEPENDENCY"]; /** * Resolve a stable catalog diagnostic's built-in scan-Finding severity without * requiring that a repository happen to emit the diagnostic. Undefined means * the producer can use more than one built-in severity for the same ID. */ export declare function catalogDiagnosticDefaultFindingSeverity(diagnosticId: string): Finding["severity"] | undefined; /** Convert catalog diagnostics by stable producer identity, never by prose. */ export declare function catalogDiagnosticFindings(diagnostics: readonly Diagnostic[]): Finding[]; export {};