/**
 * GraderJudgment core domain types — canonical shapes for structured
 * grader output (Doc 03, GRAD-02).
 *
 * Authored INDEPENDENTLY of any Zod schema (D0045 doctrine — Plan 02's
 * `GraderJudgmentSchema` `satisfies` against this type, not the other
 * way around). A tautological `satisfies z.ZodType<z.infer<typeof
 * GraderJudgmentSchema>>` is forbidden.
 *
 * Phase 1 retained the existing pipeline core (`taskId`, `modelId`,
 * `dimension`, `reason`, `score`, `outputFailure?`) as required for
 * backward compat with Phase 0 callers (Doc 03 §"existing, unchanged")
 * and added the GRAD-02 additive fields (`judgmentId`, `subJudgments`,
 * `docCitations`, `failureMode`, `confidence`,
 * `hallucinationCheckedAgainst`, `metadata`) as additive in Phase 1;
 * required from Phase 3 GRAD-05.
 *
 * Phase 3 GRAD-05 has flipped the additive fields to required (this
 * file) and the corresponding Zod schema in
 * `packages/eval/src/adapters/grader-outputs/promptfoo-grader-output.ts`
 * is `.strict()` with `graderJudgmentsVersion = "1.0.0"`. The
 * read-only legacy parser at `…/legacy/promptfoo-grader-output-legacy.ts`
 * (against `LegacyGraderJudgment`) is the named consumer for already-
 * stored historical reports through GRAD-06 cutover.
 *
 * @see docs/decisions/D0049-shared-confidence-contract.md
 * @see docs/decisions/D0052-judgment-ref-granularity.md
 * @see docs/design-docs/actionability-ladder/03-structured-grader-judgments.md
 */
export {};
