diff --git a/internal/store/memory/channel_members.go b/internal/store/memory/channel_members.go index 6d6ba93f..d003deff 100644 --- a/internal/store/memory/channel_members.go +++ b/internal/store/memory/channel_members.go @@ -347,11 +347,6 @@ func (s *ChannelStore) EditChannelAdmin(_ context.Context, req domain.EditChanne member.InviterUserID = req.UserID member.Status = domain.ChannelMemberActive member.LeftAt = 0 - // See the postgres EditChannelAdmin implementation for why this is - // needed: a kicked/banned member carries BannedRights.ViewMessages=true, - // and editAdmin unconditionally reactivates them to Active, so any - // lingering ban must be lifted too. - member.BannedRights = domain.ChannelBannedRights{} if previous.Status != domain.ChannelMemberActive { if minPts := channelInitialAvailableMinPts(channel); minPts > member.AvailableMinPts { member.AvailableMinPts = minPts diff --git a/internal/store/postgres/channel_member_admin.go b/internal/store/postgres/channel_member_admin.go index f401afcc..e82efaf6 100644 --- a/internal/store/postgres/channel_member_admin.go +++ b/internal/store/postgres/channel_member_admin.go @@ -100,13 +100,6 @@ func (s *ChannelStore) EditChannelAdmin(ctx context.Context, req domain.EditChan member.InviterUserID = req.UserID member.Status = domain.ChannelMemberActive member.LeftAt = 0 - // A kicked/banned member carries BannedRights.ViewMessages=true (see - // EditChannelBanned above); editAdmin unconditionally reactivates them - // to Active, so any lingering ban must be lifted too -- otherwise the - // contradictory Active+ViewMessages-banned state trips later checks - // (e.g. TransferChannelOwnership's participant check) that never - // expect an active member to be ban-restricted from viewing messages. - member.BannedRights = domain.ChannelBannedRights{} if req.HasRank() { member.Rank = req.Rank }