Skip to content

Bug report: Sol subagents inherit GPT-6 identity instructions; serving-model provenance is unavailable in inspected records #44598

Open

Description

@bridgetide

What version of the Codex App are you using (From “About Codex” dialog)?

26.903.61454

What subscription do you have?

Pro

What platform is your computer?

Microsoft Windows NT 10.0.19045.0 x64

What issue are you seeing?

Bug report: Sol subagents inherit GPT-6 identity instructions; serving-model provenance is unavailable in inspected records

Summary

In Codex desktop on Windows, three subagents explicitly requested as gpt-5.6-sol answered “What model are you?” by identifying as GPT-6. Their saved base instructions contain “You are Codex, an agent based on GPT-6.” Session configuration, turn metadata, and sampling-request traces consistently specify gpt-5.6-sol for all three identity tests and three earlier sentence tests.

This is an observed identity-instruction inconsistency and a model-provenance observability gap. It is not evidence that the model override was ignored, that GPT-6 actually served these responses, or that reinforcement learning caused the answers.

Environment and scope

  • Codex desktop, Windows, local tasks.
  • Tests recorded September 10, 2026 UTC (September 9 in America/Phoenix).
  • Parent task: 01a08849-a34c-71f2-9de1-141f82aa899c; parent model recorded as gpt-6-astra.
  • Explicit child model: gpt-5.6-sol; fresh-context option: fork_turns: "none".
  • Three identity tests; three prior sentence tests corroborate request-model metadata.
  • Exact desktop build was not captured in this audit; developers should resolve it from diagnostic records if available.

Reproduction

  1. From a GPT-6 Astra parent task with subagent support, explicitly request three GPT-5.6 Sol subagents.
  2. For each child, invoke collaboration.spawn_agent with the following arguments, using distinct task names:
{
  "task_name": "sol_identity_repro_1",
  "model": "gpt-5.6-sol",
  "fork_turns": "none",
  "message": "What model are you?"
}
  1. Collect the completed child answers.
  2. Compare each child's saved base instructions, turn model, request trace model, and any server-returned model metadata. Do not treat the generated answer as a provenance check.

Observed versus expected

Check Observed Expected
Identity answer One child: “I’m GPT-6, operating as Codex.” Two: “I’m Codex, based on GPT-6.” The assistant accurately distinguishes its Codex role from the configured model and the limits of runtime verification.
Saved identity instruction GPT-6-specific sentence in all six child sessions Model-neutral shared identity, or model-specific instructions correctly resolved for the child.
Client model records All six specify gpt-5.6-sol in session, turn, and sampling-request metadata Preserve this consistency.
Serving-model evidence Response IDs and usage retained; no server-returned model field found in inspected records Expose requested model and provider-reported serving model separately, with explicit unknown status where unavailable.

Evidence for provider-side investigation

Child Task ID Response ID
sol_model_check_1 01a08a05-37d4-7073-b69d-f78fa17adca7 resp_0494098b1e042a38016aa24f29c8e487d0abf4a5f1c71fbc90
sol_model_check_2 01a08a05-4eee-71a3-b831-a5709d10cc04 resp_0aad90bdfa4781f9016aa24f2f76fc87d0bf0f4191026f668e
sol_model_check_3 01a08a05-665a-7933-a4f9-ca6a1f559104 resp_0084429608f21bd9016aa24f35b49487d0ab817eab76bdc9e3

The accompanying audit records all six runs, timestamps, turn IDs, request-log row IDs, rollout line references, and source hashes. These are correlated client records, not independent backend attestations. Source hashes support later file comparison; they do not authenticate backend execution.

Proposed engineering changes

  1. Inspect child prompt assembly when a model override is applied. Remove the fixed model-family identity from shared role text. A suitable shared opening is “You are Codex, an AI coding assistant.” This is a proposed product change, not a change applied to the current app.
  2. Provide structured model provenance with separate requested-model, resolved client-model, provider-reported model, response ID, and fallback/reroute information. Preserve provenance per response, including retries and model changes. Never populate a provider-reported field by copying the requested model when provider evidence is absent.
  3. Expose that metadata in subagent details and diagnostic exports so users do not need to inspect local databases or ask a model to identify itself. Label missing serving-model metadata as unavailable.
  4. Resolve the three response IDs above against provider-side traces and confirm the serving model and any rerouting. Report the result with its provenance.

Regression and acceptance checks

  • A parent/child model mismatch does not inject the parent's model-family identity into the child's shared instructions.
  • Verify prompt assembly for fresh children and supported history-inheritance paths; explicit unsupported override combinations return a clear error.
  • Explicit Sol selection reaches the sampling request as Sol.
  • Mock provider-reported model differences and verify they remain visible; missing provider fields remain unknown.
  • Retries, fallbacks, resumed tasks, and model switches retain response-specific provenance.
  • A model-identity question distinguishes configured model from provider-reported execution information. Do not use a generated sentence alone as the pass condition.
  • Diagnostic exports contain only necessary provenance, without credentials, raw headers, or unrelated task content.

Attachments and limits

  • model-provenance.md: readable six-run evidence audit.
  • model-provenance.json: structured local evidence; contains local source paths and task identifiers for investigation.
  • Raw sessions, complete prompts, authentication material, and unrelated research transcripts are not included in this report.

The prompt inconsistency is directly observed. Its causal role in the generated identity answers is a strong explanation, not an ablation-tested result. No app-source patch or provider-side verification has been performed. This report has been prepared locally and has not been submitted.

What steps can reproduce the bug?

Feedback ID: 01a08849-a34c-71f2-9de1-141f82aa899c

What is the expected behavior?

Sub agents should respond with their correct underlying models.

Additional information

No response

Activity

  1. added
    appIssues related to the Codex desktop app
    on Sep 10, 2026
  2. added
    bugSomething isn't working
    subagentIssues involving subagents or multi-agent features
    model-behaviorIssues related to behaviors exhibited by the model
    on Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingmodel-behaviorIssues related to behaviors exhibited by the modelsubagentIssues involving subagents or multi-agent features

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions