Jump to content

Community Tech/Rewrite XTools

From Meta, a Wikimedia project coordination wiki

This page documents a project the Wikimedia Foundation's Community Tech team has worked on or declined in the past. Technical work on this project is complete.

We invite you to join the discussion on the talk page. You may track this project's progress on T153112.

Tracked in Phabricator:
Task T153112

The Rewrite XTools project aims to update and maintain XTools, the wiki curation and moderation tools originally developed by User:X! and rewritten by User:Hedonil. Both have retired, and aren't able to maintain these tools anymore. Community Tech will team up with User:Matthewrbowker in rewriting the tools, making them more stable and reliable.

The suite of tools includes:

  • Edit Counter: Detailed information about user's edits, including breakdown by namespace (and time if they opt in). Current version: xtools-ec
  • Article Information (aka Page history): Detailed information about an article, including issues and statistics. Current version: xtools-articleinfo
  • Pages Created: Lists pages created by a specific user. pages
  • Top Edits: Lists the pages that a user has edited the most, per namespace. topedits
  • AdminStats: Shows statistics of admin actions in a sortable table. Current version: adminstats
  • RfX Analysis: Analyze votes on Requests for Adminship and Request for Bureaucratship pages. Current version: rfa
  • RfX Vote Counter: Shows how a user voted across Request for Adminship proposals. Current version: rfap
  • Simple Edit Counter: Shows basic group and edit count information. Current version: sc
  • Automated Edits: Shows automated edits made by a bot. This had been removed from Xtools; our team is bringing it back. Dev version: autoedits. We'll also be adding a nonautomated version.

The following tools were part of Xtools, but will not be rewritten in the new version.

  • Article Blamer: Shows who is responsible for inserting given text into an article: Current version: blame. The current version doesn't work, and there's another existing tool: Wikiblame. It's a big, hard project on its own; the team will discuss whether it's worth developing a new version of Article Blamer, outside of this project.
  • Range Contributions: Searches for contributions from IP ranges. Current version: rangecontribs. Community Tech is already working on a separate tool for this: see phab:T145912 for more information.
  • Autoblock: A tool to monitor autoblocks. Community Tech has created a new tool in MediaWiki: Special:AutoblockList.

Important links[edit]


May 15, 2017[edit]

Tools in development are on xtools-dev.

Lots of work has been done on Xtools -- we're getting close to the end of the project. There are nine tools that will be part of this rewrite, listed above. We've taken a few off the list, for reasons also listed above.

Currently, the team is building a new backend architecture for the tools which will make it easier to test the tools, and maintain their performance. Once that's complete, we'll hook up the new backend to each of the tools, and write tests.

Mar 1, 2017[edit]

The team is going to work on the Articleinfo tool first. We're currently putting together a list of tweaks and changes below; we'll reach out to folks to see if there are other important changes that people need -- posting on village pumps, possibly sending a message to people who voted for this wish.


Community Tech/Rewrite XTools/Articleinfo


Notes by User:MusikAnimal: XTools serves up to 185 languages and is used an estimated 200,000+ times a month [1] (I changed the endpoint [2][3] but failed to update the tracking endpoint in the xtools project until very recently).

XTools is easily the most popular of the user analysis tools, and complaints of instability have been ongoing since the author of the most recent rewrite retired in August 2014 [4] (see reports at w:en:WP:VPT [5], their talk page on dewiki [6], and issues on GitHub). Most people are content because our ongoing efforts have provided around an 80% uptime (according to private Uptime Robot data) of the services, which is still severely lacking for such a popular suite of tools.

Primary use cases include evaluating candidates for particular roles (request for adminship, various permissions, etc.), and individual interest in a user's productivity. Much attention has also been given to privacy. Multiple RfCs have resulted in data that is already public, such as aggregated stats on an user's editing activity, only be visualized if explicitly allowed by the editor [7][8]. So in summary, a rewrite of this integral suite of tools that is more reliable, maintainable, and more compatible with the Tool Labs environment, is desperately needed.

Matthewrbowker has been working very hard on the rebirth [9] that lives on a dedicated Labs instance. His work will surely make it's way to a more stable service for all, but official support for this effort I believe will greatly benefit the moderation community — MusikAnimal talk 07:50, 20 November 2016 (UTC)[reply]