Skip to content
Tracon

TraconLoopUnsatisfiedException

Namespace Tracon · Assembly Tracon.Abstractions.dll

Thrown when a harness loop reaches its iteration ceiling while a criterion still asks for another iteration, and its LoopSettings.OnExhausted is LoopOutcome.FailRun.

public sealed class TraconLoopUnsatisfiedException : TraconException, ISerializable
Inheritance
object ← Exception ← TraconException ← TraconLoopUnsatisfiedException
Implements
ISerializable
Inherited Members
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()

The run fails with error type loop_unsatisfied, classified as RunErrorClass.LoopUnsatisfied. A workflow that runs the agent stops at that node: the response no criterion accepted does not reach the next one.

The message names the agent, the number of iterations and the kind of the criterion that was not satisfied. It never carries the model’s response or the criterion’s feedback: both are free-form text written for the model, and the error is stored with the run and shown to clients.

Creates a new error.

public TraconLoopUnsatisfiedException()

Creates a new error.

public TraconLoopUnsatisfiedException(string message)

message string

The error message. Must not carry the response or the feedback text.

TraconLoopUnsatisfiedException(string, Exception)

Section titled “ TraconLoopUnsatisfiedException(string, Exception)”

Creates a new error.

public TraconLoopUnsatisfiedException(string message, Exception innerException)

message string

The error message. Must not carry the response or the feedback text.

innerException Exception

The underlying error.

The stable value written to TraconException.ErrorType.

public const string LoopUnsatisfiedErrorType = "loop_unsatisfied"

string

Gets the name of the agent whose loop was not satisfied.

public string? AgentName { get; init; }

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.

Gets the number of iterations the loop ran.

public int Iterations { get; init; }

int

Gets the kind of the criterion that still asked for another iteration.

public string? UnsatisfiedCriterion { get; init; }

string?