ircv3-specifications icon indicating copy to clipboard operation
ircv3-specifications copied to clipboard

Chat history + Channel rename

Open progval opened this issue 1 year ago • 3 comments

https://ircv3.net/specs/extensions/channel-rename does not specify how it interacts with chathistory and event-playback. Open questions:

  1. should RENAME appear in the history? if yes, conditioned to what capabilities?
  2. should the old name appear in the history as message targets? if yes, conditioned to what capabilities?

Ergo choses to answer "no" to both questions, meaning that to clients it looks like the channel had always had the new name. Matrix2051 answers no to the second question, and I probably yes to the first, which is an "unexpected feature".

Example with Ergo:

user -> S:   PRIVMSG #oldchan :let's rename it
S -> chanop: :[email protected] PRIVMSG #oldchan :let's rename it
chanop -> S: RENAME #oldchan #newchan :no reason
S -> chanop: :[email protected] RENAME #oldchan #newchan :no reason
S -> user:   :[email protected] RENAME #oldchan #newchan :no reason
user -> S:   PRIVMSG #newchan :nice new name
user -> S:   CHATHISTORY LATEST #newchan * 10
S -> user:   :[email protected] JOIN #newchan
S -> user:   :[email protected] JOIN #newchan
S -> user:   :[email protected] PRIVMSG #newchan :let's rename it
S -> user:   :[email protected] PRIVMSG #newchan :nice new name

progval avatar Sep 16 '23 07:09 progval

@jwheare's opinion:

  1. yes, conditioned to draft/channel-rename and draft/event-playback caps
  2. no, ie.
:[email protected] PRIVMSG #newchan :let's rename it
:[email protected] RENAME #oldchan #newchan :no reason
:[email protected] PRIVMSG #newchan :nice new name

progval avatar Sep 16 '23 10:09 progval

Is the "no" to 2. a "no, it isn't worth spending the effort to do this", or "no, this would be the wrong thing and should be avoided even if it's easier"?

spb avatar Sep 16 '23 10:09 spb

@jwheare's opinion:

1. yes, conditioned to `draft/channel-rename` and `draft/event-playback` caps

2. no, ie.
:[email protected] PRIVMSG #newchan :let's rename it
:[email protected] RENAME #oldchan #newchan :no reason
:[email protected] PRIVMSG #newchan :nice new name

If we're going down the route of always using the channel's current name in history playback, what should happen if the channel has emptied, been destroyed, and a new channel created (or worse, renamed) using the last name it had? Those are two distinct targets that shouldn't have their history interleaved, so how do you refer to them both (both in TARGETS and in message playback)?

spb avatar May 11 '24 11:05 spb