Index: trunk/extensions/FlaggedRevs/specs.txt |
— | — | @@ -21,39 +21,67 @@ |
22 | 22 | (unvandalized -> reviewed for accuracy -> featured article etc.) can |
23 | 23 | be represented correctly. |
24 | 24 | |
| 25 | +###Status: Works so far |
| 26 | + |
25 | 27 | Each tag has certain attributes: |
26 | 28 | - tag comments: Should the tag support a comment field which explains |
27 | 29 | why the revision was tagged in a certain way? |
| 30 | + |
| 31 | +###Status: every tag has a comment so far |
| 32 | + |
28 | 33 | - permissions: Which user groups have permission to set the tag? |
| 34 | + |
| 35 | +###Status: for overall flagging permissions can be set |
| 36 | +###Todo: have it on a per flag basis |
| 37 | + |
29 | 38 | - stylesheet and UI: not requiring explicit configuration, each tag |
30 | 39 | should have a stylesheet class and MediaWiki: namespace message(s) |
31 | 40 | associated with it, to allow for differences in visual and textual |
32 | 41 | representation |
| 42 | + |
| 43 | +###Status: namespace messages are there |
| 44 | +###Todo: css classes and ids |
| 45 | + |
| 46 | + |
33 | 47 | - implicit tagging: should this tag be implicitly set by any user |
34 | 48 | within the associated group when editing? (this will be used for the |
35 | 49 | "non-vandalized" tag) |
36 | 50 | |
| 51 | +###Todo: do it |
| 52 | + |
37 | 53 | A generic change is required to allow for automatic membership in a |
38 | 54 | user group when a user has more than X edits and is older than Y days. |
39 | 55 | |
| 56 | +###Todo: do it |
| 57 | + |
| 58 | + |
40 | 59 | There should be a configuration option which associates a namespace with |
41 | 60 | - a tag-array |
42 | 61 | - a minimum level in that array. |
43 | 62 | |
| 63 | +###Status: minimum level per tag, not namespace |
| 64 | +###Todo: do it |
| 65 | + |
44 | 66 | This option determines that, by default, the revision shown from this |
45 | 67 | namespace will be the one from that array which is also >= the minimum |
46 | 68 | level. So, for instance, one could determine that pages in the article |
47 | 69 | namespace need to be at least checked for vandalism, or at least |
48 | 70 | reviewed for accuracy. |
49 | 71 | |
| 72 | +###Status: nearly there on a per tag level, last bugs being fixed |
| 73 | + |
50 | 74 | As a high priority wishlist item, these view options should also be |
51 | 75 | applicable on a per-page basis. The existing protection UI should be |
52 | 76 | expanded for this purpose. Implementation (and schedule) of this item |
53 | 77 | will depend on overall implementation progress. |
54 | 78 | |
| 79 | +###Todo: do it |
| 80 | + |
55 | 81 | Whichever view one ends up with, we expect that the top of the page |
56 | 82 | indicates this, and allows you to switch & get diffs to other views. |
57 | 83 | |
| 84 | +###Todo: done |
| 85 | + |
58 | 86 | Because MediaWiki currently does not show templates and revisions in |
59 | 87 | time synchronization, this behavior has to be fixed for old revisions. |
60 | 88 | When one has expressed a preference for a revision with a specific |
— | — | @@ -61,6 +89,9 @@ |
62 | 90 | it will be shown together with the most recent equally tagged |
63 | 91 | templates if they exist, otherwise with the most recent ones. |
64 | 92 | |
| 93 | +###Status: shown with most recent ones |
| 94 | +###Todo: to it for old revs |
| 95 | + |
65 | 96 | Example: On a page like the Main Page, which includes many templates, |
66 | 97 | one would typically want to have an unvandalized view of the entire |
67 | 98 | construction. The Main Page itself rarely changes, but because the |
— | — | @@ -69,26 +100,42 @@ |
70 | 101 | an older version, however, the templates would be shown as they were |
71 | 102 | at that date&time. |
72 | 103 | |
| 104 | +###Todo: do it |
| 105 | + |
73 | 106 | It is crucial that queries for revision lookup are highly performant; |
74 | 107 | we should aim for a performance impact of less than 10% on uncached |
75 | 108 | pageviews with a revision tag preference. Needless to say, the feature |
76 | 109 | needs to interact correctly with Squid proxy caching. |
77 | 110 | |
| 111 | +###Todo: comes at the end |
| 112 | + |
| 113 | + |
78 | 114 | Tagging revisions should be possible from three places: |
79 | 115 | - when editing (with the help of a collapsible diff) |
80 | 116 | - when looking at diffs |
81 | 117 | - when looking at revisions without any prior or later tags. |
82 | 118 | |
| 119 | +###Status: mostly done |
| 120 | + |
83 | 121 | A tag can only be set with reference to a diff to the last version |
84 | 122 | that has the same tag. The Special:Recentchanges tool should be |
| 123 | + |
| 124 | +###Status: on any diff |
| 125 | +###Todo: limit to last version |
| 126 | + |
85 | 127 | customizable to have such a diff link to the last version with a given |
86 | 128 | tag. It is desirable that this view also includes an icon that |
87 | 129 | indicates the state of the logged revision (derived from the tag |
88 | 130 | stylesheets). |
89 | 131 | |
| 132 | +###Todo: do it |
| 133 | + |
90 | 134 | Wishlist items for the future include things like mass vandalism |
91 | 135 | review and advanced queries. I also have some ideas for phase II of |
92 | 136 | the project, which I would love to see implemented before the tool is |
93 | 137 | switched on on the English Wikipedia, but this will wait until phase I |
94 | 138 | and any adjustments needed for its operations are successfully |
95 | 139 | completed. |
| 140 | + |
| 141 | +###Extras: Logging |
| 142 | + |