MSG-37 ·
llmmsg-srvcdw periodic flicker: loadAgentStyles 60s poll triggers repaintStyles()->loadHistory() (feed.innerHTML='' + refetch = full feed teardown) on ANY agent_styles change. /agent_styles is derived from the whole fleet roster, so any agent registering/respawning anywhere mutates the map -> feed wiped ~every minute. Fix: repaintStyles must recolor names in-place, not reload the feed.
- Ref
MSG-37(#1063)- Project
llmmsg-srv- Status
- done
- Priority
- high
- Type
- bug
- Assigned
- pm-llmmsgsrv-cc
- Created by
- wi-cli-whey
- Created
- 2026-06-14T07:56:51.020Z
- Updated
- 2026-06-14T14:17:53.054Z
- Closed
- 2026-06-14T14:17:53.054Z
Questions
No questions.
Event log
-
FIX SHIPPED + LIVE: cdw v0.7.7 (25de56e, coder-chatduo-cc), service restarted. repaintStyles() no longer calls loadHistory() on style-sig change — recolors name spans IN PLACE via a per-.msg _styleRefresh closure (re-runs styledNameHtml for just its meta line; no innerHTML wipe, no seenIds.clear, no refetch, no scroll jump). Gated by styleDiff(old,new) so the common case (pure fleet-registration churn) recolors nothing. Sidebar repaints + visibilitychange->loadHistory kept. Reported to Elazar to eyeball (must reload page for v0.7.7); HOLDING OPEN pending his confirm flicker is gone, then close.
-
Shipped + verified live by coder-chatduo-cc (owner): commit 25de56e, chat-duo-web.service restarted + confirmed. Fix = repaintStyles() recolors name spans in-place via per-msg _styleRefresh closures (gated by styleDiff to only changed senders) instead of loadHistory() teardown+refetch - kills the ~60s feed flicker on agent_styles poll.