Router(...) now resolves Route.ROUTER once at construction. PYTHON builds PythonRouter as
before. Under RUST_OPT_IN (LITELLM_RUST) the Rust backend is built when it can serve the
config and the call declines to PythonRouter otherwise; RUST_REQUIRED raises naming the
unsupported argument, deployment field or global setting.
rust_support decides what the first increment can serve: the reliability arguments
(retries, fallbacks, retry policies, cooldowns, Redis) on simple-shuffle, without
wildcards, strategy routers, orders, tags, tpm/rpm limits, team deployments, aliases or
callbacks that filter deployments. RustRouter is a stub until the native router exists, so
every config still declines today.
Also types the facade's conditional base as a TypeAlias and marks its forwarding kwargs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Aw1xktpUnix5tWhvSzey8t