matrix-org / matrix-appservice-irc

Node.js IRC bridge for Matrix
Apache License 2.0
465 stars 150 forks source link

Bridge should promote IRC OP users as administrators on Matrix #1001

Open dannycolin opened 4 years ago

dannycolin commented 4 years ago

Step to reproduce

  1. Join an IRC (e.g. #freenode_#bspwm:matrix.org)
  2. Connect to my Freenode account via @appservice-irc:m.o and @NickServ:m.o

Actual behavior

Matrix promotes me as a moderator

Expected behavior

Matrix should promote me as an administrator instead of a moderator.

Additional notes

Matrix has promoted a random user as moderator even if that user doesn't have any IRC access on my channel. Since the bridge doesn't promote me as administrator, I can't remove the moderator access to this user because we have the same level access. Hopefully, they doesn't seem to be aware of that or don't bother to troll me because they could literally change a lot of things in the settings like the topic.

WillPittenger commented 4 years ago

I personally think a mere op should only be a mod. Founders on the other hand…

Half-Shot commented 4 years ago

It would probably be better if the bridge kept the moderator state of users in sync rather than allowing users to be admins in order to fix bugs.

dannycolin commented 4 years ago

As long as the bug is fixed I'll be happy :) and I'm sure @Half-Shot know better than me what would be the best fix for that issue.

However, there's one little thing. If you only are a moderator on matrix side that means you don't have enough permissions to change a few settings on the room. I wonder if that can be problematic in some case.

TheDiscordian commented 4 years ago

However, there's one little thing. If you only are a moderator on matrix side that means you don't have enough permissions to change a few settings on the room. I wonder if that can be problematic in some case.

Admins cannot demote other admins. If that user you mentioned who got promoted was instead promoted to admin, and decided to keep their admin, you wouldn't have a say in the matter. The best solutions that I see are:

  1. Change permissions on the Matrix side so mods can do what you want them to be able to do
  2. Expose the power level ops get promoted to (and you'll probably have to change permissions anyways, because for the bridge to be able to demote, it'll need to have permissions above whoever gets promoted)
dannycolin commented 4 years ago

admins cannot demote other admins. If that user you mentioned who got promoted was instead promoted to admin, and decided to keep their admin.

The user I mentioned shouldn't even be mod in the first place since it doesn't have access on the IRC side of the room.

Change permissions on the Matrix side so mods can do what you want them to be able to do

I can't change permissions 'cause moderators don't have the required power level for that...

The best solution would be to give the admin right on Matrix to the owner of the IRC channel and give moderator access to the rest of the users who have an admin/mod access on IRC.

Mikaela commented 4 years ago

I think this is a duplicate or goes under https://github.com/matrix-org/matrix-appservice-irc/issues/408, https://github.com/matrix-org/matrix-appservice-irc/issues/740 and https://github.com/matrix-org/matrix-appservice-irc/issues/783. In the case of wrong user getting moderator access, https://github.com/matrix-org/matrix-appservice-irc/issues/518.