import { BaseAgent } from "./base.js"; export declare enum ValidationSeverity { PASS = "pass", WARNING = "warning", CONCERN = "concern", FAIL = "fail" } export interface ValidationWarning { category: string; description: string; severity: ValidationSeverity; } export interface FixSuggestion { category: string; issue: string; suggestion: string; priority: "high" | "medium" | "low"; autoFixable: boolean; } export interface ValidationResult { warnings: ValidationWarning[]; passed: boolean; severity: ValidationSeverity; fixSuggestions?: FixSuggestion[]; details?: { state: { passed: boolean; severity: ValidationSeverity; warnings: ValidationWarning[]; fixSuggestions: FixSuggestion[]; }; hooks: { passed: boolean; severity: ValidationSeverity; warnings: ValidationWarning[]; fixSuggestions: FixSuggestion[]; }; timeline: { passed: boolean; severity: ValidationSeverity; warnings: ValidationWarning[]; fixSuggestions: FixSuggestion[]; }; }; } /** * Validates Settler output by comparing old and new truth files via LLM. * Catches contradictions, missing state changes, and temporal inconsistencies. * * Uses a minimal verdict protocol instead of requiring structured JSON: * Line 1: PASS or FAIL * Remaining lines: free-form warnings (one per line, optional category prefix) */ export declare class StateValidatorAgent extends BaseAgent { get name(): string; validate(chapterContent: string, chapterNumber: number, oldState: string, newState: string, oldHooks: string, newHooks: string, language?: "zh" | "en"): Promise; private performMultiRoundValidation; private getBaseSystemPrompt; private getContextPrompt; private validateStateRound; private validateHooksRound; private validateTimelineRound; private parseRoundResult; private mapSeverity; private combineValidationResults; private computeDiff; private parseResult; private tryParseJsonResult; private tryParseExactJsonResult; } //# sourceMappingURL=state-validator.d.ts.map