Inside the project update of the [[ https://meta.wikimedia.org/wiki/Community_Wishlist_Survey_2021/Real_Time_Preview_for_Wikitext | Real Time Preview wish]], the document posed some open data questions that would inform the direction of the wish and help us measure its success once we release the changes.
The scope of this ticket can be limited to:
- Implementing the tracking if it does NOT exist
- Creating the place where a person can pull that data from a dashboard if/once it DOES exist
For the following data question which will help deepen our understanding of the problem:
How many 2010 wikitext editors preview their changes?
Does previewing changes lead to less reverts?
---
=== New instrumentation
//The list below should contain an exhaustive list of the new events y'all will be implementing.//
- "Action" = the action that will cause an event to be emitted.
- "Event name" = the proposed event name
- "Schema" = [[https://schema.wikimedia.org/repositories/secondary/jsonschema/analytics/legacy/visualeditorfeatureuse/current.yaml | VisualEditorFeatureUse]] — the schema(s) within which said event will be logged
The event will be of the form `{feature: "preview", action: x}` where `x` is one of:
- `preview-nonlive` – The main 'Preview' button was clicked to trigger a non-live preview (i.e. full-page reload).
- `preview-live` – The main 'Preview' button was clicked to trigger a live preview.
- `preview-realtime-on` – The WikiEditor 'Preview' button was clicked to turn the preview panel on.
- `preview-realtime-off` – The WikiEditor 'Preview' button was clicked to turn the preview panel off.
- `preview-realtime-inuse` – Fired without user interaction when the WikiEditor preview feature is already on when the editing form is opened.
=== Process
|Step | Person(s) responsible|Description|Status
|---|---|---|---
|1. | Community Tech | Populate the `===New instrumentation` table with proposed changes, once defined | !!{icon fa-check} done!!
|2. | @mneisler + @dlynch | Review the "Event names" Community Tech is proposing to introduce| !!{icon fa-check} done!!
|3. | Community Tech | Implement the instrumentation changes defined above | !!{icon fa-check} done!!
|4. | Editing Team| Code review the instrumentation changes Community Tech will have implemented | !!{icon fa-check} done!!
|5. | Community Tech| Verify newly instrumented events are being emitted as expected by clients | !!{icon fa-check} done!!
|6. | Product Analytics| Verify newly instrumented events are being logged in database as expected, once the new instrumentation has landed in production. | !!{icon cog spin} in progress!!
|6. | Product Analytics| Verify newly instrumented events are being logged in database as expected, once the new instrumentation has landed in production. |
|7. | Community Tech | Update schema documentation with the events spec'd in this task once they have been verified to be implemented as expected. //Read: clients are emitting events as expected and said events are being logged in the database as expected as well.//|