Scope M12 down to a single shared-terminal mode (D23, amends D16):
- Share page rewritten terminal-only: host shares their PTY/shell; guest watches
and may type only if the host ticks "Allow the guest to type" (read-only
otherwise — the D9 consent exception). Terminal is larger; either side can pop
it full-screen (Esc to exit).
- Removed the read-only stats view + HTTP server (core/share.py) and the
`rigdoctor share serve` CLI; deleted their tests.
- Docs: D23 added; SPEC/MODULES/ROADMAP updated (M12 → done, terminal-only).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The terminal view rendered monochrome (QPlainTextEdit.setPlainText), dropping
pyte's per-cell attributes. Rewritten as a QTextEdit that renders fg/bg/bold/
reverse per cell (block cursor = inverted cell), preserving scrollback. The
session already runs the host's $SHELL + config with TERM=xterm-256color, so
fish/ls/git/prompts now look the same as locally.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>