New to bots on Wikipedia? Read these primers!
Operator: Mike Christie ( talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 22:34, Sunday, October 23, 2022 ( UTC)
Function overview: Replace WP:GAN, currently written by Legobot. Create different versions of the GAN list in project space or userspace per user requests.
Automatic, Supervised, or Manual: Automatic
Programming language(s): Python
Source code available: User:ChristieBot/Source code
Links to relevant discussions (where appropriate): Discussion ongoing at WT:GAN, but an RfC will be started in addition for the proposal to take over writing WP:GAN.
Edit period(s): No more than every 20 minutes per target page.
Estimated number of pages affected: Probably single-digits -- WP:GAN plus perhaps a couple of differently formatted outputs such as User:ChristieBot/GANoms Single Table, depending on what is requested at WT:GAN or by individual users.
Namespace(s): Wikipedia and possibly User.
Exclusion compliant (Yes/No): No -- not relevant; only updates pages it has been specifically requested to update.
Function details: The bot iterates over Category:Good article nominees and looks up three further data items: edit count for the nominator, via the User class in pywikibot; reviews performed by the nominator, via the User:GA bot/Stats page, and GAs promoted for the nominator, via the database behind WP:WBGAN, which is currently bot-maintained. The resulting data and some calculated fields are then written to a page. The first approval for this bot only mentioned writing to User:ChristieBot/SortableGANoms; I would like to expand that to two more functions. One is to write WP:GAN instead of Legobot. This would only happen if there were a successful RfC. I have posted a note to Legoktm's talk page asking for comment on the proposed change. It might also be suggested at the RfC (which I have started a draft of here) that the bot should write more than one different page, since there might be demand for more than one way to sort it. I could imagine a request to write something like User:ChristieBot/GANoms Single Table on the same schedule, for example. The second function would be for any user who wishes a personalized list to be written to their userspace. I would propose to update such a page less often; probably daily. I doubt many users, if any, would want to take advantage, but if they did I don't want to have to come back here for further approvals. Note that if you wish to see what the alternate formats a user might request, the code also runs a tool which allows output of html or wikitext; it's the wikitext that would be generated for the user pages, per whatever filters they would select.
In case it's relevant, the first BRFA envisaged scanning the GA nominations page, but that would have built in a reliance on Legobot. Scanning the GA nominee category seemed more sensible.
This might be a dumb question, but at any point was Legoktm brought in to this discussion? I don't know if it necessarily will impact the BRFA itself, but it seems like "I'm taking over this space without telling the primary bot operator" is a bit... unusual? (please do not ping on reply) Primefac ( talk) 08:01, 25 October 2022 (UTC) reply
Primefac, since it's apparent I need to replicate Legobot's layout of the main GAN page unless I take over the other functions, and since Legoktm confirms above that he wants someone to take over the GAN functions of Legobot, I've gone and ahead and written the code for those other functions too. I would like to change the stated purpose of this BRFA to be: take over all GAN functionality from Legobot, and also add the ability to create new GAN pages per the BRFA description above. That way if this is successful and ChristieBot takes over, I would not have to come back here for a subsequent RfC regarding changing the format of GAN, even though that might mean writing several new pages. Re progress: the bot is creating copies of the various Legobot pages and I am finding and fixing issues that have arisen; I'll report back here when I've had several consecutive days of trouble-free running. Mike Christie ( talk - contribs - library) 12:05, 2 November 2022 (UTC) reply
be sensible about toolforge resources). In general, tasks which are not visible to other editors in terms of edits/actions (i.e. you're only querying things) do not require a BRFA. BRFA mostly ensures tasks have consensus, are operated by a suitable operator, and aren't buggy to the point of being disruptive. System performance is the domain of Wikimedia/Toolforge sysadmins, who I guess would get in touch with you if your project was using too many resources. #wikimedia-cloud on IRC is usually a good place to chat with them if you want thoughts in advance.
I need to replicate Legobot's layout of the main GAN page unless I take over the other functionsI don't think this is the case, I can just have Legobot write and parse the page as it wants in userspace rather than from WP:GAN. But if you're getting set to take all the GAN stuff over, that would be even better! Legoktm ( talk) 01:50, 5 November 2022 (UTC) reply
The bot has now been running trouble-free for several days. I noticed a couple of days ago that there was one more function that Legobot does that I hadn't written: adding the oldid to a new GA's talk page. I've added that function and tested it as far as is possible; I can't really test it fully till the bot takes over from Legobot. The only remaining thing I can think of that could be a problem is that there might be some other bots that depend on the current GAN page format. WugBot does depend on it, but works fine with the new format. SDZeroBot does not depend on the format of the page. The only other bot I know of that cares about GANs is AAlertBot; Hellknowz/ Headbomb, would it matter to AAlertBot if the format of the GAN page changed from WP:GAN to include User:ChristieBot/GAN existing format as the body instead? The head and tail text would be unchanged. Or are you using page categories to find GANs instead? In which case there would be no issue. Mike Christie ( talk - contribs - library) 03:24, 11 November 2022 (UTC) reply
Given the answer from Hellknowz above, I think ChristieBot is ready to take over from Legobot whenever this is approved. Is it usual to wait till the end of the 30-day trial period regardless? Mike Christie ( talk - contribs - library) 10:55, 11 November 2022 (UTC) reply
noratelimit
, if that's what you mean?
ProcrastinatingReader (
talk) 23:00, 16 November 2022 (UTC)
reply
maxlag
. Basically the API returns the load the servers are under, and clients can choose to look at that load value and act accordingly. Guidance is to not run high-priority bot tasks in high-load periods. So pywikibot may under the hood be adhering to that by rate limiting in times of high load. There may also be built in throttling in the library to stop too many requests being sent in short spaces of time.maxlag
and put_throttle
will do the trick.
ProcrastinatingReader (
talk) 02:59, 17 November 2022 (UTC)
reply
I've turned off Legobot's GA tasks. Legoktm ( talk) 19:55, 17 November 2022 (UTC) reply
take over all GAN functionality from Legobot, and also add the ability to create new GAN pages per the BRFA description above. Feel free to get in touch if you have any questions or need to seek an amendment to the task. ProcrastinatingReader ( talk) 14:01, 19 November 2022 (UTC) reply
New to bots on Wikipedia? Read these primers!
Operator: Mike Christie ( talk · contribs · SUL · edit count · logs · page moves · block log · rights log · ANI search)
Time filed: 22:34, Sunday, October 23, 2022 ( UTC)
Function overview: Replace WP:GAN, currently written by Legobot. Create different versions of the GAN list in project space or userspace per user requests.
Automatic, Supervised, or Manual: Automatic
Programming language(s): Python
Source code available: User:ChristieBot/Source code
Links to relevant discussions (where appropriate): Discussion ongoing at WT:GAN, but an RfC will be started in addition for the proposal to take over writing WP:GAN.
Edit period(s): No more than every 20 minutes per target page.
Estimated number of pages affected: Probably single-digits -- WP:GAN plus perhaps a couple of differently formatted outputs such as User:ChristieBot/GANoms Single Table, depending on what is requested at WT:GAN or by individual users.
Namespace(s): Wikipedia and possibly User.
Exclusion compliant (Yes/No): No -- not relevant; only updates pages it has been specifically requested to update.
Function details: The bot iterates over Category:Good article nominees and looks up three further data items: edit count for the nominator, via the User class in pywikibot; reviews performed by the nominator, via the User:GA bot/Stats page, and GAs promoted for the nominator, via the database behind WP:WBGAN, which is currently bot-maintained. The resulting data and some calculated fields are then written to a page. The first approval for this bot only mentioned writing to User:ChristieBot/SortableGANoms; I would like to expand that to two more functions. One is to write WP:GAN instead of Legobot. This would only happen if there were a successful RfC. I have posted a note to Legoktm's talk page asking for comment on the proposed change. It might also be suggested at the RfC (which I have started a draft of here) that the bot should write more than one different page, since there might be demand for more than one way to sort it. I could imagine a request to write something like User:ChristieBot/GANoms Single Table on the same schedule, for example. The second function would be for any user who wishes a personalized list to be written to their userspace. I would propose to update such a page less often; probably daily. I doubt many users, if any, would want to take advantage, but if they did I don't want to have to come back here for further approvals. Note that if you wish to see what the alternate formats a user might request, the code also runs a tool which allows output of html or wikitext; it's the wikitext that would be generated for the user pages, per whatever filters they would select.
In case it's relevant, the first BRFA envisaged scanning the GA nominations page, but that would have built in a reliance on Legobot. Scanning the GA nominee category seemed more sensible.
This might be a dumb question, but at any point was Legoktm brought in to this discussion? I don't know if it necessarily will impact the BRFA itself, but it seems like "I'm taking over this space without telling the primary bot operator" is a bit... unusual? (please do not ping on reply) Primefac ( talk) 08:01, 25 October 2022 (UTC) reply
Primefac, since it's apparent I need to replicate Legobot's layout of the main GAN page unless I take over the other functions, and since Legoktm confirms above that he wants someone to take over the GAN functions of Legobot, I've gone and ahead and written the code for those other functions too. I would like to change the stated purpose of this BRFA to be: take over all GAN functionality from Legobot, and also add the ability to create new GAN pages per the BRFA description above. That way if this is successful and ChristieBot takes over, I would not have to come back here for a subsequent RfC regarding changing the format of GAN, even though that might mean writing several new pages. Re progress: the bot is creating copies of the various Legobot pages and I am finding and fixing issues that have arisen; I'll report back here when I've had several consecutive days of trouble-free running. Mike Christie ( talk - contribs - library) 12:05, 2 November 2022 (UTC) reply
be sensible about toolforge resources). In general, tasks which are not visible to other editors in terms of edits/actions (i.e. you're only querying things) do not require a BRFA. BRFA mostly ensures tasks have consensus, are operated by a suitable operator, and aren't buggy to the point of being disruptive. System performance is the domain of Wikimedia/Toolforge sysadmins, who I guess would get in touch with you if your project was using too many resources. #wikimedia-cloud on IRC is usually a good place to chat with them if you want thoughts in advance.
I need to replicate Legobot's layout of the main GAN page unless I take over the other functionsI don't think this is the case, I can just have Legobot write and parse the page as it wants in userspace rather than from WP:GAN. But if you're getting set to take all the GAN stuff over, that would be even better! Legoktm ( talk) 01:50, 5 November 2022 (UTC) reply
The bot has now been running trouble-free for several days. I noticed a couple of days ago that there was one more function that Legobot does that I hadn't written: adding the oldid to a new GA's talk page. I've added that function and tested it as far as is possible; I can't really test it fully till the bot takes over from Legobot. The only remaining thing I can think of that could be a problem is that there might be some other bots that depend on the current GAN page format. WugBot does depend on it, but works fine with the new format. SDZeroBot does not depend on the format of the page. The only other bot I know of that cares about GANs is AAlertBot; Hellknowz/ Headbomb, would it matter to AAlertBot if the format of the GAN page changed from WP:GAN to include User:ChristieBot/GAN existing format as the body instead? The head and tail text would be unchanged. Or are you using page categories to find GANs instead? In which case there would be no issue. Mike Christie ( talk - contribs - library) 03:24, 11 November 2022 (UTC) reply
Given the answer from Hellknowz above, I think ChristieBot is ready to take over from Legobot whenever this is approved. Is it usual to wait till the end of the 30-day trial period regardless? Mike Christie ( talk - contribs - library) 10:55, 11 November 2022 (UTC) reply
noratelimit
, if that's what you mean?
ProcrastinatingReader (
talk) 23:00, 16 November 2022 (UTC)
reply
maxlag
. Basically the API returns the load the servers are under, and clients can choose to look at that load value and act accordingly. Guidance is to not run high-priority bot tasks in high-load periods. So pywikibot may under the hood be adhering to that by rate limiting in times of high load. There may also be built in throttling in the library to stop too many requests being sent in short spaces of time.maxlag
and put_throttle
will do the trick.
ProcrastinatingReader (
talk) 02:59, 17 November 2022 (UTC)
reply
I've turned off Legobot's GA tasks. Legoktm ( talk) 19:55, 17 November 2022 (UTC) reply
take over all GAN functionality from Legobot, and also add the ability to create new GAN pages per the BRFA description above. Feel free to get in touch if you have any questions or need to seek an amendment to the task. ProcrastinatingReader ( talk) 14:01, 19 November 2022 (UTC) reply