feat(web): add Qwen native search adapter (rescue of #5684) - #5690
Conversation
Signed-off-by: hexin <372726039@qq.com>
Signed-off-by: hexin <372726039@qq.com>
Signed-off-by: CodeWhale Bot <bot@codewhale.net> # Conflicts: # CHANGELOG.md # crates/config/src/route/capabilities.rs # crates/tui/CHANGELOG.md # crates/tui/src/client/provider_native_search.rs
|
Claude finished @Hmbown's task in 3m 25s —— View job Review: Qwen native search adapter (rescue of #5684)
SummaryThis is a clean, well-scoped port of the DeepSeek native-search pattern to Qwen on ModelStudio Token Plan. I read the full diff ( Provider/model/route safety (EPIC #2608) — looks correct. This is the part I scrutinized hardest given the reconciliation with #5683's DeepSeek arms in the same hunks:
Correctness. No bugs found. The Minor, non-blocking nit — duplicated match arm. In ResponsesSearchDialect::Xai => {
body["tool_choice"] = json!("required");
}
ResponsesSearchDialect::ModelStudio => {
body["tool_choice"] = json!("required");
}Could be merged into Tests. Good coverage: unit test for the payload shape, integration-style mock-server test for the full request/response round trip, and the route-resolution boundary test covering the fail-closed cases (preview model, alternate hosts). No gaps I'd ask for. Reconciliation quality. Both root and No blocking issues. One cosmetic simplification suggested above (optional). |
… native search Rescue merge of abb9978 (Pinvou feat/moonshot-kimi-provider-native-search, PR Hmbown#5686) onto current main (142 ahead). Contributor head preserved verbatim as the second parent; conflicts resolved following the landed native-search adapter pattern (Hmbown#5682/Hmbown#5683/Hmbown#5690/Hmbown#5691/Hmbown#5693): main's Mimo/Zai/ModelStudio/ DeepSeek adapters and the post-fallback domain-constraint/budget plumbing stay, the Kimi module + Moonshot dispatch and capability wiring join them. Signed-off-by: CodeWhale Bot <bot@codewhale.net>
Summary
qwen3.8-max,qwen3.7-plus, andqwen3.7-maxon ModelStudio Token Plan's Responses Harness.web_searchtool with stringtool_choice: "required"through the active authenticated transport.Reconciliation notes:
provider_native_search.rsandroute/capabilities.rsnow carry both the DeepSeek (#5683) and ModelStudio arms; both changelog entries retained;crates/tui/CHANGELOG.mdregenerated in sync.No-Issue: partial delivery tracked by #5681; this slice must not close the umbrella issue.
Supersedes #5684 (which stays credited to h3c-hexin).