Skip to content

Add purge command #50

Open
Open
@dawnofmidnight

Description

@dawnofmidnight

(part of the Carl ⇒ Ferris migration)

We'd like some way to mass-delete messages in a particular channel or from a particular channel. For users, I think the usage is rather simple, where the limit here can either be specified in a time specification (i.e. "last ten minutes" as 10m) or a number of messages (bounded to a specific number as both a check and to avoid being interpreted as a channel ID if that's omitted):

  • ?purge user <user> <limit>: delete all messages from a particular user up to the limit

I see two possible designs for channel deletions:

  • ?purge channel [channel] <limit>: delete all messages in the channel up to the limit. The channel should be optional.

OR

  • ?purge since <message link>: delete all messages since that message. ensures that the boundary is clear.
  • ?purge between <message link> <message link>: delete all messages between these two boundaries after checking that they're both in the same channel.

This pair isn't necessarily mutually exclusive. However, I do much prefer the message link approach since it's a lot harder to use it incorrectly and delete messages that should've been kept.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions