spawn-test: Windows process-tree kill is best-effort (follow-up #9) #13

Closed
opened 2026-07-02 01:05:57 -04:00 by the_og · 0 comments
Owner

Follow-up from PR #11 supervisor review (item 4).

On Windows, proc.kill() only kills the direct child (e.g. npx), not grandchildren (node, the actual server). This is the same concern family as issue #9 (Restart Claude Desktop) — blanket process-tree termination on Windows needs careful scoping to avoid killing unrelated processes.

Options to explore:

  • taskkill /T /F /PID <pid> for tree-kill on Windows
  • subprocess.CREATE_NEW_PROCESS_GROUP + os.kill(proc.pid, signal.CTRL_BREAK_EVENT) as a gentler alternative

Constraint: Cannot test locally on macOS. Any fix needs a Windows CI matrix job or manual verification note in the PR.

Cross-reference: issue #9 (Restart Claude Desktop) has the same Windows process-targeting concern.

Follow-up from PR #11 supervisor review (item 4). On Windows, `proc.kill()` only kills the direct child (e.g. `npx`), not grandchildren (`node`, the actual server). This is the same concern family as issue #9 (Restart Claude Desktop) — blanket process-tree termination on Windows needs careful scoping to avoid killing unrelated processes. **Options to explore:** - `taskkill /T /F /PID <pid>` for tree-kill on Windows - `subprocess.CREATE_NEW_PROCESS_GROUP` + `os.kill(proc.pid, signal.CTRL_BREAK_EVENT)` as a gentler alternative **Constraint:** Cannot test locally on macOS. Any fix needs a Windows CI matrix job or manual verification note in the PR. Cross-reference: issue #9 (Restart Claude Desktop) has the same Windows process-targeting concern.
the_og added the P1 label 2026-07-02 01:05:57 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: the_og/better-claude-config#13