Skip to content
Tracon

EvalRunDiffUnavailableException

Namespace Tracon · Assembly Tracon.Abstractions.dll

Thrown by IEvalStore.DiffRunsAsync when two eval runs exist but cannot be compared.

public sealed class EvalRunDiffUnavailableException : TraconException, ISerializable

objectExceptionTraconExceptionEvalRunDiffUnavailableException

ISerializable

TraconException.ErrorType, Exception.GetBaseException(), Exception.ToString(), Exception.GetType(), Exception.TargetSite, Exception.Message, Exception.Data, Exception.InnerException, Exception.HelpLink, Exception.Source, Exception.HResult, Exception.StackTrace, object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

This is thrown rather than answered with an empty EvalRunDiff on purpose. An empty diff reads as “nothing changed”, which turns a CI gate green — the worst possible failure mode for a regression check. A caller that cannot compare must be forced to say so.

The message is written for an operator and is not translated (server responses carry one language).

Creates a new error.

public EvalRunDiffUnavailableException()

Creates a new error.

public EvalRunDiffUnavailableException(string message)

message string

The error message.

EvalRunDiffUnavailableException(string, Exception)

Section titled “ EvalRunDiffUnavailableException(string, Exception)”

Creates a new error.

public EvalRunDiffUnavailableException(string message, Exception innerException)

message string

The error message.

innerException Exception

The underlying error.

EvalRunDiffUnavailableException(EvalRunDiffUnavailableReason, string)

Section titled “ EvalRunDiffUnavailableException(EvalRunDiffUnavailableReason, string)”

Creates a new error that states why the comparison is impossible.

public EvalRunDiffUnavailableException(EvalRunDiffUnavailableReason reason, string message)

reason EvalRunDiffUnavailableReason

Why the two runs cannot be compared.

message string

The error message.

The stable value written to TraconException.ErrorType.

public const string EvalRunDiffUnavailableErrorType = "eval_run_diff_unavailable"

string

Gets the stable error type name written to the run record.

public override string ErrorType { get; }

string

Defaults to the full name of the exception type, so today’s behaviour does not change. A derived type overrides this member when the record has to be machine readable — for example TraconContentFilteredException writes content_filtered. Reports and alert rules can rely on this stable name instead of an assembly name.

The value is written to RunError.Type and carries no secret.

Why the two runs cannot be compared.

public EvalRunDiffUnavailableReason Reason { get; }

EvalRunDiffUnavailableReason