import type { EvaluationContext, EvaluationKind, EvaluationResult, GapFinding, RiskFinding, Recommendation, RequiredAction } from '../contracts'; import type { Verdict } from '../../domain/verdict/verdict'; import type { ResolvedWorkspace } from './workspace-reference-resolver.port'; export interface KindEvaluation { readonly verdict: Verdict; readonly results: Partial; readonly gaps?: readonly GapFinding[]; readonly risks?: readonly RiskFinding[]; readonly recommendations?: readonly Recommendation[]; readonly requiredActions?: readonly RequiredAction[]; } export interface KindEvaluator { readonly kind: EvaluationKind; evaluate(ctx: EvaluationContext, workspace: ResolvedWorkspace): Promise; }