matrix-appservice-irc
matrix-appservice-irc copied to clipboard
join/part to invite-only channels are incorrectly debounced
This is probably a duplicate of one of the existing desync issues, but I managed to reproduce it deterministically:
- join an empty
#testchan:libera.chatfrom Matrix (it's currently broken from matrix.org and some other homeservers because of #14596, though joining from e2e.zone seems to work) - make it invite-only by sending
!cmd MODE #testchan +ito the appservice (or set it on the IRC side) - grant yourself an invite exemption; eg.
!cmd MODE #testchan +I testnick!*@*if the nickname you plan to use in the next step istestnick - Connect to Libera.Chat using
telnet irc.libera.chat 6667and register by typing this:
NICK valtest
USER v v v v
- then copy-paste this to the telnet session:
JOIN #testchan
PART #testchan
JOIN #testchan
PART #testchan
(make sure you select the newline at the end so the command is actually sent by telnet.)
On the IRC side, it shows: join, part, join, part.
On the Matrix side, it shows: invite, join, part, invite, join. And then the user remains in the room forever, or until they join again.