Skip to content

DescribeEvalOptions

Suite-level configuration for a harness-backed eval block.

const options: DescribeEvalOptions<
string,
{ status: "approved" | "denied" },
{ expected: { status: "approved" | "denied" } }
> = {
harness: refundHarness,
judges: [ToolCallJudge(), StructuredOutputJudge()],
judgeThreshold: 1,
};

TInput = unknown

TOutput extends JsonValue | undefined = JsonValue | undefined

TMetadata extends HarnessMetadata = HarnessMetadata

THarness extends Harness<TInput, TOutput, TMetadata> = Harness<TInput, TOutput, TMetadata>

harness: THarness

Harness used for every explicit run(...) call in the suite.


optional judgeHarness?: JudgeHarness

Optional judge-side harness used only by judges that call ctx.runJudge(...).


optional judges?: Judge<JudgeContext<TInput, TOutput, TMetadata, THarness>>[]

Automatic judges applied after each successful run(...).


optional judgeThreshold?: number | null

Passing threshold for automatic suite-level judges. null disables fail-on-score.


optional skipIf?: () => boolean

Skips the entire eval suite when the predicate returns true.

boolean