openai / openai/codex

[App] Spawned GPT-5.6-Luna agent shows medium reasoning in UI while rollout records max

Open
#38,733 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app bug subagent windows-os
Dominant language
Rust
Stars
125k
Forks
19.5k
PR merge metrics
PR metrics pending

Description

What version of the Codex App are you using?

Codex Desktop Windows package 26.810.7004.0.

The spawned agent rollout records cli_version: 0.148.0-alpha.9.

What platform are you using?

Windows x64.

What issue are you seeing?

A coordinator task spawned a child agent with an explicit model and reasoning override:

{
  "fork_context": false,
  "model": "gpt-5.6-luna",
  "reasoning_effort": "max",
  "service_tier": "priority"
}

The child was created successfully and the Codex Desktop UI identified it as GPT-5.6-Luna, but displayed its reasoning effort as medium.

The persisted rollout shows that the runtime actually applied max, so this appears to be a Desktop presentation/state synchronization bug rather than a backend reasoning fallback.

Relevant child metadata:

agent nickname: Lagrange
agent/thread id: 01a004df-6b6b-7e73-8eb3-152342dfa626
multi_agent_version: v1
model: gpt-5.6-luna
turn_context.effort: max
collaboration_mode.settings.reasoning_effort: max
Steps to reproduce
  1. Start a Codex Desktop coordinator task.
  2. Call the V1 spawn_agent tool with model: "gpt-5.6-luna", reasoning_effort: "max", and fork_context: false.
  3. Open or inspect the spawned child in the Desktop sidebar/UI.
  4. Observe that the UI displays medium reasoning.
  5. Inspect the child's persisted rollout.
  6. Observe that both turn_context.effort and collaboration_mode.settings.reasoning_effort are max.
Expected behavior

The spawned agent UI should display the effective reasoning effort recorded by the child thread, in this case max.

If the UI is showing a model default before thread settings are applied, it should refresh to the effective value once ThreadSettingsApplied or the child turn_context is available.

Actual behavior

The child runs with max according to persisted metadata, but the Desktop UI displays medium, leading the user to believe the requested override was ignored.

Additional information

This is distinct from reports where the runtime silently inherits or changes the parent model/effort. In this reproduction, the runtime selection is correct; only the visible reasoning-effort label is wrong.

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 by tracing the V1 spawn_agent flow through ThreadSettingsApplied and the spawned child’s Desktop sidebar presentation. Compare the displayed reasoning value with turn_context.effort and collaboration_mode.settings.reasoning_effort in the persisted rollout. Reproduce with reasoning_effort set to max; done means the child UI displays max after its effective settings are available.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.