Skip to content

fix(mcp): BrokenPipe 视为 stdio server 已退出 - #1144

Merged
xiaozhou26 merged 1 commit into
mainfrom
fix/mcp-respawn-broken-pipe
Nov 3, 2026
Merged

xiaozhou26 merged 1 commit into
mainfrom
fix/mcp-respawn-broken-pipe

Conversation

@xiaozhou26

Copy link
Copy Markdown
Contributor

写 stdin 的 EPIPE 可能早于 try_wait / stdout EOF 可见,respawn_if_exited 因此不重启已死进程,导致 crashing_stdio_server_is_respawned_at_most_once 在 CI 上 flaky。BrokenPipe 时置 stdin_closed,ensure_running 返回错误。

本地 integration_commands::mcp::tests 33 项通过。

Closes #1143

The EPIPE from writing stdin can arrive before try_wait or stdout EOF
observe the exit, so respawn_if_exited kept the dead process.

Closes #1143
@xiaozhou26
xiaozhou26 merged commit bc378aa into main Nov 3, 2026
14 checks passed
@xiaozhou26
xiaozhou26 deleted the fix/mcp-respawn-broken-pipe branch November 3, 2026 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MCP stdio 崩溃重启判定在 BrokenPipe 早于退出可见时失效(CI flaky)

1 participant