The following discussion is an archived debate. Please do not modify it. To request review of this BRFA, please start a new section at WT:BRFA. The result of the discussion was Approved.

Operator: Bwilkins (talk · contribs)

Automatic, unsupervised

Programming language(s): pywikipedia (Python)

Source code available: https://svn.toolserver.org/svnroot/josh/g7bot

Function overview: Admin-bot that deletes strictly-complying pages tagged with CSD-G7. All others are ignored.

Links to relevant discussions (where appropriate): Wikipedia:Criteria for speedy deletion#G7

Edit period(s): continuous

Estimated number of pages affected: 100 per day

Exclusion compliant (Y/N): Y, standard pywikipedia

Already has a bot flag (Y/N): N

Function details: Any entry in Category:Candidates for speedy deletion by user is checked for simple compliance with CSD-G7: a single contributor talk or User page. If that page is in User: or User Talk: the contributor must also be that user. Pages are required to have one of the appropriate templates - ((db-g7)), ((db-self)), ((db-author)), ((db-blanked)). Redirects created by moving pages or pages that are transcluded anywhere will not be deleted.

Complying pages are deleted; no confirmation is given to the requesting user - the delete just happens. Checks against the category are run every 30 seconds, so the average turn-around will be about 15 seconds.

Pages are not tested for having one of the appropriate templates, for example ((db-g7))

CSD-G7 allows for pages other than those with a single contributor to be deleted (no substantial contributions from others), but that requires judgment and so the bot will only delete those with a single contributor.

Discussion[edit]

I developed the bot in response to User:Bwilkins' request, but as a non-admin I can't operate it. It would be prudent for a code-review to be undertaken given the bot will have administrator powers. Source code runs to 111 lines. Josh Parris 01:32, 31 January 2010 (UTC)[reply]

Code review; faults fixed (a subsequent code review will be required)

