import type { Stimulus, StimulusGraderConfig } from "../../eval/types.js"; import type { GraderInput } from "../types.js"; import { type LlmGradingEvidence } from "./types.js"; export { LLM_GRADING_EVIDENCE } from "./types.js"; export declare const DEFAULT_LLM_GRADING_EVIDENCE: readonly ["trajectory"]; /** Evidence kinds that surface a stimulus's reference (golden) patch to an LLM * judge. `golden_patch` is the patch itself; `diff` equals the patch when the * oracle synthesizes a trajectory from it; `repo` snapshots the workspace after * the oracle applies the patch. Used by the unreferenced-golden-patch lint to * decide whether a judge could consume the patch when the stimulus also * declares `golden_trajectory` (which makes the oracle output the trajectory's * output rather than the patch). */ export declare const PATCH_BEARING_EVIDENCE: readonly ["golden_patch", "diff", "repo"]; export interface LlmEvidenceSelection { evidence: readonly LlmGradingEvidence[]; } export interface LlmEvidenceSelectionError { message: string; index?: number; } export type LlmEvidenceSelectionResult = { ok: true; selection: LlmEvidenceSelection; } | { ok: false; error: LlmEvidenceSelectionError; }; export interface ResolvedLlmEvidence { selection: LlmEvidenceSelection; agentDiff?: string; goldenPatch?: string; repoSnapshot?: string; } export type ResolvedLlmEvidenceResult = { ok: true; evidence: ResolvedLlmEvidence; } | { ok: false; evidence: "config" | LlmGradingEvidence; error: string; }; export declare function parseLlmEvidenceSelection(raw: unknown): LlmEvidenceSelectionResult; export declare function selectionIncludes(selection: LlmEvidenceSelection, item: LlmGradingEvidence): boolean; /** * Handing a judge a golden patch identical to the trajectory output scores the * patch against itself. Oracle produces that equality when it synthesizes a * trajectory from the applied patch. Every delivery path drops such a patch * rather than presenting it as evidence. */ export declare function isCircularGoldenPatch(goldenPatch: string | undefined, trajectoryOutput: string | undefined): boolean; /** * Lenient membership check used before execution. Strict validation happens * later, but a malformed sibling entry must not suppress requested evidence. */ export declare function graderSelectsLlmEvidence(grader: StimulusGraderConfig, item: LlmGradingEvidence): boolean; export declare function stimulusSelectsLlmEvidence(stimulus: Pick, item: LlmGradingEvidence): boolean; export declare function resolveLlmEvidence(input: GraderInput): Promise; export declare function formatLlmEvidenceFailure(failure: Extract): string; //# sourceMappingURL=evidence.d.ts.map