From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manual
Crystal Clear action run.png

Release status: stable

Implementation Special page, User activity, Hook
Description Enhanced recent changes patrol interface with workload sharing
Author(s) Rob Church, Cblair91
Latest version 2.0 (09-13-2015)
MediaWiki 1.17-1.23
Database changes Yes
License GNU General Public License 2.0
Added rights


Hooks used

Translate the Patroller extension if it is available at translatewiki.net

Check usage and version matrix; code metrics


Open tasks · Report a bug

The Patroller extension adds an enhanced recent changes patrol interface to MediaWiki. It was written in June 2006 by Rob Church for use on Wikimedia web sites, and adopted in September 2015 by Cblair91, and requires MediaWiki 1.17 to 1.25. The interface filters incoming edits, prevents users from patrolling their own edits, and shares the workload between patrollers.

The extension adds a new special page; "Special:Patrol", accessible to users with the patroller user permission assigned. By default, this will be any sysop, but you may wish to customise the configuration in LocalSettings.php, e.g. to grant access to autoconfirmed users or a custom group.


  • Download and place the file(s) in a directory called Patroller in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
wfLoadExtension( 'Patroller' );
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • YesY Done - Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

To users running MediaWiki 1.24 or earlier:

The instructions above describe the new way of installing extensions using wfLoadExtension(), since MediaWiki 1.25. If you need to install this extension in earlier versions, instead of wfLoadExtension( 'Patroller' );, you need to use:

require_once "$IP/extensions/Patroller/Patroller.php";

(To run an extension on an earlier release, you may need to download the version of it tagged for that release from Special:ExtensionDistributor.)


When accessing Special:Patrol, a recent change will be selected based on certain criteria, and a diff. view generated.

You will be presented with three options:

  • Endorse - accept the edit and mark it as patrolled
  • Revert - reject the edit and undo the changes it makes
  • Skip - ignore the edit

After selecting the operation to perform, another change will be produced for review.


When reverting, a custom reason can be entered in the text field, or a pre-defined reason can be used. If no custom reason is provided, then the currently selected pre-defined reason is used as the edit summary for the corresponding reversion.


User permissions

The extension adds a new permission named patroller. Use this to grant access to different user groups, e.g. to grant access to all autoconfirmed users, add the following to LocalSettings.php, under the call to add the extension:

$wgGroupPermissions['autoconfirmed']['patroller'] = true;

Revert reasons

To customize the list of pre-defined revert reasons, edit the "patrol-reasons" message. Reasons appear one per line, in a bulleted list.


Workload sharing

The extension shares the patrol load by temporarily storing a key to the recent change in a memory-based table, alongside a timestamp recording the time of assignment. While a change has a corresponding row in this table, it is not presented for review.

Rows in the table are removed once they have expired.

Selection criteria

When selecting a change for review, the extension ensures that it meets the following criteria:

  • Edit corresponds to the most recent change to a page
  • Edit was not made by the user doing the patrolling
  • Edit is not assigned to another user
  • Edit was not made by a bot, and has not already been patrolled