mirror of
https://github.com/mikeyobrien/ralph-orchestrator.git
synced 2026-04-25 07:05:57 +03:00
[PR #151] [CLOSED] fix(pty): Detect immediate child exit on Windows to prevent hangs #166
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ralph-orchestrator#166
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/mikeyobrien/ralph-orchestrator/pull/151
Author: @mikeyobrien
Created: 2/3/2026
Status: ❌ Closed
Base:
main← Head:fix-windows-pty-hang📝 Commits (2)
63042efchore: auto-commit before merge (loop primary)f2f28a7fix(pty): Detect immediate child exit on Windows to prevent hangs📊 Changes
7 files changed (+4088 additions, -0 deletions)
View changed files
📝
crates/ralph-adapters/src/pty_executor.rs(+39 -0)➕
mobile-styles.patch(+104 -0)➕
rook-dashboard-live.html(+667 -0)➕
rook-dashboard-mobile.html(+1020 -0)➕
rook-dashboard-prototype.html(+1786 -0)➕
specs/rook-dashboard-architecture.md(+340 -0)➕
specs/rook-dashboard.spec.md(+132 -0)📄 Description
Problem
On Windows, when the backend process (e.g., `claude`) fails to start (e.g., not in PATH), the PTY reader thread hangs indefinitely. This happens because:
This results in `ralph run` appearing to hang with no output.
Solution
Add a Windows-specific check after spawning the child process to detect if it exited immediately. If the process exits with a non-zero code within 100ms of spawning, we return a clear error message indicating the backend command failed to start.
The fix is applied to both:
Testing
Fixes #150
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.