rc.2 is fail-loud by design
openRouterRouting is classified as withheld, absent from the profile schema, and rejected before model materialization. Do not replace that guard with arbitrary request JSON.Choose the owner.
Reference a routing-only preset as the exact model id on a dedicated DSH route.
Accept policy ids, not model-generated routing objects.
Preference is not a hard pin.
order
+preferonly
+allowlistfallbacks
→explicitrecord
→served byprove
negativeKeep the Preset narrow.
No system prompt, server tools, or hidden generation changes.
Record slug, designated version, reviewer, and rollback.
A models list must not hide the normal OpenRouter catalog.
Six proof gates.
- 01State preference, allowlist, or hard-pin semantics.
- 02Use current official provider slugs.
- 03Keep unsupported compat and raw-body keys out of DSH.
- 04Record the serving provider for a synthetic request.
- 05Use a controlled negative case to prove fallback behavior.
- 06Rollback both DSH and the remote routing policy.
Primary evidence.
Keep the complete routing record.
The canonical guide covers rc.2 source gates, routing semantics, a Preset-based workaround, Agent control-plane risks, gateway requirements, source-change shape, failure routing, and fifteen acceptance gates.
Read the complete guide