Roo Code
4e61f778fe
fix: ensure JSON Schema draft 2020-12 compliance for OpenAI-compatible providers
...
- Update convertToolSchemaForOpenAI in base-provider.ts to use normalizeToolSchema
which properly converts type arrays (e.g., ["string", "null"]) to anyOf format
required by JSON Schema draft 2020-12
- Update Cerebras stripUnsupportedSchemaFields to handle anyOf/oneOf/allOf arrays
- Add comprehensive tests for base-provider convertToolSchemaForOpenAI function
Fixes #10320
2025-12-24 05:35:39 +00:00
Hannes Rudolph
6afc59b928
fix(openai): send native tool definitions by default ( #10314 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-23 15:57:18 -07:00
Hannes Rudolph
53e1ff0058
fix: preserve reasoning_details shape to prevent malformed responses ( #10313 )
2025-12-23 14:58:35 -07:00
Hannes Rudolph
ded6486a46
feat: enable mergeToolResultText for all OpenAI-compatible providers ( #10299 )
2025-12-23 14:19:33 -07:00
Hannes Rudolph
71f312b488
feat: enable mergeToolResultText for Roo Code Cloud provider ( #10301 )
2025-12-23 00:57:55 -07:00
Hannes Rudolph
a8ac2ced02
fix: emit tool_call_end events in BaseOpenAiCompatibleProvider ( #10293 )
2025-12-22 21:25:07 -07:00
Hannes Rudolph
eeaf33ce4e
refactor(zai): merge environment_details into tool result instead of system message ( #10289 )
2025-12-22 20:20:29 -07:00
Hannes Rudolph
e7c1851a8b
feat(minimax): move environment_details to system message for thinking models ( #10284 )
2025-12-22 19:59:42 -07:00
Hannes Rudolph
44a7ba5072
fix: improve reasoning_details accumulation and serialization ( #10285 )
2025-12-22 19:33:02 -07:00
Hannes Rudolph
518a4402a7
feat(zai): add GLM-4.7 model with thinking mode support ( #10282 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-22 18:01:16 -08:00
Daniel
d00d9edec5
feat: deprecate XML tool protocol selection, force native for new tasks ( #10281 )
...
- Disable tool protocol selector UI in ApiOptions.tsx
- Force native protocol for all new tasks in resolveToolProtocol()
- Keep locked protocol support for resumed tasks that used XML
- Remove models without supportsNativeTools: true from providers:
- baseten.ts: removed 6 models
- bedrock.ts: removed 2 embedding models
- featherless.ts: removed 3 models, updated default
- groq.ts: removed 5 models
- sambanova.ts: removed 2 models
- vertex.ts: removed 7 models
- vercel-ai-gateway.ts: added supportsNativeTools: true
- Update tests to expect native format output
2025-12-22 17:49:50 -08:00
Daniel
9b06a98b85
fix: emit tool_call_end events in OpenAI handler when streaming ends ( #10280 )
2025-12-22 17:00:58 -05:00
Hannes Rudolph
f462eeb80c
fix(chutes): add graceful fallback for model parsing ( #10279 )
...
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2025-12-22 12:59:13 -07:00
Daniel
7fae76ec86
fix: move array-specific properties into anyOf variant in normalizeToolSchema ( #10276 )
...
* fix: move array-specific properties into anyOf variant in normalizeToolSchema
Fixes read_file tool schema rejection with GPT-5-mini which requires
items property to be inside the { type: 'array' } variant when using
anyOf for nullable arrays.
Resolves ROO-262
* refactor: extract array-specific properties constant and helper function
2025-12-22 11:01:43 -08:00
Daniel
6b141fbb25
fix: disable strict mode for MCP tools to preserve optional parameters ( #10220 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-22 13:21:31 -05:00
roomote[bot]
e3cd031f17
feat: remove parallel_tool_calls parameter from litellm provider ( #10274 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-22 09:11:47 -08:00
Hannes Rudolph
5c798a9877
fix: normalize tool schemas for VS Code LM API to fix error 400 ( #10221 )
2025-12-19 17:36:59 -07:00
Daniel
bade9326c6
fix: enable native tool calls for Requesty provider (ROO-235) ( #10211 )
2025-12-19 12:28:26 -08:00
Bruno Bergher
6e2b85214e
ux: improve API error handling and visibility ( #10204 )
...
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
2025-12-19 11:38:56 -08:00
Hannes Rudolph
61903f9588
feat(providers): add native tool calling support to LM Studio and Qwen-Code ( #10208 )
2025-12-19 12:50:09 -05:00
Hannes Rudolph
3f1f8be2d1
feat(vertex): add 1M context window beta support for Claude Sonnet 4 ( #10209 )
2025-12-19 12:24:45 -05:00
Patrick Decat
2dec78ccb4
fix: refresh models button not flushing cache properly ( #9870 )
2025-12-19 12:03:50 -05:00
Hannes Rudolph
9c03476a0f
feat(vertex): add native tool calling for Claude models on Vertex AI ( #10197 )
...
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-12-18 16:09:55 -08:00
Hannes Rudolph
e2d1599f9c
feat: improve 'no tools used' error handling with grace retry ( #10196 )
...
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-12-18 15:29:01 -07:00
Daniel
3e0d9c65e8
feat: lock task tool protocol for consistent task resumption ( #10192 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-18 11:54:26 -08:00
Hannes Rudolph
8251170b84
feat: Replace edit_file tool alias with edit_file tool ( #9983 )
2025-12-18 12:48:30 -07:00
Daniel
157a097032
feat(vscode-lm): add native tool support ( #10191 )
2025-12-18 11:25:54 -08:00
Hannes Rudolph
06c5c7f980
feat: update OpenAI and Gemini tool preferences ( #10170 )
2025-12-17 19:46:33 -08:00
Daniel
aa3b4ae9cc
fix: normalize MCP tool schemas for Bedrock and OpenAI strict mode ( #10148 )
2025-12-17 13:01:48 -08:00
Hannes Rudolph
0b86796b8f
[feat] Claude Code Provider Native Tool Calling ( #10077 )
...
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2025-12-17 12:57:27 -08:00
roomote[bot]
eac0d62cfc
fix: support AWS GovCloud and China region ARNs in Bedrock provider ( #10157 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-17 14:50:11 -05:00
Hannes Rudolph
970deead5b
fix(deepseek): preserve reasoning_content during tool call sequences ( #10141 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-17 11:05:55 -05:00
Hannes Rudolph
d274812332
feat(deepseek): implement interleaved thinking mode for deepseek-reasoner ( #9969 )
2025-12-16 15:13:43 -08:00
Daniel
a7b192adca
fix: normalize tool call IDs for cross-provider compatibility via OpenRouter ( #10102 )
2025-12-16 09:34:35 -08:00
Daniel
a9a15b37fd
feat: enable native tools by default for multiple providers ( #10059 )
2025-12-15 21:37:00 -08:00
Daniel
6619d46377
feat(anthropic): enable native tools by default and add telemetry tracking ( #10021 )
2025-12-15 21:32:44 -08:00
John Richmond
a80a74aa02
Capture more of OpenRouter's provider specific error details ( #10073 )
...
* Capture more of OpenRouter's provider specific error details
* Actually match the openrouter structure
2025-12-14 13:28:32 -08:00
roomote[bot]
9f3122fe28
feat: add AWS Bedrock service tier support ( #9955 )
...
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-12-14 15:26:44 -05:00
Hannes Rudolph
e4b9568dc9
feat(openrouter): add improvements to openrouter provider ( #10082 )
2025-12-14 12:29:34 -07:00
Daniel
23a214c519
fix: extract raw error message from OpenRouter metadata ( #10039 )
...
OpenRouter wraps upstream provider errors in a generic message but includes
the actual error in metadata.raw. This change:
- Adds OpenRouterErrorResponse interface for proper typing
- Creates handleStreamingError() helper for DRY error handling
- Extracts metadata.raw for actionable error messages in PostHog
- Includes nested error structure so getErrorMessage() can extract raw message
Before: PostHog receives '400 Provider returned error' (generic)
After: PostHog receives 'Model xyz not found' (actionable)
This enables proper error tracking and debugging via PostHog telemetry.
2025-12-12 10:42:36 -08:00
Chris Estreich
7766b91360
Revert "fix: merge settings and versionedSettings for Roo provider models" ( #10034 )
2025-12-11 13:19:37 -08:00
Hannes Rudolph
c513df5ade
fix: merge settings and versionedSettings for Roo provider models ( #10030 )
2025-12-11 13:14:12 -08:00
Hannes Rudolph
51dbccf2e6
feat: add gpt-5.2 model to openai-native provider ( #10024 )
2025-12-11 13:16:31 -07:00
Hannes Rudolph
47320dca62
fix: handle empty Gemini responses and reasoning loops ( #10007 )
2025-12-11 08:55:47 -08:00
roomote[bot]
f9cfc66803
fix: add general API endpoints for Z.ai provider ( #9894 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-11 07:38:26 -08:00
Hannes Rudolph
483e70c47b
fix: apply versioned settings on nightly builds ( #9997 )
2025-12-10 14:28:13 -08:00
Chris Estreich
2a70a2ec0e
@roo-code/types v1.90.0 ( #9998 )
2025-12-10 14:14:38 -08:00
Hannes Rudolph
f05dd59a2b
Remove Glama provider ( #9801 )
2025-12-10 14:08:29 -08:00
Daniel
fda020a418
fix: filter out 429 rate limit errors from API error telemetry ( #9987 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: cte <cestreich@gmail.com>
2025-12-10 11:32:00 -08:00
Daniel
24eb6ae984
feat: add API error telemetry to OpenRouter provider ( #9953 )
...
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-09 16:30:29 -08:00