feat(web): a history panel over the agent's transcript
The relay can now answer `get_history` from the transcript the agent writes for itself, so the panel that was stubbed out has something real to render: turns paged backwards from the newest, a Load-earlier button driven by `has_more`, the session's own title, and each of the five `unavailable` reasons rendered as the reason rather than as a flat "no history for this pane". `file_truncated` says out loud that only the tail of a remote file was read instead of implying the conversation starts there. The 768px breakpoint made `.terminal-view` static, which sent the absolutely positioned panel to the viewport and over the app header; it is positioned against the session view in both layouts now. demo-worker answers `get_history` too, so the demo shows the panel instead of an error.
N
Nick007 committed
df524ce09f02ef27c204407fde7d8717c4eaea92
Parent: cf97a72