Wikipedia:Deferred changes/Implementation
The page details the proposed technical implementation of deferred changes.
To defer an edit, flagged revisions is enabled on the page and the latest edit prior to the latest user is marked as reviewed. The page appears at Special:PendingChanges and the edits can be reviewed. If one of the tag is listed as needing 'active' deferral, then the stable version is displayed to readers by default.
A deferred page is recorded in the database with a "defer" level, and whenever an edit to a page with "defer" level is reviewed, the config is reset. So this implements the "defer until reviewed" concept. No change in the db schema is needed.
For AbuseFilter, two custom actions are added to defer passively or actively.
Bots can defer an edit with the API.
ORES may defer during its job, checking the damaging thresholds to apply for passive and active deferrals from MediaWiki pages on wiki.
FlaggedRevs can also check tags added in core or by extensions with the ChangeTagsUpdate hook. If any of the added tags is meant to indicate a problem, it defers the edit. By relying on the already well integrated change tag functionality, this can be easily used from a variety of sources. Problem tags are specified by tag managers, they trigger a deferral by default, but can be selectively prevented from doing so.
FlaggedRevs commits
- gerrit:218104 Main implementation
- gerrit:315344 For change tags support
Related commits
- For simultaneous use of regular patrol
- gerrit:213582 Remove patrol links with JS when reviewing a revision
- gerrit:315109 Don't autopatrol autoreviewed users in protection-based configs
- For easier reviewing
- gerrit:315145 Show log excerpt by default in review form
- Required for change tags support
- gerrit:190656 Allow patrolling of tagged changes with minimalist RC patrol (this adds 'problem' tags)