Some comments from reviewing the code:

  • Why doesn't it check for the presence of the template? Every once in a while, someone tags a template with a CSD tag and forgets to put it in <noinclude> tags. If someone tagged a userspace template (like a userbox or a header template), the bot might accidentally delete half their userspace.
  • G7Bot.number_to_fetch seems be be unused
  • match = re.search('User( Talk)?:(?P<username>[^/]*)/?.*?', page.title()) — The 'talk' in 'User talk' is not capitalized
  • In function G7Bot.delete_page(), the continue statement isn't directly in a loop, so that won't work.
  • I'm also not sure if the username check for userspace its necessary. You're already checking that the page only has one contributor, the only thing this would do is not delete a page if someone created the page in someone else's userspace for some reason. But since they're the only editor, it would still technically fall under G7.
  • page.Delete(reason='Simple compliance with G7', - This is unnecessarily non-descriptive/cryptic. I would add a link to WP:CSD#G7 and a short description of what this means, similar to the deletion summaries used by Twinkle.
  • Is pywikipedia maxlag compliant by default?

-- Mr.Z-man 02:25, 31 January 2010 (UTC)[reply]

Mr. Z-Man- pywikipedia has a function to set throttle automatically, but it can be overridden if need be.
Just a few things:
  1. For accounts with a bot or admin flag, the API allows for 5000 items instead of only 500.
  2. I agree with Mr. Z-man that you do not need to check the username; if there is only one contributor the page is delete-able.
  3. With that in mind the enitre only_contributor(page) module is not needed. Instead use wikipedia.page.contributingUsers(). That module returns a set of all users who have edited the page. I assume you could use something like:
if len(page.contributingUsers()) <= 1:
   page.delete()
Other then that it looks fine. Tim1357 (talk) 03:28, 31 January 2010 (UTC)[reply]
Rewritten to reflect code review

The the need for a template-check was a particularly good catch. If there are alternative suggestions for the delete summary message, which now reads Only one contributor who requested deletion under WP:CSD#G7, please bring them forth! Yes, pywikipedia is maxlag compliant by default. 500/5000 doesn't make much difference, you're never going to see that many in that category unless something goes horribly wrong. Josh Parris 11:15, 31 January 2010 (UTC)[reply]

Looks good cept for this one bit:
wikipedia.query.GetData(params, self.site)['query']['categorymembers']
should be
import query
query.GetData(params, self.site)['query']['categorymembers']
Thats it. Tim1357 (talk) 17:32, 31 January 2010 (UTC)[reply]
Broader notification

I've mentioned this at WP:AN and WP:VPR to stir up any dissenters, or possibly to hear clambering for a rapid approval. Josh Parris 12:36, 2 February 2010 (UTC)[reply]

Opinions based on a bad idea, since modified based on those opinions
  • Comment - Please check that the page is not a redirect as a result of a page move (as mentioned in G7). Also assuming it's not just for articles, please check that templates are not transcluded and that categories are empty. Even admins are unlikely to delete these items without a little extra work. It might also be worth checking whether images are used. -- zzuuzz (talk) 12:48, 2 February 2010 (UTC)[reply]

Additional rules:

  1. If the edit comment for the first edit starts with "moved ((PAGENAME)) to ", don't delete
  2. If the page is a template and Special:WhatLinksHere lists any transclusions, don't delete
  3. If the page is a category and it has any members, don't delete
  4. If the page is an image and Special:WhatLinksHere lists any links, don't delete

Understood. I'll get coding on these. Josh Parris 13:03, 2 February 2010 (UTC)[reply]

  • I support the idea of this bot generally, after a thorough code review by individuals more competent than I =) –xenotalk 13:53, 2 February 2010 (UTC)[reply]
  • Support. In general, I think this is a worthwhile project that will help handle a generally non-controversial corner of the deletion process. That said, I'm not sure we'll see that many pages compliant with the criteria above. If a user starts an article, then blanks it, the user that tags it as G7 becomes the second editor. I don't imagine anyone would object to the deletion of the page, if the last edit was to tag it and all preceding edits were the author, and if the next-to-last edit (immediately before the tag) were an edit flagged as "Page Blanking". But I have no idea how you'd code it, nor do I know if it would be worthwhile to code so narrow an exception. An aside - does the bot notify the user, even with something as simple as " Done - Example has been deleted per your request. User:7SeriesBOT 14:09, 2 February 2010 (UTC)"? In any case, brilliant work and I look forward to seeing this. UltraExactZZ Said ~ Did 14:09, 2 February 2010 (UTC)[reply]
    Admins don't notify so I don't see why a bot would need to. A major reason for this bot is to follow behind contributions who tags talk pages as G7 after the ambiguous links have been cleaned. –xenotalk 15:50, 2 February 2010 (UTC)[reply]
    Meh, I usually notify if I delete a G6 - but it's more of a "Page is deleted, so you can do your page move/housekeeping/whatever". I think it is useful to notify a new user if their article was deleted just because they blanked it, if only as a measure to combat WP:BITEing - but agree, it's usually unnecessary. A list of bot notices would be helpful in tracking the bot's activity, though - and might not be a bad idea during any trial period. But it's really not a big deal at all, and absolutely not a barrier to approval. UltraExactZZ Said ~ Did 16:27, 2 February 2010 (UTC)[reply]
    In a case like that I look for a clear indication, usually beyond mere blanking, that the author wanted deletion. Absent such, I wouldn't delete. I also check for significant items in history that shouldn't be deleted, and of course would not usually delete a user talk page under G7 or G6, or U1. DES (talk) 03:50, 3 February 2010 (UTC)[reply]
  • Support the idea, as long as the bot's able to delete pages that have been edited by another user who does nothing but placing the deletion tag. Like Xeno, I don't know coding, so I have no opinion on whether this version of this bot is good. Nyttend (talk) 15:46, 2 February 2010 (UTC)[reply]
  • Support the general idea so long as it disregards "contributors" who only added the G7 tag (plus optional whitespace). One other point: in order to make only uncontroversial G7 deletions, it probably should not delete pages in article space if there has been any previous AfD for that pagename. It isn't especially likely that an article creator nominated his own page for AfD, AfD returned keep, and the nominator then tagged the page as G7 - but it is possible, and in such a case the page should not be speedily deleted. Gavia immer (talk) 17:57, 2 February 2010 (UTC)[reply]
  • Strong oppose I deal with many G7s at CSD:SPEEDY, and although I delete the great majority of them, it is not always as simple as it looks, even when there is only one editor. Once they have contributed a page, people no longer own it. If they should give up on developing it, someone else still might. I will not delete it if it looks like it might be a passable article--to avoid confusion I edit it a little in that case. People have even sometimes marked their pages for deletion out of spite, sometimes when leaving Wikipedia, or sometimes from pure impatience with our processes. But the main reason I oppose is that we should do nothing which in any way lets people think they have OWNERSHIP. DGG ( talk ) 19:02, 2 February 2010 (UTC)[reply]
  • Oppose - per DGG, and because this has been discussed before with a conclusion that there are too few cases to justify a bot. Also it sets a "deletion by bot" precedent which we should be careful about doing; I don't think the gains here are large enough to justify the precedent. Rd232 talk 20:19, 2 February 2010 (UTC)[reply]
  • Comment In my experience g7 tags are often used in userspace too instead of u2 tags, since they're basically saying the same thing. Were this bot to be approved it must ignore requests for user talk pages, since they are not to be deleted on request--Jac16888Talk 20:26, 2 February 2010 (UTC)[reply]
  • Comment I originally came across Josh's bot dealing specifically with article talkpages that WildBot had been marking to fix disambiguation issues, then would blank the talkpage and mark for G7. This still generates a lot of article talkpages for speedy deletion. I would have no issue whatsoever (and it originally was my intent) for this to focus solely on those article talkpages that get tagged for G7 by Wildbot. Any future tasks could be added later on, if the simple G7'd article talkpage was a successful project. (talk→ BWilkins ←track) 21:24, 2 February 2010 (UTC)[reply]
  • strong oppose', as per DGG. I find that G7 tags are often misapplied. I do not trust a bnot to make the needed distinctions, and i am dubious about a bot with delte tools at all. I might add that I have asked the operator of WildBot to stop placing G7 tags. DES (talk) 03:46, 3 February 2010 (UTC)[reply]
    Note that G7 requires that if a non-talk page is to be deleted, the talk page must also be the effectively sole creation of the same user. Does the bot check for this? DES (talk) 03:54, 3 February 2010 (UTC)[reply]
    Yes, as currently designed the bot refuses to delete anything with more than one contributor, leaving that call to the humans. Josh Parris 05:57, 3 February 2010 (UTC)[reply]
    I wasn't clear. Suppose that User:AAA has created Page X and is its only editor, and tags it with a G7, However User:BBB and User:CCC have each edited Talk:Page X, suggesting changes to the page. Will the bot detect this situation and not delete in such a case? in short will the "one editor" rule be applied to the combination of a page and its talk page? DES (talk) 06:13, 3 February 2010 (UTC)[reply]
    In this case the bot as proposed would delete, which is undesirable. I think we should move past the current proposal to something that is workable, as below. Josh Parris 11:14, 3 February 2010 (UTC)[reply]
  • Oppose, not necessary (volume is clearly manageable), might cause problems every now and then. For example, pages that qualify for G7 should sometimes not be deleted if they are transcluded somewhere; if an editor leaves and decides to G7 his entire Template contributions (which can be in any namespace, really), the bot will cause a lot of disruption. —Кузьма討論 12:13, 4 February 2010 (UTC)[reply]

