Skip to content

GPT 5.2 thinking blocks missing #11273

Closed
Closed

Description

@NamedIdentity

Description

I don't usually use ChatGPT, but noticed while using it the thinking blocks were missing.

I'm rather certain that wasn't so a few weeks ago.

Unclear why it's happening. Tried redoing oauth, no effect. I have a ChatGPT Plus account I oauth to.

Wondering if OpenAI changed something, or OpenCode bug.

Unsure how to report this or if I'm the only one affected and it's a strange config issue.

Other than no thinking blocks outputting into the TUI, it seems like GPT 5.2 High is 'working'.

Plugins

OMO, DCP (modified PR)

OpenCode version

1.1.34

Steps to reproduce

No response

Screenshot and/or share link

No response

Operating System

Windows 10

Terminal

Windows Terminal

Activity

  1. rekram1-node commented on Jan 30, 2026

    @rekram1-node
    Contributor

    Try without plugins?

  2. NamedIdentity commented on Jan 30, 2026

    @NamedIdentity
    Author

    Try without plugins?

    uninstalling OMO and DCP had no effect.

    Does GPT 5.2 have thinking blocks for you? Do you use OpenAI oauth or another provider?

  3. THEN00P commented on Jan 30, 2026

    @THEN00P

    I have the same issue on Mac. Yesterday i was on 1.1.40 and the blocks were still there.

  4. rekram1-node commented on Jan 30, 2026

    @rekram1-node
    Contributor
    Image

    I cannot replicate :/.

  5. vosscodes commented on Jan 30, 2026

    @vosscodes

    1.1.36 and 1.1.44 on linux had this issue over the last 2 days pretty much constantly, no plugins installed

    I got a blip of thinking this morning around 10-12 hours ago, then it disappeared again.

    they have started working again at some point during this afternoon - this appears to be an intermittent provider issue

    @rekram1-node your screenshot is using the opencode zen provider, not the openai provider, which may be different.

  6. rekram1-node commented on Jan 30, 2026

    @rekram1-node
    Contributor

    @vosscodes under the hood it should all function the same, here is screenshot w/ openai I can't replicate

    Image
  7. rekram1-node commented on Jan 30, 2026

    @rekram1-node
    Contributor

    Note that the thinking blocks are just summary blocks so if it is thinking for a long time we don't necesarily know what its thinking unless it emits the thinking block summaries, I've seen it hang for quite some time before due to long thinking periods

  8. vosscodes commented on Jan 30, 2026

    @vosscodes

    here is screenshot w/ openai I can't replicate

    as mentioned, things are currently working fine after thinking blocks were gone for days - it does indeed hang for quite some time while it is thinking, but the blocks were never displayed. I'd wager something was actually preventing them from emitting to us, hence them not being displayed + coming back later.

    here is a screenshot from this morning:

    Image
  9. rekram1-node commented on Jan 30, 2026

    @rekram1-node
    Contributor

    hm ig lmk if it continues happening, I use gpt-5.2 and gpt-codex-5.2 every day, haven't seen this at all

  10. NamedIdentity commented on Feb 17, 2026

    @NamedIdentity
    Author

    Update: Root Cause Found and Workaround Applied

    After investigating the OpenCode source, the issue is in how provider options flow through the LLM options merge chain for OAuth-authenticated OpenAI models.

    Root Cause

    When using OpenAI models via OAuth (Codex auth), the base options from ProviderTransform.options() in transform.ts only set include: ["reasoning.encrypted_content"] and reasoningSummary for providerID.startsWith("opencode") — not for providerID === "openai" (which is what OAuth uses). Without these parameters, the API performs reasoning internally but doesn't return thinking blocks in the response stream.

    The relevant code (transform.ts ~line 662):

    if (input.model.providerID.startsWith("opencode")) {
      result["promptCacheKey"] = input.sessionID
      result["include"] = ["reasoning.encrypted_content"]
      result["reasoningSummary"] = "auto"
    }

    OAuth models have providerID === "openai", so they skip this block entirely.

    For users with custom model definitions and variants, there's a second issue: the variant options merge on top of base options, but if the variant doesn't include include: ["reasoning.encrypted_content"], it may not be present in the final merged options unless set at the model options level.

    Workaround

    Adding options with the missing parameters directly to the model definition in opencode.json fixes thinking blocks for GPT 5.2:

    "openai": {
      "models": {
        "gpt-5.2": {
          "options": {
            "reasoningEffort": "high",
            "reasoningSummary": "auto",
            "include": ["reasoning.encrypted_content"],
            "store": false
          }
        }
      }
    }

    These model-level options merge at layer 2 of the options chain (llm.ts line 110: mergeDeep(input.model.options)), which applies to all sessions using the model — including subagents.

    Additional finding: reasoningEffort at agent level is silently ignored

    For users setting reasoningEffort at the agent config level (e.g., on custom agents), this field is not in the agent schema (agent.ts lines 22-47). It is silently ignored. The correct way to lock an agent to a reasoning level is "variant": "high" at the agent level, which IS supported (agent.ts line 210, resolved in prompt.ts lines 831-838).

    Note on Codex 5.3

    Codex 5.3 models show thinking blocks after this fix, but they are very concise (1-2 sentence summaries). This appears to be model behavior rather than a config issue — the Codex endpoint returns valid response.reasoning_summary_text.delta events, but the model produces terse summaries. See #12523 for the same report.

    Environment

    • OpenCode 1.1.34 (custom build)
    • Windows 10
    • OAuth via ChatGPT Plus
  11. NamedIdentity commented on Feb 17, 2026

    @NamedIdentity
    Author

    Closing as workaround found for thinking blocks showing up, even though issues specific to Codex 5.3 remain.

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

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingwindows

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions