GraderVerdict = Literal['satisfied', 'needs_revision', 'failed']Verdict the grader sub-agent emits via structured output.
satisfied: every criterion passes.needs_revision: at least one criterion fails; loop continues.failed: the rubric itself is malformed or impossible to evaluate
against the transcript.