mirror of
https://github.com/block/buzz.git
synced 2026-08-18 06:50:31 +02:00
Stale decrypted-target state could leak from DM-A into DM-B on a channel switch because the cleanup effect never cleared the state when targets became empty. The FE isDmContentKind was also narrower than the relay's enforced set, missing KIND_STREAM_MESSAGE_V2. On the relay side, the 15c ingest gate and command-path enforcement called get_channel directly instead of the cached latch lookup, adding an unnecessary DB round-trip on every content event. DB errors in those paths were also mis-classified as client rejections (400) rather than server errors (500). The get_accessible_channels query omitted encryption_activated_at from its SELECT list.