Skip to content

Decide whether a locked channel should also freeze upvotes/reactions (currently content-creation only) #103

Description

@gennitdev

Context

Locked-channel enforcement (added in #97) lives at the checkChannelPermissions chokepoint (rules/permission/hasChannelPermission.ts) and blocks the permission checks that funnel through it:

  • canCreateDiscussion
  • canCreateEvent
  • canCreateComment
  • canUpdateChannel (wiki edits)

This matches the lock dialog's wording ("new discussions, events, and comments"). However, upvotes, downvotes, emoji reactions, and file uploads do not go through checkChannelPermissions, so they are not blocked on a locked channel.

Question

Is "locked = no new discussions/events/comments, but interactions (upvotes/reactions) still allowed" the intended scope, or should a lock make the channel fully read-only (also freezing upvotes/reactions/uploads)?

Notes

  • The current behavior is consistent with the UI copy, so this may be intentional — filing to confirm rather than assuming.
  • If full read-only is desired, the lock check would need to extend to the upvote/reaction/upload permission paths (which currently use hasChannelPermission / mod-permission helpers directly rather than checkChannelPermissions).

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions