Code of Conduct/Bots

From MusicBrainz Wiki
Jump to navigationJump to search

Proposed rules for bots:

Open edit limit

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.

  • 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 --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.:
    - max. 1000 edits per day = max. 14000 open edits (current limit for my bot)
    - max. 71 edits per day = max. 1000 open edits (consequence from this proposal)
    I think anything from 500-1000 edits per day (= 7000-14000 open edits) would be ok. Are there objections to this? --Hrglgrmpf 22:17, 7 July 2012 (UTC)
    • 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. Ianmcorvidae 16:38, 10 July 2012 (UTC)

Voting

Bots themselves are not allowed to vote on any edits (to be implemented via code).

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.

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.

This should be stressed... I always answer comments on my bot edits, and hate it when others don't do that --Hrglgrmpf 20:43, 4 July 2012 (UTC)

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.

  • 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 --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. 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! --Hrglgrmpf 20:47, 4 July 2012 (UTC)