7a1280784e
The SSH tool renderer fed the raw command into renderStatusLine's description, so any newline in the remote command expanded the single-line tool header — the bordered output block then opened mid-command and the rest of the SSH cell rendered against a broken frame. The renderer now keeps only [host] in the header and renders the full command (with a dim $ prefix and tab sanitization) as its own framed section above Output, matching the bash renderer's shape. renderStatusLine also flattens CR/LF in title, description, meta, and badge labels so no future caller can accidentally produce a multiline tool header. Covered by: - test/tools/ssh-render.test.ts: multiline command stays out of the header and every command line is present in the body, for both renderCall and renderResult. - test/tui/status-line-newline-guard.test.ts: embedded LF, CRLF, and lone CR in description/meta are flattened to spaces. Fixes #1828