Description
OpenCode auto-injects textVerbosity: "low" for any model whose ID matches gpt-5.*, regardless of the actual backend provider. Via an @ai-sdk/openai-compatible provider (e.g. a LiteLLM gateway), this becomes verbosity in the request body. When the gateway routes to AWS Bedrock ("Bedrock Mantle"), Bedrock rejects the unknown parameter and LiteLLM throws UnsupportedParamsError, breaking every request to the model (including fallback attempts).
Root cause in packages/opencode/src/provider/transform.ts (options()), current dev branch:
if (
input.model.api.id.includes("gpt-5.") &&
!input.model.api.id.includes("codex") &&
!input.model.api.id.includes("-chat") &&
input.model.providerID !== "azure"
) {
result["textVerbosity"] = "low"
}
The guard excludes Azure but allows every other provider through, including generic @ai-sdk/openai-compatible proxies that don't understand verbosity at all. This is the same class of bug fixed for reasoningSummary in #21237 / #22352 — textVerbosity never received the equivalent fix.
A related PR (#42075) already implemented and tested the correct fix, but it was auto-closed by the compliance bot for lacking a linked issue before it could be reviewed. This issue exists to unblock a fresh PR with that fix.
Plugins
None — reproduced with a custom @ai-sdk/openai-compatible provider pointed at a LiteLLM proxy that fronts AWS Bedrock.
OpenCode version
1.18.21
Steps to reproduce
- Configure a provider in
opencode.jsonc using "npm": "@ai-sdk/openai-compatible" pointed at a LiteLLM proxy.
- Configure a model whose
api.id matches gpt-5.* (e.g. gpt-5.6-luna) that LiteLLM routes to AWS Bedrock ("Bedrock Mantle").
- Send any message to that model.
- Request fails with:
litellm.UnsupportedParamsError: bedrock_mantle does not support parameters: ['verbosity'], for model=openai.gpt-5.6-luna. To drop these, set `litellm.drop_params=True` ...
Screenshot and/or share link
N/A (internal proxy, cannot share)
Operating System
macOS 26 (Darwin)
Terminal
N/A (also reproduces headless / non-interactive)
Description
OpenCode auto-injects
textVerbosity: "low"for any model whose ID matchesgpt-5.*, regardless of the actual backend provider. Via an@ai-sdk/openai-compatibleprovider (e.g. a LiteLLM gateway), this becomesverbosityin the request body. When the gateway routes to AWS Bedrock ("Bedrock Mantle"), Bedrock rejects the unknown parameter and LiteLLM throwsUnsupportedParamsError, breaking every request to the model (including fallback attempts).Root cause in
packages/opencode/src/provider/transform.ts(options()), currentdevbranch:The guard excludes Azure but allows every other provider through, including generic
@ai-sdk/openai-compatibleproxies that don't understandverbosityat all. This is the same class of bug fixed forreasoningSummaryin #21237 / #22352 —textVerbositynever received the equivalent fix.A related PR (#42075) already implemented and tested the correct fix, but it was auto-closed by the compliance bot for lacking a linked issue before it could be reviewed. This issue exists to unblock a fresh PR with that fix.
Plugins
None — reproduced with a custom
@ai-sdk/openai-compatibleprovider pointed at a LiteLLM proxy that fronts AWS Bedrock.OpenCode version
1.18.21
Steps to reproduce
opencode.jsoncusing"npm": "@ai-sdk/openai-compatible"pointed at a LiteLLM proxy.api.idmatchesgpt-5.*(e.g.gpt-5.6-luna) that LiteLLM routes to AWS Bedrock ("Bedrock Mantle").Screenshot and/or share link
N/A (internal proxy, cannot share)
Operating System
macOS 26 (Darwin)
Terminal
N/A (also reproduces headless / non-interactive)