Summary
ucode currently supports routing Claude Code through a single Model Provider Service (MPS) via --provider, but there is no way to assign different MPS names to each Claude family tier (Opus/Sonnet/Haiku). The ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL env vars are always populated with either system.ai.* IDs (Databricks-native) or target IDs within a single MPS, but never with separate UC Model Provider Service fully-qualified names per tier.
This blocks users who have built per-tier redundancy (e.g. Bedrock primary + Databricks-native fallback) as separate Model Provider Services and need Claude Code's tier-based routing to flow through them.
What works today: ucode claude --model mmic.inference.ai-gw-bedrock-system-sonnet5 resolves and serves correctly for a single session.
What doesn't work:
--model pins a single ID via ANTHROPIC_MODEL. The per-tier vars (ANTHROPIC_DEFAULT_OPUS_MODEL, etc.) still point to system.ai.*, so subagent/background work on the Haiku tier bypasses the customer's redundancy config entirely.
New sessions regenerate the overlay from scratch (render_overlay), losing any manual overrides.
There is no way to pin three separate MPS FQNs (one per family) through --provider, --model, ucode setup, or ucode publish.
Summary
ucode currently supports routing Claude Code through a single Model Provider Service (MPS) via --provider, but there is no way to assign different MPS names to each Claude family tier (Opus/Sonnet/Haiku). The ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL env vars are always populated with either system.ai.* IDs (Databricks-native) or target IDs within a single MPS, but never with separate UC Model Provider Service fully-qualified names per tier.
This blocks users who have built per-tier redundancy (e.g. Bedrock primary + Databricks-native fallback) as separate Model Provider Services and need Claude Code's tier-based routing to flow through them.
What works today:
ucode claude --model mmic.inference.ai-gw-bedrock-system-sonnet5 resolves and serves correctly for a single session.What doesn't work:
--model pins a single ID via ANTHROPIC_MODEL. The per-tier vars (ANTHROPIC_DEFAULT_OPUS_MODEL, etc.) still point to system.ai.*, so subagent/background work on the Haiku tier bypasses the customer's redundancy config entirely.
New sessions regenerate the overlay from scratch (render_overlay), losing any manual overrides.
There is no way to pin three separate MPS FQNs (one per family) through --provider, --model, ucode setup, or ucode publish.