# Multi-tab terminal reconciliation

**Captured:** 2026-05-06 (auto-extracted from harness build of BUILD_SPEC v3 — embedded-claude-terminal)

## Why deferred

ttyd's WebSocket model: each connected client gets the full pty stream. With our server-side singleton (one ttyd per project), opening console-v2 in two browser tabs creates two clients on the same WebSocket — only the most recently connected tab actually receives output (or both echo, depending on ttyd's mode).

Future: shared WebSocket multiplexer that fans the pty stream to all connected tabs, or a primary-tab election so secondary tabs render a "View in primary tab" placeholder.

## Prior decisions
- BUILD_SPEC v3 §"Future work" item 5
- v3 ships single-tab-active behavior intentionally — debugging the multiplexer was out of the time budget.

## Status
- [ ] Defer until JT actually opens two tabs and is bothered by it. The single-tab demo is the v3 target.
