The harness enforces model allowlists based on compliance requirements. When a compliance mode is set, only models in the corresponding allowlist are permitted.
Python Compliance Modes
TypeScript Compliance Modes
Compliance profile names currently differ between the Python and TypeScript harnesses. TypeScript does not currently implement the gdpr, hipaa, or pci profiles. An unknown TypeScript profile does not apply an allowlist.
Usage
Or as agent metadata:
Enforcement Behavior
When a model outside the allowlist is requested:
- In
observe mode: the trace records action: "switch_model" with the suggested compliant alternative, but execution continues with the original model
- In
enforce mode: the harness blocks the non-compliant model and either switches to a compliant alternative or stops execution
Combining with Budget
Compliance and budget constraints are independent. Both are checked at every step:
Custom Policies
The harness APIs select built-in profiles by name. They do not currently accept custom model allowlists. For custom requirements, validate the selected model in your integration before sending the request.