Skip to content

fix: route newer GitHub GPT models through Responses - #1641

Merged
diegosouzapw merged 2 commits into
cheaper-inference:release/v3.7.1from
dhaern:fix/github-gpt-responses-routing
Apr 27, 2026
Merged

diegosouzapw merged 2 commits into
cheaper-inference:release/v3.7.1from
dhaern:fix/github-gpt-responses-routing

Conversation

@dhaern

@dhaern dhaern commented Apr 27, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Mark the newer GitHub Copilot GPT models (gpt-5.4-nano, gpt-5.4-mini, gpt-5.4, and gpt-5.5) with targetFormat: \"openai-responses\".
  • This makes the existing GitHub executor route them to https://api.githubcopilot.com/responses instead of /chat/completions.

Why

GitHub Copilot rejects at least gpt-5.4-mini on the Chat Completions endpoint with:

model \"gpt-5.4-mini\" is not accessible via the /chat/completions endpoint

OmniRoute already supports per-model Responses routing for GitHub Copilot through targetFormat: \"openai-responses\". Existing Codex-style GitHub models already use that path. The newer GPT 5.4/5.5 entries were added without that marker, so they were routed to the wrong upstream endpoint.

This change only updates the static model registry metadata. It does not change request/response translators or executor behavior; it reuses the existing Responses translation and GitHub responsesBaseUrl path.

Validation

  • git diff --check
  • npm run lint (passes with existing warnings, 0 errors)
  • Pre-commit hooks passed

Notes

This is intentionally a minimal registry-only fix so GitHub Copilot GPT 5.4/5.5 models use the same Responses routing mechanism already used by other GitHub models that require Responses.

@dhaern
dhaern requested a review from diegosouzapw as a code owner April 27, 2026 01:36

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the providerRegistry.ts file to include the targetFormat: "openai-responses" property for several GPT-5.4 and GPT-5.5 models. Feedback suggests using the shared GPT_5_5_CODEX_CAPABILITIES object for the gpt-5.5 model to ensure consistency in capability flags and prevent potential issues with reasoning parameters.

Comment thread open-sse/config/providerRegistry.ts Outdated
{ id: "gpt-5.4-nano", name: "GPT-5.4 Nano", targetFormat: "openai-responses" },
{ id: "gpt-5.4-mini", name: "GPT-5.4 Mini", targetFormat: "openai-responses" },
{ id: "gpt-5.4", name: "GPT-5.4", targetFormat: "openai-responses" },
{ id: "gpt-5.5", name: "GPT-5.5", targetFormat: "openai-responses" },

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For consistency with the codex provider (see line 388), consider using the shared GPT_5_5_CODEX_CAPABILITIES object for the gpt-5.5 model. This ensures that capability flags like supportsReasoning, supportsVision, and the correct contextLength are applied to this model in the github provider as well, preventing potential issues where reasoning parameters might be stripped by translators.

Suggested change
{ id: "gpt-5.5", name: "GPT-5.5", targetFormat: "openai-responses" },
{ id: "gpt-5.5", name: "GPT-5.5", ...GPT_5_5_CODEX_CAPABILITIES },

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @gemini-code-assist[bot], I verified that GPT_5_5_CODEX_CAPABILITIES is safe to reuse for the GitHub gpt-5.5 registry entry: it keeps targetFormat: "openai-responses" and only adds model capability metadata (toolCalling, supportsReasoning, supportsVision, supportsXHighEffort, and contextLength). The GitHub executor still routes by provider/model through getModelTargetFormat("gh", model), so this does not switch the model to the Codex executor.

Applied your suggestion in commit 50ca79bd.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for verifying that, @dhaern. That sounds correct; reusing the GPT_5_5_CODEX_CAPABILITIES object is the right approach to ensure consistent metadata application while maintaining the intended routing behavior.

@diegosouzapw
diegosouzapw merged commit acf6ad4 into cheaper-inference:release/v3.7.1 Apr 27, 2026
1 of 2 checks passed
@diegosouzapw

Copy link
Copy Markdown
Collaborator

Thanks @dhaern for this clean, minimal fix! 🎉 The GitHub Copilot GPT 5.4/5.5 models are now correctly routed through the Responses API. Merged into release/v3.7.1 — will be included in the next release. We appreciate the contribution!

HouMinXi pushed a commit to HouMinXi/OmniRoute that referenced this pull request Aug 2, 2026
…ce#1641)

Integrated into release/v3.7.1 — routes gpt-5.4-nano, gpt-5.4-mini, gpt-5.4, and gpt-5.5 through the Responses API on GitHub Copilot.
Poid-ZA pushed a commit to Poid-ZA/OmniRoute that referenced this pull request Aug 5, 2026
…ce#1641)

Integrated into release/v3.7.1 — routes gpt-5.4-nano, gpt-5.4-mini, gpt-5.4, and gpt-5.5 through the Responses API on GitHub Copilot.
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…ce#1641)

Integrated into release/v3.7.1 — routes gpt-5.4-nano, gpt-5.4-mini, gpt-5.4, and gpt-5.5 through the Responses API on GitHub Copilot.
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.

2 participants