Skip to content
Tracon

TraconErrorTypes

Namespace Tracon · Assembly Tracon.Abstractions.dll

Every machine-readable error code Tracon writes: the type of a failed run, the code of a job the queue failed, and the error.type of an OpenAI-compatible error body.

public static class TraconErrorTypes
Inheritance
object ← TraconErrorTypes
Inherited Members
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

A code is a contract. Run records persist it, the HTTP API returns it as errorType, and a consumer matches on it. A value never changes inside a major version: a new code is a minor change, a removed, renamed or re-purposed code is a major one. The prose around a code may change.

The exception classes keep their own *ErrorType constants. Each is bound to the constant here, so the string is written once. A test pins the list of values; a value that leaves the list is a breaking change.

One kind of value is not in this class: the.NET type name of an unclassified exception (InvalidOperationException, TimeoutException) that a run records as it is. That value is not a code Tracon owns.

An agent source broke its contract (TraconAgentSourceException).

public const string AgentSourceContract = "agent_source_contract"

string

An agent source failed (TraconAgentSourceException).

public const string AgentSourceFailed = "agent_source_failed"

string

An answer could not be recorded.

public const string AnswerNotRecorded = "answer_not_recorded"

string

A tool approval nobody decided expired.

public const string ApprovalExpired = "ApprovalExpired"

string

The run stopped at a tool approval.

public const string ApprovalRequired = "approval_required"

string

A run without a session stopped at a tool approval that nobody can answer.

public const string ApprovalUnanswerable = "approval_unanswerable"

string

A child run ran past its time limit (TraconChildRunTimeoutException).

public const string ChildRunTimeout = "child_run_timeout"

string

An agent definition did not compile (TraconCompilationException).

public const string CompilationFailed = "compilation_failed"

string

A content guard blocked the content (TraconContentBlockedException).

public const string ContentBlocked = "content_blocked"

string

The model provider filtered the content (TraconContentFilteredException).

public const string ContentFiltered = "content_filtered"

string

Two eval runs cannot be compared (EvalRunDiffUnavailableException).

public const string EvalRunDiffUnavailable = "eval_run_diff_unavailable"

string

An outbound call was refused by the egress policy (TraconExternalCallException).

public const string ExternalCallRejected = "external_call_rejected"

string

A workflow run was cut short by a process stop and recovery closed it.

public const string Interrupted = "interrupted"

string

The request is not valid. The default type of an OpenAI-compatible error.

public const string InvalidRequestError = "invalid_request_error"

string

The run attribution in the request is not valid.

public const string InvalidRunAttribution = "invalid_run_attribution"

string

A queued turn ended at an approval that could not be written, so the run closes as failed.

public const string JobApprovalSaveFailed = "tracon.job.approval-save-failed"

string

The job was leased again past its attempt limit.

public const string JobAttemptsExhausted = "tracon.job.attempts-exhausted"

string

The job’s handler could not be constructed.

public const string JobHandlerActivationFailed = "tracon.job.handler-activation-failed"

string

A run reached the time limit of the job that ran it and was cancelled with it.

public const string JobMaxDurationExceeded = "job_max_duration_exceeded"

string

The attempt ran longer than the job’s time limit.

public const string JobMaxDurationExceededCode = "tracon.job.max-duration-exceeded"

string

A job handler asked for a retry with backoff (JobRetryException).

public const string JobRetry = "job_retry"

string

A queued turn ended but its session could not be saved. The run keeps the status the turn gave it.

public const string JobSessionSaveFailed = "tracon.job.session-save-failed"

string

No handler is registered for the job’s handler key.

public const string JobUnknownHandlerKey = "tracon.job.unknown-handler-key"

string

A queued workflow run was refused, failed or was cancelled. The run’s own error says why.

public const string JobWorkflowRunFailed = "tracon.job.workflow-run-failed"

string

A queued workflow run was interrupted and its chain is at the continuation limit.

public const string JobWorkflowRunNotContinued = "tracon.job.workflow-run-not-continued"

string

A queued workflow run’s job payload cannot be run.

public const string JobWorkflowRunPayloadInvalid = "tracon.job.workflow-run-payload-invalid"

string

A loop ended without meeting its exit condition (TraconLoopUnsatisfiedException).

public const string LoopUnsatisfied = "loop_unsatisfied"

string

The model name does not match an agent.

public const string ModelNotFound = "model_not_found"

string

The named resource does not exist.

public const string NotFoundError = "not_found_error"

string

Reconciliation closed a run whose process stopped.

public const string Orphaned = "orphaned"

string

The model cut its answer off at an output limit (TraconOutputTruncatedException).

public const string OutputTruncated = "output_truncated"

string

The tenant’s credential cannot be used with this provider.

public const string ProviderCredentialUnsupported = "provider_credential_unsupported"

string

The model provider could not be reached (TraconProviderUnavailableException).

public const string ProviderUnavailable = "provider_unavailable"

string

A replay met a tool call the recording does not have.

public const string ReplayToolMismatch = "replay_tool_mismatch"

string

The workflow request already has an answer.

public const string RequestAlreadyAnswered = "request_already_answered"

string

A run used up its budget (TraconRunBudgetExceededException).

public const string RunBudgetExceeded = "run_budget_exceeded"

string

The caller may not start this run.

public const string RunNotAuthorized = "run_not_authorized"

string

The server is draining and takes no new run.

public const string ServiceUnavailable = "service_unavailable"

string

A session was changed by another run at the same time (TraconSessionConflictException).

public const string SessionConflict = "session_conflict"

string

A session needs an owner and the caller has no identity (TraconSessionOwnerRequiredException).

public const string SessionOwnerRequired = "session_owner_required"

string

The model answer did not match the requested schema (TraconStructuredResponseException).

public const string StructuredResponseInvalid = "structured_response_invalid"

string

The tenant may not use the provider (TraconTenantProviderRefusedException).

public const string TenantProviderRefused = "tenant_provider_refused"

string

A tenant quota was used up (TraconTenantQuotaExceededException).

public const string TenantQuotaExceeded = "tenant_quota_exceeded"

string

A tool call ran past its time limit (TraconToolTimeoutException).

public const string ToolTimeout = "tool_timeout"

string

The model provider answered with a failure.

public const string UpstreamError = "upstream_error"

string

A workflow function node ran past its time limit (TraconWorkflowFunctionTimeoutException).

public const string WorkflowFunctionTimeout = "workflow_function_timeout"

string

A workflow request nobody answered expired.

public const string WorkflowRequestExpired = "WorkflowRequestExpired"

string