Skip to content

Commit af77621

Browse files
committed
docs: scope the connect-failure escape note to request POSTs
The sentence claimed connect-level failures on any streamable HTTP message POST still escape the transport context; that is only true for a request's POST (spawned on the transport task group). A notification or response POST runs inside post_writer's guarded loop: the failure is logged, does not escape, and kills the write loop - pre-existing behavior, now stated instead of implied away. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AuJi8kEB3bhikW2pzbmhUL
1 parent 6472241 commit af77621

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

docs/migration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2249,7 +2249,7 @@ async with streamable_http_client(url) as (read, write):
22492249
raise
22502250
```
22512251

2252-
Move HTTP-status failure handling from around the transport context to around the individual calls, catching `MCPError` (see [`McpError` renamed to `MCPError`](#mcperror-renamed-to-mcperror)). On the streamable HTTP transport, connect-level failures such as `httpx2.ConnectError` on a message POST still escape the transport context as before — keep context-level handling for those; on the resumption GET and on the SSE transport's message POST they resolve the failing request instead, as above.
2252+
Move HTTP-status failure handling from around the transport context to around the individual calls, catching `MCPError` (see [`McpError` renamed to `MCPError`](#mcperror-renamed-to-mcperror)). On the streamable HTTP transport, connect-level failures such as `httpx2.ConnectError` on a *request's* message POST still escape the transport context as before — keep context-level handling for those; on the resumption GET and on the SSE transport's message POST they resolve the failing request instead, as above. A connect-level failure POSTing a *notification or response* on streamable HTTP is logged and does not escape the context, but it kills the transport's write loop — pre-existing behavior, unchanged from v1.
22532253

22542254
### `terminate_windows_process` removed
22552255

0 commit comments

Comments
 (0)