anomalyco / anomalyco/opencode
zen/go/v1 upstream (Console Go) rejects Codex tool schemas that omit required - Missing 'limit'
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
issue draft (anomalyco/opencode)
Title:
zen/go/v1upstream ("Console Go") rejects Codex tool schemas that omitrequired(Missing 'limit')
Body:
When using muse-spark-1.2-contributor through https://opencode.ai/zen/go/v1
with Codex Desktop, requests fail with:
Error from provider (Console Go): Upstream request failed: [invalid_request_error] 'required' is required to be supplied and to be an array including every key in properties. Missing 'limit'.
The request is a standard Responses API call. The limit property comes from
Codex Desktop's own list_threads / list_archived_threads tool schemas
(additionalProperties: false, no required). Simple requests without tools
work fine, and the same request succeeds for other models on the same gateway
(e.g. deepseek-v4-flash).
The upstream's strict schema validation rejects schemas that OpenAI itself
accepts for non-strict tools. Please either relax the validation to only apply
when the tool is explicitly marked strict: true, or surface which field
failed so clients can adapt. Repro payloads are in the linked Codex issue.
Related: #37231, #43163, #43557.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the zen/go/v1 Responses API request path and the reproduction payloads in the linked Codex issue. Confirm whether non-strict tool schemas are being validated as strict, then check how the upstream error is surfaced. Done means non-strict schemas are accepted or the failing field is reported clearly, with regression coverage for the reported request.
Written by the indexing model from the issue text.
Assessment
- Domain
- api
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100