forked from edwardspec/mediawiki-moderation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
58 lines (53 loc) · 3.26 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
TODO:
Medium-prio:
* (testsuite) Provide ~100% automated test coverage of all functionality.
* (feature) Show "you have N pending edits" link to non-automoderated users
("shopping cart" style), so that they would know to which pages
to return to continue editing.
Low-prio:
* (feature) Special page to list users blocked via "Mark as spammer".
* (feature) modaction=promote for quickly assigning "automoderated" flag.
* (documentation) Ensure that testsuite and hooks have Doxygen-style comments.
Testsuite is documented quite well, but those are non-Doxygen comments.
The list in README.testsuite is outdated and inconvenient to maintain.
* (interface) Improve $wgModerationUseAjax - actions like Approve via Ajax
(without leaving Special:Moderation). Partially implemented,
but need feedback from users on UX (is it convenient to use or not?)
* (testsuite) Selenium testsuite: investigate test flakiness of notify.js
(in IE11, notification sometimes doesn't disappear after the click)
* (feature) Support gzip compression and external storage of mod_text.
Since MediaWiki 1.31, this can be easily done using BlobStore class.
* (feature) Backup previous text when a pending change is modified.
This would prevent situation when a user has accidentally deleted
important text in his own pending change, and the old text wasn't
recoverable.
It would also make [action=editchange] safe from moderator's errors,
and would allow to log what exactly did the moderator change.
Note: this backup must be in a separate SQL table.
Not having "edit history" in moderation table simplifies everything.
* (feature) Support MCR (multi-content revisions) - editing of non-main slots.
Note: this is easier to implement after MW 1.31 becomes deprecated,
because 1.31 didn't support MCR.
* (feature) Make it possible to Approve edits caused by Special:ChangeContentModel.
Background-prio (may not be needed):
* (meta) Display notification "Please run update.php" on Special:Moderation if
some new feature (that requires DB update) is disabled because it wasn't done.
* (feature) Add "rejected edits" link for moderators in ContributionsToolLinks hook.
It's not a simple UI change, because "moderation" SQL table currently
doesn't have an index for selecting edits by author.
* (feature) Should ApproveHook update timestamps of upload/move logs?
* (UX) Improve handling of null edits. (having to reject them manually doesn't feel right)
Unit tests:
* Use mocks to decouple unit tests (under tests/consequence/) to such a degree
that generating code coverage with --strict-coverage would be possible.
FIXME:
* When approving, tags related to moderator (and unrelated to original author)
shouldn't be applied (e.g. if moderator clicks Approve in Mobile view,
approved edit shouldn't be tagged as "Mobile edit" - unless, of course,
the original author also used Mobile view and this tag is in mod_tags).
* When modaction=merge results in null edit (because some other user previously
modified the target page to have exactly the same text),
edit of this other user shouldn't be tagged as [moderation-merged].
* "Move associated talk page" checkbox should work for intercepted page moves.
Note: this is easier to implement after MW 1.31 becomes deprecated,
allowing MovePageCheckPermissions hook to be replaced with TitleMove.