/** * Worked example: EXPERIMENTAL confidence calibration from review history. * * Calibration summarizes how often reviewers affirmed an extractor's proposals. * Both outputs below are experimental descriptive statistics (#279), not * validated probabilities or policy: * * 1. `deriveCalibration` reports per-decile affirmation rates and, only when a * decile has enough samples AND a one-sided 95% Wilson lower bound on its * accuracy clears the target, a `suggestedThreshold`. A thin history gets * no threshold at all. Do not feed `suggestedThreshold` into an auto-accept * policy (`autoAcceptMinConfidence` / `minConfidence`) as-is: it is not an * evaluated gate. * * 2. `buildSurveyTrustBundle({ calibration: { experimentalConclusionValue: * true, metrics } })` sets `conclusionConfidence.value` on affirmed claims * to their extractor/field GROUP's affirmation rate. Every affirmed claim in * the group gets the same base rate whatever its own confidence, so it is * not a per-claim probability. Without the experimental flag no value is set. * * Calibration is advisory (ADR 0003 ยง4): it never changes claim status. * * Run: `node dist/examples/calibrated-auto-accept.js` */ export interface CalibratedAutoAcceptResult { /** Threshold from a 60-samples-per-decile history (enough evidence). */ readonly suggestedThreshold: number | undefined; /** Threshold from a 10-samples-per-decile history (withheld: too thin). */ readonly sparseHistoryThreshold: number | undefined; readonly groupAccuracy: number | undefined; /** Values with the experimental opt-in: the group base rate on each claim. */ readonly producedValues: ReadonlyArray; /** Values with `calibration` enabled but no experimental opt-in: none. */ readonly defaultValues: ReadonlyArray; } export declare function runCalibratedAutoAccept(): CalibratedAutoAcceptResult;