fix(pty): suppress benign EPIPE errors on session shutdown#1684
fix(pty): suppress benign EPIPE errors on session shutdown#1684Abdel-E wants to merge 1 commit intogeneralaction:mainfrom
Conversation
Handle stdio EPIPE/EIO/ECONNRESET in lifecycle fallback and attach PTY pipe suppression on all platforms so closing agent sessions does not throw uncaught main-process errors. Made-with: Cursor
|
@Abdel-E is attempting to deploy a commit to the General Action Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughUpdates PTY and child process stream error handling to suppress benign shutdown-related errors (EPIPE, EIO, ECONNRESET) across all platforms. Extends error suppression from Windows-only to universal platform coverage and adds error propagation logic for non-benign errors with proper UTF-8 buffering. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related issues
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Handle stdio EPIPE/EIO/ECONNRESET in lifecycle fallback and attach PTY pipe suppression on all platforms so closing agent sessions does not throw uncaught main-process errors.
Summary
Closing agent sessions can tear down PTYs/stdio pipes while Node is still reading from them, which can surface as an uncaught main-process exception (
Error: read EPIPE,Pipe.onStreamRead). This PR:EPIPE/EIO/ECONNRESET) on lifecycle fallbackchild_processstdio streamsFixes
Snapshot
N/A — runtime stability fix (no UI change)
Type of change
Mandatory Tasks
Checklist
Summary by CodeRabbit