mirror of
https://github.com/J3vb/OwnCord.git
synced 2026-09-03 03:50:00 +03:00
Route the four "must mirror" READ_MESSAGES filters — REST ListVisibleChannels, ws buildReady, reconnect replay computeAllowedChannels, and hub RefreshChannelVisibility — through a single permissions.Checker predicate so a drift can never leak a private channel (audit A-2026-07-07 / backlog item 3). - add permissions.Checker.VisibleChannelIDs + ChannelRef (skips dm, fails closed, admin bypass via HasChannelPermBatch) - delegate the three batch sites; RefreshChannelVisibility uses HasChannelPerm instead of its inline EffectivePerms copy - REST/WS agreement test asserting all three sites yield the identical non-DM set across admin / member-with-deny / denied-everywhere Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>