claw-code/rust/crates
TheArchitectit 8f1ad0dc9a fix(tui): dup fd 1 to /dev/null during turns — no more output bleeding
THE REAL FIX: Before each model turn, save fd 1 (stdout) via dup(),
redirect it to /dev/null via dup2(), run the turn, then restore the
original fd. This catches EVERY possible stdout write during the turn:
runtime streaming, tool executor formatted output, bash subprocess
inheritance, crossterm escape codes, println! — all silently swallowed.

Previous approaches (emit_output=false, Vec<u8> buffer, screen clear)
were insufficient because the runtime's consume_stream writes to the
real io::stdout() through separate code paths that bypass our buffer.

Changed workspace unsafe_code from forbid→warn, and allow it in
rusty-claude-cli specifically. The dup/dup2/close calls are
single-threaded POSIX syscalls with well-understood semantics.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 11:11:19 -05:00
..
api fix: resolve rebase conflicts, clean TUI alignment, and sync with upstream 2026-06-11 10:03:16 -05:00
claw-analog Reject drifted claw-analog bootstrap phases 2026-05-25 19:33:37 +00:00
claw-rag-service feat(rag): add claw-rag-service 2026-05-25 11:25:25 +09:00
commands fix: resolve rebase conflicts, clean TUI alignment, and sync with upstream 2026-06-11 10:03:16 -05:00
compat-harness feat: ultraclaw droid batch — ROADMAP #41 test isolation + #50 PowerShell permissions 2026-04-12 03:06:24 +09:00
mock-anthropic-service Stabilize final gate before release checkpoint 2026-05-15 13:34:57 +09:00
plugins fix: resolve EACCES error from incorrect bundled plugins directory 2026-05-25 11:22:34 +09:00
runtime fix: resolve rebase conflicts, clean TUI alignment, and sync with upstream 2026-06-11 10:03:16 -05:00
rusty-claude-cli fix(tui): dup fd 1 to /dev/null during turns — no more output bleeding 2026-06-12 11:11:19 -05:00
telemetry feat: anthropic SDK header matching + request profile 2026-04-01 05:55:25 +00:00
tools fix: resolve rebase conflicts, clean TUI alignment, and sync with upstream 2026-06-11 10:03:16 -05:00