G7 "good faith" requirement[edit]

It appears all the opposes are on the difficulty of measuring the G7 "good faith" requirement, which is a perfectly reasonable objection.

The original rationale for developing this bot is WildBot's activities, which often result in a blank talk page which can be a confusing thing to see. It was suggested that WildBot tag talk pages that it was the only contributor to with G7 to avoid this, but then there was a raft of admins complaining about the vast number of blank talk pages they were being asked to delete.

Would it be reasonable for 7SeriesBOT to limit its activities to all talk pages, and any User: page? If not, what about deleting pages which only have bot contributors; or a single bot contributor? Josh Parris 05:46, 3 February 2010 (UTC)[reply]

Frankly i think it would be better for wildbot to simply blank the page, and not worry about deleting it. in most of the cases where it acts, a project template belongs on the talk page anyway. DES (talk) 06:14, 3 February 2010 (UTC)[reply]
I should add that I oppose on principle any bot intended to do page deletions, for whatever purpose and under whatever safeguards. Also in this particular case, a request may be made in good faith, but there may still be a valid reason to decline it. Talk pages (not user talk) with only a single bot contributor is less dangerous, I will grant. DES (talk) 06:18, 3 February 2010 (UTC)[reply]
"I oppose on principle any bot intended to do page deletions, for whatever purpose and under whatever safeguards" - this is why admin bots were (and some still are) run in secrecy for so long. --Chris 10:54, 3 February 2010 (UTC)[reply]

