anomalyco / anomalyco/opencode

zen/go/v1 upstream (Console Go) rejects Codex tool schemas that omit required - Missing 'limit'

Open
#44,122 1 comment 0 reactions 0 assignees View on GitHub

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/v1 upstream ("Console Go") rejects Codex tool schemas that omit required (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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.