{"version":"2.1.321","anchor":"interrupted-sdk-thinking-blocks-can-be-resent-behind-tengu","canonical_anchor":"interrupted-sdk-thinking-blocks-can-be-resent-behind-tengu","heading":"SDK sessions can resend reasoning that was cut off mid-stream","tier":"internal","area":"SDK","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.321\/e\/interrupted-sdk-thinking-blocks-can-be-resent-behind-tengu","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.321","markdown":"### SDK sessions can resend reasoning that was cut off mid-stream\n\nWhen Claude's reasoning is cut off in an SDK session, Claude Code can send the partial reasoning in the next request, behind a switch that is off by default\n\n**What**\n\nThe SDK is the software development kit for running Claude Code from your own programs. When Claude is thinking, it produces a thinking block, which is its written reasoning. If that block is cut off before it finishes, Claude Code can now rebuild it from the partial text and send it with the next request. It sends the text with an empty signature and records that this happened.\n\nThis only happens when all of these are true:\n\n- The block is a thinking block\n\n- The session was started through the SDK\n\n- A remote switch is on; it is off unless it is switched on remotely\n\nThe flag server returned off for this site's account and for the anonymous baseline.\n\n**Why**\n\nAn SDK session interrupted mid-thought could keep its partial reasoning in the next request instead of losing it.\n\n- Flag `tengu_velvety_galaxy`: Off in both readings (read for one account on one subscription tier against v2.1.321; this account: off, anonymous baseline: off, compiled default: off) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Area: SDK\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: no"}