Routing & fallbacks.
Stage-to-provider mapping. Health-aware fallbacks. Per-pack overrides.
Routing is YAML. The default lives in your workspace as routing.yml. Packs can override per stage. Campaigns can override per pack. Specific runs can override per campaign. Last write wins.
defaults:
discover: groq.llama-3.1-70b
web_audit_classifier: self_hosted.page_type_v2
social_research: perplexity.sonar
qualify: anthropic.claude-sonnet-4
extract_signals: anthropic.claude-sonnet-4
draft_brief: anthropic.claude-sonnet-4
draft_email: anthropic.claude-sonnet-4
fallbacks:
- if: provider_5xx OR rate_limited
then: openrouter.
- if: provider_unreachable for 90s
then: openai.gpt-4.1-mini # for non-writing stages only
overrides:
packs:
clinical-ops:
qualify: anthropic.claude-opus-4 # high-stakes domain
Health awareness
We track per-provider error rates and p95 latency in 60-second windows. When a provider crosses its threshold, the next call routes to the configured fallback automatically and the dashboard shows a banner. There is no auto-failover for the writing stages without your explicit opt-in. We will not silently swap the model that drafted the email you are about to read.
Pinning a run
You can pin a run to specific provider versions and prompt versions. Useful for reproducing a result a customer asked you about three weeks ago. Forking prompts covers the prompt-pin side.