Skip to content

[aw-failures] PR Code Quality Reviewer red — Copilot general-purpose subagent requests tier-unsupported model → SDK 400 `model [Content truncated due to length] #42095

Description

@github-actions

Constrain Copilot subagent model resolution to the run's supported-model set — an unsupported general-purpose subagent model 400s and kills the whole run, even after the parent agent did real work.

Sub-issue of #42033 (sub-agent model resolution). Distinct signature from the Codex variants — files separately, see correlation below.

Problem statement

When the Copilot-engine PR Code Quality Reviewer spawns a general-purpose subagent via the task tool, the subagent requests a model the run's Copilot subscription tier does not support. The SDK rejects it with HTTP 400, the harness classifies it terminal (isModelNotSupportedError=true), does not retry, and exits 1 — failing the entire run although the parent agent had already executed ~3m40s of real work (greps, file views, diff analysis) before the subagent was spawned.

Affected workflows and run IDs

  • PR Code Quality Reviewer — failure §28322748037 (2026-06-28 12:48 UTC), step Execute GitHub Copilot CLI.
  • Workflow is otherwise healthy: 11 of the 12 most recent runs are green (nearest success §28322887543, 12:54 UTC) — so this is an intermittent subagent-model defect, not a steady-state break.
Terminal log evidence (run 28322748037)
{"type":"subagent.started",...,"agentName":"general-purpose","agentDisplayName":"General Purpose Agent"}
[copilot-sdk-driver] [sdk-driver] error: 400 The requested model is not supported.
{"type":"subagent.failed",...,"agentName":"general-purpose","error":"No response generated"}
[copilot-harness] attempt 1 failed: exitCode=1 failureClass=model_not_supported ... isModelNotSupportedError=true ... retriesRemaining=3
[copilot-harness] attempt 1: model not supported — not retrying (the requested model is unavailable for this subscription tier; specify a supported model in the workflow frontmatter)
[copilot-harness] done: exitCode=1 totalDuration=3m 41s
##[error]Process completed with exit code 1.

Probable root cause

Subagent model resolution is not validated against the parent run's supported-model set before spawn. The harness already fetches the available models at startup (sibling Codex runs log awf-reflect: fetched 213 model(s)), but that list is not consulted when the general-purpose subagent picks its model. A single unsupported subagent model is then treated as a fatal, non-retryable run error.

audit-diff (base 28322748037 vs success 28322887543)

Confirms the failure is not an infra/firewall/network regression:

  • firewall_diff.summary.has_anomalies: false; only delta is github.com:443 reached in the failed run (extra git/bash work before the crash).
  • Identical GitHub API volume (8 calls each, core consumed 219 vs 226).
  • Token usage 0 in both (Copilot path), so the divergence is entirely the subagent model-resolution crash.

Proposed remediation

  1. Validate before spawn — constrain the general-purpose subagent's model to the supported-model set already fetched via awf-reflect; fall back to the parent's resolved model when the requested one is absent.
  2. Don't let a subagent model error fail a productive parent — when a subagent dies with model_not_supported after the parent has produced output/safe-outputs, degrade the subagent (return the error to the parent) instead of exiting the process 1. Mirrors the false-red concern in [aw-failures] Copilot CLI false-red — runs marked failure (exit 1) after safe-outputs succeed, via "numerous permission denied" [Content truncated due to length] #41636 / [aw-failures] Claude false-red — log_parser_bootstrap fails completed runs on empty logEntries (Avenger, Daily Rendering Scripts [Content truncated due to length] #41885.
  3. Immediate mitigation — pin a known-supported subagent model in the PR Code Quality Reviewer frontmatter.

Existing-issue correlation

Success criteria / verification

  • general-purpose subagents under Copilot no longer emit 400 The requested model is not supported, or a subagent model_not_supported no longer fails a parent run that already produced output.
  • 10 consecutive scheduled PR Code Quality Reviewer runs green.
  • Analyzed run IDs: failure 28322748037, comparator 28322887543.

Parent: #42033.
Related to #42033

Generated by 🔍 [aw] Failure Investigator (6h) · 213.5 AIC · ⌖ 27 AIC · ⊞ 5.2K ·

  • expires on Jul 5, 2026, 5:21 AM UTC-08:00

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions