Before submitting
Area
apps/web
Steps to reproduce
- Start a parent thread using
GPT-6.1-Sol with Extra High reasoning effort (gpt-6.1-sol / xhigh).
- Spawn a native Codex subagent specifying
gpt-6-luna with max reasoning effort.
- Wait for the subagent to complete its run.
- Open the dedicated thread view of the spawned subagent in T3 Code.
- Inspect the bottom status bar (
ProviderSubagentBar).
Expected behavior
The bottom status bar of the subagent view should show the actual model and reasoning effort configured for and executing the subagent:
GPT-6-Luna Max Completed in 1m 15s Runs on its own
Actual behavior
The status bar displays the parent thread's model and effort instead:
GPT-6.1-Sol Extra High Completed in 1m 15s Runs on its own
Investigation & Root Cause
Inspecting the runtime state and databases reveals the breakdown:
- Codex execution truth:
- In
~/.codex/state_5.sqlite and the rollout .jsonl session file:
{ "model": "gpt-6-luna", "reasoning_effort": "max", "thread_source": "subagent" }
- T3 projection state:
- In
orchestration_v2_projection_provider_threads:
nativeMetadata is null.
- In
orchestration_v2_projection_threads:
modelSelection was cloned verbatim from the parent thread:
"modelSelection": {
"instanceId": "codex",
"model": "gpt-6.1-sol",
"options": [{"id": "reasoningEffort", "value": "xhigh"}, {"id": "serviceTier", "value": "default"}]
}
- UI rendering logic (
ProviderSubagentBar.tsx):
- In
apps/web/src/components/chat/ProviderSubagentBar.tsx:
When nativeMetadata.modelSelection is null (via deriveReportedModelSelection), the UI falls back to props.selectedThread.modelSelection.model and formatModelSelectionEffort(props.selectedThread.modelSelection).
- As a result, the parent's configuration is presented as the child's, misleading users into believing the subagent consumed the parent's flagship tier.
Impact
Minor bug or occasional failure. Causes confusion regarding actual model consumption and token expenditure across subagent runs.
Version or commit
T3 Code Nightly 0.0.46-nightly.20261010.2908
Environment
macOS 26.7, Apple Silicon, T3 Code Desktop, Codex CLI 0.162.1
Related Issues
Before submitting
ProviderSubagentBar).Area
apps/web
Steps to reproduce
GPT-6.1-SolwithExtra Highreasoning effort (gpt-6.1-sol / xhigh).gpt-6-lunawithmaxreasoning effort.ProviderSubagentBar).Expected behavior
The bottom status bar of the subagent view should show the actual model and reasoning effort configured for and executing the subagent:
GPT-6-Luna Max Completed in 1m 15s Runs on its ownActual behavior
The status bar displays the parent thread's model and effort instead:
GPT-6.1-Sol Extra High Completed in 1m 15s Runs on its ownInvestigation & Root Cause
Inspecting the runtime state and databases reveals the breakdown:
~/.codex/state_5.sqliteand the rollout.jsonlsession file:{ "model": "gpt-6-luna", "reasoning_effort": "max", "thread_source": "subagent" }orchestration_v2_projection_provider_threads:nativeMetadataisnull.orchestration_v2_projection_threads:modelSelectionwas cloned verbatim from the parent thread:ProviderSubagentBar.tsx):apps/web/src/components/chat/ProviderSubagentBar.tsx:When
nativeMetadata.modelSelectionis null (viaderiveReportedModelSelection), the UI falls back toprops.selectedThread.modelSelection.modelandformatModelSelectionEffort(props.selectedThread.modelSelection).Impact
Minor bug or occasional failure. Causes confusion regarding actual model consumption and token expenditure across subagent runs.
Version or commit
T3 Code Nightly
0.0.46-nightly.20261010.2908Environment
macOS 26.7, Apple Silicon, T3 Code Desktop, Codex CLI
0.162.1Related Issues