![]() | Please remember that all editors are encouraged to participate in the requests listed below. Just chip in – your comments are appreciated more than you may think! |
If you want to run a bot on the English Wikipedia, you must first get it approved. To do so, follow the instructions below to add a request. If you are not familiar with programming it may be a good idea to ask someone else to run a bot for you, rather than running your own.
Instructions for bot operators | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Bot-related archives (v·t·e) |
---|
Bot Name | Status | Created | Last editor | Date/Time | Last BAG editor | Date/Time |
---|---|---|---|---|---|---|
Bot1058 8 (T|C|B|F) | Open | 2022-06-25, 02:36:37 | Jonesey95 | 2022-06-25, 13:30:53 | Never edited by BAG | n/a |
Fluxbot 8 (T|C|B|F) | Open | 2022-06-11, 01:28:35 | Bbb23 | 2022-06-14, 13:03:44 | Never edited by BAG | n/a |
ConservationStatusAndRangeMapBot (T|C|B|F) | Open | 2022-06-01, 19:24:07 | Dr vulpes | 2022-06-23, 20:55:37 | Primefac | 2022-06-23, 14:38:04 |
GalliumBot (T|C|B|F) | In trial | 2022-04-29, 04:02:58 | Theleekycauldron | 2022-05-18, 19:16:10 | Primefac | 2022-05-07, 14:51:13 |
BareRefBot (T|C|B|F) | Extended trial | 2022-01-20, 21:37:46 | BrownHairedGirl | 2022-06-12, 09:19:49 | Primefac | 2022-03-28, 18:32:02 |
AssumptionBot (T|C|B|F) | On hold | 2022-02-16, 11:35:09 | Qwerfjkl | 2022-07-01, 22:08:36 | Primefac | 2022-06-27, 14:28:41 |
Qwerfjkl (bot) 13 (T|C|B|F) | Trial complete | 2022-06-10, 16:32:06 | Qwerfjkl | 2022-07-01, 22:05:22 | TheSandDoctor | 2022-06-21, 04:45:03 |
Aidan9382-Bot 2 (T|C|B|F) | Trial complete | 2022-06-08, 17:31:29 | Aidan9382 | 2022-06-27, 15:38:38 | TheSandDoctor | 2022-06-19, 16:01:43 |
MalnadachBot 13 (T|C|B|F) | Trial complete | 2022-06-11, 06:07:12 | ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ | 2022-06-22, 04:15:51 | TheSandDoctor | 2022-06-19, 15:31:10 |
Current requests for approval
Bot1058 8
Operator: Wbm1058 (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 02:36, Saturday, June 25, 2022 (UTC)
Automatic, Supervised, or Manual: automatic
Programming language(s): PHP
Source code available: refreshlinks.php, refreshmainlinks.php
Function overview: Null-edit pages in order to refresh links which are old
Links to relevant discussions (where appropriate): User talk:wbm1058#Continuing null editing, Wikipedia talk:Bot policy#Regarding WP:BOTPERF, phab:T157670, phab:T135964
Edit period(s): Continuous
Estimated number of pages affected: ALL
Exclusion compliant (Yes/No): No
Already has a bot flag (Yes/No): Yes
Function details: This task runs two scripts to refresh English Wikipedia page links. refreshmainlinks.php null-edits mainspace pages whose page_links_updated database field is older than 32 days, and refreshlinks.php null-edits all other namespaces whose page_links_updated database field is older than 80 days. The 32- and 80-day figures may be tweaked as needed to ensure more timely refreshing of links or reduce load on the servers. Each script is configured to edit a maximum of 150,000 pages on a single run, and restart every three hours if not currently running (thus each script may run up to 8 times per day).
Status may be monitored by these Quarry queries:
Discussion
I expect speedy approval, as a technical request, as this task only makes null edits. Task has been running for over a month. My main reason for filing this is to post my source code and document the process including links to the various discussions about it. – wbm1058 (talk) 03:02, 25 June 2022 (UTC)
- Comment: This is a very useful bot that works around long-standing feature requests that should have been straightforward for the MW developers to implement. It makes sure that things like tracking categories and transclusion counts are up to date, which helps gnomes fix errors. – Jonesey95 (talk) 13:30, 25 June 2022 (UTC)
Fluxbot 8
Operator: Xaosflux (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 01:28, Saturday, June 11, 2022 (UTC)
Function overview: Clone of Wikipedia:Bots/Requests for approval/Qwerfjkl (bot) 10
Automatic, Supervised, or Manual: Supervised
Source code available: N/A
Links to relevant discussions (where appropriate): Wikipedia:Bots/Requests for approval/Qwerfjkl (bot) 10, Wikipedia:Interface_administrators'_noticeboard#Clear_out_Category:Pages_using_deprecated_source_tags
Edit period(s): one time
Estimated number of pages affected: 500
Namespace(s): Primarily "user" (pages in Category:Pages using deprecated source tags - except ones in MediaWiki space).
Exclusion compliant (Yes/No): Yes
Adminbot (Yes/No): Yes (intadmin needed).
Function details: Clone of Wikipedia:Bots/Requests for approval/Qwerfjkl (bot) 10, requires an intadmin operator.
Discussion
- I will enable 2FA on this bot account before operations. — xaosflux Talk 01:35, 11 June 2022 (UTC)
- There are only 400 pages, so might not be worth a bot task. ― Qwerfjkltalk 07:12, 11 June 2022 (UTC)
- I oppose moving pages from Category:Pages using deprecated source tags to Category:Pages with syntax highlighting errors by using an invalid (empty) lang, like Wikipedia:Bot requests/Archive 80 (Diff ~1084326837) did. I also oppose bluntly removing the tags from .js pages in case they appear in strings etc. Just prepend
//<nowiki>
to the top and append//</nowiki>
to the bottom, that should fix most cases. — Alexis Jazz (talk or ping me) 11:38, 11 June 2022 (UTC)- @Alexis Jazz if the only instances of 'source' on the script are at the top/bottom and the fix is remove: does that resolve that concern? — xaosflux Talk 11:43, 11 June 2022 (UTC)
- Xaosflux, I suppose, can't think of any problems that approach would cause. I see some uses of source tags where seemingly nowiki was intended instead. Adding nowiki to the top+bottom of Special:Search/incategory:"Pages using deprecated source tags" -insource:nowiki intitle:/\.js/ should be safe I think. That's 217 pages atm. Out of the 84 pages on Special:Search/incategory:"Pages using deprecated source tags" insource:nowiki intitle:/\.js/ some will be caught by your strategy of dealing with source tags that only appear at the top/bottom. Hopefully after that the number of pages left will be low enough to sift through by hand. Actually that's already doable for 84 pages, but if we can drop that a bit further that would be convenient. — Alexis Jazz (talk or ping me) 11:57, 11 June 2022 (UTC)
- These will still mostly be "by hand", I don't plan on letting this run loose on script pages. — xaosflux Talk 11:59, 11 June 2022 (UTC)
- Xaosflux, given what WOSlinker said below, I also oppose removing source tags from the top and bottom as they may currently prevent parsing of whatever is inside. Replacing top source tags with
<syntaxhighlight lang="text>
and bottom closing source tags with</syntaxhighlight>
would be safer in that case. Maybe a regex like/^\/\/[ ]*<[Ss]ource>([^]*)\/\/[ ]*<\/[Ss]ource>$/
(replace with//<nowiki>$1//</nowiki>
)? — Alexis Jazz (talk or ping me) 12:22, 11 June 2022 (UTC)
- Xaosflux, given what WOSlinker said below, I also oppose removing source tags from the top and bottom as they may currently prevent parsing of whatever is inside. Replacing top source tags with
- These will still mostly be "by hand", I don't plan on letting this run loose on script pages. — xaosflux Talk 11:59, 11 June 2022 (UTC)
- Xaosflux, I suppose, can't think of any problems that approach would cause. I see some uses of source tags where seemingly nowiki was intended instead. Adding nowiki to the top+bottom of Special:Search/incategory:"Pages using deprecated source tags" -insource:nowiki intitle:/\.js/ should be safe I think. That's 217 pages atm. Out of the 84 pages on Special:Search/incategory:"Pages using deprecated source tags" insource:nowiki intitle:/\.js/ some will be caught by your strategy of dealing with source tags that only appear at the top/bottom. Hopefully after that the number of pages left will be low enough to sift through by hand. Actually that's already doable for 84 pages, but if we can drop that a bit further that would be convenient. — Alexis Jazz (talk or ping me) 11:57, 11 June 2022 (UTC)
- @Alexis Jazz if the only instances of 'source' on the script are at the top/bottom and the fix is remove: does that resolve that concern? — xaosflux Talk 11:43, 11 June 2022 (UTC)
- Noticeboard notice left at Wikipedia:Administrators'_noticeboard#Adminbot_BRFA. — xaosflux Talk 01:38, 11 June 2022 (UTC)
- I clicked on a few random pages in that category, 1, 2, 3, 4, all of them have literally no use for syntax highlighting - can we just remove the tags instead of trying to "fix" them? Legoktm (talk) 04:44, 11 June 2022 (UTC)
- I'm a bit concerned over removing them from .js pages, as mentions of it regularly in a string (E.g.
console.log("<source></source>")
) or similar will still get it added to the category - its not just in//
comments. Aidan9382 (talk) 05:19, 11 June 2022 (UTC) - @Legoktm I'm fine with removing it as well; @Aidan9382 I can expand this slightly to include those cases - so remove if it is in the top/bottom comments, convert if in a log - will that satisfy your concern? — xaosflux Talk 10:19, 11 June 2022 (UTC)
- I'll be honest, its probably quite a rare edge case. I could imagine you could get away without having to handle an edge case just fine, but if you really wanted to cover it, just (somehow) make sure that the
<source>
tag isnt inside a string and that'd do a fine enough job - if it is, probably best to replace it instead. Aidan9382 (talk) 11:55, 11 June 2022 (UTC) - If this results in a "just do it on your main account" - this is still good feedback for how to best deal with this one-time thing as well. — xaosflux Talk 11:00, 11 June 2022 (UTC)
- On some pages, the source/syntaxhighlight tags are no use but on others, it stops the javascript code transcluding templates and/or being added to categories due to the code on the page. -- WOSlinker (talk) 11:55, 11 June 2022 (UTC)
- The source tag at top and bottom of the uses javasript page was added in some cases to stop items appearing at Special:WantedTemplates. This could also be done with nowiki instead though. -- WOSlinker (talk) 12:05, 11 June 2022 (UTC)
- On some pages, the source/syntaxhighlight tags are no use but on others, it stops the javascript code transcluding templates and/or being added to categories due to the code on the page. -- WOSlinker (talk) 11:55, 11 June 2022 (UTC)
- I'll be honest, its probably quite a rare edge case. I could imagine you could get away without having to handle an edge case just fine, but if you really wanted to cover it, just (somehow) make sure that the
- I'm a bit concerned over removing them from .js pages, as mentions of it regularly in a string (E.g.
- Rather than replacing
<source>
with<syntaxhighlight lang="">
, on .js pages, could we replace<source>
with<syntaxhighlight lang="javascript">
and on .css pages replace<source>
with<syntaxhighlight lang="css">
if the lang is not included? -- WOSlinker (talk) 11:51, 11 June 2022 (UTC)- That certainly makes more sense, assuming we should keep the tag at all. I'm certainly fine with this BRFA being a "what is the best way to deal with this" discussion, there is no urgency on this. — xaosflux Talk 11:56, 11 June 2022 (UTC)
- WOSlinker, as an empty lang parameter just puts the page in Category:Pages with syntax highlighting errors that's already better, but actually I'd suggest
<syntaxhighlight lang="text">
which is valid and behaves the same as a source tag without lang parameter. None of this stuff is actually visible when viewing these pages. — Alexis Jazz (talk or ping me) 12:07, 11 June 2022 (UTC)- @Alexis Jazz, for syntaxhighlight in general, so you know what lang should be used for wikitext? I'm aware of tid but I believe there's another. ― Qwerfjkltalk 13:42, 11 June 2022 (UTC)
- @Qwerfjkl "wikitext" isn't a supported language for syntaxhighlight. And most of these pages actually are js/css; that being said for the pages that actually are js/css here - they are already opening in the js/css editor, and the highlight doesn't render on the page viewer - so they seem a bit useless -- is there any good reason to actually keep these? — xaosflux Talk 15:03, 11 June 2022 (UTC)
- Qwerfjkl, see mw:Extension:SyntaxHighlight#Supported languages. Xaosflux, the highlighting is useless but they prevent templates/links/etc inside from being parsed which could otherwise result in entries in WhatLinksHere, WantedCategories, WantedPages, etc. But lang=text or nowiki works just as well for that. — Alexis Jazz (talk or ping me) 15:51, 11 June 2022 (UTC)
- @Alexis Jazz agree, I think remove source tags when "wrapping" the whole page and replacing with nowiki may be the best solution for these user scripts. — xaosflux Talk 15:59, 11 June 2022 (UTC)
- Qwerfjkl, see mw:Extension:SyntaxHighlight#Supported languages. Xaosflux, the highlighting is useless but they prevent templates/links/etc inside from being parsed which could otherwise result in entries in WhatLinksHere, WantedCategories, WantedPages, etc. But lang=text or nowiki works just as well for that. — Alexis Jazz (talk or ping me) 15:51, 11 June 2022 (UTC)
- @Qwerfjkl "wikitext" isn't a supported language for syntaxhighlight. And most of these pages actually are js/css; that being said for the pages that actually are js/css here - they are already opening in the js/css editor, and the highlight doesn't render on the page viewer - so they seem a bit useless -- is there any good reason to actually keep these? — xaosflux Talk 15:03, 11 June 2022 (UTC)
- @Alexis Jazz, for syntaxhighlight in general, so you know what lang should be used for wikitext? I'm aware of tid but I believe there's another. ― Qwerfjkltalk 13:42, 11 June 2022 (UTC)
ConservationStatusAndRangeMapBot
Operator: Dr vulpes (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 19:24, Wednesday, June 1, 2022 (UTC)
Function overview:Add conservation statuses to {{Speciesbox}}. This includes the status, the status system, and an external reference.
Automatic, Supervised, or Manual: Automatic
Programming language(s): AutoWikiBrowser and R
Source code available: AWB and https://en.wikipedia.org/wiki/User:ConservationStatusAndRangeMapBot/code_R
Links to relevant discussions (where appropriate):
Edit period(s): At least weekly but limited on time due to evaluating data and links
Estimated number of pages affected: 1011
Namespace(s):Category:Flora_of_California_without_conservation_status
Exclusion compliant (Yes/No): Yes
Function details: The bots proposed purposes is to add plant conservation status data for plants using the {{Speciesbox}} template and at a later date update with range maps of plants and add plants without a conservation status to. The modified fields in the template are status, status_system, and status_ref. The workflow involves using AWB to tag articles that do not have a conservation status, this is a supervised process done with AWB. Then using the included R code the conservation status of the provided list of plants is gathered and a csv file is produced with the text fields needed for the update. This includes a link to an external reference for the conservation status and range of the plant.
Discussion
I am currently targeting only plants in California during this trial run and have already created a list of plants that do not have a conservation status. I have been running this process on my account with AWB completely supervised and have worked out the process. Here's an example article that shows my goals for this bot. [1]Abronia maritima: Difference between revisions. Although the bot is making changes automatically the data is checked beforehand to ensure that the propper status and links are working. A future goal of this bot is to also check the conservation status of plants and ensure they are updated, this is not a current feature of the bot but is one that can be added easily and would be important. Although the name of the bot has the words RangeMap in it this is a later goal and will not be a feature the bot will be doing at this time. Adding range maps to plant articles is an ongoing discussion in WikiProject Plants and needs more time and consensus before any steps are taken. After I have finished adding the conservation statuses to plants in California I will reevaluate and refine the process with the goal of moving on to plants in the United States. Dr vulpes (talk) 17:50, 6 June 2022 (UTC)
I updated the function details to include two future uses for the proposed bot. Dr vulpes (💬 • 📝) 02:47, 17 June 2022 (UTC)
- Thinking longer-term (i.e. outside of CA), there are 250k pages that call {{speciesbox}}. Presumably, these pages will need periodic updating. Would it make more sense to collate all of the conservation status values and put them into a submodule of Module:Autotaxobox, so that if/when values need updating (say, once a week or month), you can edit a relatively small handful of pages and it will update them all automatically, rather than require potentially thousands of updating edits? Primefac (talk) 14:38, 23 June 2022 (UTC)
- o wow that's a good idea, I wasn't really familiar with modules but after reading though the documentation that's a much better way of going about this. The Lua code is doing almost the exact same thing that my R code is doing except calling on templates instead of the NaturesServe API. It would also easily allow for adding multiple conservation status systems to be used so the most up to date one could be displayed. I'm going to tinker with this for a bit and see if I can get a small demo up and running. Dr vulpes (💬 • 📝) 20:55, 23 June 2022 (UTC)
Bots in a trial period
GalliumBot
Operator: Theleekycauldron (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 04:02, Friday, April 29, 2022 (UTC)
Function overview: At WP:Did you know, an approved hook is moved by the "prep builder" into the prep sets of DYK. Often, prep builders and other uninvolved helpers will modify hooks. This bot records changes made to the hook at the talk page of the nomination.
Automatic, Supervised, or Manual: Automatic
Programming language(s): Javascript (and Python if necessary)
Source code available: Not yet available
Links to relevant discussions (where appropriate): Special:PermanentLink/1085217274#RfC: Post-promotion hook change recording bot
Edit period(s): Once every 1–3 hours
Estimated number of pages affected: 5–7 distinct pages per day
Namespace(s): Template talk (will be Wikipedia talk if we ever mmigrate)
Exclusion compliant (Yes/No): Yes
Function details: The bot will scan the following pages:
- The main page DYK template, Template:Did you know
- The DYK queues, 1 2 3 4 5 6 7
- The DYK prep sets, 1 2 3 4 5 6 7
It will analyze the eight hooks in the page, looking for any modifications made since its last run. If it finds one, it will leave a note at the nomination's talk page; for example, a modification made to the hook for C. J. Cregg (nom) will be recorded by the bot at Template talk:Did you know nominations/C. J. Cregg. This is my first BRFA, so pardon my inexperience with the process. Cheers! theleekycauldron (talk • contribs) (she/they) 04:02, 29 April 2022 (UTC)
Discussion
- Approved for trial (50 edits or 7 days, whichever happens first). Please provide a link to the relevant contributions and/or diffs when the trial is complete. This seems like a straightforward task in a niche area, so I think the best way to judge its appropriateness (and work out bugs) is to chuck it to trial. Primefac (talk) 14:51, 7 May 2022 (UTC)
- trial not underway yet; unexpected technical issues popped up. Will leave a note here when the bot is reasonably operational. theleekycauldron (talk • contribs) (she/they) 19:16, 18 May 2022 (UTC)
BareRefBot
Operator: Rlink2 (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 21:35, Thursday, January 20, 2022 (UTC)
Function overview: The function of this bot is to fill in Bare references. A bare reference is a reference with no information about it included in the citaiton, example of this is <ref>https://wikipedia.org</ref> instead of <ref>{{cite web | url = https://encarta.microsoft.com | title = Microsoft Encarta}}</ref>. More detail can be found on Wikipedia:Bare_URLs and User:BrownHairedGirl/Articles_with_bare_links.
Automatic, Supervised, or Manual: Automatic, mistakes will be corrected as it goes.
Programming language(s): Multiple.
Source code available: Not yet.
Links to relevant discussions (where appropriate): WP:Bare_URLs, but citation bot already fills bare refs, and is approved to do so.
Edit period(s): Continuous.
Estimated number of pages affected: around 200,000 pages, maybe less, maybe more.
Namespace(s): Mainspace.
Exclusion compliant (Yes/No): Yes.
Function details: The purpose of the bot is to provide a better way of fixing bare refs. As explained by Enterprisey, our citation tools could do better. Citation bot is overloaded, and Reflinks consistently fails to get the title of the webpage. ReFill is slightly better but is very buggy due to architectual failures in the software pointed out by the author of the tool.
As evidenced by my AWB run, my script can get the title of many sites that Reflinks, reFill, or Citation Bot can not get. The tool is like a "booster" to other tools like Citation bot, it picks up where other tools left off.
There are a few exceptions for when the bot will not fill in the title. For example, if the title is shorter than 5 chacters, it will not fill it in since it is highly unlikely that the title has any useful information. Twitter links will be left alone, as the Sand Doctor has a bot that can do a more complete filling.
There has been discussion over the "incompleteness" of the filling of these refs. For example, it wouldn't fill in the "work="/"website=" parameter unless its a whitelisted site (NYT, Youtube, etc...). This is similar to what Citation bot does IIRC. While these other parameters would usually not filled, the consensus is that "perfect is the enemy of the good" and that any sort of filling will represent an improvement in the citation. Any filled cites can always be improved even further by editors or another bot.
Examples:
Discussion
Pre-trial discussion
|
---|
{{BotOnHold}} pending closure of Wikipedia:Administrators'_noticeboard/Incidents#Rlink2. ProcrastinatingReader (talk) 23:25, 20 January 2022 (UTC)
Initial questions and thoughts (in no particular order):
ProcrastinatingReader (talk) 23:25, 20 January 2022 (UTC)
Opening comments: I've seen <!--Bot generated title--> inserted in similar initiatives. Would that be a useful sort of thing to do here? It is acknowledged that the titles proposed to be inserted by this bot can be verbose and repetitive, terse or plainly wrong. Manual improvements will be desired in many cases. How do we help editors interested in doing this work?
Like ProcrastinatingReader I am interested in understanding bot permission precedence here. I'm not convinced that these edits are universally productive. I believe there has been restraint exercised in the past on bot jobs for which there is not a strong consensus that the changes are making significant improvements. I think improvements need to be large enough to overcome the downside of all the noise this will be adding to watchlists. I'm not convinced that bar is cleared here. See User_talk:Rlink2#A_little_mindless for background. ~Kvng (talk) 16:53, 21 January 2022 (UTC)
It looks like a lot of cites use
|
Source code
- Speaking of fine tuning, do you intend to publish your source code? I think we may be able to identify additional gotchas though code review. ~Kvng (talk) 22:44, 25 January 2022 (UTC)
- Hopefully, but not right now. It wouldn't be very useful for "code review" in the way you are thinking. If there are bugs though, you can always report it. Rlink2 (talk) 22:54, 25 January 2022 (UTC)
- @Rlink2: I have to disagree with you on this. As a general principle, I am very much in favour of open-source code. That applies even more strongly in a collaborative environment such as Wikipedia, so I approach bots with a basic presumption that the code should be available, unless there is very good reason to make an exception.
- Publishing the code brings several benefits:
- it allows other editors to verify that the code does what it claims to do
- it allows other editors to help find any bugs
- it helps others who may want to develop tools for related tasks
- So if a bot-owner does not publish the source code, I expect a good explanation of why it is being withheld. BrownHairedGirl (talk) • (contribs) 00:35, 26 January 2022 (UTC)
- @BrownHairedGirl: Ok, nice to see your perspective on it. I will definetly be making it open source then. When should I make it avaliable? I can provide a link later in the week, or should I wait until the bot enters trial? Where would I even post the code anyway? Thanks for your opinion. Rlink2 (talk) 00:39, 26 January 2022 (UTC)
- @Rlink2: Up to you, but my practice is to make it available whenever I am ready to start a trial. That is usually before a trial is authorised.
- I usually put the code in a sub-page (or pages) of the BRFA page. BrownHairedGirl (talk) • (contribs) 01:06, 26 January 2022 (UTC)
- @BrownHairedGirl: Sounds good, I will follow your example and make it avaliable as soon as I can (later this week). Subpage sounds great, good idea and keeps everything on wiki. Rlink2 (talk) 01:11, 26 January 2022 (UTC)
- There is preliminary code up on Wikipedia:Bots/Requests_for_approval/BareRefBot/Code. There is more to the script than that (eg: networking code, wikitext code ) but this is the core of it. Will be releasing more as time goes on and I have time to comment the additional portions. Rlink2 (talk) 20:08, 26 January 2022 (UTC)
- Code review comments and discussion at Wikipedia talk:Bots/Requests for approval/BareRefBot/Code
- There is preliminary code up on Wikipedia:Bots/Requests_for_approval/BareRefBot/Code. There is more to the script than that (eg: networking code, wikitext code ) but this is the core of it. Will be releasing more as time goes on and I have time to comment the additional portions. Rlink2 (talk) 20:08, 26 January 2022 (UTC)
- @BrownHairedGirl: Sounds good, I will follow your example and make it avaliable as soon as I can (later this week). Subpage sounds great, good idea and keeps everything on wiki. Rlink2 (talk) 01:11, 26 January 2022 (UTC)
- @BrownHairedGirl: Ok, nice to see your perspective on it. I will definetly be making it open source then. When should I make it avaliable? I can provide a link later in the week, or should I wait until the bot enters trial? Where would I even post the code anyway? Thanks for your opinion. Rlink2 (talk) 00:39, 26 January 2022 (UTC)
- Hopefully, but not right now. It wouldn't be very useful for "code review" in the way you are thinking. If there are bugs though, you can always report it. Rlink2 (talk) 22:54, 25 January 2022 (UTC)
Trial
Trial 1
|
---|
Approved for trial (50 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. As I mentioned above, this is most likely not going to be the only time the bot ends up in trial, and even if there is 100% success in this first round it might get shipped for a larger trial anyway depending on feedback. Primefac (talk) 14:12, 26 January 2022 (UTC)
Couple thoughts:
-- GreenC 15:18, 28 January 2022 (UTC)
I went through all 52 so that my contribution to this venture wouldn't be limited to re-enacting the Spanish Inquisition at ANI.
I wonder if the concerns in #1-4 could be addressed by simply adding
I've taken the time to review the first 25 edits. My findings:
Problems with bare link titles are mostly about the
Most of my concerns have to do with dead link detection. This is turning out to be the distraction I predicted. There were only 3 articles with bare link and dead link edits: [28], [29], [30]. Running these as separate tasks will require 12% more edits and I don't think that's a big deal. I again request we disable dead link detection and marking and focus on filling bare links now.
It's now over 7 days since the trial edits. @Rlink2: have you made list of what changes have been proposed, and which you have accepted? I think that a review of that list would get us closer to a second trial. --BrownHairedGirl (talk) • (contribs) 20:47, 5 February 2022 (UTC)
|
Trial 2
Trial 2
|
---|
Approved for extended trial (50 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. Sorry for the delay here, second trial looks good. Primefac (talk) 14:35, 13 February 2022 (UTC)
VAR thisURL = "http://exmple.com/fubar" VAR domainName = FunctionGetDomainNamefromURL(thisURL) VAR articleTitle = FunctionGetTitleFromURL(thisURL) // start by setting default value for websiteParam VAR websiteParam = domainName // e.g. "magicseaweed.com" // now see if we can get a website name VAR foundWebsiteName == FunctionToFindWebsiteNameAndDoAsanityCheck() IF foundWebsiteName IS NOT BLANK // e.g. "Magic Seaweed" for https://magicseaweed.com/ THEN BEGIN websiteParam = foundWebsiteName IF articleTitle INCLUDES foundWebsiteName THEN BEGIN VAR trimmedArticleTitle = articleTitle - foundWebsiteName IF trimmedArticleTitle IS NOT BLANK OR CRAP THEN articleTitle = trimmedArticleTitle ENDIF END ENDIF END ENDIF FunctionMakeCiteTemplate(thisURL, articleTitle, websiteParam)
@Rlink2 and Primefac: it is now 4 weeks since the second trial, and Rlink2 has resolved all the issues raised. Isn't it time for a third trial? I suggest that this trial should be bigger, say 250 edits, to give a higher chance of detecting edge cases. --BrownHairedGirl (talk) • (contribs) 23:14, 12 March 2022 (UTC)
|
BareRefBot as a secondary tool
I would like to ask that BareRefBot be run as a secondary tool, i.e. that it should be targeted as far as possible to work on refs where the more polished Citation bot has tried and failed.
This is a big issue which I should probably have raised at the start. The URLs-that-Citation-but-cannot-fill are why I have been so keen to get BareRefBot working, and I should have explained this in full earlier on. Pinging the other contributors to this BRFA: @Rlink2, Primefac, GreenC, ProcrastinatingReader, Kvng, Levivich, Pppery, 1234qwer1234qwer4, and Thryduulf, whose input on this proposal would be helpful.
I propose this because on the links which Citation bot can handle, it does a very thorough job. It uses the zotero servers to extract a lot of metadata such as date and author which BareRefBot cannot get, and it has a large and well-developed set of lookups to fix issues with individual sites, such as using {{cite news}} or {{cite journal}} when appropriate. It also has well-developed lookup tables for converting domain names to work titles.
So ideally, all bare URLs would be filled by the well-polished Citation bot. Unfortunately, there are many websites which Citation bot cannot fill, because the zotero provides no data. Other tools such as WP:REFLINKS and WP:REFILL often can handle those URLs, but none of them works in batch mode and individual editors cannot do the manual work fast enough to keep up with Citation bot's omissions.
The USP of BareRefBot is that thanks to Rlink2's cunning programming, it can do this followup work in batch mode, and that is where it should be targeted. That way we get the best of both worlds: Citation bot does a polished job if it can, and BareRefBot does the best it can with the rest.
I am systematically feeding Citation bot with long lists of articles with bare URLs, in two sets:
- User:BrownHairedGirl/Articles with new bare URL refs, consisting of the Articles with bare URL refs (ABURs) which were in the latest database dump but not in the previous dump. The 20220220 dump had 4,904 new ABURS, of which there were 4,518 ABURs which still hsd bare URLs.
- User:BrownHairedGirl/Articles with bare links, consisting of articles not part of my Citation bot lists since a cutoff date. The bot is currently about halfway through a set of 33,239 articles which Citation bot had not processed since 1 December 2021.
If BareRefBot is targeted at these lists after Citation bot has done them, we get the best of both worlds. Currently, these lists are easily accessed: all my use of Citation bot is publicly logged in the pages linked and I will happily email Rlink2 copies of the full (unsplit lists) if that is more convenient. If I get run over by a bus or otherwise stop feeding Citation bot, then it would be simple for Rlink2 or anyone else to take over the work of first feeding Citation bot.
What do others think? --BrownHairedGirl (talk) • (contribs) 11:25, 2 March 2022 (UTC)
- Here is an example of what I propose.
- Matt Wieters is page #2178 in my list Not processed since 1 December - part 6 of 11 (2,847 pages), which is currently being processed by Citation bot.
- Citation bot edited the article at 11:26, 2 March 2022, but it didn't fill any bare URL refs. I followed up by using WP:REFLINKS to fill the 1 bare URL ref, in this edit.
- That followup is what I propose that BareRefBot should do. BrownHairedGirl (talk) • (contribs) 11:42, 2 March 2022 (UTC)
- I think first and foremost you should look both ways before crossing the road so you don't get run over by a bus. :-D It strikes me as more efficient to have BRB follow CB as suggested. I don't see any downside. Levivich 19:28, 2 March 2022 (UTC)
- @BrownHairedGirl
- This makes sense, I think that citation bot is better at filling out refs completely. One thing that would be intresting to know is if Citation Bot can improve already filled refs. For example, let's say we have a source that citation bot can get the author, title, name, and date for, but BareRefBot can only get the title. If BareRefBot only fills in the title, and citation bot comes after it, would citation bot fill in the rest?
and it has a large and well-developed set of lookups to fix issues with individual sites, such as using cite news or cite journal when appropriate.
I agree .It uses the zotero servers to extract a lot of metadata such as date and author which BareRefBot cannot get, and it has a large and well-developed set of lookups to fix issues with individual sites
Correct.It also has well-developed lookup tables for converting domain names to work titles.
Yes, do note that list could be ported to Bare Ref Bot (list can be found here)That way we get the best of both worlds: Citation bot does a polished job if it can, and BareRefBot does the best it can with the rest.
I agree. Let's see what others have to say Rlink2 (talk) 19:38, 2 March 2022 (UTC)- Glad we agree in principle, @Rlink2. You raise some useful questions:
One thing that would be intresting to know is if Citation Bot can improve already filled refs.
- yes, it can and does. But I don't think it overwrites all existing data, which is why I think it's better to give it the first pass.
For example, let's say we have a source that citation bot can get the author, title, name, and date for, but BareRefBot can only get the title. If BareRefBot only fills in the title, and citation bot comes after it, would citation bot fill in the rest?
- If an existing cite has only
|title=
filled, Citation Bot often adds many other parameters (see e.g. [43]). - However, I thought we had agreed that BareRefBot was always going to add and fill a
|website=
parameter? - My concern is mostly with the
|title=
. Citation Bot does quite a good job of stripping extraneous stuff from the title when it fills a bare ref, but I don't think that it re-processes an existing title. So I think it's best to give Citation Bot the first pass at filling the title.
- If an existing cite has only
- Hope that helps. Maybe CB's maintainer AManWithNoPlan can check my evaluation and let us know if I have misunderstood anything about how Citation Bot handles partially-filled refs. BrownHairedGirl (talk) • (contribs) 20:27, 2 March 2022 (UTC)
- I think you are correct. Citation bot relies mostly on the wikipedia zotero - there are a few that we go beyond zotero: IEEE might be the only one. A bit thing that the bot does is extensive error checking (bad dates, authors of "check the rss feed" and such). Also, almost never overwrites existing data. AManWithNoPlan (talk) 20:35, 2 March 2022 (UTC)
- Many thanks to @AManWithNoPlan for that prompt and helpful clarification. --BrownHairedGirl (talk) • (contribs) 20:51, 2 March 2022 (UTC)
- @BrownHairedGirl @AManWithNoPlan
But I don't think it overwrites all existing data, which is why I think it's better to give it the first pass.
Yeah, i think John raised up this point at the Citation Bot talk page, and AManWithNoPlan has said above that it can add new info but no overwrite the old ones..However, I thought we had agreed that BareRefBot was always going to add and fill a
Yes, this hasn't changed. I forgot to say "title and website" while Citation Bot can get author, title, website, date, etc.....So I think it's best to give Citation Bot the first pass at filling the title.
This makes sense.Citation Bot does quite a good job of stripping extraneous stuff from the title when it fills a bare ref,
I agree. Maybe AManWithNoPlan could share the techniques used so they can be ported to BareRefBot? Or is the stripping done on the Zotero servers? He would have more information regarding this.- I also have a question about the turnaround of the list making process. How long does it usually take for Citation Bot to finish a batch of articles? Rlink2 (talk) 20:43, 2 March 2022 (UTC)
- See https://en.wikipedia.org/api/rest_v1/#/Citation/getCitation and https://github.com/ms609/citation-bot/blob/master/Zotero.php it has list of NO_DATE_WEBITES, tidy_date function, etc. AManWithNoPlan (talk) 20:45, 2 March 2022 (UTC)
- @Rlink2: Citation Bot processes my lists of ABURs at a rate of about 3,000 articles per day. There's quite a lot of variation in that (e.g. big lists are slooow, wee stubs are fast), but 3k/day is a good ballpark.
- The 20220301 database dump contains 155K ABURs, so we are looking at ~50 days to process the backlog. BrownHairedGirl (talk) • (contribs) 20:47, 2 March 2022 (UTC)
- @BrownHairedGirl
- So every 50 days there will be a new list, or you will break the list up into pieces and give the list of articles citation bot did not fix to me incrementally? Rlink2 (talk) 21:01, 2 March 2022 (UTC)
- @Rlink2: it's in batches of up to 2,850 pages, which is the limit for Citation Bot batches.
- See my job list pages: User:BrownHairedGirl/Articles with bare links and User:BrownHairedGirl/Articles with new bare URL refs. I can email you the lists as they are done, usually about one per day. BrownHairedGirl (talk) • (contribs) 21:27, 2 March 2022 (UTC)
- I think you are correct. Citation bot relies mostly on the wikipedia zotero - there are a few that we go beyond zotero: IEEE might be the only one. A bit thing that the bot does is extensive error checking (bad dates, authors of "check the rss feed" and such). Also, almost never overwrites existing data. AManWithNoPlan (talk) 20:35, 2 March 2022 (UTC)
- Duh @me.
- @Rlink2, I just realised that in order to follow Citation Bot, BareRefBot's worklist does not need to be built solely off my worklists.
- Citation Bot has 4 channels, so my lists comprise only about a quarter of Citation Bot's work. The other edits are done on behalf of other editors, both as batch jobs and as individual requests. Most editors do not publish their work lists like I do, but Citation Bot's contribs list is a record of the pages which the bot edited on their behalf, so it is a partial job list (obviously, it does not include pages which Citation bot processed but did not edit).
- https://en.wikiscan.org/user/Citation%20bot shows the bot averaging ~2,500 edits per day. So if BareRefBot grab says the last 10,000 edits by Citation Bot, that will usually amount to about four days work by CB, which would be a good list to work on. Most editors do not not choose their Citation bot jobs on the basis of bare URLs, so the incidence of bare URLs in those lists will be low ... but any bare URLs which are there will have been recently processed by Citation Bot.
- Also, I don't see any problem with BareRefBot doing a run in which the bot does no filling, but just applies {{Bare URL PDF}} where appropriate. A crude search shows that there are currently over such 30,000 refs to be tagged, which should keep the bot busy for a few days: just disable filling, and let it run in tagging mode.
- Hope this helps. BrownHairedGirl (talk) • (contribs) 21:20, 4 March 2022 (UTC)
- @BrownHairedGirl:
BareRefBot's worklist does not need to be built solely off my worklists.
Oh yes, I forgot about the contribution list as well.So if BareRefBot grab says the last 10,000 edits by Citation Bot, that will usually amount to about four days work by CB, which would be a good list to work on.
I agree.Most editors do not not choose their Citation bot jobs on the basis of bare URLs, so the incidence of bare URLs in those lists will be low ... but any bare URLs which are there will have been recently processed by Citation Bot.
True. Just note that tying the bot to Citation bot will mean that the bot can only go as fast as citation bot goes, that's fine with me since there isn't really a big rush, but just something to note.Also, I don't see any problem with BareRefBot doing a run in which the bot does no filling,
Me neither. Rlink2 (talk) 01:44, 5 March 2022 (UTC)- Thanks, @Rlink2.
- I had kinda hoped that once BareRefBot was authorised, it could start working around the clock. At say 7 edits per minute. it would do ~10,000 pages per day, and clear the backlog in under 3 weeks.
- By making it follow Citation bot, we restrict it to about 3,000 pages per day. That means that it may take up to 10 weeks, which is a pity. But I think we will get better results this way. BrownHairedGirl (talk) • (contribs) 01:58, 5 March 2022 (UTC)
- @BrownHairedGirl: Maybe a hybrid model could work, for example it could avoid filling in refs for websites where the bot knows citation bot could possibly get better data (e.x: nytimes, journals, websites with metadata tags the barerefbot doesn't understand, etc..). That way we have the best of both worlds - the speed of barerefbot, and the (higher) quality of citation bot. Rlink2 (talk) 02:02, 5 March 2022 (UTC)
- @Rlink2: that is theoretically possible, but I think it adds a lot of complexity with no gain.
- The problem that BareRefBot exists to resolve is the opposite of that set, viz. the URLs which Citation bot cannot fill, and we can't get a definitive list of those. My experience of trying to make such a list for Reflinks was daunting: the sub-pages of User:BrownHairedGirl/No-reflinks websites list over 1400 sites, and it's far from complete. BrownHairedGirl (talk) • (contribs) 02:16, 5 March 2022 (UTC)
- @BrownHairedGirl: Maybe a hybrid model could work, for example it could avoid filling in refs for websites where the bot knows citation bot could possibly get better data (e.x: nytimes, journals, websites with metadata tags the barerefbot doesn't understand, etc..). That way we have the best of both worlds - the speed of barerefbot, and the (higher) quality of citation bot. Rlink2 (talk) 02:02, 5 March 2022 (UTC)
- Some numbers. @Rlink2: I did some analsysis of the numbers, using AWB's list comparer and pre-parser. The TL;DR is that there are indeed very slim pickings for BareRefBot in the other articles processed by Citation bot: ~16 per day.
- I took CB's latest 10,000 edits, as of about midday UTC today. That took me back to just two hours short of five days, on 28 Feb. Of those 10K, only 4,041 were not from my list. Only 13 of them still have a {{Bare URL inline}} tag, and 93 have an untagged, non-PDF bare URL ref. After removing duplicates, that left 104 pages, but 25 of those were drafts, leaving only 79 mainspace articles.
- So CB's contribs list gives an average of only 16 non-BHG-suggested articles per day for BareRefBot to work on.
- In those 5 days, I fed CB with 14,168 articles, on which the bot made just short of 6,000 edits. Of those 14,168 articles, 2,366 still have a {{Bare URL inline}} tag, and 10,107 have an untagged, non-PDF bare URL ref. After removing duplicates, that left 10,143 articles for BareRefBot to work on. That is about 2,000 per day.
- So in those 5 days, Citation bot filled all the bare URLs on 28.5% of the articles I fed it. (Ther are more articles where it filed some but not all bare refs). It will be great if BareRefBot can make a big dent in the remainder.
- Hope this helps. --BrownHairedGirl (talk) • (contribs) 20:03, 5 March 2022 (UTC)
- For what it's worth, I dislike the idea of having a bot whose sole task is to clean up after another bot; we should be improving the other bot in that case. If this bot can edit other pages outside of those done by Citation bot, then it should do so. Primefac (talk) 12:52, 27 March 2022 (UTC)
- @Primefac, well that's also a good way of thinking about it. I'm personally fine with any of the options (work on its own or follow citation bot), its up to others to come to a consensus over what is best. Rlink2 (talk) 12:55, 27 March 2022 (UTC)
- @Primefac: my proposal is not
clean up after another bot
, which describes one bot fixing errors by another. - My proposal is different: that this bot should do the tasks that Citation bot has failed to do. BrownHairedGirl (talk) • (contribs) 03:37, 28 March 2022 (UTC)
- BrownHairedGirl is right, the proposal is not cleaning up the other bots errors, it is with what Citation Bot is not doing (more specifically, the bare refs not being filled). Rlink2 (talk) 17:55, 28 March 2022 (UTC)
- @Primefac: Also, there seems to me to be no scope for extending the range of URLs Citation bot can fill. CB uses the zotero servers for its info on the bare URLs, and if the zotero doesn't provide the info, CB is helpless.
- It is of course theoretically conceivable that CB could be extended with a whole bunch of code of its own to gather data about the URLs which the zoteros can't handle. But that would be a big job, and I don't see anyone volunteering to do that.
- But what we do have is a very willing editor who has developed a separate tool to do some of what CB doesn't do. Please don't let the ideal of an all-encompassing Citation Bot (which is not even on the drawing board) become the enemy of the good, i.e. of the ready-to-roll BareRefBot.
- This BRFA is now Rlink2 in it tenth week. Rlink2 has been very patient, but please lets try to get this bot up and running without further long delay. BrownHairedGirl (talk) • (contribs) 18:25, 28 March 2022 (UTC)
- Maybe I misread your initial idea, but you have definitely misread my reply. I was saying that if this were just a case of cleaning up after CB, then CB should be fixed. Clearly, there are other pages to be dealt with, which makes that entire statement void, and I never suggested that CB be expanded purely to take over this task. Primefac (talk) 18:31, 28 March 2022 (UTC)
- @Primefac: maybe we went the long way around, but it's good to find that in the end we agree that there is a job for BareRefBot to do. Please can we try to get it over the line without much more time? BrownHairedGirl (talk) • (contribs) 20:11, 28 March 2022 (UTC)
- Maybe I misread your initial idea, but you have definitely misread my reply. I was saying that if this were just a case of cleaning up after CB, then CB should be fixed. Clearly, there are other pages to be dealt with, which makes that entire statement void, and I never suggested that CB be expanded purely to take over this task. Primefac (talk) 18:31, 28 March 2022 (UTC)
- BrownHairedGirl is right, the proposal is not cleaning up the other bots errors, it is with what Citation Bot is not doing (more specifically, the bare refs not being filled). Rlink2 (talk) 17:55, 28 March 2022 (UTC)
- @Primefac: my proposal is not
- @Primefac, well that's also a good way of thinking about it. I'm personally fine with any of the options (work on its own or follow citation bot), its up to others to come to a consensus over what is best. Rlink2 (talk) 12:55, 27 March 2022 (UTC)
Trial 3
Approved for extended trial (50 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. Primefac (talk) 12:48, 27 March 2022 (UTC)
- @Rlink2: Has this trial happened? * Pppery * it has begun... 01:42, 17 April 2022 (UTC)
- @Pppery Not yet, busy with IRL stuff. But will get to it soon (by end of next week latest) Rlink2 (talk) 02:37, 17 April 2022 (UTC)
- @Rlink2, now? ― Qwerfjkltalk 20:08, 3 May 2022 (UTC)
- @Qwerfjkl Not yet, i am still tracting up after my mini wikibreak. I will try to get to it next week. At the absolute latest done by middle of next month (it will probably be done way sooner but I would rather provide a definite upper bound rather than say "maybe this week" and pass the deadline). Rlink2 (talk) 12:29, 4 May 2022 (UTC)
- @Rlink2: any news?
- It's now almost mid-June, which was your absolute latest target.
- What is your current thinking? Are you losing interest in this task? Or just busy with other things?
- We are all volunteers, so if you no longer want to put your great talents into this task, that's absolutely fine. But it's been on hold now for three months, so it would be helpful to know where it's going. BrownHairedGirl (talk) • (contribs) 09:19, 12 June 2022 (UTC)
- @Qwerfjkl Not yet, i am still tracting up after my mini wikibreak. I will try to get to it next week. At the absolute latest done by middle of next month (it will probably be done way sooner but I would rather provide a definite upper bound rather than say "maybe this week" and pass the deadline). Rlink2 (talk) 12:29, 4 May 2022 (UTC)
- @Rlink2, now? ― Qwerfjkltalk 20:08, 3 May 2022 (UTC)
- @Pppery Not yet, busy with IRL stuff. But will get to it soon (by end of next week latest) Rlink2 (talk) 02:37, 17 April 2022 (UTC)
AssumptionBot
Operator: AssumeGoodWraith (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 11:34, Wednesday, February 16, 2022 (UTC)
Function overview: Adds AFC unsubmitted templates to drafts.
Automatic, Supervised, or Manual: Automatic
Programming language(s): Python
Source code available: I think this works?
Links to relevant discussions (where appropriate): Wikipedia:Village pump (proposals) § Bot proposal (AFC submission templates)
Edit period(s): Meant to be continuous.
Estimated number of pages affected: ~100 a day, judging by the new pages feed (about 250 today) and assuming that not many drafts are left without the afc template
Namespace(s): Draft
Exclusion compliant (Yes/No): Yes (pywikibot)
Function details: Adds AFC unsubmitted templates ( {{afc submission/draft}} ) to drafts in draftspace that don't have them, the {{draft article}} template, or anything that currently redirects to those 2. See the examples in the VPR proposal listed above.
Discussion
- I'm not going to decline this outright, if only to allow for feedback and other opinions, but not all drafts need to go through AFC, and so having a bot place the template on every draft is extremely problematic. Primefac (talk) 12:22, 16 February 2022 (UTC)
- {{BotOnHold}} until the RFC (which I have fixed the link to) has completed. In the future, get consensus before filing a request. Primefac (talk) 12:22, 16 February 2022 (UTC)
- @Primefac: Not sure if this is a misunderstanding, but it's the unsubmitted template, not the submitted one (Template:afc submission/draft). — Preceding unsigned comment added by AssumeGoodWraith (talk • contribs) 12:28, 16 February 2022 (UTC)
- I know, and my point still stands - not every draft is meant to be sent for review at AFC, and so adding the template to every draft is problematic. Primefac (talk) 12:38, 16 February 2022 (UTC)
- @Primefac: I thought you interpreted the proposal as "automatically submitting all new drafts for review". I'll wait for the RFC. – AssumeGoodWraith (talk | contribs) 12:49, 16 February 2022 (UTC)
- I know, and my point still stands - not every draft is meant to be sent for review at AFC, and so adding the template to every draft is problematic. Primefac (talk) 12:38, 16 February 2022 (UTC)
- Note: This bot appears to have edited since this BRFA was filed. Bots may not edit outside their own or their operator's userspace unless approved or approved for trial. AnomieBOT⚡ 12:41, 18 February 2022 (UTC)
- I'm not a BAG member, but I'd like to point out that your code won't work as you expect for multiple reasons. First, Python will interpret
"{{afc submission".lower()
,"{{articles for creation".lower()
, etc. as separate conditions that are alwaysTrue
, meaning the only condition that is actually considered is"{{draft article}}".lower() not in page.text
. Also, yourtime.sleep
call is outside the loop, meaning it will never actually be run. Bsoyka (talk · contribs) 04:59, 25 February 2022 (UTC)- I'll figure it out when approved. – AssumeGoodWraith (talk | contribs) 05:09, 25 February 2022 (UTC)
- ... Or now. – AssumeGoodWraith (talk | contribs) 05:09, 25 February 2022 (UTC)
- I'll figure it out when approved. – AssumeGoodWraith (talk | contribs) 05:09, 25 February 2022 (UTC)
- I'd like to note that I've closed the RfC on this task. From the close: "There is consensus for such a bot, provided that it does not tag drafts created by experienced editors. The consensus on which users are experienced enough is less clear, but it looks like (auto)confirmed is a generally agreed upon threshold." Tol (talk | contribs) @ 19:06, 18 March 2022 (UTC)
- Approved for trial (50 edits or 21 days, whichever happens first). Please provide a link to the relevant contributions and/or diffs when the trial is complete. This is based on the assumption that the bot will only be adding the template to non-AC creations. Primefac (talk) 12:37, 27 March 2022 (UTC)
- I may make another BRFA if I return to activity. – AssumeGoodWraith (talk | contribs) 03:23, 10 April 2022 (UTC)
- @AssumeGoodWraith, do you have any updates on this? 🐶 EpicPupper (he/him | talk) 02:38, 1 June 2022 (UTC)
- I may make another BRFA if I return to activity. – AssumeGoodWraith (talk | contribs) 03:23, 10 April 2022 (UTC)
- Approved for trial (50 edits or 21 days, whichever happens first). Please provide a link to the relevant contributions and/or diffs when the trial is complete. This is based on the assumption that the bot will only be adding the template to non-AC creations. Primefac (talk) 12:37, 27 March 2022 (UTC)
- @EpicPupper: I am on a break, and will probably finish this when I am back. – AssumeGoodWraith (talk | contribs) 02:51, 1 June 2022 (UTC)
I'm not sure I'll get this done soon due to loss of interest in Wikipedia. – AssumeGoodWraith (talk | contribs) 14:21, 27 June 2022 (UTC)
- On hold. No issue with putting it on hold, but please let us know if you wish to simply withdraw. Primefac (talk) 14:28, 27 June 2022 (UTC)
- @AssumeGoodWraith, I'm happy to write the code (running it is a different matter). ― Qwerfjkltalk 22:08, 1 July 2022 (UTC)
Bots that have completed the trial period
Qwerfjkl (bot) 13
Operator: Qwerfjkl (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 16:32, Friday, June 10, 2022 (UTC)
Automatic, Supervised, or Manual: automatic
Programming language(s): AWB
Source code available: AWB
Function overview: Substitute {{PH wikidata}} in articles
Links to relevant discussions (where appropriate): Wikipedia:Bot requests#Substitute inappropriate uses of PH wikidata in article text.
Edit period(s): one time run
Estimated number of pages affected: <1800
Exclusion compliant (Yes/No): No
Already has a bot flag (Yes/No): Yes
Function details: Apply the regex (?<!\n *\|.+)\{\{PH wikidata
→ {{subst:PH wikidata
(avoids lines starting with pipes, as in infoboxes).
I've just filed this as a BRFA because otherwise I'll forget, feel free to ignore this until Task 12 is sorted out below.
Discussion
- Approved for trial (50 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. --TheSandDoctor Talk 15:34, 19 June 2022 (UTC)
- @Qwerfjkl: --TheSandDoctor Talk 15:34, 19 June 2022 (UTC)
- @TheSandDoctor, see these 50 contributions. If it's desirable to skip all uses in templates, that can be done. ― Qwerfjkltalk 14:10, 20 June 2022 (UTC)
- @Qwerfjkl: Thank you for this! Let's give this a couple days to see if anyone has any feedback. TheSandDoctor Talk 04:45, 21 June 2022 (UTC)
- @TheSandDoctor, see these 50 contributions. If it's desirable to skip all uses in templates, that can be done. ― Qwerfjkltalk 14:10, 20 June 2022 (UTC)
- @Qwerfjkl: --TheSandDoctor Talk 15:34, 19 June 2022 (UTC)
Aidan9382-Bot 2
Operator: Aidan9382 (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 17:31, Wednesday, June 8, 2022 (UTC)
Function overview: Fix the |archive=
location for the {{User:MiszaBot/config}}
template which is used by Lowercase Sigmabot III for archiving.
Automatic, Supervised, or Manual: Automatic
Programming language(s): Python
Source code available: GitHub
Links to relevant discussions (where appropriate):
Edit period(s): Continuous (Every 15 minutes or so)
Estimated number of pages affected: Few initially, as I have been manually clearing the category for some time. Around 0 to 5 per day on average.
Namespace(s): All talk namespaces, as these are where archiving takes place
Exclusion compliant (Yes/No): Yes
Function details: This bot is designed to automatically fix any wrong inputs put into the |archive=
parameter of {{User:MiszaBot/config}}
, which Lowercase Sigmabot III relies on for archiving talk pages. These archives normally become incorrect after a page move which an editor has forgotten to clear up. Broken articles are findable via the associated category.
Discussion
Note: While this is listed as task number 2, the previous task was actually withdrawn by operator. I'm assuming the correct move here is to just consider this the second task, but please correct me if I'm wrong. Thanks. Aidan9382 (talk) 17:31, 8 June 2022 (UTC)
- @Aidan9382: This is the correct numbering for a bot task. What do you think an appropriate number of edits would be for a trial run? The standard is 50, but can be modified and seems a bit high for this unless I'm mistaken. --TheSandDoctor Talk 15:54, 19 June 2022 (UTC)
- @TheSandDoctor: I'd say its high for this, as this case doesnt happen too often. If you want a lower count, maybe 20 or 25? I'm concerned any lower might be too low to cover any potential weird cases. Aidan9382 (talk) 15:58, 19 June 2022 (UTC)
- @Aidan9382: You've got it. Approved for trial (25 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. --TheSandDoctor Talk 16:01, 19 June 2022 (UTC)
- @TheSandDoctor: Trial complete. The 25 are here (excluding 3 development edits). Other than an issue with encoding (Special:Diff/1094354270) and another with my template parsing (Seen testing here) which have both since been fixed, the edits have worked as intended. Aidan9382 (talk) 15:32, 27 June 2022 (UTC)
MalnadachBot 13
Operator: ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 06:07, Saturday, June 11, 2022 (UTC)
Automatic, Supervised, or Manual: automatic
Programming language(s): AutoWikiBrowser
Source code available: AWB, regexes given below, quarry:query/64398
Function overview: Blank inactive talkpages of inactive IPs which are not currently blocked and replace it with {{Blanked IP talk}}
Links to relevant discussions (where appropriate): Community consensus was established at Wikipedia:Village pump (proposals)#RfC: Bot to blank old IP talkpages (permanent link)
Edit period(s): One time run
Estimated number of pages affected: at least 1.5 million, exact number unknown
Exclusion compliant (Yes/No): Yes
Already has a bot flag (Yes/No): Yes
Function details: The bot will edit IP talkpages which meet the following conditions -
- The IP talkpage has not received edits in the last 5 years
- The IP address is not currently blocked (including range blocks)
- There have been no edits from the IP address in the last 5 years
List of pages that meet this criteria will be fetched using quarry:query/64398. Since there are millions of IP addresses to check, I will be fetching pages by targeting smaller range of IPs at a time so that the query will not time out.
The pages in the list will be matched using AWB's find and replace in advanced mode. The regex used is .*\n*
→ . This regex will match everything and replace it with nothing, thereby blanking the page. Then AWB's append function is used to add {{Blanked IP talk}} and the edit will be saved.
- Alternate way to get list of pages
query/64398 takes a long time to execute and there is an alternate way of fetching pages over a broader range. This will be a backup documented for the purpose of this BRFA and I do not expect to use it much.
This involves using quarry:query/64414, quarry:query/64388 and User:MalnadachBot/expand ip.py. query/64414 gives list of IP talkpages which have received no edits in the last 5 years and when there has been no edit from the IP in the last 5 years. quarry:query/64388 gives a list of blocked IPs address (including IP ranges), the result of this will be fed to expand_ip.py so that I can get all individual IPs that are between range blocks. Then I will use AWB's list comparator to get A ∩ B' of query/64414 and the expanded IP list, i.e inactive IP talkpages of inactive IPs which are not currently blocked. This final list will then be processed by the same find/replace and append procedure as descried above.
Discussion
- Comment: I notice that the first criterion here (no edits in the last 5 years) is different from the RFC's criterion (Have not received any messages in the last 5 years). I suspect that there are many IP talk pages that meet the RFC criteria but do not meet the bot's proposed criteria, because a bot or gnome has come by to tidy the page sometime in the last five years. I don't know if it is possible to exclude these tidying edits somehow, but if so, it would probably lead to a larger pool of pages to be cleaned up. I support the approval of this task, whichever set of criteria it operates under. This comment should not be read as attempting to impede bot task approval in any way. – Jonesey95 (talk) 14:50, 11 June 2022 (UTC)
- Yes, since this is a narrower criteria than what there is consensus for, I don't expect it to be a problem. The thing is quarry already struggles to generate this list of pages, trying to exclude gnome edits will make it harder. ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk) 16:13, 11 June 2022 (UTC)
- @ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ and Jonesey95: I imagine as the total number of pages quarry returns reduces it would be easier to then craft something for excluding gnome edits? --TheSandDoctor Talk 15:29, 19 June 2022 (UTC)
- Yeah, I expect it will be easier after some time. ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk) 16:46, 19 June 2022 (UTC)
- @ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ and Jonesey95: I imagine as the total number of pages quarry returns reduces it would be easier to then craft something for excluding gnome edits? --TheSandDoctor Talk 15:29, 19 June 2022 (UTC)
- Yes, since this is a narrower criteria than what there is consensus for, I don't expect it to be a problem. The thing is quarry already struggles to generate this list of pages, trying to exclude gnome edits will make it harder. ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk) 16:13, 11 June 2022 (UTC)
- Approved for trial (50 edits). Please provide a link to the relevant contributions and/or diffs when the trial is complete. @ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ: --TheSandDoctor Talk 15:31, 19 June 2022 (UTC)
- Trial complete. 50 edits. ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk) 12:58, 20 June 2022 (UTC)
- Comment/Praise: Thank you for publishing everything so that it was easy to follow along. The code you posted wmcloud was a great introduction to that system for me so thanks for that. Did you run into any problems with running this task? It's entirely my own interest as I'm getting started with AWB and writing some code for my own bot. Dr vulpes (💬 • 📝) 22:56, 21 June 2022 (UTC)
- Thanks. The actual operation performed on a page in this task is very simple - blank the page and add a template. The complicated part is in fetching the list of pages since it will have to filter from millions of IP addresses. As said above, quarry currently cannot do that, so I am getting the list from small ranges at a time. Once the number of IP talkpages with no edits in 5 years has decreased, it will be easier. ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ (talk) 04:15, 22 June 2022 (UTC)
Approved requests
Bots that have been approved for operations after a successful BRFA will be listed here for informational purposes. No other approval action is required for these bots. Recently approved requests can be found here (edit), while old requests can be found in the archives.
- BattyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 67) Approved 15:28, 19 June 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 12) Approved 15:22, 19 June 2022 (UTC) (bot has flag)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 7) Approved 15:17, 19 June 2022 (UTC) (bot has flag)
- ScannerBot (BRFA · contribs · actions log · block log · flag log · user rights) Approved 02:40, 13 June 2022 (UTC) (bot has flag)
- DatBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 11) Approved 23:39, 7 June 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 10) Approved 15:07, 7 May 2022 (UTC) (bot has flag)
- WOSlinkerBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 22) Approved 15:02, 7 May 2022 (UTC) (bot has flag)
- IndentBot (BRFA · contribs · actions log · block log · flag log · user rights) Approved 21:16, 3 May 2022 (UTC) (bot has flag)
- ProcBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 10b) Approved 13:19, 23 April 2022 (UTC) (bot has flag)
- NovemBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 3) Approved 21:42, 22 April 2022 (UTC) (bot has flag)
- TolBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 13B) Approved 15:50, 21 April 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 9) Approved 20:09, 11 April 2022 (UTC) (bot has flag)
- Roccerbot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 2) Approved 12:46, 27 March 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 8) Approved 12:46, 27 March 2022 (UTC) (bot has flag)
- ProcBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 10) Approved 09:25, 24 March 2022 (UTC) (bot has flag)
- Dušan Kreheľ (bot) (BRFA · contribs · actions log · block log · flag log · user rights) Approved 14:22, 6 March 2022 (UTC) (bot has flag)
- BattyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 65) Approved 14:17, 27 February 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 7) Approved 14:12, 27 February 2022 (UTC) (bot has flag)
- WOSlinkerBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 21) Approved 13:55, 27 February 2022 (UTC) (bot has flag)
- WOSlinkerBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 20) Approved 15:00, 13 February 2022 (UTC) (bot has flag)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 4) Approved 15:00, 13 February 2022 (UTC) (bot has flag)
- SdkbBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 3) Approved 15:48, 10 February 2022 (UTC) (bot has flag)
- TolBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 13A) Approved 20:53, 29 January 2022 (UTC) (bot has flag)
- Qwerfjkl (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 6) Approved 20:47, 29 January 2022 (UTC) (bot has flag)
- BattyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 64) Approved 16:28, 25 January 2022 (UTC) (bot has flag)
- TolBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 13) Approved 15:17, 23 January 2022 (UTC) (bot has flag)
- WOSlinkerBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 19) Approved 17:18, 18 January 2022 (UTC) (bot has flag)
- WOSlinkerBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 18) Approved 09:39, 13 January 2022 (UTC) (bot has flag)
- TolBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 10) Approved 22:25, 10 January 2022 (UTC) (bot has flag)
- FastilyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 16) Approved 14:21, 6 January 2022 (UTC) (bot has flag)
Denied requests
Bots that have been denied for operations will be listed here for informational purposes for at least 7 days before being archived. No other action is required for these bots. Older requests can be found in the Archive.
- CapsuleBot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 08:21, 27 May 2022 (UTC)
- BsoykaBot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 17:50, 3 April 2022 (UTC)
- Dušan Kreheľ (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: III) Bot denied 17:24, 3 April 2022 (UTC)
- Dneo bot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 17:32, 6 March 2022 (UTC)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 6) Bot denied 08:30, 6 March 2022 (UTC)
- BHGbot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 9) Bot denied 08:16, 16 December 2021 (UTC)
- Cewbot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 9) Bot denied 14:19, 19 September 2021 (UTC)
- Q28bot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 1) Bot denied 10:28, 14 September 2021 (UTC)
- HooptyBot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 10:31, 27 August 2021 (UTC)
- SWinxyTheBot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 21:02, 22 August 2021 (UTC)
- ProcBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 9) Bot denied 21:02, 22 August 2021 (UTC)
- AWMBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 2) Bot denied 02:05, 8 August 2021 (UTC)
- BattyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 58) Bot denied 19:16, 20 July 2021 (UTC)
- CountyBot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 23:10, 29 June 2021 (UTC)
- K.Kapil77 Bot (BRFA · contribs · actions log · block log · flag log · user rights) Bot denied 15:31, 10 June 2021 (UTC)
Expired/withdrawn requests
These requests have either expired, as information required by the operator was not provided, or been withdrawn. These tasks are not authorized to run, but such lack of authorization does not necessarily follow from a finding as to merit. A bot that, having been approved for testing, was not tested by an editor, or one for which the results of testing were not posted, for example, would appear here. Bot requests should not be placed here if there is an active discussion ongoing above. Operators whose requests have expired may reactivate their requests at any time. The following list shows recent requests (if any) that have expired, listed here for informational purposes for at least 7 days before being archived. Older requests can be found in the respective archives: Expired, Withdrawn.
- ButlerBlogBot (BRFA · contribs · actions log · block log · flag log · user rights) Expired 05:50, 20 June 2022 (UTC)
- NovemBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 4) Withdrawn by operator 16:29, 18 June 2022 (UTC)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) Withdrawn by operator 16:49, 1 June 2022 (UTC)
- ZabesBot (BRFA · contribs · actions log · block log · flag log · user rights) Withdrawn by operator 02:40, 1 June 2022 (UTC)
- Buffalo Meatbot (BRFA · contribs · actions log · block log · flag log · user rights) Withdrawn by operator 15:10, 26 May 2022 (UTC)
- Aidan9382-Bot (BRFA · contribs · actions log · block log · flag log · user rights) Withdrawn by operator 12:38, 8 May 2022 (UTC)
- Gaelan Bot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 2) Expired 15:02, 7 May 2022 (UTC)
- ElliBot (BRFA · contribs · actions log · block log · flag log · user rights) Expired 15:56, 21 April 2022 (UTC)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 8) Withdrawn by operator 20:40, 17 April 2022 (UTC)
- Dušan Kreheľ (bot) (BRFA · contribs · actions log · block log · flag log · user rights) (Task: II) Withdrawn by operator 02:41, 4 April 2022 (UTC)
- BattyBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 66) Withdrawn by operator 07:15, 28 March 2022 (UTC)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 5) Withdrawn by operator 17:22, 28 February 2022 (UTC)
- DoggoBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 5) Withdrawn by operator 17:21, 28 February 2022 (UTC)
- RichBot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 2) Expired 15:17, 23 January 2022 (UTC)
- Rlink2 Bot (BRFA · contribs · actions log · block log · flag log · user rights) (Task: 2) Withdrawn by operator 22:21, 20 January 2022 (UTC)