Difference between revisions of "Code of Conduct/Bots"

From MusicBrainz Wiki
Jump to navigationJump to search
 
(13 intermediate revisions by 5 users not shown)
Line 1: Line 1:
  +
==Bot editor type==
Proposed rules for bots:
 
  +
Every bot owner must contact the MusicBrainz team when creating a bot editor, so that its user type can be set to Bot. This will let voters know that the edits are entered by a bot. ''Do not'' run any edits with your bot until the Bot type is set.
   
==Open edit limit==
+
==Edit limits==
  +
===Open edits===
There is a recommended limit of 1000 open edits and a hard limit of 1500 open edits per bot at the same time. Any bot which goes over the hard limit will be blocked.
+
There is a recommended limit of 2000 open edits and a hard limit of 2500 open edits per bot at the same time. Any bot which goes over the hard limit will be blocked.
* I think we also need to limit the edits per day (they are currently 1000 per day for my bot), because some users watch all the edits (also auto-edits) for their subscriptions. E.g. when setting the release language/script more than 1000 edits per day was too much for some users --[[User:Hrglgrmpf|Hrglgrmpf]] 20:42, 4 July 2012 (UTC)
 
  +
* I thought about this a little more: I think 1000 open edits are very strict... I had often many more before I became auto-editor. In any case, the "max. edits per day" should match the "max. open edits", so there is no temptation to enter normal edits as auto-edits. E.g.:<br/>- max. 1000 edits per day = max. 14000 open edits (current limit for my bot)<br/>- max. 71 edits per day = max. 1000 open edits (consequence from this proposal)<br/>I think anything from 500-1000 edits per day (= 7000-14000 open edits) would be ok. Are there objections to this? --[[User:Hrglgrmpf|Hrglgrmpf]] 22:17, 7 July 2012 (UTC)
 
  +
===Daily edits===
** It's worth noting that your bot is one of the ones making more edits than we can vote on; making the limit based on that would be problematic. You're right about limiting max edits per day, but not that they need to match -- autoedits are for things that are more sure, and their limit can therefore be higher. Bots that are making problematic edits as autoedits, we ban. nikki, reosarevok, and I discussed and we're comfortable with 1k/day, 2k recommended open-edits limit, 2.5k hard limit, but higher than that is spam. [[User:Ianmcorvidae|Ianmcorvidae]] 16:38, 10 July 2012 (UTC)
 
  +
Bots shouldn't make more than 1000 edits (be it normal edits or autoedits) per day - that allows users that want to check them all to do so.
  +
  +
===Exceptions===
  +
Exceptions to the above limits can be granted in the [[Development Chat]].
   
 
==Voting==
 
==Voting==
Bots themselves are not allowed to vote on any edits (to be implemented via code).
+
Bots themselves are not allowed to vote on any edits.
   
Yes-voting on bot edits is discouraged unless the voter can 100% confirm they're correct, since it helps them to go through with less eyes on them. If a bot edit gets rejected, a non-bot user can always re-enter it if he feels it's correct - reverting the edit is much more difficult, especially for removals and merges. This also applies to the bot owner: no matter how much you trust your code, manually verify everything before voting yes.
+
Voting yes on bot edits is discouraged unless the voter knows for sure that they are correct, since it helps them to go through with fewer eyes on them. If a bot edit gets rejected, non-bot users can always re-enter the edit if they think it is correct. Reverting the edit is much more difficult, especially for removals and merges. This also applies to the bot owner: no matter how much you trust your code, manually verify everything before voting yes.
   
Bot owners should always be available to read and react to edit notes on their bot edits. If you're not going to be able to do so, don't run your bot until that changes.
+
Bot owners should read and respond to edit notes on their bot edits in reasonable time. If you're not going to be able to do so, '''don't run your bot'''! Just wait until you have more time. You bot will quickly lose the support of the community if you ignore editor votes and comments on your edits.
: This should be stressed... I always answer comments on my bot edits, and hate it when others don't do that --[[User:Hrglgrmpf|Hrglgrmpf]] 20:43, 4 July 2012 (UTC)
 
   
 
