fix(api-proxy): apply responses wire API unconditionally for GPT-5/O3 models on COPILOT_GITHUB_TOKEN path#3207
Conversation
Smoke Test Results
Overall: 2/3 PASS
|
🤖 Copilot Smoke Test Results
Overall: FAIL — Pre-step template variables were not substituted; smoke data unavailable. GitHub MCP auth failed with 401.
|
Smoke Test: Copilot BYOK (Offline) Mode
Running in BYOK offline mode ( Overall: FAIL — pre-computed smoke-data outputs were not substituted into the prompt (template vars literal), and GitHub MCP returned 401.
|
Smoke Test: FAIL✅ GitHub PR review: feat: auto-forward OTEL_* env vars with one-shot token protection for headers; Fix token usage extraction for OpenAI Responses API ( Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "registry.npmjs.org"See Network Configuration for more information.
|
🏗️ Build Test Suite Results
Overall: 8/8 ecosystems passed — ✅ PASS
|
Smoke Test: GitHub Actions Services Connectivity
Overall: FAIL —
|
|
Smoke test starting... Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "localhost"See Network Configuration for more information.
|
|
@copilot address review feedback |
The reviewer bot reported it couldn't review any files because this PR has no code changes — the fix for this issue was already merged to |
Bug Fix
What was the bug?
COPILOT_PROVIDER_WIRE_API=responseswas only set inside thecopilotApiKeybranch ofbuildApiProxyService. When usingCOPILOT_GITHUB_TOKEN(the standard credential path in strict AWF mode), GPT-5-family models were left routed to the legacy/chat/completionsendpoint, producing a400error.How did you fix it?
Moved the
requiresResponsesWireApi(model)check into the sharedcopilotGithubToken || copilotApiKeyblock so it fires regardless of which credential path is active:The existing
RESPONSES_WIRE_API_MODEL_PATTERN(/(^|[/:])(gpt-5|o3)([-_.]|$)/i) already matchesgpt-5.4-minicorrectly.Testing
Added tests for the
COPILOT_GITHUB_TOKENcredential path covering positive cases (gpt-5,openai/o3-mini,gpt-5.4-mini,GPT-5,O3→ setsresponses) and negative cases (gpt-4o,o30,o3x→ no wire API override).