Files
dsh-context/tests
bowenliang123 61f3405471 fix(client): stop remounting the events list on every push
Two compounding defects made every incoming event flash the whole card:

- Rows were keyed by seq PLUS reverse-index; the list renders newest-
  first, so an appended event lands at index 0 and shifted every
  existing row's key, forcing React to destroy and rebuild the entire
  list on each push. Rows now key on the durable seq alone, so a push
  prepends one row and keeps every other row's DOM node.
- The truncation-title layout effect had no deps: every render (hover
  included) re-read scrollWidth/clientWidth for every label — one
  forced synchronous layout per row — and rebound the resize listener.
  It now resyncs only when the events list changes, with the resize
  listener bound once (root resolved inside the callback so the
  empty-to-non-empty transition keeps it live).
2026-08-26 16:39:54 +08:00
..