Extension:FlaggedRevs

Article validation allows for a reviewer class of users to rate article's accuracy/depth/style and set those revisions as the default revision to show upon normal page view (".../wiki/pagename").

These revisions will remain the same even if included templates are changed or images are overwritten. The text with expanded transclusions is stored. Image revisions that were deleted/moved will not however. Depending on the configuration, this may not be a limitation for transcluded pages as well.

Status
The extension is still in heavy early development, but enough code is there to play arround with it. Everything can and will change though ;-)

There is an instance running here, and notes about your finding can be left on the FlaggedRevsNotes page.

Setup
Add the  line to localsettings.php.

Run the FlaggedRevs.sql query, substituting in your wiki's table prefix.

As the relevant core changes have not yet been made to svn trunk, to test this, you must:


 * SVN up from "http://svn.wikimedia.org/viewvc/mediawiki/branches/phase3_rev_deleted" instead of /trunk.
 * Run update.php
 * Run rebuildImages.php

Configuration
FlaggedRevs.php comes with a number of configurable variables. To modify these, it is best if you copy them to localsettings.php and change them there.

Use
First, make sure there is a bureaucrat or steward account (Stewards can set any arbitrary rights). Bureaucrat accounts, by default, can promote users to reviewer status or remove it.

Users with reviewer status will have a small rating form on page view and diffs that lets them review revisions.

Logging
A log of promotion/demotion of reviewers and why is kept at Special:Log.

A log of the approval/unapproval of revisions is kept at Special:Log.

Issues
Cache - The imagelinks and pagelinks tables let MW know which pages to purge when a page is moved/deleted/created. However, the stable version links may not be the same as those on the current page, causing it to possibly have red/blue links that should be blue/red. Pressing the "purge" tab ('&action=purge') will reset both the current and stable version cache though.
 * Resolved, added extraLinksUpdate hooked function. Aaron 16:54, 8 May 2007 (UTC)

Deletion - If a page is deleted and restored, the stable versions are not acknowledged since the restored page has a new page_id.
 * Resolved, flaggedrevs title now use fr_title and fr_namespace rather than fr_page_id. Stable revisions are checked to see if they belong to the same page_id of a page when viewed. A table update is hooked onto page moves. Aaron 17:14, 7 May 2007 (UTC)

History merges - If two pages are merged that were around during the same time period, the interwoved history may cause FlaggedRevs to transclude the wrong page version onto the stable version.
 * Resolved in the working rev_deleted svn branch. Aaron 19:39, 5 May 2007 (UTC)

Selective restore - similar issues as with merges
 * Resolved in the working rev_deleted svn branch. Aaron 19:39, 5 May 2007 (UTC)

Importing pages - if a redlink exists when a revision is tagged, and then a page is imported there, the version from that same time will show, even though it wasn't there when reviewed.

Dependencies

 * bug 5877
 * FileStore - this extension will be delayed until some work here is done, so as to avoid conflicts
 * Bitfields for rev_deleted - for preserving page histories

Licensing and downloads
(c) GPL, Jeorg Baach, Aaron Schulz, 2007