Skip to main content
The Decision object is the stable, typed contract returned by all TealTiger components in v1.1.x.

Overview

Every policy evaluation, guardrail check, and circuit breaker decision returns a Decision object with:
  • Deterministic action (ALLOW, DENY, REQUIRE_APPROVAL, etc.)
  • Machine-readable reason codes
  • Risk score (0-100)
  • Correlation ID for traceability
  • Component versions for audit defensibility

Class Definition

Decision Actions

Action Semantics

Reason Codes

Risk Score

The risk_score is a normalized value from 0-100:
  • 0-30: Low risk (informational)
  • 31-60: Medium risk (monitor)
  • 61-85: High risk (review)
  • 86-100: Critical risk (block)
Risk scores are calculated based on:
  • Policy violation severity
  • Number of violations
  • Domain-specific risk factors (security, cost, reliability)

Component Versions

Component versions enable audit defensibility - you can reproduce decisions by knowing exactly which versions were used.

Usage Examples

Basic Decision Handling

Risk-Based Routing

Reason Code Handling

Mode-Specific Behavior

The Decision.mode field indicates which policy mode was active:

Pattern Matching (Python 3.10+)

Backwards Compatibility

The Decision class is backwards compatible with v1.0.x PolicyEvaluationResult:

Type Hints