import type { ClosureReason } from '../../agent/trace/index.js'; import type { EvalCase, FailurePattern } from '../schemas.js'; import { type ContractProbeResult } from './contracts.js'; export declare const REPLAY_CHECK_PREFIX = "replay:"; export declare const REPLAY_CHECK_REPRODUCES = "replay:fixture-reproduces-pattern"; export declare const REPLAY_CHECK_NEUTRALIZED = "replay:guardrail-neutralizes-recorded-loop"; export declare const REPLAY_CHECK_CLOSURE_REPRODUCES = "replay:fixture-reproduces-closure-anomaly"; export declare const REPLAY_CHECK_CLOSURE_GUIDED = "replay:guardrail-guides-recorded-closure"; export interface LoopDriveResult { trippedAtCall: number | null; callsDriven: number; } export type LoopDriver = (toolName: string, count: number) => Promise; export declare const liveCircuitBreakerDriver: LoopDriver; export interface ReplayContext { driveLoop?: LoopDriver; buildGuidance?: (reason: ClosureReason) => string | null; } export interface ReplayHandler { patternId: FailurePattern; run: (evalCase: EvalCase, fixtureBytes: Buffer, ctx: ReplayContext) => Promise; } export declare function isReplayNeutralizeCheck(name: string): boolean; export declare function resolveReplayHandler(patternId: FailurePattern): ReplayHandler | undefined; export declare function replaySupportedPatterns(): readonly FailurePattern[];