v1.3 adds 28+ new reason codes across 4 new domains (Identity, Workflow, Temporal, Drift) plus FREEZE rules, anti-tamper, and code change governance. All v1.2 codes are preserved with identical semantics.
Configuration Errors
Configuration errors are thrown as exceptions (not returned as decisions). They indicate misconfiguration that must be fixed before the engine can evaluate requests.TealError
Base error class for all TealTiger v1.2 errors.TealConfigError
Thrown when policy or module configuration is invalid. ExtendsTealError.
Additional properties:
TealSchemaError
Thrown when a policy or registry document fails structural validation. ExtendsTealConfigError.
Additional properties:
TealRuntimeError
Thrown for recoverable or non-recoverable runtime failures. ExtendsTealError.
Additional properties:
TealAdapterError
Thrown when a storage adapter (e.g., memory adapter) encounters a failure. ExtendsTealRuntimeError.
v1.3 Error Classes
FreezeViolationError
Thrown when code attempts to modify, disable, or remove a FREEZE rule.BundleIntegrityError
Thrown when a policy bundle fails integrity verification.ApprovalExpiredError
Thrown when attempting to approve/reject an expired PENDING decision.TamperAttemptError
Thrown when forbidden configuration keys are detected.
Additional properties:
Reason Codes (32)
Reason codes are returned inside theDecision.reason_codes array. They explain why a decision was made. Each code belongs to a category, has a severity level, and maps to a default action.
Severity Levels
Policy (2 codes)
POLICY_COMPLIANT
POLICY_VIOLATION
Content (4 codes)
PII_DETECTED
PROMPT_INJECTION_DETECTED
HARMFUL_CONTENT_DETECTED
UNSAFE_CODE_DETECTED
Tool (3 codes)
TOOL_NOT_ALLOWED
TOOL_PARAMETER_INVALID
TOOL_RATE_LIMIT_EXCEEDED
Reliability (5 codes)
CIRCUIT_OPEN
CIRCUIT_HALF_OPEN
RETRY_BUDGET_EXCEEDED
FALLBACK_TRIGGERED
DEGRADE_TRIGGERED
Cost (5 codes)
COST_BUDGET_EXCEEDED
COST_VELOCITY_ANOMALY
COST_MODEL_TIER_VIOLATION
COST_ESTIMATED_TOO_HIGH
MODEL_DOWNGRADED
Mode (2 codes)
MONITOR_MODE_VIOLATION
REPORT_ONLY_MODE
Secrets (5 codes)
SECRET_DETECTED
CREDENTIAL_LEAKAGE
CREDENTIAL_TTL_EXCEEDED
CREDENTIAL_ROTATION_REQUIRED
SECRET_SCAN_SKIPPED_PERF_BUDGET
Memory (6 codes)
MEMORY_WRITE_DENIED_SECRET
MEMORY_WRITE_DENIED_PII
MEMORY_WRITE_REDACTED
MEMORY_WRITE_SUMMARY_ONLY
MEMORY_SCOPE_VIOLATION
MEMORY_READ_DENIED_CLASSIFICATION
Decision Actions (12)
Decision actions are the enforcement verbs returned inDecision.action. The engine selects the most restrictive action across all modules using a severity-based merge.
Action Severity Table
When multiple modules return different actions, most restrictive wins. A
DENY from any module overrides an ALLOW from all others.
