{"version":"2.1.281","anchor":"stream-that-ends-cleanly-mid-response-is-now-treated-as-a-dr","canonical_anchor":"stream-that-ends-cleanly-mid-response-is-now-treated-as-a-dr","heading":"Stream that ends cleanly mid-response is now treated as a dropped connection (StreamTruncatedError)","tier":"notice","area":"Models","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281\/e\/stream-that-ends-cleanly-mid-response-is-now-treated-as-a-dr","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281","markdown":"### Stream that ends cleanly mid-response is now treated as a dropped connection (StreamTruncatedError)\n\nA response stream that ends early is now treated as a dropped connection and retried, shown as 'Connection closed before the response finished'\n\n**What**\n\nClaude's replies arrive as a stream, a piece at a time. If that stream closes normally but before the reply is complete, Claude Code now treats it as a dropped connection. This covers a stream that ends in the middle of a content block, or ends without a final stop signal. You see \"Connection closed before the response finished\", and the error is on the list of network errors that are retried.\n\nA second new error covers a malformed stream, where an update points at a content block that does not exist or has already closed. Stream-failure telemetry gains the reasons `stream_truncated` and `malformed_stream`.\n\n**Why**\n\nA cut-off reply is no longer mistaken for a finished one, so you get a clear error and an automatic retry instead of a silently incomplete answer.\n\n- Area: Models\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 1\/5"}