Fix some issues with UI getting out of sync. (#7)

Reviewed-on: #7
Co-authored-by: Drew Galbraith <drew@tiramisu.one>
Co-committed-by: Drew Galbraith <drew@tiramisu.one>
This commit is contained in:
Drew 2026-03-11 06:53:49 +00:00 committed by Drew
parent 0fcdf4ed0d
commit af080710cc
8 changed files with 199 additions and 84 deletions

View file

@ -3,6 +3,14 @@
- Keep UI and orchestrator in sync (i.e. messages display out of order if you queue up many.)
- `:clear` clears TUI state immediately but sends `ClearHistory` to orchestrator async. A mid-stream response can ghost back in after clear. Need synchronization (e.g. clear on `TurnComplete`, or have orchestrator ack the clear).
# UX Improvements
- Start tool uses collapsed.
- Allow traversing blocks with [, ] short cuts.
- Allow expanding and closing blocks with o (expand all with Ctrl+o)
- Allow moving inside the text area with the arrows (and ctrl arrows)
# Scroll
- `update_scroll` auto-follows in Insert mode, yanking viewport to bottom on mode switch. Only auto-follow when new content arrives (in `drain_ui_events`), not every frame.