mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-09-09 04:02:35 +00:00
The rail's items now ride the Chat snapshot: a structural upsert re-derives the loaded Turn set, a content-only upsert re-derives only the Turns whose nodes changed, and each preview is capped so navigation state never holds a copy of the transcript. The published array keeps its identity until an item changes, so ChatView selects it as both data and change signal — and a streaming reply's preview follows the in-place node update instead of the last structural publication. A scroll frame resolves the active mark with one hit test at the reading line, falling back to a single row scan, rather than a DOM query per mark. Flow-height changes resync through the existing column observer, navigating during a pending page keeps the paging anchor, and the rail height no longer holds a floor taller than the band it centers in.