Jump to content


From mediawiki.org
MediaWiki extensions manual
Release status: stable
Implementation Special page , User activity , Hook
Description Enhanced recent changes patrol interface with workload sharing
Maintainer(s) Developaws
Latest version 2.1.0 (2017-01-18)
MediaWiki 1.32+
Database changes Yes
Composer mediawiki/patroller
License GNU General Public License 2.0 only
  • patroller
Quarterly downloads 6 (Ranked 130th)
Translate the Patroller extension if it is available at translatewiki.net
Issues 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 Developaws, and requires MediaWiki 1.32+. 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 move the extracted Patroller folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Patroller
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'Patroller' );
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • Customize as desired.
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.


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.



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.


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