Skip to content

fix(node): stop queued input after stdio teardown - #145

Merged
vincentkoc merged 1 commit into
mainfrom
audit/libterminal-runtime-20261103
Nov 3, 2026
Merged

vincentkoc merged 1 commit into
mainfrom
audit/libterminal-runtime-20261103

Conversation

@vincentkoc

@vincentkoc vincentkoc commented Nov 3, 2026 •

Copy link
Copy Markdown
Member

Summary

Stop queued stdin writes when a stdio attachment ends or fails. Previously, a second chunk could reach the terminal after attachLocalStdio() had returned and removed its listeners, once an earlier blocked write completed. Mark the attachment as no longer accepting input before cleanup starts. Keep the existing nonblocking treatment of an already-started write and the resize cleanup contract.

Replace the custom cleanup fixture with real streams and cover output completion and failure. Production delta: +3 lines, justified by the attachment lifetime boundary.

Validation

  • Full CI passed for merged PR head 23e771cdac2e90840c39f30a36953cede1f52e1e.
  • Independent P0–P3 autoreview: scoped-clean for 23e771cdac2e90840c39f30a36953cede1f52e1e. Rebased code and test patches were verified unchanged.
  • Combined six-fix integration passed: 185 unit/integration tests, 10 browser cases, build, types, lint, package checks, and the Linux/Windows/macOS matrix.
  • Changelog included. No release.

@clawsweeper

clawsweeper Bot commented Nov 3, 2026

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

@vincentkoc
vincentkoc marked this pull request as ready for review November 3, 2026 12:44
@vincentkoc
vincentkoc requested a review from a team as a code owner November 3, 2026 12:44
@vincentkoc
vincentkoc merged commit 8c3b31a into main Nov 3, 2026
15 of 16 checks passed
@vincentkoc
vincentkoc deleted the audit/libterminal-runtime-20261103 branch November 3, 2026 12:49
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