gpt-5.6-sol drops Codex Desktop thread-management tools that are available on gpt-5.6-terra in the same task

Open
#33,637 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
42/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Quiet
Tech stack
rust
Domain
devtools, tooling

Research direction

Start by reproducing the documented A/B/A model switch in Codex Desktop and compare the model-visible tool registry for Terra and Sol. The issue names no repository files or tests, so trace the model-route and tool-registry construction area described as the suspected boundary. Done means the thread-management tools remain available consistently, or the limitation is explicitly surfaced and documented.

Written by the indexing model from the issue text.

Description

app app-server bug
What version of Codex is running?
  • Codex Desktop for Windows: 26.707.12708.0
  • Bundled/local CLI observed: codex-cli 0.144.1
  • Subscription: ChatGPT Pro
  • OS: Windows x64
  • Host mode: local task, Full Access
What issue are you seeing?

In the same persistent Codex Desktop task, switching only the model from gpt-5.6-terra to gpt-5.6-sol removes the model-visible codex_app thread-management tool surface. Switching back to Terra restores it.

This affects system-owned Codex Desktop tools, not a custom MCP server.

Affected tools include:

  • codex_app.list_threads
  • codex_app.read_thread
  • codex_app.send_message_to_thread
  • codex_app.create_thread
  • codex_app.fork_thread
  • codex_app.set_thread_title
  • codex_app.set_thread_archived
  • codex_app.set_thread_pinned
  • codex_app.handoff_thread

On the Sol turn, only these codex_app tools were available:

  • navigate_to_codex_page
  • read_thread_terminal
  • load_workspace_dependencies
Controlled same-task reproduction

Technical task ID: 019f6bb0-7f30-7b61-938c-7b9843d6ec18

The task, cwd, permissions, and reasoning level stayed the same. Only the model changed.

  1. Start/use the task with gpt-5.6-terra, reasoning low.
  2. Ask which listed codex_app thread tools are available.
  3. Terra reports them available. A direct inspection of the current tool registry returned all nine listed tools.
  4. Switch the same task to gpt-5.6-sol, reasoning low.
  5. Ask again. Sol receives only the three basic codex_app tools listed above and cannot call list_threads, read_thread, send_message_to_thread, or create_thread.
  6. Switch the same task back to gpt-5.6-terra.
  7. Direct registry inspection again returns all nine tools.

Observed sequence:

gpt-5.6-terra -> 9 thread-management tools available
gpt-5.6-sol   -> thread-management tools absent; only 3 basic app tools
gpt-5.6-terra -> 9 thread-management tools available again

The local rollout records the model changes and results at approximately:

  • Terra turn: 2026-07-16T16:09:27Z
  • Sol turn: 2026-07-16T16:12:08Z
  • Terra control: 2026-07-16T16:21:54Z
Expected behavior

If these thread-management tools are enabled for the user/task, changing from Terra to Sol should not silently remove them. If Sol intentionally does not support them, the limitation should be documented and surfaced in the UI before model switching.

Actual behavior

The callable tool surface changes solely with the selected model. A long-lived orchestrator task can read/create/message other tasks on Terra, then loses those capabilities immediately on Sol, and regains them when switched back.

Impact

This breaks persistent multi-thread orchestration on the strongest reasoning model. Parent/router tasks cannot reliably:

  • receive or inspect worker results;
  • send completion callbacks or follow-up instructions;
  • create worker tasks;
  • archive, pin, or rename managed tasks.

It also makes the failure look intermittent or focus/thread dependent when it is reproducibly model-turn dependent in this test.

Suspected boundary

The tool definitions exist in the Desktop installation and are admitted for Terra, but are not selected/registered into the Sol turn's model-visible tool surface. This looks like a model-route/tool-registry construction issue, potentially related to the Responses Lite/deferred-tool exposure class, rather than a missing local configuration.

Related:

  • #19425 - tools discovered but not exposed to Desktop threads
  • #14923 - explicit cross-thread orchestration
  • #21177 - Desktop thread refresh/focus behavior

I can provide the local rollout excerpt or screenshots if maintainers need them. No repository data is required to reproduce the model A/B/A switch.

Dominant language
Rust
Stars
125k
Forks
19.5k
Avg merge
1m
Merged PRs (30d)
1k

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.

More from openai/codex

All issues in openai/codex

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.