Room Insights ("stats") panel freezes at open-time data and never reflects new activity #83

Closed
opened 2026-09-12 01:51:32 -04:00 by jared · 0 comments
Owner

Severity: low · Type: ux · Confidence: high

Location: src/app/features/room-settings/RoomInsights.tsx:72-140

Problem

All stats (message counts, reactions, media breakdown, activity heatmap, oldest/newest timestamps) are computed once in a useMemo keyed only on [room]. Since room (the Room object reference) doesn't change for the lifetime of the panel, the stats never update even if new messages/reactions arrive while the Insights panel is open — the panel's numbers are a snapshot from the moment it was opened, with no indication to the user that the data is frozen (there's no "processing..." vs. "processed as of ..." distinction beyond the generic "Based on N locally cached messages" banner).

How to trigger

Open Room Insights, then have someone post several messages/reactions in the room while the panel stays open — the counts don't change.

Suggested fix

Either add a lightweight re-computation trigger on new Room.timeline events (throttled), or explicitly label the snapshot with a timestamp/"Refresh" button so the staleness is intentional and visible rather than silent.


Filed from the September 2026 client audit (branch lotus @ 4bea4895).

**Severity:** low · **Type:** ux · **Confidence:** high **Location:** `src/app/features/room-settings/RoomInsights.tsx:72-140` ### Problem All stats (message counts, reactions, media breakdown, activity heatmap, oldest/newest timestamps) are computed once in a `useMemo` keyed only on `[room]`. Since `room` (the `Room` object reference) doesn't change for the lifetime of the panel, the stats never update even if new messages/reactions arrive while the Insights panel is open — the panel's numbers are a snapshot from the moment it was opened, with no indication to the user that the data is frozen (there's no "processing..." vs. "processed as of ..." distinction beyond the generic "Based on N locally cached messages" banner). ### How to trigger Open Room Insights, then have someone post several messages/reactions in the room while the panel stays open — the counts don't change. ### Suggested fix Either add a lightweight re-computation trigger on new `Room.timeline` events (throttled), or explicitly label the snapshot with a timestamp/"Refresh" button so the staleness is intentional and visible rather than silent. --- --- _Filed from the September 2026 client audit (branch `lotus` @ 4bea4895)._
jared added this to the Audit 2026-09 · Medium & Low milestone 2026-09-12 01:51:32 -04:00
jared added the priority: lowuxarea: navigation labels 2026-09-12 01:51:32 -04:00
jared self-assigned this 2026-09-12 01:51:32 -04:00
jared closed this issue 2026-09-12 20:29:10 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/cinny#83