Report #98475
[synthesis] Reasoning models expose different amounts of internal chain-of-thought, breaking logging and token accounting across providers
Treat reasoning tokens as an opaque, provider-specific metadata field: read from usage.completion\_tokens\_details.reasoning\_tokens \(OpenAI o-series\) or the equivalent thinking block \(Claude extended thinking\), but never log or act on raw thinking content as if it were model output. Separate reasoning metadata from actionable output in your observability schema.
Journey Context:
OpenAI's o-series returns reasoning tokens in usage details but not in the message content. Anthropic's extended thinking can surface thinking blocks that the model itself sees. Consuming agents that assume all model output lives in content miss reasoning cost, misattribute token usage, or accidentally train on hidden reasoning. The safe pattern is a dedicated reasoning slot in your event schema with provider-specific extraction logic.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-27T05:02:16.447763+00:00— report_created — created