From b531b5d12a2040ee7b7bcf5d0773c21a8f315d39 Mon Sep 17 00:00:00 2001 From: Fearvox Date: Tue, 2 Jun 2026 15:20:22 -0700 Subject: [PATCH] fix(minimax): update AUTHOR_MAP entry + test_minimax_oauth_aux_model_registered Two follow-ups to the M3 default-aux-model PR (#37664): 1. AUTHOR_MAP entry: add fearvox1015@gmail.com -> Fearvox so the check-attribution CI job recognises Nolan's real contributor email. The previous run of the attribution check on #37664 failed because the commit was authored as nolan@0xvox.com (wrong local git config) which isn't in AUTHOR_MAP. The commit itself is now re-authored to fearvox1015@gmail.com so both the per-commit check and the AUTHOR_MAP lookup pass. 2. tests/hermes_cli/test_api_key_providers.py::TestMinimaxOAuthProvider ::test_minimax_oauth_aux_model_registered was pinning the aux model in the legacy _API_KEY_PROVIDER_AUX_MODELS dict, which the PR correctly removed (mirrors the deepseek cleanup in 773a0faca). The test now asserts the new world order: the aux model comes from ProviderProfile.default_aux_model on the minimax-oauth profile, not the fallback dict. This is the same pattern that the profile-layer deepseek fix introduced. --- tests/hermes_cli/test_api_key_providers.py | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/tests/hermes_cli/test_api_key_providers.py b/tests/hermes_cli/test_api_key_providers.py index af576ed29..6dacd5e35 100644 --- a/tests/hermes_cli/test_api_key_providers.py +++ b/tests/hermes_cli/test_api_key_providers.py @@ -1279,6 +1279,20 @@ class TestMinimaxOAuthProvider: assert len(models) >= 1 def test_minimax_oauth_aux_model_registered(self): - from agent.auxiliary_client import _API_KEY_PROVIDER_AUX_MODELS - assert "minimax-oauth" in _API_KEY_PROVIDER_AUX_MODELS - assert _API_KEY_PROVIDER_AUX_MODELS["minimax-oauth"] # non-empty + # Aux model for the minimax-oauth provider now lives on the + # ProviderProfile (plugins/model-providers/minimax/__init__.py), + # not the legacy _API_KEY_PROVIDER_AUX_MODELS dict in + # agent/auxiliary_client.py. The profile layer is the source + # of truth; _get_aux_model_for_provider() reads from it first + # and only falls back to the dict when no profile is registered. + import model_tools # noqa: F401 -- triggers plugin discovery + import providers + + profile = providers.get_provider_profile("minimax-oauth") + assert profile is not None, "minimax-oauth provider profile must be registered" + assert profile.default_aux_model, ( + "minimax-oauth profile must advertise a non-empty default_aux_model " + "so the auxiliary client (compression / vision / session-search) " + "doesn't fire the 'No auxiliary LLM provider configured' warning " + "for every minimax-oauth session." + )