# Route Resilience Lab

This lab holds the DeepSeek V4 Pro model family and prompt constant while varying access infrastructure: OpenCode Go versus OpenRouter pinned to DeepSeek, with fallback disabled. Run the arms as a deliberate shadow pair or select one after a typed credential-loss, rate-limit, or timeout fault.

It does not implement transparent automatic failover and does not infer the serving provider from model output. Session availability, requested policy, gateway retries, fallback index, actual serving slug, latency, and build fingerprint are the evidence. Duplicate calls are intentional only in matched drift trials.

Each route arm is a separate persistent supervised Unix app-server worker with the same goal/turn and warning policy. The observer can inspect, trace, steer, interrupt, pause, continue, detach, finalize, fully stop, fork, or cancel either arm, but one arm never substitutes for the other. A transport failure suspends and retains route-specific history/evidence rather than converting it into an apparent model result.
