From 19eebf6e0de733ffa2f28133801f79e07fbdec4e Mon Sep 17 00:00:00 2001 From: Leon Date: Tue, 28 Apr 2026 19:59:45 +0800 Subject: [PATCH] fix(openrouter): treat xiaomi models as reasoning-capable --- run_agent.py | 1 + tests/run_agent/test_run_agent.py | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/run_agent.py b/run_agent.py index 46197eee76..c5662c70ec 100644 --- a/run_agent.py +++ b/run_agent.py @@ -8582,6 +8582,7 @@ class AIAgent: "google/gemini-2", "qwen/qwen3", "tencent/hy3-preview", + "xiaomi/", ) return any(model.startswith(prefix) for prefix in reasoning_model_prefixes) diff --git a/tests/run_agent/test_run_agent.py b/tests/run_agent/test_run_agent.py index d663805f8f..eba186cf2c 100644 --- a/tests/run_agent/test_run_agent.py +++ b/tests/run_agent/test_run_agent.py @@ -4990,6 +4990,28 @@ class TestDeadRetryCode: ) +class TestSupportsReasoningExtraBody: + def _make_agent(self): + agent = object.__new__(AIAgent) + agent.provider = "openrouter" + agent.base_url = "https://openrouter.ai/api/v1" + agent._base_url_lower = agent.base_url.lower() + agent.model = "" + return agent + + def test_xiaomi_models_are_treated_as_reasoning_capable(self): + agent = self._make_agent() + for model in ( + "xiaomi/mimo-v2.5-pro", + "xiaomi/mimo-v2.5", + "xiaomi/mimo-v2-omni", + "xiaomi/mimo-v2-pro", + "xiaomi/mimo-v2-flash", + ): + agent.model = model + assert agent._supports_reasoning_extra_body() is True, model + + class TestMemoryContextSanitization: """sanitize_context() helper correctness — used at provider boundaries."""