User:Ostrzyciel/GSoC 2020
Appearance
This is the page for documenting my internship at Wikimedia during Google Summer of Code 2020.
Project description
[edit]A valuable addition to the RecentChanges filtering interface would be a filter that would show edits that were "reverted" or "undone". The task is about adding such a filter. We will want to identify the edit that is being reverted and tag it with a "reverted" tag.
We'll need to detect when a revision is being rolled back / undone, and then apply a tag to the revision that it is rolling back. This involves defining a tag and implementing a hook which can apply that tag in certain conditions.
Bi-weekly reports
[edit]- Week 2, May 20th
- Week 4, June 3rd
- Week 6, June 17th
- Week 8, July 1st
- Week 10, July 15th
- Week 12, July 29th
- Week 14, August 12th
- Week 16, August 26th
Work log
[edit]The things I should probably do
[edit]Done Establish the definition of a "reverted" edit. Initial technical research.
Done Implement the reverted tag.
Done Create the EditResult class
Done Implement marking reverts based on undo and rollback actions
Done Write tests
Done Refactor hooks used in PageUpdater to use the new data
- Main core patch
- AbuseFilter
- PageTriage
Done Update hook's documentation
Done Fix issues with the undoafter param
Done Implement SHA1-based revert detection
Done Fix issues with null edits
Done Persist EditResult in revert change tags
Done Implement the reverted edit tag and mark reverted edits
Done Implement RevisionStore::getRevisionIdsBetween
Done Save additional information about the revert in the reverted edit tag
Done Protect the reverted edits feature from abuse
Done Additional QA for the reverted tag on testwiki
Done Deprecate RollbackComplete hook
In progress Write a maintenance script for back-filling the reverted tag
In progress Write documentation
The things that would be nice to do
[edit]To do Think about how the docs on dependency injection pattern can be improved
Done Identify reverts in EventBus data
To do Update other content management extensions to use the BeforeRevertedTagUpdate hook
In progress Extension:Approved Revs
To do Extension:Moderation (? see phab:T259103#6353301)
In progress Update the Echo extension to use the new functionality and remove redundant code.
To do Figure out what is going on with the new REST API and its reverted filter on history view.
- The REST API when asked for reverted revisions of wikipedia:Cat returns for example this, not the previous edit, which is clearly wrong and inconsistent with what we're trying to do here. That would probably need to be fixed.