Skip to content
Tracon

EvalCaseDraft

Namespace Tracon · Assembly Tracon.Abstractions.dll

Carrier for adding a single EvalCase.

public sealed record EvalCaseDraft : IEquatable<EvalCaseDraft>
Inheritance
object ← EvalCaseDraft
Implements
IEquatable<EvalCaseDraft>
Inherited Members
object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
public EvalCaseDraft()

Text given to the model as extra context.

public string? Context { get; init; }

string?

The agent receives it through the document channel, ahead of EvalCaseDraft.Query; see EvalCase.Context. A promoted case stores the source run’s document channel blocks here verbatim.

The expected output.

public string? ExpectedOutput { get; init; }

string?

The expected tool calls. See EvalCase.ExpectedToolCalls.

public IReadOnlyList<EvalExpectedToolCall> ExpectedToolCalls { get; init; }

IReadOnlyList<EvalExpectedToolCall>

Values for the target agent’s AgentDefinition.Parameters schema. null for an agent that declares no parameters. See EvalCase.Parameters.

public IReadOnlyDictionary<string, string>? Parameters { get; init; }

IReadOnlyDictionary<string, string>?

A promoted case copies the values the source run recorded (RunInputRecord.Parameters, defaults included), so the case is bound with what the production run was told. An IEvalStore writes them like the case’s other fields; one that drops them leaves a promoted case of a parameterized agent failing on a missing value, or running on a default the run never used.

The query text sent to the agent.

public required string Query { get; init; }

string

The reason for promotion. null for hand-added cases.

public EvalCaseSource? SourceKind { get; init; }

EvalCaseSource?

The run the case was generated from. null for hand-added cases.

public Guid? SourceRunId { get; init; }

Guid?

public override bool Equals(object? obj)

obj object?

bool

public bool Equals(EvalCaseDraft? other)

other EvalCaseDraft?

bool

public override int GetHashCode()

int

public override string ToString()

string

operator ==(EvalCaseDraft?, EvalCaseDraft?)

Section titled “ operator ==(EvalCaseDraft?, EvalCaseDraft?)”
public static bool operator ==(EvalCaseDraft? left, EvalCaseDraft? right)

left EvalCaseDraft?

right EvalCaseDraft?

bool

operator !=(EvalCaseDraft?, EvalCaseDraft?)

Section titled “ operator !=(EvalCaseDraft?, EvalCaseDraft?)”
public static bool operator !=(EvalCaseDraft? left, EvalCaseDraft? right)

left EvalCaseDraft?

right EvalCaseDraft?

bool