Comment I've just run into a talkpage where Wildbot was doing its thing ... but did not tag for G7 (yet?). Wow, I have to admit it's a little annoying to follow a bluelink to a completely blank page. Long ago I believed that this was what should happen, but now that I've actually seen it, please ... NO! Tag it and delete it. (talk→ BWilkins ←track) 12:19, 3 February 2010 (UTC)[reply]

I turned off g7 tagging at DESigel's request. I foretold the admin wrath I've been taking for G7 tagging blank pages, and it's obvious that that blanking isn't a grand idea either. Of course, now the blank pages will start turning up at Wikipedia:Database reports/Blank single-author pages, so administrators with a different focus get to deal with the problem. Josh Parris 21:43, 3 February 2010 (UTC)[reply]
WildBot could place ((Talk header)) on the page, but that's just as confusing as a blank page, because it tells you that "this is where we talk about the article", and then proceeds not to. Josh Parris 22:14, 3 February 2010 (UTC)[reply]
Is there any way for it to figure out the proper project header template? Probably not. DES (talk) 00:05, 4 February 2010 (UTC)[reply]
Not automagically. There are dozens of bots whose role in life is to tag pages for WikiProjects, but they're all semi-automatic - the operator will tell them to, for example, tag every article that appears in both of these two categories (or sub-cats thereof) as belonging to WikiProjects XYZ, and off the bot goes. But categorization is something new pages only sometimes get, and often poorly at that. There are many techniques for project tagging, but of 229 early talk pages deleted after WildBot blanked them, only 20% have been recreated (some possibly by WildBot) - see User talk:WildBot/NukeFromOrbit. Josh Parris 13:25, 4 February 2010 (UTC)[reply]

Question Clue me in, why could deleting a single-contributor User Talk: page at the contributor's request be a bad idea? Josh Parris 11:10, 4 February 2010 (UTC)[reply]

Backing up for a few minutes to refocus[edit]

Allow me to review a couple of things about Josh's bot. From my understanding, it checks an article, finds disambig issues, notes them on the article's talkpage, checks later to see if a human has fixed them, and eventually removes the checklist from the talkpage. Up until recently, it would also then tag that talkpage as G7 iff it was the sole contributor to the page. In other words, it creates a shopping list, waits for someone to deal with the shopping list, therefore leaving a history of those changes on the article itself. Once you've bought the groceries, you can throw the list away.

The intent of this bot is to basically follow behind Josh's bot and throw away the shopping list - the history of actions taken already exist on the article. Blanking the page completely looks bad (lets say it the article itself gets CSD'd and someone puts a hangon tag on but does not edit the talkpage ... a redlinked talkpage is actually faster to deal with).

For now, I would suggest that we not expand the nature and tasks of the bot beyond this simple task that would still generate close to 100 edits per day, that is if Josh's bot goes back to tagging shopping lists as G7 again.

Maybe we can have a G7m ("G7 maintenance has been performed by bots only") tag and category ... Josh's bot could tag them in this category, and the bot up for discussion would only track articles inside that category and immediately remove before additional adminstrative investigation and work would be required? It would still, of course, check that there had indeed only been one editor to the talkpage, and could check if it was indeed WildBot.

What could be a simple task - and a valid follow up to an already approved bot seems to me to be expanding in complexity in its early days. It can already save at least 100 manual deletions (and the work behind them) if implemented in this manner. (talk→ BWilkins ←track) 13:14, 4 February 2010 (UTC)[reply]

