fix(doctor): allow vendor slugs for named custom providers

This commit is contained in:
helix4u
2026-06-08 15:53:09 -07:00
committed by Teknium
parent 421226e404
commit 732ababa1a
4 changed files with 65 additions and 3 deletions
+4 -2
View File
@@ -740,6 +740,7 @@ def run_doctor(args):
# Warn if model is set to a provider-prefixed name on a provider that doesn't use them
provider_for_policy = runtime_provider or catalog_provider
provider_policy_id = str(provider_for_policy or "").strip().lower()
providers_accepting_vendor_slugs = {
"openrouter",
"custom",
@@ -753,8 +754,9 @@ def run_doctor(args):
if (
default_model
and "/" in default_model
and provider_for_policy
and provider_for_policy not in providers_accepting_vendor_slugs
and provider_policy_id
and provider_policy_id not in providers_accepting_vendor_slugs
and not provider_policy_id.startswith("custom:")
):
check_warn(
f"model.default '{default_model}' uses a vendor/model slug but provider is '{provider_raw}'",
+4 -1
View File
@@ -492,7 +492,10 @@ def get_label(provider_id: str) -> str:
def is_aggregator(provider: str) -> bool:
"""Return True when the provider is a multi-model aggregator."""
pdef = get_provider(provider)
provider_norm = normalize_provider(provider or "")
if provider_norm.startswith("custom:"):
return True
pdef = get_provider(provider_norm)
return pdef.is_aggregator if pdef else False