Buzz Desktop version: 0.5.19 (macOS, Darwin 25.6.0)
Summary
When a relay has already ended my membership server-side, the desktop app cannot remove that community locally. The "Leave community" flow requires the relay to accept the leave event first (per #3621), but the relay refuses the connection entirely — so the leave can never succeed and the dead community is stuck in the community switcher permanently.
Steps to reproduce
- Be a member of a community, then have your membership ended on the relay side (removed by the owner / membership expired).
- The sidebar for that community shows:
relay returned 403 Forbidden: You must be a relay member to access this relay.
- Open the community switcher → hover the community → Leave community.
- The action is blocked with:
Relay session is terminal; cannot reconnect.
Expected
If the relay reports the session is terminal / membership already ended (403 relay_membership_required), local removal should proceed anyway — there is no membership left to end, so requiring relay acceptance is a chicken-and-egg dead end.
Actual
"Leave community" never completes; the community cannot be removed from the local list. Updating to 0.5.20 does not change this (no related fix in the release notes).
Notes
#3621 deliberately keeps the community in place on relay rejection, which is correct for transient errors — but a terminal/403-membership response is not transient and should be treated as "already left".
Buzz Desktop version: 0.5.19 (macOS, Darwin 25.6.0)
Summary
When a relay has already ended my membership server-side, the desktop app cannot remove that community locally. The "Leave community" flow requires the relay to accept the leave event first (per #3621), but the relay refuses the connection entirely — so the leave can never succeed and the dead community is stuck in the community switcher permanently.
Steps to reproduce
relay returned 403 Forbidden: You must be a relay member to access this relay.Relay session is terminal; cannot reconnect.Expected
If the relay reports the session is terminal / membership already ended (403
relay_membership_required), local removal should proceed anyway — there is no membership left to end, so requiring relay acceptance is a chicken-and-egg dead end.Actual
"Leave community" never completes; the community cannot be removed from the local list. Updating to 0.5.20 does not change this (no related fix in the release notes).
Notes
#3621 deliberately keeps the community in place on relay rejection, which is correct for transient errors — but a terminal/403-membership response is not transient and should be treated as "already left".