fix(doctor): respect preferred_engine/engine.default when reporting default model (#204)

* fix(cloud-router): prevent local HF org models from being misrouted to OpenRouter

get_provider() previously routed any "/" model to OpenRouter, which caused
locally-served models (e.g. mlx-community/Qwen3.5-27B-4bit-DWQ) to be sent
to the cloud instead of localhost:8080.

Adds _LOCAL_HF_ORGS module-level allowlist covering mlx-community/,
bartowski/, unsloth/, and lmstudio-community/. Returns None early for
these before the openrouter "/" check.

* fix(doctor): respect preferred_engine/engine.default when reporting default model

_check_default_model() iterated engines in sorted alphabetical order,
causing engines like 'lemonade' to be reported as the host for the
default model even when 'mlx' was configured as preferred_engine and
engine.default. Now checks the configured engine first, then falls back
to alphabetical scan.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Ali Shahkar
2026-04-10 15:30:30 -07:00
committed by GitHub
co-authored by Claude Sonnet 4.6
parent f0eacb7980
commit 89c5414af0
+7 -1
View File
@@ -170,7 +170,13 @@ def _check_default_model() -> CheckResult:
from openjarvis.core.registry import EngineRegistry
from openjarvis.engine import _discovery
for key in sorted(EngineRegistry.keys()):
preferred = config.intelligence.preferred_engine or config.engine.default
check_order = []
if preferred:
check_order.append(preferred)
check_order += [k for k in sorted(EngineRegistry.keys()) if k != preferred]
for key in check_order:
try:
engine = _discovery._make_engine(key, config)
if engine.health():