I will admit that if restricted to talk pages created only by this bot, or indeed only by some bot, and edited only by one single bot, there seems no particular risk. The previous proposal, in which the bot aimed to handle any G7 tag was a different matter. My only concern remaining would be for precedent, I don't know of a previous bot authorized to delete pages, and I am wary of this being a precedent for delete-bots not quite as constrained, or for a later expansion of this one. I also don't see leaving the blank pages around as so much of a problem, so i don't see the pressure for this bot. But I admit that those are significantly weaker arguments, and my opposition has therefore gone from "strong" to "weak". DES (talk) 14:24, 4 February 2010 (UTC)[reply]
Personally, I'm not quite sure I see the problems with the original proposal. I don't think that the problems were so insurmountable that they required scrapping the original proposal entirely. Most of them could be mitigated almost entirely by checking transclusion count and creation date (verifying the page isn't used as a template anywhere and it has only existed for <X days). Even if it didn't do these, I don't think I've ever turned down a G7 or U1 deletion outside of user talk-space. Even if somehow a page that shouldn't be deleted was, deletions are easily undone (it could also check the deletion log and refuse to delete the same page twice, or refuse to delete any page that's already been deleted once before). As for precedent, User:AntiAbuseBot was used to delete various abusive user talk pages, User:Cydebot deletes categories after moving them, User:MPUploadBot deletes images that were temporarily transferred from commons for use on the main page, User:Orphaned talkpage deletion bot deletes orphaned talk pages, and User:Yet Another Redirect Cleanup Bot deletes broken redirects. So there's certainly plenty of precedent for adminbots that do deletions. Mr.Z-man 16:51, 4 February 2010 (UTC)[reply]
Being a non-administrator, I have to defer to the opinions of those who are experienced in this area; DGGs point about ownership was perfectly reasonable, and I'm quite happy to have the bot defer these judgment issues to humans - I don't want editors taking their bat and ball and going home, and having 7SeriesBOT facilitate that. I hadn't considered this, but that's due to lack of experience in this area; Bwilkins never asked for a scope increase and I didn't even consider that scope increase could be a problem. Even with an age check on an article, it could be something substantial worked up offline, posted and then retracted in short order; I'd feel more comfortable with a human screwing up and deleting that than with a bot just automatically doing so without anyone noticing what had happened. Off the top of my head I can't think of any metric that could reliably distinguish between a useful human-written article and a substantial algorithmically generated page (I'm anticipating eventually WildBot could be making quite large talk page entries), so I can't see any safeguard against this kind of (rare, but costly) outcome. Josh Parris 05:58, 5 February 2010 (UTC)[reply]
I agree with DES that a bot deleting talk pages created only by that bot would make sense. We can think of them as temporary, and having served their purpose. In spite of the potential for slipping into something broader, I sufficiently trust Josh's caution that I would support a trial of it. As Z-man points out, there are other possible similarly very limited functions. I still have a vestigial feeling of wanting to clean up, due to having grown up on systems with limited storage. DGG ( talk ) 17:26, 4 February 2010 (UTC)[reply]
It is entirely appropriate to clean up even though no storage is gained: A blue link should lead to content, not a blank page. –xenotalk 17:33, 4 February 2010 (UTC)[reply]
Absolutely. Talk pages that are bluelinked when they contain no discussion of the article are bad. That's reason enough for deletion. Gavia immer (talk) 20:41, 4 February 2010 (UTC)[reply]
Just an unrelated note, we do have talk pages with no discussion of the article. There are thousands of talk pages where the only content is a Wikiproject template. (But yeah, I agree with what you're saying, just nitpicking) (X! · talk)  · @985  ·  22:38, 4 February 2010 (UTC)[reply]
stop picking nits ;p At least that gives the reader SOMETHING to look at. And maybe join the project! Just blankness is a real sad face. –xenotalk 22:39, 4 February 2010 (UTC)[reply]
For what it's worth, I hate talk pages with only a WikiProject template too :) On the other hand, you can at least justify them as having an atom of "discussion" in the sense that someone has concluded that the page is in some Wikiproject's scope. Gavia immer (talk) 23:16, 4 February 2010 (UTC)[reply]

(unindent) in view of obviously developing consensus, consider my objections to the modified proposal withdrawn. DES (talk) 00:37, 5 February 2010 (UTC)[reply]

I agree with Mrz-Man: The original proposal was fine. In fact, I think we can even do away with the "If the page has existed for less then X days" part. Whe the only person who ever contributed to a page and wants it gone, the page is delete-able (under the CC-BY-SA). Let the bot run full time, on all ((db-g7)) requests. Tim1357 (talk) 12:40, 5 February 2010 (UTC)[reply]
That I would object to, strongly, as per my comments above. At the very least if the page is not a talk page, the bot would have to check that the corresponding talk page had no edits by anyone else -- this is required by WP:CSD#G7. And general G7 deletions are not so common that a bot is needed for them in any case. DES (talk) 15:59, 5 February 2010 (UTC)[reply]
Yes, I agree, as does everyone else, that the page can only be deleted if there is only one contributor ever. This follows the WP:CSD#G7 policy just fine. The argument that 'general G7 deletions are not so common that a bot is needed for them in any case.' is invalid. If a bot can do a task without harming anything, and helps in some tangible way, then it is appropriate. Tim1357 (talk) 22:02, 7 February 2010 (UTC)[reply]
Maybe some sort of timer so that accidents do not occur? NativeForeigner Talk/Contribs 01:41, 8 February 2010 (UTC)[reply]

Code available[edit]

Revised code is now available for review; it implements the functionality currently described for the BRfA. Josh Parris 11:20, 8 February 2010 (UTC)[reply]

Please clarify, this implements the "modified" proposal: i.e deletes only talk pages, whose only contributor is a single bot account? DES (talk) 01:54, 9 February 2010 (UTC)[reply]
I'll repeat the function overview, minus all the markup:
Any entry in Category:Candidates for speedy deletion by user is checked for simple compliance with CSD-G7: a single contributor talk or User page. Pages are required to have one of the appropriate templates - ((db-g7)), ((db-self)), ((db-author)), ((db-blanked)). Redirects created by moving pages or pages that are transcluded anywhere will not be deleted.
Complying pages are deleted; no confirmation is given to the requesting user - the delete just happens. Checks against the category are run every 30 seconds, so the average turn-around will be about 15 seconds.
CSD-G7 allows for pages other than those with a single contributor to be deleted (no substantial contributions from others), but that requires judgment and so the bot will only delete those with a single contributor.
At this time, that doesn't say "bots only", and it also includes user pages, but other than that it matches your description. No one offered any reason as to why single human-contributor talk pages ought to be treated differently from bot-contributor ones. Josh Parris 02:39, 9 February 2010 (UTC)[reply]
Why do you not include other namespaces? As long as they have only one contributor they meet the standards of CSD-G7. Tim1357 (talk) 03:19, 9 February 2010 (UTC)[reply]
In any namespace other than User, if a G7 is placed on a non-talk page, edits to the corresponding talk page must also be considered. Indeed this is also true in the user namespace if the page under discussion is not the main user page. That is if User:Example/draft article has been edited only by User:AAA, but User talk:Example/draft article has been substantially edited by User:BBB and User:CCC, then a G7 by User:AAA should be declined. (of course a U1 speedy by User:Example would be proper, and why User:AAA is creating a page in another user's space is unknown)
I therefore suggest a modified set of pages on which the bot would operate:
  • A Talk page with a single contributor, or
  • A User page with a single contributor who is the user in whose user space the page lies.
Otherwise as in your proposal above. DES (talk) 05:08, 9 February 2010 (UTC)[reply]
So, you're on board with single-contributor talk pages, but for user pages think the single contributor should be that user space owner. It is a good question: Why would someone create (and then request deletion of) a page in someone else's user space? I don't know; that would be fairly odd. Can you think of any reason not to honor the request? I think I'm asking: would the project lose anything by automatically allowing that deletion? Josh Parris 05:42, 9 February 2010 (UTC)[reply]
Oh, User main pages would be included in this, is there anything special about how admins treat them? Josh Parris 05:42, 9 February 2010 (UTC)[reply]
It is not a highly likely situation, but if a page is placed in userspace then unless the contributor is the user (when U1 also applies, and the question of which tag is used becomes mere procedural trivia) then if the corresponding user talk page has been edited by a different user, perhaps with suggestions for the user page (which may be an article draft) the page should not be deleted. DES (talk) 06:06, 9 February 2010 (UTC)[reply]
Also in the rather unusual case where a user creates and then wants to delete a page in another user's userspace, it is not a bad idea to have an actual human look at the page and possibly look into what is going on, IMO. DES (talk) 06:06, 9 February 2010 (UTC)[reply]
Indeed the most likely reason i can think of for a user to create a page in another user's space is as a cut&paste method of userfying a deleted or about to be deleted article. In such a case attributions may be missing from the history, perhaps covered by ((copied)) in the talk page. In such a case, any admin should decline the G7. Not common i'm sure, but possible. DES (talk) 06:19, 9 February 2010 (UTC)[reply]
I think in light of that, it's best to strike User: space from the proposal. (done) Josh Parris 08:32, 9 February 2010 (UTC)[reply]
Given that I have no further issues with this request, and support approval. Sorry if it has been a problem agreeing on parameters here. DES (talk) 16:49, 9 February 2010 (UTC)[reply]
The BRfA process is intended to avoid bots making mistakes that could have been foreseen. Arduous though the process can be at times, in the end we have a product that's going to cause as little screaming as possible, and that is very much worth the angst. It does a wonderful job of preventing bone-headed ideas getting through. Josh Parris 00:18, 10 February 2010 (UTC)[reply]
Tim, there's also the potential problem of someone making a GFDL gift and then retracting it (perhaps in a fit of spite) - I view this one as an intractable problem. It's pretty safe to say single-contributor talk pages that the author wants to delete are not going to be any loss to the project; the same can't necessarily be said of other namespaces. Josh Parris 05:42, 9 February 2010 (UTC)[reply]

Reviews invited[edit]

Code runs to 155 lines and includes two non-library API calls; when trial-time comes I'm be throwing in edit-limiting code on top. Josh Parris 00:18, 10 February 2010 (UTC)[reply]

Approved for trial (7 days). Please provide a link to the relevant contributions and/or diffs when the trial is complete. Ok, I think there appears to consensus. However, before the bot gets a flag or gets sysop-ed, I think you should do a dry run. I suggest tweaking the code so that the bot keeps a log of pages that it would have deleted, and later saving the log to /Dry-Run 1 for review. Good luck! Tim1357 (talk) 03:30, 11 February 2010 (UTC)[reply]
Sources updated to reflect trial conditions, operator notified; it will live update User:7SeriesBOT/Dry-Run 1 while running from start-up; each entry will include the reason not to delete and a link to the page in question's history. Admins are probably best placed to review go/no-go calls by the bot once an article has been deleted, but anyone can check the difference between the bot's decision time and the human's decision time. Josh Parris 07:01, 11 February 2010 (UTC)[reply]
NB: I'll get this running this evening, Eastern time (talk→ BWilkins ←track) 16:51, 11 February 2010 (UTC)[reply]
Will the Dry-Run 1 log also list the pages that would have been deleted had the bot not been under non-sysop trial conditions? I'll watchlist the page, if we still need admins to review the results of the trial. UltraExactZZ Said ~ Did 15:46, 11 February 2010 (UTC)[reply]
I could have been clearer about that: yes. I threw in not-deletes as an added bonus. Josh Parris 22:00, 11 February 2010 (UTC)[reply]
you might want to compare this to a similar bot that I wrote several years ago. tools:~betacommand/CSDeleteBot20100211.log is today's log. there are separate logs for each day. βcommand 19:55, 11 February 2010 (UTC)[reply]
Output is broadly similar; 7SeriesBOT doesn't mention the positive flags it notes (just the first negative flag), and it doesn't list contributors when there are multiple contributors; it does list article, reasoning, a link to article history and a timestamp. Josh Parris 22:00, 11 February 2010 (UTC)[reply]

Note: Bot was started in trial mode Feb 12, AM. If WildBot was still tagging talkpages as G7, the bot would likely be more active. Having some minor "glitches" with power management on the PC: it likes to disconnect from the 'net every so often. I'm fixing this as we go. A couple of minor code changes to fix some glitches - see my talkpage for details. (talk→ BWilkins ←track) 13:54, 13 February 2010 (UTC)[reply]

New code review[edit]

Comments based on the code as of 22:23, 11 February 2010 (UTC)

self.db_regex = re.compile('\{\{db-(author|self|blanked|g7)(\|^\}]*|[^\}]*)\}\}')
This has other redirects, and the first letter can be capitalized.
'rvstart'  :'20000101000000',
This isn't necessary with rvdir=newer
A few issues in hasBeenMoved()
Its not really necessary to iterate over the result when you're specifying a limit of 1 and only giving 1 title, you can just do pageid = data.keys()[0]
I think this will fail on a revision with no edit summary (the API will omit the "comment" field altogether rather than give an empty string

-- Mr.Z-man 22:23, 11 February 2010 (UTC)[reply]

Changes have been applied. Josh Parris 12:51, 14 February 2010 (UTC)[reply]
Running under those changes 7SeriesBOT (talk) 00:57, 15 February 2010 (UTC)[reply]
While I think this bot should be working on all namespaces, you can add the following to the 'params' in pages_in_category:
params['cmnamespace'] = '1|2|3|5|7|9|11|13|15|101|109'

... which will limit the API result to the User-space, and all Talk-pages. Tim1357 (talk) 01:15, 15 February 2010 (UTC)[reply]

  • Update Bot ran for a couple of days without logging (fixed yesterday - see description on User talk:Josh Parris. Interesting issue with the tasks/policy as written: those who can see the deletion logs for Talk:ENI_award can see that one user created, then blanked the talkpage ... because someone else then tagged it for CSD, the Bot was unable to act. Bot is limiting itself to talkpages only - this would become busier if WildBot went back to tagging talkpages accordingly. (talk→ BWilkins ←track) 15:53, 20 February 2010 (UTC)[reply]

Trial complete[edit]

Trial complete. Because of the couple of days of non-logging, I have let it run longer. From my view of the logs, the Bot has been consistent and tagging "delete" only where appropriate. I invite others to review and let me know of additional concerns. Many thanks! (talk→ BWilkins ←track) 17:22, 24 February 2010 (UTC)[reply]

Please execlude cases were a page was previously deleted. See [1]. Sole Soul (talk) 09:57, 25 February 2010 (UTC)[reply]
I don't understand. Please spell it out for me in small words. Why should a talk page which has previously been deleted (eg http://en.wikipedia.org/w/index.php?title=Talk:TXR2&action=history ) not be speedied a subsequent time? Josh Parris 01:48, 28 February 2010 (UTC)[reply]
I think I do; Sole Soul, the page would not have been deleted because it is not in the talk space. Ill approve this tomorrow if there are no further objections. Tim1357 (talk) 23:50, 28 February 2010 (UTC)[reply]
It is probably a rare case, but a user recreated a deleted page with a different name, then redirected the old deleted page to the new created one. I used that to argue that the new page is the same as the old deleted one. Then the user requested a speedy deletion to hide the evidence. I hope I am clear. Sole Soul (talk) 23:58, 28 February 2010 (UTC)[reply]
Not at all clear - I see nothing that cannot be easily tracked (even if deleted), and how this affects talkpages? (talk→ BWilkins ←track) 21:43, 1 March 2010 (UTC)[reply]
Sole Soul; the bot only deletes talk pages, so that problem is not as dangerous. Tim1357 (talk) 01:03, 3 March 2010 (UTC)[reply]
I'm just explaining what I said before as requested, I know that this is now moot. Sole Soul (talk) 01:29, 3 March 2010 (UTC)[reply]
 Approved.Yep, I think everything looks good for approval now. I'll get a Bureaucrat to sysop this. Tim1357 (talk) 03:27, 3 March 2010 (UTC)[reply]
The above discussion is preserved as an archive of the debate. Please do not modify it. To request review of this BRFA, please start a new section at WT:BRFA.