import type { OrchestratorConfig } from "./config.js"; import { type CorrectionCandidate, type InstitutionalLoader, type ReplayGate, type ReplayGateResult } from "./correction.js"; import type { InstitutionalWrite } from "./institutional.js"; import type { EmbeddingModel } from "./types.js"; /** * Replays a correction candidate's own scenario -- does asking the original * question now surface the corrected content? -- against an in-memory * overlay of the current institutional corpus with the candidate's mutation * applied, plus a regression check against every previously *applied* * candidate's own scenario, so this mutation can't silently break an * earlier fix. Neither check touches a real provider or persists anything; * the mutation is only ever exercised in this ephemeral overlay before a * human approves it for real. */ export declare class TargetedReplayGate implements ReplayGate { private readonly config; private readonly loadInstitutionalWrites; private readonly listPriorApplied; private readonly embeddingModel?; private readonly maxRegressionScenarios; constructor(config: OrchestratorConfig, loadInstitutionalWrites: InstitutionalLoader, listPriorApplied: () => Promise, embeddingModel?: EmbeddingModel | undefined, maxRegressionScenarios?: number); run(candidate: CorrectionCandidate): Promise; }