You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Refresh personal sidebar groups after successful Outbox Retry without reload #739
The PR #710 reviewer reports that after an Outbox Retry succeeds, Refresh groups and stars can still show a removed personal section until full reload. The same stale-catalog behavior affects existing personal Move on main; this is not introduced by the removal PR.
Source evidence
At current main bd3897ce884acb925e24c5be9a2f77fc6b74e37d, src/features/relay/sidebar-personal-groups.ts:18-29 refreshes ChannelKit only when its snapshot is not already ready. src/features/relay/session.ts calls this reader from the saved-sidebar-preferences read. PR #710 leaves that reader unchanged. A ready catalog can therefore survive an explicit sidebar refresh after exact-event retry updates relay state.
Reviewer-reported reproduction
With personal groups active, cause a personal-group mutation to remain unresolved in Outbox.
Restore delivery and Retry the same signed event in Channel settings → Diagnostics → Outbox; verify success.
Choose Refresh groups and stars. The old placement/section can remain.
Full reload loads the updated groups.
Expected and scope
Explicit refresh should obtain a fresh personal catalog before projecting saved groups, preserving source opt-in, lifecycle fencing, last-good data on failure, and legacy behavior. Do not add automatic publication/replay or duplicate delivery ownership. Cover both existing Move and section removal, with controlled retry completion and an already-ready catalog; refresh failure must not erase confirmed data.
Sol verified the unchanged read condition on main and PR head 29642af5508db66d44f5c385af485ecfceac1528. The app reproduction above is reviewer-reported, not newly run by Sol. Track as a separate shared-read/recovery fix, not a PR #710 merge blocker.
Activity