/**
 * promptfoo-grader-output-legacy.ts — Zod schema for the Phase 1
 * free-prose grader-output shape, used by historical-report rendering
 * paths.
 *
 * READ-ONLY: invoked only by historical-report rendering paths through
 * Phase 7 (GRAD-06 cutover). Reports are immutable events — once a
 * Report is written to Content Lake, the structured grader-judgment
 * shape it captures cannot be back-filled. The legacy schema exists so
 * pre-Phase-3 reports continue to deserialize cleanly.
 *
 * Live grader output that fails the strict {@link GraderJudgmentSchema}
 * parse must NOT fall back to this schema. Drop to
 * `failureMode: "unclassified"` instead. Strict and legacy schemas are
 * deliberate siblings, not a legacy/canonical pair to consolidate.
 *
 * The schema asserts `satisfies z.ZodType<LegacyGraderJudgment>` against
 * the canonical domain type in
 * `packages/core/src/types/legacy-grader-judgment.ts` (D0045 / W0187) —
 * drift between schema and type is a build error. The domain type is
 * authored independently in `@sanity/ailf-core`; this file authors ONLY
 * the schema and never derives the domain type from the schema itself
 * (no schema-derived self-reference allowed by D0045).
 *
 * @see docs/decisions/D0045-type-architecture-and-contract-enforcement.md
 * @see ../promptfoo-grader-output.ts — the strict (live-path) sibling
 * @see docs/design-docs/actionability-ladder/03-structured-grader-judgments.md
 *      §"Backwards compatibility"
 */
import { z } from "zod";
/**
 * Canonical schema for {@link LegacyGraderJudgment}. Mirrors the Phase 1
 * superset core (`taskId`, `modelId`, `dimension`, `reason`, `score`,
 * optional `outputFailure`). NO GRAD-02 additive fields — those are by
 * construction absent on pre-Phase-3 output.
 *
 * Intentionally NOT `.strict()` — pre-Phase-3 reports may carry stray
 * keys; the legacy parser tolerates them so historical-report rendering
 * keeps working through the GRAD-06 cutover.
 */
export declare const LegacyGraderJudgmentSchema: z.ZodObject<{
    taskId: z.ZodString;
    modelId: z.ZodString;
    dimension: z.ZodString;
    reason: z.ZodString;
    score: z.ZodNumber;
    outputFailure: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type { LegacyGraderJudgment } from "../../../_vendor/ailf-core/index.d.ts";
