Final (168/15/7); Originally scheduled 20:55, 11 October 2007 (UTC). Nomination successful. --Deskana (talk) 20:55, 11 October 2007 (UTC)
RedirectCleanupBot (talk · contribs) - This is a very different RfA from the type I am used to writing nominations for. In fact in many ways the title is wrong - I am not proposing that a new administrator be created, but that a Bot account is given a +sysop flag. It is incapable of the judgment we require an administrator to show. I will however outline why giving it the ability to use a sysop tool will be beneficial to the encyclopedia.
Special:BrokenRedirects list pages that are redirects to deleted or non-existent pages. They meet the speedy deletion criteria - CSD R1. When reviewing that list the only human action that is necessary is to ensure that each page does not contain useful history otherwise it is deleted. The page is updated every 2/3 days and I delete well over 100 redirects each time. It occurs to me however that this trivial task could be done just as well automatically.
Of course, a Bot cannot discern useful page history, so this Bot will only delete pages that have no history.
It will work off Special:BrokenRedirects and if an entry there is:
It will delete that redirect.
This task is largely uncontroversial other than the fact that the Bot requires the ability to delete pages. If the Bot deletes a page other than a broken redirect with one revision, it will be blocked on sight. Blocked accounts cannot delete pages. This Bot will not be taking on any future tasks - this will be its sole function and its scope will not be expanded. Bots are designed to perform repetitive tasks that can be performed just as well automatically as manually. I believe this is such a task. WjBscribe 20:52, 4 October 2007 (UTC)
Ask any questions below:
Questions from AA
Questions from F Mita
Please keep criticism constructive and polite. Remain civil at all times.
Having reviewed the code for the bot, I can pretty confidently say that the bot is unlikely to misbehave and will perform as specified. My reservation, however, is that I'm not sure the scope of the bot's function is really one necessary for an adminbot. The task it is performing -- deleting approx. 300 pages per week -- is one that could be accomplished quite simply by a single admin, or small group of admins, in under an hour per week. What concerns me is that granting this bot adminship stands to set an, as of yet unestablished, precedent that adminbots are generally accepted. This is a precedent I would be fine with having set, but would see it more appropriately established through the promotion of Curpsbot or similar currently active, though "illegitimate," adminbots. I also worry that the scope of this bot will be expanded to include other admin tasks following its promotion and with only the consent of the bot approvals group, a group that generally shares my view and readily approves most adminbot functions. My support for the promotion of this bot would be strictly on the condition that the bot's scope not be expanded to include any other tasks without bringing the bot back to RfA for reconfirmation by the community. Should the bot undertake any additional tasks, with or without the approval of the BAG, the bot should be stripped of its admin status and deactivated on sight. If the bot's operator and writer can agree to these terms, and if the BAG agrees not to authorize any further tasks for this bot without a further RfA for the explicit tasks, then the bot has my support. AmiDaniel (talk) 21:34, 4 October 2007 (UTC)
My concern, somewhat alleviated by the answer to Q.8, is the possibly of inappropriate rights promotion. Grabbing admin rights through poor code management is, quite literally, the oldest trick in the hacker's book. Provided WJBscribe and Eagle 101 understand that losing control of their bot's code will be no different than losing control of their admin account, with sanctions that might entail, then I'm perfectly satisfied to support. Ronnotel 23:25, 4 October 2007 (UTC)
I am worried about this bot for a couple of reasons. First, the bot can be compromised and block everyone (admins included) at a time when no stewards are available (i.e. late at night). Second, I am wondering where this TestWiki is so that we all can see what the bot actually does. Miranda 01:19, 5 October 2007 (UTC)
(I couldn't find anywhere else to put this, so I made a new section just here.)
There's a possible slight bug in the code, although it's unlikely to come up. If a broken redirect is deleted, and then a new page is created at the same title that contains no wikilinks, the page isn't edited from then until when the bot runs, but the broken redirect is still cached in Special:Brokenredirects, the bot will delete the new page due to the else block of the if($targetname) check. Why is that fallback there? (I'd prefer it if the bot only deleted redirects that contain at least one link; I'm not sure if it's possible to create a page which qualifies as being a redirect without it containing a link, but if it is such pages should be sufficiently infrequent that the bot wouldn't be needed to delete/correct them, so I'd prefer it if the redirect were removed.) I'd also prefer it if $targetname was explicitly set to undef as it was created, and if the if() two lines down explicitly checked defined($targetname) (otherwise there will be weirdness in such cases as a broken redirect to 0 due to the way Perl treates boolean values, and this will also avoid some potential interpreter warnings about undefined variables; you are running this with warnings on, presumably?). --ais523 11:53, 5 October 2007 (UTC)
Actually, there's possibly a slightly worse problem along the same lines as the old one; if the first link in the new article is a redlink, then that will also cause the new page to be deleted. The bot absolutely needs to check that the page in question is, in fact, a redirect, before trying to delete it. (A case-insensitive check for #REDIRECT at the start of the article's content should rule out false positives completely (which is important for an adminbot) without producing too many false negatives (adminbots should err on the side of caution, and a false negative is no big deal because it will just lead to the adminbot not deleting a broken redirect when it could have done)). --ais523 12:01, 5 October 2007 (UTC)
my $targetname = undef; rather than my $targetname = "";; sorry for not sending a patch, last time I tried this happened); likewise, the second check for defined (the one containing next REDIRECT should just be a test for nonemptiness ('' ne $target->{'content'} is one way to do this, I think, but there are many others). One other error (this one won't cause the bot to do anything crazy, thought, just causes a few false negatives): $pageTitle will come out HTML-encoded from the regex you use (I can't think of an easy way to avoid this), and as a result an attempt to check "casting directors society of canada" (to take an example from the current special page) will instead end up checking [["casting directors society of canada"]], which is a different page. (Hmm... the deletion log from the correct page shows up there, but it's definitely a different page... maybe this is a MediaWiki bug?) However, the sanity check that checks whether the page is a redirect and whether it is broken will catch this, meaning that this is a false negative; a fix for this would be nice but complicated, I think (unless Perl has an XML-unescape function somewhere in its libraries, which it probably does, for this purpose; if it does, use it to unescape $pageTitle just inside loop REDIRECT). --ais523 17:35, 5 October 2007 (UTC)
Support
Oppose
Neutral
Very Weak Support - I've always hated the idea of having a bot become an admin, but ressurence counts. I'll give it a go for now. --Hirohisat 紅葉 21:44, 4 October 2007 (UTC)