Skip to content

fix(cli): default Gateway MiniMax M3 to adaptive thinking#11562

Closed
lambertjosh wants to merge 2 commits into
mainfrom
fix/minimax-m3-gateway-default
Closed

fix(cli): default Gateway MiniMax M3 to adaptive thinking#11562
lambertjosh wants to merge 2 commits into
mainfrom
fix/minimax-m3-gateway-default

Conversation

@lambertjosh

@lambertjosh lambertjosh commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Default MiniMax M3 requests through Kilo Gateway to adaptive thinking, matching the direct Anthropic provider behavior merged from upstream. The cloud model catalog keeps the common Gateway labels thinking and instant; selecting instant overrides this default and sends disabled thinking.

This is the CLI companion to Kilo-Org/cloud#4188.

result["thinking"] = { type: "adaptive" }
}
// kilocode_change start - match MiniMax M3's adaptive default through Kilo Gateway
if (modelId.includes("minimax-m3") && input.model.api.npm === "@kilocode/kilo-gateway") {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SUGGESTION: Keep the Gateway-specific override out of the shared upstream file

This branch only applies to @kilocode/kilo-gateway, so it seems worth moving the behavior into a helper under packages/opencode/src/kilocode/... and calling that helper from here behind a single hook. Keeping Kilo-only provider logic inline in packages/opencode/src/provider/transform.ts grows the fork delta in a file we regularly merge from upstream.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

@kilo-code-bot

kilo-code-bot Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: 2 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 0
SUGGESTION 2
Issue Details (click to expand)

SUGGESTION

File Line Issue
packages/opencode/src/provider/transform.ts 1213 Move the Gateway-specific MiniMax M3 override behind a Kilo-owned helper to reduce fork delta in this shared upstream file.
packages/opencode/test/kilocode/provider/minimax-m3.test.ts 26 The renamed instant test still disables thinking via reasoning.effort = "none", so it doesn't verify the user-facing instant mapping.

Fix these issues in Kilo Cloud

Files Reviewed (3 files)
  • .changeset/minimax-m3-gateway-thinking.md - 0 issues
  • packages/opencode/src/provider/transform.ts - 1 issue
  • packages/opencode/test/kilocode/provider/minimax-m3.test.ts - 1 issue
Previous Review Summary (commit 203fdfa)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 203fdfa)

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 0
SUGGESTION 1
Issue Details (click to expand)

SUGGESTION

File Line Issue
packages/opencode/src/provider/transform.ts 1213 Move the Gateway-specific MiniMax M3 override behind a Kilo-owned helper to reduce fork delta in a shared upstream file.

Fix these issues in Kilo Cloud

Files Reviewed (3 files)
  • .changeset/minimax-m3-gateway-thinking.md - 0 issues
  • packages/opencode/src/provider/transform.ts - 1 issue
  • packages/opencode/test/kilocode/provider/minimax-m3.test.ts - 0 issues

Reviewed by gpt-5.4-20260305 · Input: 66.9K · Output: 6.8K · Cached: 137.6K

Review guidance: REVIEW.md from base branch main

@IamCoder18

Copy link
Copy Markdown
Contributor

LGTM!

expect(kiloProviderOptions(options).anthropic.thinking).toEqual({ type: "adaptive" })
})

test("allows the instant variant to disable thinking", () => {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SUGGESTION: Renamed test still exercises the old none knob

This rename makes the test read like it covers the user-facing instant option, but the setup below still disables thinking through reasoning.effort = "none". If the cloud-side instant mapping ever drifts, this test will keep passing while the documented contract breaks. It would be safer to build the options the same way the instant catalog entry does, or assert that translation point directly.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants