Page MenuHomePhabricator

Bot related issues
Closed, DeclinedPublic

Description

Author: millosh

Description:
So, here are a couple of bot related issues:

  • User is a bot
    • This should be treated differently than "bot flag". User may be a bot even it doesn't have a bot flag. This is useful for statistics and other privileges.
  • Bot's owner
    • User who is a bot owner should have privileges as the bot itself: They should be able to edit its name space, create pages under it, including .js and other files.
  • Connected bots
    • User should be able to connect bots into one system: Connected bots should be able to treat each other as the same account (edit its name space, create pages under it etc.)

Version: unspecified
Severity: enhancement

Details

Reference
bz14326

Event Timeline

bzimport raised the priority of this task from to Lowest.Nov 21 2014, 10:09 PM
bzimport set Reference to bz14326.
bzimport added a subscriber: Unknown Object (MLST).

(In reply to comment #0)

So, here are a couple of bot related issues:

  • User is a bot
    • This should be treated differently than "bot flag". User may be a bot even

it doesn't have a bot flag. This is useful for statistics and other privileges.

How would you suggest specifying that an account is a bot without having a flag?

  • Bot's owner
    • User who is a bot owner should have privileges as the bot itself: They

should be able to edit its name space, create pages under it, including .js and
other files.

  • Connected bots
    • User should be able to connect bots into one system: Connected bots should

be able to treat each other as the same account (edit its name space, create
pages under it etc.)

Unless an extension is installed to limit editing of your userspace to just you,
one should be able to edit a particular bot/user's user page and subpages. The
exception is obviously the CSS/JS. However, that raises a second question:

Account ownership? How would a bot account belong to a particular user? By extension,
all bots being grouped requires this same ownership of a second account.

millosh wrote:

(In reply to comment #1)

(In reply to comment #0)

So, here are a couple of bot related issues:

  • User is a bot
    • This should be treated differently than "bot flag". User may be a bot even

it doesn't have a bot flag. This is useful for statistics and other privileges.

How would you suggest specifying that an account is a bot without having a
flag?

At the time of the account creation user would be able to check and fill that "user is a bot of user X". Also, somewhere inside of the user configuration it should be possible to define. Of course, "user X" should confirm that the bot belongs to him.

Unless an extension is installed to limit editing of your userspace to just
you,
one should be able to edit a particular bot/user's user page and subpages. The
exception is obviously the CSS/JS. However, that raises a second question:

AFAIK, page creation under someone's user space is not possible.

Account ownership? How would a bot account belong to a particular user? By
extension,
all bots being grouped requires this same ownership of a second account.

I don't understand: Are you talking that this exists already? By which extension? AFAIK, no extension is needed for bots...

(In reply to comment #0)

So, here are a couple of bot related issues:

  • User is a bot
    • This should be treated differently than "bot flag". User may be a bot even

it doesn't have a bot flag. This is useful for statistics and other privileges.

This kind of thing is merely what we have userpages for. If an account is for a bot, all we do is create a userpage for it saying "This user is a bot, it's owner is X", and put it's talkpage on our watchlist, or redirect it's talkpage to ours. Individual wiki may create templates for that purpose. If a wiki does create templates for that purpose, all you need to to is scan the list of pages which include that template and scan it's parameters to create a map of who owns what bot.

And don't say that not all users do this. If a user doesn't mark a bot's page with a notice. Then do you expect that user is going to use the software interface to do that? They are no more likely to use the interface to do that then they are to create a userpage for it. So the extra functionality is a useless one.

(In reply to comment #2)

Unless an extension is installed to limit editing of your userspace to just
you,
one should be able to edit a particular bot/user's user page and subpages. The
exception is obviously the CSS/JS. However, that raises a second question:

AFAIK, page creation under someone's user space is not possible.

Account ownership? How would a bot account belong to a particular user? By
extension,
all bots being grouped requires this same ownership of a second account.

I don't understand: Are you talking that this exists already? By which
extension? AFAIK, no extension is needed for bots...

MediaWiki by itself only restricts the editing of pages ending in .js or .css under in a user's userspace. This is merely added to prevent normal users from vandalizing the pages like monobook.js or monobook.css and either making it impossible for them to view the wiki, or injecting some sort of script to capture private info about them and relay it back in a way that can be used to hijack their account (like relaying back their session ID so they can jump into their login). The only way to restrict this kind of thing further is to install an extension like [[mw:Extension:KeepYourHandsToYourself]], [[Extension:EditOnlyYourOwnPage]], or some other extension like the one I had planned to allow extension of the restriction to other subpage patterns.

Perhaps rather than any of this stuff about bots. We should just create a system that allows users to designate a master account, and connect other user accounts to it. Sort of like NickServ's method of having a Master nick, and linking other nicknames to it. Then allow an account to edit the user css/js subpages of any account linked to the same master account as it.
Then if someone wants to edit all their bot accounts js/css pages, the merely need to link those bot accounts to their main account.

millosh wrote:

(In reply to comment #3)

This kind of thing is merely what we have userpages for. If an account is for a
bot, all we do is create a userpage for it saying "This user is a bot, it's
owner is X", and put it's talkpage on our watchlist, or redirect it's talkpage
to ours. Individual wiki may create templates for that purpose. If a wiki does
create templates for that purpose, all you need to to is scan the list of pages
which include that template and scan it's parameters to create a map of who
owns what bot.

And don't say that not all users do this. If a user doesn't mark a bot's page
with a notice. Then do you expect that user is going to use the software
interface to do that? They are no more likely to use the interface to do that
then they are to create a userpage for it. So the extra functionality is a
useless one.

This is not a standardized way for saying that some user is a bot. You may not connect inside of the MW such things (except you allow interaction between MW and some wiki templates). "User is a bot" may be used as a flag for statistics or a method for giving some permissions to the user who owns the bot.

Perhaps rather than any of this stuff about bots. We should just create a
system that allows users to designate a master account, and connect other user
accounts to it. Sort of like NickServ's method of having a Master nick, and
linking other nicknames to it. Then allow an account to edit the user css/js
subpages of any account linked to the same master account as it.
Then if someone wants to edit all their bot accounts js/css pages, the merely
need to link those bot accounts to their main account.

Yes, this a good idea. However, I think that formal distinction between bots and real users should be added, too.

(In reply to comment #4)

(In reply to comment #3)

This kind of thing is merely what we have userpages for. If an account is for a
bot, all we do is create a userpage for it saying "This user is a bot, it's
owner is X", and put it's talkpage on our watchlist, or redirect it's talkpage
to ours. Individual wiki may create templates for that purpose. If a wiki does
create templates for that purpose, all you need to to is scan the list of pages
which include that template and scan it's parameters to create a map of who
owns what bot.

And don't say that not all users do this. If a user doesn't mark a bot's page
with a notice. Then do you expect that user is going to use the software
interface to do that? They are no more likely to use the interface to do that
then they are to create a userpage for it. So the extra functionality is a
useless one.

This is not a standardized way for saying that some user is a bot. You may not
connect inside of the MW such things (except you allow interaction between MW
and some wiki templates). "User is a bot" may be used as a flag for statistics
or a method for giving some permissions to the user who owns the bot.

If you need to give extra permissions to a bot. Then you give them a bot flag. If you need to give permissions to a bot without giving them all the bot permissions. Create a new group flag with those permissions and give that flag to the user.
If you want some formal way of adding formal flags to a account to identify it as something else, even though it adds no extra practical permissions purpose. Then create a group flag with no extra permissions, and let people add and remove that flag from themselves.
If you need to generate statistics, then use the API to scan pages to understand what users are marked as bots according to that wiki's policies. If an extension wants to add this kind of statistics, then that extension should create this distinction on it's own, not as part of core.

This is not a feature issue, it's a configuration issue. If we added features into MW for every trivial request like this, then MW would be packed full of even more useless features.

Marking this bug as wontfix and creating new bug 14409 to address the one valid feature request here.

millosh wrote:

(In reply to comment #5)

If you need to give extra permissions to a bot. Then you give them a bot flag.
If you need to give permissions to a bot without giving them all the bot
permissions. Create a new group flag with those permissions and give that flag
to the user.
If you want some formal way of adding formal flags to a account to identify it
as something else, even though it adds no extra practical permissions purpose.
Then create a group flag with no extra permissions, and let people add and
remove that flag from themselves.
If you need to generate statistics, then use the API to scan pages to
understand what users are marked as bots according to that wiki's policies. If
an extension wants to add this kind of statistics, then that extension should
create this distinction on it's own, not as part of core.

This is not a feature issue, it's a configuration issue. If we added features
into MW for every trivial request like this, then MW would be packed full of
even more useless features.

Marking this bug as wontfix and creating new bug 14409 to address the one valid
feature request here.

I still think that it is much better to allow to users to define is the account used by a program or by a human. Giving that to the administrators (or whichever group) increases bureaucracy a lot. This would be one group without any permission.

(In reply to comment #6)

(In reply to comment #5)

If you need to give extra permissions to a bot. Then you give them a bot flag.
If you need to give permissions to a bot without giving them all the bot
permissions. Create a new group flag with those permissions and give that flag
to the user.
If you want some formal way of adding formal flags to a account to identify it
as something else, even though it adds no extra practical permissions purpose.
Then create a group flag with no extra permissions, and let people add and
remove that flag from themselves.
If you need to generate statistics, then use the API to scan pages to
understand what users are marked as bots according to that wiki's policies. If
an extension wants to add this kind of statistics, then that extension should
create this distinction on it's own, not as part of core.

This is not a feature issue, it's a configuration issue. If we added features
into MW for every trivial request like this, then MW would be packed full of
even more useless features.

Marking this bug as wontfix and creating new bug 14409 to address the one valid
feature request here.

I still think that it is much better to allow to users to define is the account
used by a program or by a human. Giving that to the administrators (or
whichever group) increases bureaucracy a lot. This would be one group without
any permission.

In my comment "Then create a group flag with no extra permissions, and let people add and remove that flag from themselves."
We've had $wgGroupsAddToSelf and $wgGroupsRemoveFromSelf since the 1.12 release. If you created a flag on your wiki, then you could allow them to add it to themselves. And by extension, bug 14409 could allow an account to do that for the accounts linked to it as well.