Skip to content

fix(exec-server): suppress Windows taskkill output#22058

Open
fcoury-oai wants to merge 1 commit intomainfrom
fcoury/fix-mcp-taskkill-2
Open

fix(exec-server): suppress Windows taskkill output#22058
fcoury-oai wants to merge 1 commit intomainfrom
fcoury/fix-mcp-taskkill-2

Conversation

@fcoury-oai
Copy link
Copy Markdown
Contributor

Summary

This is the exec-server follow-up to #21759.

#21759 fixed the Windows taskkill output leak for the rmcp-client MCP teardown path, but #22050 showed that exec-server still had a parallel taskkill /T /F cleanup path in exec-server/src/connection.rs. Because that command inherited the parent stdio handles, Windows could still print SUCCESS: lines into the user's terminal during stdio child cleanup.

This change silences that remaining exec-server callsite by redirecting taskkill stdin, stdout, and stderr to Stdio::null().

What Changed

  • add a Windows-only Stdio import in exec-server/src/connection.rs
  • redirect the taskkill command in kill_windows_process_tree to Stdio::null() for stdin, stdout, and stderr
  • keep the existing kill semantics unchanged by still checking .status() and preserving the existing fallback/logging behavior

How to Test

Manual validation is Windows-only, so I did not run the UI repro path locally here.

  1. On Windows, use a Codex build from this branch.
  2. Exercise an exec-server stdio flow that spawns a child process tree and then triggers transport cleanup.
  3. Confirm the child process tree is still torn down.
  4. Confirm the terminal no longer shows SUCCESS: The process with PID ... has been terminated. lines during cleanup.

Targeted tests:

  • cargo test -p codex-exec-server client::tests::dropping_stdio_client_terminates_spawned_process -- --exact
  • cargo test -p codex-exec-server client::tests::malformed_stdio_message_terminates_spawned_process -- --exact

Notes:

  • cargo test -p codex-exec-server still hits unrelated local macOS sandbox-exec: sandbox_apply: Operation not permitted failures in tests/file_system.rs.

References

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.

1 participant