Wikipedia:Bots/Requests for approval/DeleteAsstBot
- The following discussion is an archived debate. Please do not modify it. Subsequent comments should be made in a new section.
Operator: PocklingtonDan
Automatic or Manually Assisted: Manually-run, but makes changes without manual confirmation
Programming Language(s): Perl
Function Summary: To provide the user with a wizard interface to nominating an article for deletion.
Edit period(s) (e.g. Continuous, daily, one time run): On demand, perhaps 100 times a day.
Edit rate requested: 1 edits per second while running (only 2-33-4 edits per instances, 100 instances a day)
Already has a bot flag (Y/N): N
Function Details: I just tried to nominate an article for deletion and found the process arcane and bizarre. The current manual method of having to copy and paste various pieces of text between pages isn't very user-friendly with template substitutions etc. The bot would provide a wizard interface - the user selects values from drop-down menus, or types in entries in form fields, and the bot then does the template substitution and writes to the necessary pages etc. Could do a small-scale trial, but if it works could host it on toolserver and use it as default method of requesting AFDs. If it is accepted, could see the bot also handling other currently manual processes (such as the bot request process itself even). Let me know your thoughts and ideas. Looks like the bot would be called about 100 times/day.
Discussion
editVery interesting idea. To be clear, it makes 2 or 3 edits per request. First, it would go to the article page and place {{subst:afd}} if it's not already there, then it would create the AfD subpage for the article, and finally, it would go to today's log and add it to the bottom of the log. Correct? (Also, please make a userpage for your bot and register its account) —Mets501 (talk) 21:43, 9 January 2007 (UTC)[reply]
- Absolutely correct, yes, all it does it stick a front-end on the process and makes it easier for people. I will make the userpage for the bot now. Thanks - PocklingtonDan 21:58, 9 January 2007 (UTC)[reply]
- You need to ensure that the bot will create the xth nomination if an AfD for a page already exists. Some pages have lots and lots of noms -- Tawker 05:39, 10 January 2007 (UTC)[reply]
- Can you just confirm exactly what you mean by this? I was going to have the bot just add each stage that hadn't already been added. ie if not already afd flag on article page, add flag; if not already an afd subpage, create subpage, if not already in that day's log, ann to that day's log. I see that there is a separate template {{afdx}} to be used instead of {{afd}} if the article is being proposed for a non-first time. Is there an easy way of determining how many times a page has already been proposed for deletion?? Thanks - PocklingtonDan 07:51, 10 January 2007 (UTC)[reply]
- You need to ensure that the bot will create the xth nomination if an AfD for a page already exists. Some pages have lots and lots of noms -- Tawker 05:39, 10 January 2007 (UTC)[reply]
I have set up a dummy for the bot here which shows the proposed interface and actions. It does NOT currently submit articles for deletion, but that code can be added farily quickly and painlessly to it. Among the checks it currently does are to log the user's IP address requesting the delete, making sure no fields are left blank, making sure the article name is valid and exists, and making sure the category provided is valid. I still need to know if there is an easy way of telling how many times an article has been nominated for deletion previously (in order to remove this burden of finding out from the user). Other than that, I'm ready to put in the actual edit code and trial it if approved for trial. Thanks - PocklingtonDan 14:35, 10 January 2007 (UTC)[reply]
- As above, the bot would now make 3-4 edits per instance, posting notification on the talk page of the article creator, as per wikipedia guidelines. - PocklingtonDan 14:43, 10 January 2007 (UTC)[reply]
- I have the code written now too, so ready to go ahead with trials as soon as authorised to do so. Cheers - PocklingtonDan 17:00, 10 January 2007 (UTC)[reply]
- I did a single trial run (see bot contribs) and it worked almost perfectly. Two minor issues to straighten out:
- Put sig twice on user talk page of article creator. 2 second fix
- Created the page at ArticleName (first nomination) instead of at ArticleName - I didn't realise this behaviour was part of theafdx template, will correct for future runs
- Other than that seems to have worked fine, although feel free to examine the edits and give feedback- PocklingtonDan 19:12, 10 January 2007 (UTC)[reply]
- I did a single trial run (see bot contribs) and it worked almost perfectly. Two minor issues to straighten out:
- I have the code written now too, so ready to go ahead with trials as soon as authorised to do so. Cheers - PocklingtonDan 17:00, 10 January 2007 (UTC)[reply]
You do know that there are scrips that do this. (normally vie monobook.js). There are a few, and can be found on Wikipedia:WikiProject User scripts/Scripts. An example of a (the?) specific script that does what this bot does is Wikipedia:WikiProject User scripts/Scripts/AutoAFD.js. Now I may not be 100% sure as to this bots purpose, but it is to basically help people to add new AFD nominations? If so, and as I gather this is going to be running on toolserv? If so there are a few problems that I can forsee.
- How are users going to "command" this bot? It is vie a web interface, there is going to need to be a way to prevent malicious users from abusing this bot. (listing a crap load of AFDs, some not legit) would be one way.
- How will this bot know who submitted it? (as to signing a name after the AFD nomination. Will there be a way to prevent imposers?
Those seem to be the primary problems. Cheers! —— Eagle 101 (Need help?) 02:37, 11 January 2007 (UTC)[reply]
- If I understand the script situation correctly, this relies on the user following a link and searching for a script and then installing a client-side script on their machine. I don't even know how to install a javascript onto my machine and I shouldn't have to just to use wikipedia. Users should not have to waste this time searching and install a secific script on their machine for such a simple request. Rather than forcing the user to install a script, this is a server-side solution. The user simply clicks on a web link to start the process. The bot very simply adds a wizard interface onto the nomination process. Rather than having to do the edits manually, they simply type in the requested information (article name, category for debate, reason for nomination) into form fields and click submit. The bot makes all the tedious edits for them. This does not run on toolserv now but I would imagine it would do if it became the default interface, which seems sensible. You can run the bot here. This could be provided as a simple "nominate an article now" link on the AFD page.
- With regard to preventing malicious usage, impersonation is not possible. The bot logs the IP of who submitted the request and posts it as the signature of the AFD request. It is therefore possible to see if someone has submitted a series of frivolous requests, just as it is now. Hopefully the AFD debate process is robust enough not to delete articles just because someone nominated them! If it is really thought to be necessary, I could prevent, say, the same IP submitting more than one AFD nomination per day, but I would strongly argue against such functionality - I think it is perfectly valid for people to nominate more than one article per day. I am open to other suggestions but I don't think there will be any more problems with malicious AFD nominations using the bot than there are now. I wouldn't imagine that nominating articles for deletion maliciously provides the same vicarious thrill for vandals as the immediate effect of replacing page contents with "you are all gay". Some vandalism is inherent in the wikipedia model, but this bot will not increase the level of vandalism. Thanks - PocklingtonDan 07:24, 11 January 2007 (UTC)[reply]
- Additionally, have now added an edit token system to prevent automated repeated uses etc. The bot will only write results if the user has requested the edit form and completed it (as with wikipedia edits) - PocklingtonDan 12:14, 11 January 2007 (UTC)[reply]
- Screenshot below for clarification:
PocklingtonDan 12:39, 11 January 2007 (UTC)[reply]
- Um, I still don't think that is enough, I can circumvent the edit token problem with next to no work at all. All I have to do is load the pages, set the data, and press the button (in a program). Secondly, what is to stop say banned users from abusing this bot? So what if we can see the IP, if I (theoretically) used this 1000 times (not a hard feat), I could really cause problems. The js scripts are not hard to install, just copy paste the given script to User:Yournamehere/monobook.js (defualt). Also logging the IP may not be enough, after all some users are on ranges, and can abuse the tool in that fashion. I still think there are some security issues that need fixed. But what you have done so far looks encouraging. Cheers! —— Eagle 101 (Need help?) 23:13, 11 January 2007 (UTC)[reply]
- For starters you could check to make sure the user's IP isn't on the Special:Ipblocklist. I would like it if there was some way to submit the edit under the user's username, if you know what I mean. Perhaps have the user enter the information in the form, then give the user text to copy-paste into the AFD subpage, and then tell the user to press the "Next" button or something once the subpage has been created and the bot will add the afd template to the article page (if it's not there already) and add the line to the bottom of the log. —Mets501 (talk) 23:42, 11 January 2007 (UTC)[reply]
- Thanks for taking the time to discuss this fully. I'll answer each concern in turn:
- With regard to circumventing the edit token, what you say is true, but then again you could also use automation to make malicious edits to wikipedia - I could write a bot that went through vandalising every page in the database - so there's no added vulnerability from using this bot
- With regard to banned users from using the bot, I think the proposed idea of refusing any edits by users in the Special:Ipblocklist is an excellent idea and I will incorporate this into the code.
- With regard to submitting the edit under the user's username, however you do this it will add complication. There's no real necesity to see which user created the AFD request, since an AFD request should be judged on its merit, not who submitted it, and you could still see if someone had suggested 10 pages in a row by the IP address.
- With regards to the scripts, why have something manual at all when this bot could do the same thing flawlessly and intuitively without putting extra burden onto the user? - PocklingtonDan 08:33, 12 January 2007 (UTC)[reply]
- Update: is there no category or similar of blocked IPs? The Special:Ipblocklist log is huge since you might have to search every page of it right back to the first page in order to be sure of catching every outstanding IP block. This seems inefficient. A category list or similar would seem to be a much better alternative for quick parsing. It would seem to be more efficient to check a page listing only current IP blocks rather than the history of IP blocks since the dawn of time. Cats Category:Temporarily_blocked_Wikipedians and Category:Indefinitely blocked IP addresses seems tailor made for the job but I'm not sure if they are maintained and can be trusted? Can anyone confirm? - PocklingtonDan 08:37, 12 January 2007 (UTC)[reply]
- You should use http://en.wikipedia.org/w/index.php?title=Special%3AIpblocklist&action=search&ip=PLACE_IP_HERE. —Mets501 (talk) 19:21, 12 January 2007 (UTC)[reply]
- Thanks! That will do the job nicely, I will incorporate this now - PocklingtonDan 19:39, 12 January 2007 (UTC)[reply]
- You should use http://en.wikipedia.org/w/index.php?title=Special%3AIpblocklist&action=search&ip=PLACE_IP_HERE. —Mets501 (talk) 19:21, 12 January 2007 (UTC)[reply]
- Thanks for taking the time to discuss this fully. I'll answer each concern in turn:
- For starters you could check to make sure the user's IP isn't on the Special:Ipblocklist. I would like it if there was some way to submit the edit under the user's username, if you know what I mean. Perhaps have the user enter the information in the form, then give the user text to copy-paste into the AFD subpage, and then tell the user to press the "Next" button or something once the subpage has been created and the bot will add the afd template to the article page (if it's not there already) and add the line to the bottom of the log. —Mets501 (talk) 23:42, 11 January 2007 (UTC)[reply]
- Um, I still don't think that is enough, I can circumvent the edit token problem with next to no work at all. All I have to do is load the pages, set the data, and press the button (in a program). Secondly, what is to stop say banned users from abusing this bot? So what if we can see the IP, if I (theoretically) used this 1000 times (not a hard feat), I could really cause problems. The js scripts are not hard to install, just copy paste the given script to User:Yournamehere/monobook.js (defualt). Also logging the IP may not be enough, after all some users are on ranges, and can abuse the tool in that fashion. I still think there are some security issues that need fixed. But what you have done so far looks encouraging. Cheers! —— Eagle 101 (Need help?) 23:13, 11 January 2007 (UTC)[reply]
- An additional advantage of the bot is that it would not allow overwrite of previous nominations with new ones (which is a problem at the moment). It would standardise the nomination page naming to "ARTICLENAME (nomination N)" allowing the bot to easily scan for previous noms and name the new one accordingly. - PocklingtonDan 11:14, 12 January 2007 (UTC)[reply]
- That's incorrect, though. It should be at "Articlename (nth nomination) —Mets501 (talk) 19:21, 12 January 2007 (UTC)[reply]
- Doh, good point, Ive actually ocded it wrong aswell, will recode this now - PocklingtonDan 19:39, 12 January 2007 (UTC)[reply]
- That's incorrect, though. It should be at "Articlename (nth nomination) —Mets501 (talk) 19:21, 12 January 2007 (UTC)[reply]
I know that there's no real possible way to do this if it's hosted on an external server (other than en.wikipedia.com), but a username would be nice too. An IP is a good start, but this means that in case of a malicious IP, we'll need to hard-block the IP (including all users using that IP), as only checkusers have access to the users using the IP. I would prefer an on-wiki solution (where someone edits a subpage with the article and reason, and so we as individuals can track who is doing the actual nominating. -Royalguard11(Talk·Desk·Review Me!) 01:06, 13 January 2007 (UTC)[reply]
- I agree that it would be ideal to keep usernames but i don't think we really lose that much by not having them submitted here. As I say, a nomination shuold not be considered based on who submitted it, but ont he merits of the case. The IP will be recorded and will not allow submissions by blocked IPs, as suggested by Mets501 above, and will also allow display of pattern of submissions allowing tracking of unblocked IPs nominating multiple articles, just as now. An on-wiki solution would be the perfect case but it doesn't exist. I believe this is a very close second best. - PocklingtonDan 07:19, 13 January 2007 (UTC)[reply]
- EDIT: I would propose (well I would, wouldn't I) that this runs on an extended probation if approved to see whether various concerns materialise etc. I have a few more pieces of code to complete and then I really would like ot try and go for a proper approved trial run - PocklingtonDan 18:15, 13 January 2007 (UTC)[reply]
- OK, I believe that I have incorporated all of the suggestions above into the live script. I could do with approval for trials/testing and members of the BAG testing its use if they need to nominate an article for deletion. There will probably be improvements and changes need to be made, but I don't want to put more time and effort into this if its not going to be approved for trial on principle. - PocklingtonDan 13:13, 14 January 2007 (UTC)[reply]
- EDIT: I would propose (well I would, wouldn't I) that this runs on an extended probation if approved to see whether various concerns materialise etc. I have a few more pieces of code to complete and then I really would like ot try and go for a proper approved trial run - PocklingtonDan 18:15, 13 January 2007 (UTC)[reply]
- This bot will only be approved if it runs under the AfD Noms account, as abuse of this bot can easily be done. I might suggest a a javascript version that users can use, Like Lupin or interlots tools other wise I cannot approve this. Betacommand (talk • contribs • Bot) 18:39, 14 January 2007 (UTC)[reply]
- Man, I'm not having much luck getting bots through approvals at the moment. How about if the bot prevented an IP for listing more than one article for deletion per hour or similar? If not, bot reluctantly withdrawn. - PocklingtonDan 20:29, 14 January 2007 (UTC)[reply]
- Bot not approved, discussion archived. Betacommand (talk • contribs • Bot) 05:38, 16 January 2007 (UTC)[reply]
- The above discussion is preserved as an archive of the debate. Please do not modify it. Subsequent comments should be made in a new section.