Skip to content

fix(mobile): show live thread replies immediately - #4211

Open
developcoaching wants to merge 1 commit into
block:mainfrom
developcoaching:agent/fix-mobile-live-thread-replies
Open

fix(mobile): show live thread replies immediately#4211
developcoaching wants to merge 1 commit into
block:mainfrom
developcoaching:agent/fix-mobile-live-thread-replies

Conversation

@developcoaching

Copy link
Copy Markdown

Summary

Fixes #3293.

Mobile channel subscriptions were discarding non-broadcast thread replies before they could update the root message's reply summary. This keeps each live reply as a temporary fallback until the relay's authoritative thread summary arrives.

The temporary reply is then removed in either delivery order, reply before summary or summary before reply, so the live overlay stays bounded. Broadcast replies remain visible in the main timeline.

This builds on the root-cause analysis in #3344 and adds retention cleanup plus event-order race coverage.

Changes

  • Allow live non-broadcast replies into the channel window fallback.
  • Remove covered replies when their authoritative thread summary arrives.
  • Skip covered replies when the summary arrives first.
  • Preserve broadcast replies as top-level timeline entries.
  • Add provider and channel-window regression tests.

Verification

  • just ci
  • 1,027 mobile tests passed, with one expected skip.
  • 2,088 desktop Rust tests passed, with 14 expected ignores.
  • Independent adversarial review verdict: NO BLOCKERS.

Co-authored-by: Greg Wilkes <greg@developcoaching.com.au>
Signed-off-by: Greg Wilkes <greg@developcoaching.com.au>
@developcoaching
developcoaching requested a review from a team as a code owner August 2, 2026 00:49
@kerpopule

Copy link
Copy Markdown

Confirmed with a live Buzz 0.5.3 mobile + Hermes managed-agent canary. Mobile sent the explicitly addressed DM; Hermes ACP received it at 2026-08-02 00:39:32 CDT and completed at 00:39:49 with response_len=111. The reply did not render on mobile until the app was closed and reopened. General-channel replies were already rendering. This is the exact force-reload symptom from #3293, and the focused tests on this PR pass locally: flutter test test/features/channels/channel_messages_provider_test.dart test/features/channels/channel_window_test.dart (36 passed).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Mobile: live threaded replies never reach the channel window store, so thread summaries never update (regression from #1518)

2 participants