mirror of
https://github.com/block/buzz.git
synced 2026-10-30 14:01:37 +00:00
The fan-out access gate fails closed: when a channel visibility or membership lookup fails, it drops the recipient. For an ordinary subscription that only loses one live event. For an artifact sync it loses a change signal, so the sync stays open with a copy that is no longer exact, and nothing tells the client. The gate now also reports the recipients it dropped only because a lookup failed. route_fanout_matches, which every fan-out path (local, Redis and persistent dispatch) uses, sends CLOSED "resync: access check failed" to each sync among them. NIP-AR rule 5 lists this loss. Co-authored-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz> Signed-off-by: Logan Johnson <loganj@squareup.com>