You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The PR Code Quality Reviewer agent job fails when the GitHub Copilot CLI backend rejects the configured model claude-sonnet-4.6 with a non-retryable model_not_supported error. The run exits code 1 producing an empty agent_output.json, so no review is posted.
failureClass=model_not_supported is treated as non-retryable — the harness gave up after attempt 1 despite retriesRemaining=3.
Firewall clean (59/59 allowed, api.githubcopilot.com reached 33×); not a network/auth/quota issue.
Final agent_output.json empty; last assistant message {"content":""}.
Probable root cause
The Copilot CAPI backend intermittently does not recognize/support the claude-sonnet-4.6 model identifier passed by the Copilot engine. Either (a) the model id/alias sent to CAPI is wrong or transiently unavailable, or (b) model_not_supported is being classified as terminal when the underlying condition is a transient backend availability blip. Same failure class as #40381 (Codex gpt-5-codex alias → retired model), but a different model — suggesting the model-id → CAPI mapping / retry policy needs hardening generally.
Proposed remediation
Verify the exact model string the Copilot engine sends to CAPI for claude-sonnet-4.6 and confirm it matches a currently-supported CAPI model id.
Make model_not_supported retryable with backoff (it consumed only attempt 1 of 4) when hasOutput/transient indicators suggest a backend blip, OR fail fast with a clear actionable message naming the unsupported model.
Emit the rejected model id into the conclusion outputs (model_not_supported_error) so future audits can confirm frequency.
Success criteria / verification
A PR Code Quality Reviewer run on claude-sonnet-4.6 completes and posts its review, or fails with an explicit "model X not supported by CAPI" message naming the model.
model_not_supported no longer terminates after a single attempt when retries remain.
Problem statement
The PR Code Quality Reviewer agent job fails when the GitHub Copilot CLI backend rejects the configured model
claude-sonnet-4.6with a non-retryablemodel_not_supportederror. The run exits code 1 producing an emptyagent_output.json, so no review is posted.Affected workflows and run IDs
claude-sonnet-4.6, Copilot engine). A prior baseline run of the same workflow succeeded, so the failure is intermittent rather than a hard config break.Evidence
failureClass=model_not_supportedis treated as non-retryable — the harness gave up after attempt 1 despiteretriesRemaining=3.api.githubcopilot.comreached 33×); not a network/auth/quota issue.agent_output.jsonempty; last assistant message{"content":""}.Probable root cause
The Copilot CAPI backend intermittently does not recognize/support the
claude-sonnet-4.6model identifier passed by the Copilot engine. Either (a) the model id/alias sent to CAPI is wrong or transiently unavailable, or (b)model_not_supportedis being classified as terminal when the underlying condition is a transient backend availability blip. Same failure class as #40381 (Codexgpt-5-codexalias → retired model), but a different model — suggesting the model-id → CAPI mapping / retry policy needs hardening generally.Proposed remediation
claude-sonnet-4.6and confirm it matches a currently-supported CAPI model id.model_not_supportedretryable with backoff (it consumed only attempt 1 of 4) whenhasOutput/transient indicators suggest a backend blip, OR fail fast with a clear actionable message naming the unsupported model.model_not_supported_error) so future audits can confirm frequency.Success criteria / verification
claude-sonnet-4.6completes and posts its review, or fails with an explicit "model X not supported by CAPI" message naming the model.model_not_supportedno longer terminates after a single attempt when retries remain.Related (not separately filed — budget-scoped)
Maximum LLM invocations exceeded (20/20)(turn-cap exhaustion; baseline succeeded at 12 turns on a smaller PR). P2 — raise/tune the turn cap or move ~50% data-gathering to deterministic pre-steps. Distinct from [aw-failures] [aw] Design Decision Gate pre-fetch aborts on large PRs — HTTP 406 'diff exceeded 300 files' #40075 (HTTP 406).Parent: failure report #39883. Analyzed runs: 27991312466, 27989420451, 27979436784.
Related to #39883