Help:Bot policy

MyWikiBiz, Author Your Legacy — Friday November 22, 2024
Jump to navigationJump to search

Robots or bots are automatic processes that interact with Centiare as though they were human editors. Please read the guidelines below before designing and implementing any bot on Centiare.

Policy

Prior to use, bots must be approved at Centiare:Bots/Requests for approval. State there precisely what the bot will do, observe and participate in the discussion, and await authorization. Approval may take up to one week. After approval you may run the bot for a short period so it can be monitored. After the trial the bot will be evaluated by someone in the approvals group and you may ask that the user be marked as a bot by a bureaucrat.

Please do not start running your bot without:

  1. Creating a talk page for the bot, describing its functions
  2. Listing it on Requests for approvals
  3. Getting the go-ahead

When seeking approval, please state the following:

  1. Whether the bot is manually assisted (run by a human) or automatically scheduled to run;
  2. The period, if any, we should expect it to run;
  3. What language or program it is running;
  4. Its purpose

Create a user page for your bot before seeking approval on BRFA:

  1. Describe the bot's purpose, language it uses, what program(s) it uses (pywikipedia framework, etc)
  2. Describe whether it is manually assisted or automatically scheduled to run
  3. The period, if any, we should expect it to run
  4. Describe who the maintainer is
  5. Add its user page to Category:Centiare bots by adding {{Bot|Original Username}} to the top of the bot's user page

Usernames for new bots should incorporate the word "bot" so that editors realize they are dealing with an automaton. The username for the bot should also incorporate the username of the bot operator or a recognizable fragment of it.

  1. Sysops should block bots, without hesitation, if they are unapproved, doing something the operator did not say they would do, messing up articles, editing too rapidly, or running anonymously. A bot operator is encouraged, but not required, to post their IP address on their bot's user page so that the owner of an anonymously running bot can be found.
  2. New bots should run without a bot flag so people can check what it's doing.
  3. Unflagged bots (including bots in trial periods) should limit edits to no more than 2 per minute. After being approved and receiving a bot flag, this can be increased. Bots doing non-urgent tasks may edit approximately once every ten seconds, while bots who would benefit the project by faster editing may edit approximately once every four seconds. Larger delays are always allowed, and it is recommended that bots run with larger delays during peak hours, and days (such as Mondays). Ideally, bots should be run at a rate that permits human editors to review the bot's edits if the need arises.
  4. The operator should be at, or logged into, the machine the bot is running on to terminate it if necessary during the debugging phase, otherwise the bot is liable to be blocked without notice.
  5. Bots that download substantial portions of the page database are prohibited. Instead, download the database dumps.
  6. Do not log in as your bot when replying to inquiries. Questions or concerns can be addressed at bot's talk page or the operator's talk page, but since bots can't reply, the one responsible for replying is its operator.

The burden of proof is on the bot-maker to demonstrate that the bot:

  1. is harmless
  2. is useful
  3. is not a server hog
  4. has been approved
  5. has appropriate community consensus for each task
  6. abides by all guidelines, policies and common practices

To help prove that a bot is harmless and useful, a trial period may be asked to demonstrate the bot. Any complaints made about the bot during the trial period require that the bot be stopped immediately, and the issue should be resolved at Centiare talk:Bots. If the trial period passes with no problems, a bot flag may be requested at BRFA.

If you plan to make any modifications to your bot that expand the scope of its original purpose, please leave a note on the talk page regarding the nature of the change to assert that no one has any problems with your bot, and with such additions the bot will still be harmless and useful, and not a server hog.

Spell-checking bots

There should be no bots that attempt to fix spelling mistakes in an unattended fashion. It is not technically possible to create such a bot that would not make mistakes, as there will always be places where non-standard spellings are in fact intended. Manually-assisted spell-checking bots are acceptable, so long as they include international spell checking and not only country-specific spell checking. Statistic-generating spell-checking bots, which generate statistics on common misspellings, are also acceptable.

Problems with a specific bot

If you spot a problem or have a complaint about a specific bot, take your query to the bot operator's talk page. If you think the problem is serious and would like greater input, leave a short note at Centiare talk:Bots pointing to the discussion at the operator's talk page. An administrator can block on sight any bot that appears to be out of control.

Good form

Bot operators are encouraged (but not required) to:

  • Publish the source code of their bot (unless it's a clone)
  • Program his or her bot to stop editing if someone leaves a message on its talk page. This can be checked by looking for the "You have new messages..." banner in the HTML for the edit form.
  • Program his or her bot to stop editing if they detect that they have logged out. This can be checked by looking for bot's name in the HTML for the edit form. If the bot is not logged in, then the bot's name won't be listed in the HTML. Bots running anonymously may be blocked.
  • Be compliant with the bots opt-in/opt-out facility.

Repairing damage

If, despite all efforts and review, a bot is found to have caused unintentional damage, it is the responsibility of the bot operator to repair it. Note that this could require either lots of manual work, or the creation (and perhaps approval) of a new bot. If you are not prepared to clean up after your bot if it misbehaves, you should not run it. There is, of course, no reason that help cannot be asked for or offered.

Assisted bots

Assisted bots are defined as any software that allows rapid editing of articles, while not saving any changes without some human interaction. Typical assisted jobs include those which are repetitive, but cannot be done fully automatically e.g. disambig repair, stub sorting and typo fixing.

  • Assisted bots don't necessarily need bot approval, though some software has built in approval detection, whereby approval from an admin is required (developers are encouraged to build in approval mechanisms). If you have any doubts, it is safer to go through the approval process.
  • A separate account is advised if many edits are going to be made.
  • Always make extra sure there is consensus before making a large series of edits.
  • Make it clear that software is being used to perform the edit.

See also