Skip to content

fix: let the provider decide which chat options a model supports - #8

Merged
Marketen merged 1 commit into
mainfrom
fix/forward-unsupported-capabilities
Oct 15, 2026
Merged

Marketen merged 1 commit into
mainfrom
fix/forward-unsupported-capabilities

Conversation

@Marketen

Copy link
Copy Markdown
Contributor

Summary

The Gateway rejected streaming, tools, parallel tool calls and structured output with 422 unsupported_feature whenever a model's catalog flag was off, before the request reached the provider. A stale flag therefore blocked requests the provider would accept.

Chat options now go to the provider unchanged, and the provider decides. Endpoint routing, privacy policy and credit checks still apply, and SystemOne streaming is still rejected. Catalog flags are unchanged and still listed in /v1/models.

PublicModel.SupportsStreamForEndpoint is removed; nothing uses it after this change.

Compatibility

A client that sends one of these options to a model whose flag is off gets the provider's response instead of a 422.

Tests

  • Unit tests: a model with every flag off accepts these options, and SystemOne streaming is still rejected.
  • Checked end to end against real providers: structured output, JSON mode and parallel tool calls that main rejected now reach the provider.

🤖 Generated with Claude Code

The Gateway rejected streaming, tools, parallel tool calls and structured
output with 422 unsupported_feature whenever the catalog flag for the model
was off, before contacting the provider. Stale flags therefore blocked
requests the provider accepts: in the 2026-10-14 production catalog, structured
output on minimax/minimax-m2.7 and four private/ models, and parallel tool
calls on private/glm-5.3.

Chat options now go to the provider unchanged. Endpoint routing, privacy
policy, credit checks and the SystemOne no-streaming rule still apply.
SupportsStreamForEndpoint is removed; nothing uses it any more.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Marketen
Marketen merged commit b103990 into main Oct 15, 2026
5 checks passed
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.

1 participant