==Bot code==
 
==Bot code==
The code for every bot must be open-source and be linked from that bot's user page. Other bot owners, and the community in general, are encouraged to check, review and (if necessary) propose patches for them.
+
We require that the code for every bot is [https://opensource.org/licenses open-sourced] and a link to the source must be provided from that bot's user page. Other bot owners, and the community in general, are encouraged to check, review and (if necessary) propose patches for them.
  +
  +
==Additional requirements==
  +
  +
In addition to a link to the bot's source code, the bot's user page must at minimum list who maintains the bot.
  +
  +
The bot should also log in to MusicBrainz every time it is run, regardless of whether it actually ends up making any edits or not, so that the MusicBrainz team can better keep track of which bots are actually active.
   
  +
[[Category:WikiDocs Page]]
* I think the code must be available for inspection, yes. I think that is only fair. But, I dont think we can require the bot author to apply an open source license to their code for this purpose. This might seem like splitting hairs, but its a significant issue. But I feel strongly that code needs to be available for inspection --[[User:RobertKaye|RobertKaye]] 21:29, 3 July 2012 (UTC)
 
** I think my take on this is a wording like "We '''strongly prefer''' that bots be licensed under open-source licenses, but at the bare minimum the code must be public so we can inspect your algorithmic choices." I think you're right that we can't enforce a ''license'', only code-review, but I also think we agree that if possible we'd prefer everything to be full-fledged open-source, to aid reusability (especially if we want to implement something a bot does in musicbrainz-server itself!), etc. [[User:Ianmcorvidae|Ianmcorvidae]] 22:18, 3 July 2012 (UTC)
 
* Just change the the wording to "the complete source code must be available". This is completely enough for our purposes (inspection). As much as I love open-source, it doesn't really fit into this rule-set (and I don't think it will turn into a problem, we have no closed-source bot). A much bigger problem is, that most bots have a saved state (mostly SQL tables with information on already visited releases/etc). Without those SQL tables it is impossible to re-run the bot. They should also be published! --[[User:Hrglgrmpf|Hrglgrmpf]] 20:47, 4 July 2012 (UTC)
 

Latest revision as of 15:16, 26 April 2019

Bot editor type

Every bot owner must contact the MusicBrainz team when creating a bot editor, so that its user type can be set to Bot. This will let voters know that the edits are entered by a bot. Do not run any edits with your bot until the Bot type is set.

Edit limits

Open edits

There is a recommended limit of 2000 open edits and a hard limit of 2500 open edits per bot at the same time. Any bot which goes over the hard limit will be blocked.

Daily edits

Bots shouldn't make more than 1000 edits (be it normal edits or autoedits) per day - that allows users that want to check them all to do so.

Exceptions

Exceptions to the above limits can be granted in the Development Chat.

Voting

Bots themselves are not allowed to vote on any edits.

Voting yes on bot edits is discouraged unless the voter knows for sure that they are correct, since it helps them to go through with fewer eyes on them. If a bot edit gets rejected, non-bot users can always re-enter the edit if they think it is correct. Reverting the edit is much more difficult, especially for removals and merges. This also applies to the bot owner: no matter how much you trust your code, manually verify everything before voting yes.

Bot owners should read and respond to edit notes on their bot edits in reasonable time. If you're not going to be able to do so, don't run your bot! Just wait until you have more time. You bot will quickly lose the support of the community if you ignore editor votes and comments on your edits.

Bot code

We require that the code for every bot is open-sourced and a link to the source must be provided from that bot's user page. Other bot owners, and the community in general, are encouraged to check, review and (if necessary) propose patches for them.

Additional requirements

In addition to a link to the bot's source code, the bot's user page must at minimum list who maintains the bot.

The bot should also log in to MusicBrainz every time it is run, regardless of whether it actually ends up making any edits or not, so that the MusicBrainz team can better keep track of which bots are actually active.