import type { CalibrationVerdict, CheckPhase, Rule, Thresholds, ToolCall } from "oh-my-plumb-schema"; import type { ReplayCall } from "./replay.js"; export declare const MIN_CALIBRATION_STATES = 5; export type CalibrationSummary = { hunks: number; median: number; min: number; max: number; fired: number; verdict: CalibrationVerdict; }; /** Decisive rules answer near 0 or near 1 on real hunks. Weak ones sit in the middle. Noisy ones fire on most. */ export declare const summarizeCalibration: (probabilities: readonly number[], thresholds: Thresholds) => CalibrationSummary; /** What a judge scores one rule on one state: the same numbers a hunk contributes. */ export type RuleProbability = { ruleId: string; probability: number; }; export type ToolCallJudge = (call: ToolCall, phase: CheckPhase) => Promise; /** * One sample per rule per recorded call, the tool-call twin of calibrate's hunk * loop. The judge picks rules by phase and tool scope, so a rule only scores the * calls it could actually have seen, and summarizeCalibration reads the samples * unchanged. */ export declare const collectToolCallSamples: (calls: readonly ReplayCall[], rules: readonly Rule[], judge: ToolCallJudge, progress: (label: string) => void) => Promise>; //# sourceMappingURL=calibration.d.ts.map