Background:
Investigate how and where to store the association between an edit and a CampaignEvents event in MediaWiki.
When a user indicates that their edit is related to a campaign event, we need to persist this association in a way that allows efficient querying and reporting later.
We want this data to be able to surface contribution data on pages like the Watchlist, RecentChanges, etc in the future too.
More information on data usage:
What data do we want to collect on edits, both in the short-term and long-term?
- Shorter-term:
- Number of articles created through an event
- Number of articles improved through an event
- Longer-term (all maybes):
- Words added
- Bytes added
- References added
- Commons uploads
- Number of reverts
- Number of edits by article topic (through LiftWing)
- Quality score of articles edited/created (through LiftWing)
- Number of 'thanks' through event edits
- Number of edits by newcomers (i.e., first edits were through the event)
- Number of edits by returning editors (i.e., editors who made no edits within X period, such as 30 days or 90 days)
Where do we show the data in the UI, both in the short-term and long-term?
- Special:EventDetails (Contribution tab - this would be the full breakdown of info)
- Maybe the event page - I can imagine people wanting the impact data being visible on the actual event page rather than only found through EventDetails - would there be a way to transclude that tab in the future? We don't need to have an answer now, but it is something to consider.
- Special:Watchlist - a tag/some way of identifying that the edit is from the event, and ideally it would link to the event page/contributions tab
- Special:RecentChanges - a tag/some way of identifying that the edit is from the event, and ideally it would link to the event page/contributions tab
- Maybe in the Impact module on the Newcomer Homepage (i.e., expand it to also show data from collaborative contributions)
- Maybe in optional Echo notifications (for example: "X event has had 50 new articles created in the last 24 hours. Come join it!")
What kinds of reports will people want in the future related to the data?
- Participant demographics - number of newcomers, number of experienced editors, affiliate membership, aggregate PII data, etc
- Participant impact - % of participants who made at least one edit during the event, newcomer retention rate (i.e., what % of newcomers continued to edit 30/60/90 days after event)?, number of thanks given through event edits
- General contribution impact - number of articles created, number of articles improved, number of words added, number of bytes added, number of references added, number of Commons uploads
- Topical impact - number of edits/articles worked on that were 'topics for impact' (such as gender, underrepresented regions)
- Edit quality - number of reverts, quality scores related to article quality
- Reader impact - number of pageviews for articles edited/improved
Acceptance Criteria:
- This task is focused on identifying:
- The data structure required (e.g. revision ID and event ID).
- Any relevant constraints or indexing considerations.
- Where to store the data
- Consider what would be the most flexible approach, since we cannot predict everything in advance
- Consider how we can potentially support many different types of edits (such as a moderator backlog drive that has people reverting edits or deleting pages - example, NPP backlog drives)
- Consider how we can surface contribution data on pages like the Watchlist, RecentChanges, etc, so that people can see that an edit is a part of an event
- Consider how we may want to handle reverts
- We want to display reverted edits rather than having them "disappear" since organizers want to be able to track both legitimate and potentially illegitimate reverts associated with their events so that they can identify gaps in editing knowledge among their participants or potential discrimination/moments to defend edits
- We may need to check in with Editing team