mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-08 00:02:20 +03:00
* fix(sse): route the public OpenAI GPT-5.6 family through the Responses API OpenAI's Chat Completions endpoint rejects GPT-5.6 requests that combine function tools with an active reasoning_effort: 400 "Function tools with reasoning_effort are not supported for <model> in /v1/chat/completions. Please use /v1/responses instead." The openai (API-key) registry entries for gpt-5.6 / -sol / -terra / -luna were missing the per-model `targetFormat` tag, so every request was posted to /v1/chat/completions. Any agentic client sending tools + reasoning to openai/gpt-5.6-sol hit the 400 and burned a combo fallback attempt. OmniRoute already has the generic mechanism this needs — the same per-model `targetFormat: "openai-responses"` override that routes gpt-5.5-pro / gpt-5.4-pro (#5842). It drives BOTH the outbound URL (DefaultExecutor.buildUrl → api.openai.com/v1/responses) and the body translation (chatCore's resolveChatCoreTargetFormat → openai-responses). Tagging GPT_5_6_API_CAPABILITIES is therefore the whole fix; no new transport table or routing branch is required. Scoped to the public OpenAI API catalog: the codex provider has its own Responses transport and is untouched. Co-authored-by: Sutarto Jordan Chrisfivo <Jordannst@users.noreply.github.com> Inspired-by: https://github.com/decolua/9router/pull/2547 * chore(changelog): fragment for #7242 --------- Co-authored-by: Sutarto Jordan Chrisfivo <Jordannst@users.noreply.github.com>