Skip to content

fix(mobile): keep joined channels visible past relay page limits - #9514

Draft
rclod wants to merge 1 commit into
block:mainfrom
rclod:fix/mobile-joined-channel-pagination
Draft

rclod wants to merge 1 commit into
block:mainfrom
rclod:fix/mobile-joined-channel-pagination

Conversation

@rclod

@rclod rclod commented Nov 15, 2026

Copy link
Copy Markdown

Summary

Joined channels stay visible when archived memberships push an account past the relay’s 1,000-event result limit. Metadata loads in bounded ID groups and pages on the existing WebSocket path; incomplete repeated pages leave the complete cached list intact.

Related issue

None found in searches for “mobile channel metadata pagination” and “mobile channels 1000”.

Testing

  • Regression reproduced 1,000 results for 1,080 joined rooms before the fix. It now retains all 1,080 rooms, including 64 unarchived rooms, with tied timestamps and historical metadata revisions.
  • The same journey covers failed and repeated pages, cached-list preservation, member counts, and successful retry.
  • Full mobile suite: 4,879 passed, 71 skipped, on native Linux ARM64 with Flutter 3.47.9 / Dart 3.13.7.
  • just mobile-check, the mobile file-size gate, and agent source review passed; the review’s completeness finding was corrected and closed.
  • Device validation is pending. No phone screenshots were captured: this session exercised provider and widget tests, not an installed mobile build. This stays draft until agent app validation and human testing satisfy the repository’s readiness checklist.

Manual check: on an account with more than 1,000 joined rooms, including archived rooms, install the candidate and refresh Conversations. All unarchived joined rooms should remain visible; a failed refresh should retain the previous list.


Compound Engineering

Page joined-channel metadata in bounded ID groups on its existing
WebSocket transport. Refuse incomplete repeated pages so they cannot
replace a complete cached channel list.

Cover 1,080 memberships with archived rooms, tied timestamps, failed
pages, repeated-page refusal, and successful retry.

Signed-off-by: rclod <3385524+rclod@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

🔐 Codex Security Review

Status: review required for the current range.

The current range is 69742376a9b1b15da62295f54a053913540722c1...710ef4df0d9fd9c98ff90269c80a0ab6f1b256a0.
A new review must complete for this exact range. When manual authorization
is required, a user with write access must comment exactly
@buzz-security-review 710ef4df0d9fd9c98ff90269c80a0ab6f1b256a0 to authorize a new review.
Any previous review applies only to its recorded range.

This branch has not been deployed

No deployments
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.

1 participant