Retry logic for rejected structured output response_format
Cluster 110631. Data as of
Nothing open on GitHub. Fix merged in #113966 on 17 Sep 2026. Check it covers your case.
The short answer
- Known?
- Yes. 4 related items grouped here, 1 issue already closed.
- Fix event
- A fix was merged to main in PR #113966. Check it covers your case. No release data is tracked.
- Tracker
- The maintainers' tracker marks this
resolved, deciding PR #111439. That is separate from the fix event. - Still open
- Nothing open on GitHub.
These issues and PRs address cases where providers reject the object-form response_format.json_schema (via 400 or 422 errors) and the detection or retry logic fails to handle those rejections correctly. The work focuses on improving fallback behavior so requests are retried without structured output when a provider rejects it by shape or status code.
Open issues0
Open PRs0
Fixes on record
-
#111439 fix(auxiliary): 422 shape rejections of response_format.json_schema now retry without structured output (#110631, salvage #110633)
files:
agent/auxiliary_client.py,contributors/emails/[redacted:email],tests/agent/test_structured_output_rejection_retry.py -
#113966 fix(aux): structured-output 400s no longer kill fallback candidates or cost a doomed first request on DeepSeek (#83390, #105191, salvage #92908)
files:
agent/auxiliary_client.py,agent/auxiliary_structured_output.py,plugins/model-providers/deepseek/__init__.py,providers/base.py,tests/agent/conftest.py,tests/agent/test_auxiliary_structured_output.py,website/docs/developer-guide/model-provider-plugin.md
1 PR closed without merging
From the close comments: done elsewhere 1
-
#110633 fix(auxiliary): retry without response_format when a provider rejects the object-form json_schema by shape · done elsewhere →
5cc8177,#113966
Closed issues · 1
- Closed#110631_is_structured_output_rejection misses gateways that reject the object-form response_format.json_schema by shape (422)
How this cluster was grouped
-
Link evidence (
structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference. -
Pairwise link density
0.50: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36.1.00means every pair is linked.
Pick up a Lab task
Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.
Open the Lab