import type { PolicyEvaluationResult } from './policy-evaluation'; /** Read-time reporting contract; persisted evaluator evidence remains unchanged. */ export function policyComparisonDisposition(result: PolicyEvaluationResult): 'misconfigured' | 'not-configured' | undefined { const { baseline, actual, relation } = result.comparator; if (result.baselineState !== 'explicit-recommendation' || !baseline || baseline.kind === 'none' || (baseline.kind === 'text' && !baseline.value.trim()) || result.diagnosticCodes.includes('policy-evaluation-baseline-consensus-conflict') || result.classification !== 'confirmed_configured_deviation' || !['different', 'weaker'].includes(relation)) return undefined; if (result.customerState === 'missing' && (!actual || actual.kind === 'none')) return 'not-configured'; if (result.customerState === 'configured' && actual && actual.kind !== 'none') return 'misconfigured'; return undefined; }