From 1e62648070339288436ddc121cd17daed7722312 Mon Sep 17 00:00:00 2001 From: octo-patch Date: Tue, 2 Jun 2026 11:51:01 +0800 Subject: [PATCH] Add MiniMax-M3 and make it the default for the MiniMax provider Adds the new flagship model MiniMax-M3 to the MiniMax provider's static model list and promotes it to the default model hint. Keeps M2.7 and M2.7-highspeed for users who still want them; drops the older M2.5/M2.5-highspeed/M2.1/M2.1-highspeed/M2 entries from the static catalog so the picker leads with the current generation. Updates accompanying docs (OAUTH.md), the live-test target model, and the static-model regression assertion to match the new list. Co-Authored-By: Octopus --- OAUTH.md | 2 +- crates/jcode-base/src/live_tests.rs | 2 +- crates/jcode-base/src/provider/openrouter_tests.rs | 2 +- crates/jcode-base/src/provider_catalog.rs | 6 +----- crates/jcode-provider-metadata/src/catalog.rs | 2 +- 5 files changed, 5 insertions(+), 9 deletions(-) diff --git a/OAUTH.md b/OAUTH.md index d29cb62c6..f391dc9ba 100644 --- a/OAUTH.md +++ b/OAUTH.md @@ -267,7 +267,7 @@ Two notable presets are: - Stored env file: `~/.config/jcode/minimax.env` - API key env var: `OPENAI_API_KEY` - Base URL: `https://api.minimax.io/v1` -- Default model hint: `MiniMax-M2.7` +- Default model hint: `MiniMax-M3` - Docs: These are first-class jcode provider presets, not just manual custom endpoint examples. diff --git a/crates/jcode-base/src/live_tests.rs b/crates/jcode-base/src/live_tests.rs index bbfa57fc0..e5b1cd96d 100644 --- a/crates/jcode-base/src/live_tests.rs +++ b/crates/jcode-base/src/live_tests.rs @@ -255,7 +255,7 @@ const ISSUE_DRIVEN_LIVE_PROVIDER_TARGETS: &[IssueDrivenLiveProviderTarget] = &[ IssueDrivenLiveProviderTarget { provider_id: "minimax", provider_label: "MiniMax", - model: Some("MiniMax-M2.7"), + model: Some("MiniMax-M3"), reason: "MiniMax endpoint/key-region selection and live balance/readiness", issue_refs: &["#110", "#131", "#189"], }, diff --git a/crates/jcode-base/src/provider/openrouter_tests.rs b/crates/jcode-base/src/provider/openrouter_tests.rs index 756487db5..0a4f676a7 100644 --- a/crates/jcode-base/src/provider/openrouter_tests.rs +++ b/crates/jcode-base/src/provider/openrouter_tests.rs @@ -280,9 +280,9 @@ fn minimax_profile_exposes_static_models_before_catalog_refresh() { jcode_provider_metadata::MINIMAX_PROFILE, ); + assert!(models.iter().any(|model| model == "MiniMax-M3")); assert!(models.iter().any(|model| model == "MiniMax-M2.7")); assert!(models.iter().any(|model| model == "MiniMax-M2.7-highspeed")); - assert!(models.iter().any(|model| model == "MiniMax-M2")); } #[test] diff --git a/crates/jcode-base/src/provider_catalog.rs b/crates/jcode-base/src/provider_catalog.rs index 68a0325d3..140d466eb 100644 --- a/crates/jcode-base/src/provider_catalog.rs +++ b/crates/jcode-base/src/provider_catalog.rs @@ -455,13 +455,9 @@ pub fn openai_compatible_profile_static_models(profile: OpenAiCompatibleProfile) // before the picker/routes are rebuilt. Keep the documented text models // selectable immediately after saving a key. "minimax" => { + push("MiniMax-M3"); push("MiniMax-M2.7"); push("MiniMax-M2.7-highspeed"); - push("MiniMax-M2.5"); - push("MiniMax-M2.5-highspeed"); - push("MiniMax-M2.1"); - push("MiniMax-M2.1-highspeed"); - push("MiniMax-M2"); } "alibaba-coding-plan" => { push("qwen3-coder-plus"); diff --git a/crates/jcode-provider-metadata/src/catalog.rs b/crates/jcode-provider-metadata/src/catalog.rs index 823e266dd..91925ace1 100644 --- a/crates/jcode-provider-metadata/src/catalog.rs +++ b/crates/jcode-provider-metadata/src/catalog.rs @@ -298,7 +298,7 @@ pub const MINIMAX_PROFILE: OpenAiCompatibleProfile = OpenAiCompatibleProfile { api_key_env: "OPENAI_API_KEY", env_file: "minimax.env", setup_url: "https://platform.minimax.io/docs/guides/text-generation", - default_model: Some("MiniMax-M2.7"), + default_model: Some("MiniMax-M3"), requires_api_key: true, };