ci / rust (push) Failing after 7m57s
Each PtyBridge keeps a per-session ring buffer (Mutex<VecDeque<u8>>, default 64 KB, override via `[daemon] pty_replay_bytes`). The reader task appends each chunk while holding the buffer lock and broadcasts in the same critical section, so `PtyBridge::subscribe_with_replay` — which snapshots the buffer and subscribes to the broadcast under that same lock — produces a snapshot that's a true prefix of subsequent live bytes. No duplicates, no gaps at the seam. `SessionManager` exposes the new `subscribe_pty_with_replay`, and `attach::serve_local` sends the snapshot as a single binary frame before pumping the live receiver. End result: attaching to an idle bash session now shows the prompt immediately; reattaching after running a build sees the last screenful instead of a blank terminal. Adds `[daemon] pty_replay_bytes` to the unified config (None ⇒ default; Some(0) ⇒ disabled). E2E test exercises the full path: client A drives output through, disconnects, client B sees the prior output on connect. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>