From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

CommonsMaintenanceBot (talk · contribs)

Operator: Rillke (talk · contributions · Statistics · Recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought:

Task Status Test edit Approved
Archiving pages like Commons:Deletion requests/mobile tracking  running Special:Diff/126830384, Special:Diff/126839875 odder (talk)
Removing expired messages from MediaWiki:WatchlistNotice (needs sysop flag)  running Special:Diff/126839605 odder (talk)
Watching recent changes of MediaWiki JavaScript pages, running JSHint over the old revision and the new revision. Reverting to old revision if more issues appear in the new revisionperhaps not for now and generally notifying the editing user about issues, except they opted out; writing full report to a subpage of Commons User scripts (MediaWiki pages go to the message cache) and maintaining a table of scripts and their JSHint and esprima status (needs sysop flag for deleting obsolete error reports of scripts that are valid)  running reports, user notification odder (talk)
Watching recent changes in user namespace and for JavaScript pages, run esprima, jshint; for CSS run PrettyCSS (which comes with a validator) over the new revisions. If issues are found, they are reported to the user.  running user notification odder (talk)
Watching recent changes of MediaWiki CSS pages, running a CSS validator over it and doing the same as done with JSHint, except reverting.  running reports, report page, user notification odder (talk)
Updating data source for MediaWiki:Gadget-markAdmins.js (MediaWiki:Gadget-markAdmin-data.js). page is now MediaWiki:Gadget-markAdmins-data.js  running page odder (talk)

Automatic or manually assisted: Automatic, running on wmf-labs.

Edit type (e.g. Continuous, daily, one time run): Archiving Commons:Deletion_requests/mobile_tracking: Once per week

Maximum edit rate (e.g. edits per minute): No throttle, just following mw:API:Etiquette. Scheduled by xcrontab, job submitted to grid engine.

Bot flag requested: (Y/N): Y

Sysop flag requested (administrator status): (Y/N): Y

Programming language(s): JavaScript. Running on Node.js - source code available on GitHub (On labs: /data/project/commons-maintenance-bot/)

Rillke(q?) 14:42, 14 April 2014 (UTC)


  • Please make a test run for each task. --EugeneZelenko (talk) 14:11, 15 April 2014 (UTC)
    • @Rillke: Are there any updates on the state of this request? Specifically, did you make test runs for all tasks listed above? Thanks! odder (talk) 14:53, 13 June 2014 (UTC)
      • Sounds like a task for tonight. -- Rillke(q?) 18:06, 13 June 2014 (UTC)
  •  Question Can you provide some more examples for the verification of CSS pages so I can have a deeper look at it? Thanks :-) odder (talk) 21:28, 25 June 2014 (UTC)
    • Are you out for specific pages? Then just edit them :) The bot stalks the recent changes so feel free to vandalize MediaWiki:Test.css or any other CSS page in the MW namespace after creating it with good content. -- Rillke(q?) 23:19, 25 June 2014 (UTC)
  • @Jarekt, Zolo, and Odder: Would a Linter for Lua be something worth consideration? The bot is running and filling Tool Labs with 900 MiB of RAM anyway. (Python needs 300 MiB less but I don't like it.) -- Rillke(q?) 23:23, 25 June 2014 (UTC)
    • @Rillke: If you want to implement a linter for Lua scripts, then it's just fine with me :-) odder (talk) 14:45, 1 July 2014 (UTC)
  •  Comment I have now reviewed the four remaining tasks. They all look fine to me, although I would nitpick and suggest to change the German-sounding css-pages and css-writing into CSS pages and CSS writing — the English equivalents do not use a dash. Except for that, all is fine :-) odder (talk) 20:24, 26 October 2014 (UTC)
    • Thank you the review and for the hints. No nitpick at all. I appreciate feedback like that very much. For the sysop flag thing, do you believe it would be possible? I guess all maintainers should be administrators, am I right? @Krinkle: Do you store KrinkleBot's password on tool labs? Or it it using oAuth? Thanks in advance. -- Rillke(q?) 22:36, 26 October 2014 (UTC)
      • @Rillke: I am not aware of any limitations that would require the operator of a bot holding sysop privileges to be a sysop themselves; but it is certainly possible for a bot to hold both the bot flag and the sysop flag, so I don't think it should be a problem here, particularly given the bot's usefulness and role. We can make the bot an administrator any time you wish — once all tasks are done, or as soon as possible if the tasks are time-sensitive. odder (talk) 22:56, 26 October 2014 (UTC)
      • I'd be fine with sysopping the bot as well. We grant permission to run the bot for the tasks that have been reviewed in this request. To me this seems like a sufficient procedure for granting the necessary bits. --Dschwen (talk) 16:28, 28 October 2014 (UTC)

Since the bot is already approved for a few of the tasks, and carrying them out, I set the bot flag. @EugeneZelenko and 99of9: do you agree giving the bot the sysop bit? --Dschwen (talk) 16:23, 29 October 2014 (UTC)

Yes, mainly based on my trust in Rillke's script expertise. --99of9 (talk) 21:03, 29 October 2014 (UTC)
✓ Done I have flagged the bot with admin rights. --99of9 (talk) 23:57, 18 November 2014 (UTC)

@Rillke: where are we with the remaining tasks on the list? It says testedit on those. Can you point us to the actual tests? What about the "Possibly" task? Have you decided if you want to pursue this? --Dschwen (talk) 16:33, 20 November 2014 (UTC)

@Rillke: I'd also appreciate if we can close this and discuss new features in new requests. Please advise. --Krd 17:40, 5 June 2015 (UTC)
Let's close this for now. -- Rillke(q?) 21:26, 5 June 2015 (UTC)


If you prefer not getting spammed by me, you can opt-out reports by adding {{ValidationOptOut|type=all}} to your user page on Wikimedia Commons or cmb-opt-out anywhere on your your global user page on Meta (e.g. hidden from humans with <span style="display:none">cmb-opt-out</span>). Good luck at Wikimedia Commons and happy hacking!

Explanation needed

Since the ECMAScript 2015, default values can be assigned to function parameters. JS execution works well with defaults; but the maintenance bot seems not yet to know about, therefore it tags the "=" of their definition as an unexpected token. -- sarang사랑 08:50, 7 July 2021 (UTC)

To compare against null with == (instead with ===) is the only possibility to determine whether a boolean variable is neither true nor false.
The sugestion «Use '===' to compare with 'null'. - Evidence: if (exist == null)» is wrong - it will not work. -- sarang사랑 07:17, 27 July 2021 (UTC)