Skip to content

fix(api): serialize Codex thread settings in config (JAM-232) - #6

Draft
darvell-thenvoi wants to merge 2 commits into
jam-owned-stdio-latestfrom
fix/jam-232-codex-request-fields-latest
Draft

fix(api): serialize Codex thread settings in config (JAM-232)#6
darvell-thenvoi wants to merge 2 commits into
jam-owned-stdio-latestfrom
fix/jam-232-codex-request-fields-latest

Conversation

@darvell-thenvoi

Copy link
Copy Markdown
Collaborator

Resolves https://linear.app/thenvoi/issue/JAM-232/correct-codex-threadturn-serialization-for-reasoning-effort-and-web

Codex 0.148 reads thread reasoning and web-search defaults from thread/start and thread/resume config. The SDK instead emitted top-level effort and legacy search extras, inherited thread effort into turn/start, and sent unsupported per-turn modelProvider.

This branch first reapplies the previously reviewed native terminal-status patch after the latest fork replay, then corrects request ownership:

  • Thread start and resume serialize config.model_reasoning_effort and config.web_search.
  • Dynamic tools remain start-only.
  • Turn start sends only explicit per-turn effort and no provider or search fields.
  • Typed thread settings override duplicate generic config values while preserving unrelated config.
  • Public per-turn provider/search fields are removed with migration notes.

Review focus: exact Codex 0.148 field ownership, typed-versus-generic config precedence, and source compatibility for removed per-turn setters.

Verification:

  • Four exact serializer regressions fail on the prior pinned implementation, pass on this branch, and fail when only the serializer is reverted.
  • cargo fmt --all --check passed.
  • The full SDK suite passed: 76 unit, 8 high-level stdio, 4 raw stdio, 7 WebSocket, 8 protocol, and 2 schema tests.
  • Direct Codex 0.148 probes accepted start/cold-resume config effort, explicit turn effort, and start-only dynamic tools after capability negotiation.
  • Independent review approved the final two-commit diff against jam-owned-stdio-latest.

Jam's dependency pin and real owned-Codex start/resume/web-search journey remain in thenvoi/tjam and are not claimed by this dependency pull request.

@linear-code

linear-code Bot commented Aug 25, 2026

Copy link
Copy Markdown

JAM-232

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants