Need: To improve 2ColConf we would like to know how it is used and how it does compared to the current conflict resolvent page
GENERAL:
- All following metrics should be collected together for each conflict and matchable to each other. Events should be in the order they happened in. So the format ideally would be:
- If applicable, metrics should be collected for the old UI as well as for the 2ColConf
- Infos on the conflict (for old and new version)
- Namespace of page the conflict happened on (Q: "How does behavior on talkpages differ from articles?") | should be a STRING
- Amount of conflicting text (as characters or words) (Q: "How does behavior differ between huge or small conflicts?") | should be a INTEGER
- User behavior: (only partly applicable)
- Text input actions to the Editor (could be just the amount of keypresses or - editied) (Q: "Did people actually use the possibility to do edits in the editor?") | should be an INTEGER
- Filters used (Q: "Do people use the filter options? Do they always switch to a particular one (which could be default then)"). Should be an ARRAY with STRING or possibly an ARRAY with OBJECTS with STRING and relative timestamp as INTEGER
- Leaving the page : Do they… (for old and new version) | should be a STRING
- Use the save button (Which would indicate the feature helped them)
- Do they use the Cancel button
- Do they navigate away via the browser (Back, Tab Close etc.)
Outcome
We've implemented this feature, and here is an accounting of the data we record:
- EventLogging: EditConflict schema.
- User ID, and name or IP address
- Calculated user attributes: is anonymous, edit count
- Page ID, namespace, and title
- Revision ID of the page's latest, conflicting "other" revision
- EventLogging: TwoColConflictConflict schema
- Was this the legacy or TwoColConflict workflow?
- Page namespace
- Revision IDs for the previous edit and conflicting "other" edit
- Literal wikitext "your" edit as entered into the edit text box
- Statsd MediaWiki-core "edit.failures.conflict"
- Count of edit failures due to a conflict. Segmented by namespace (some namespaces are omitted) or user edit count bucket
- Resolved conflict count, segmented by namespace or user edit count bucket
- Statsd MediaWiki.TwoColConflict
- Pageload count (can this be more than the number of conflicts?). Segmented by namespace, and by user edit count bucket
- Conflicts resolved, segmented by namespace or user edit count bucket
This matches our original requirements as follows:
- All following metrics should be [...] matchable to each other.
- This is possible for the EventLogging data, but not for the Statsd segments.
- If applicable, metrics should be collected for the old UI as well as for the 2ColConf
- Namespace of page the conflict happened on
- Not always joinable with every other metric
- Currently an integer, but the string label could be calculated if desired.
- Amount of conflicting text (as characters or words)
- We have logged the raw text, which if untruncated gives us enough information to backfill. But we do not record the conflict size, yet.
- Text input actions to the Editor (could be just the amount of keypresses or - edited)
- Filters used
- Use the save button
- We can assume that a successful conflict = 1 save button click.
- Do they use the Cancel button
- Not explicitly tracked, but we can assume (1 - percent resolved) gives us the number of abandoned conflict resolutions.
- Do they navigate away via the browser (Back, Tab Close etc.)