{"version":"2.1.282","anchor":"context-usage-count-skips-unmetered-assistant-messages","canonical_anchor":"context-usage-count-skips-unmetered-assistant-messages","heading":"Placeholder messages built mid-stream no longer count toward context size, tokens or cost","tier":"notice","area":"Context Window","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282\/e\/context-usage-count-skips-unmetered-assistant-messages","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282","markdown":"### Placeholder messages built mid-stream no longer count toward context size, tokens or cost\n\nAssistant messages assembled mid-stream are marked isUnmetered and left out of context, token and cost figures until the real message arrives\n\n**Unclear.** It is not clear which situations produce these placeholder replies in the first place.\n\n**What**\n\nWhile Claude's reply streams in, Claude Code sometimes builds a stand-in assistant message from partial or made-up state (`isMadeUp`). These stand-ins are now marked `isUnmetered`:\n\n- The context-size tracker, which scans back for the latest token usage, skips messages marked `isUnmetered`.\n\n- The helper that returns a message's usage skips them too, as it already did for one special placeholder model.\n\n- The per-tool-call usage path and cost accounting ignore their usage.\n\n- When the final message arrives and its usage is copied over, the `isUnmetered` flag is removed, so the completed message still counts.\n\n**Why**\n\nUsage copied into a placeholder could otherwise be counted as the current context size or added to token and cost totals. That affects the context percentage you see and when automatic compaction starts, which shortens the conversation history once it gets full.\n\n- Area: Context Window\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5"}