Page MenuHomePhabricator

CU 2.0: Implement a GuidedTour for Special:Investigate onboarding
Closed, ResolvedPublic4 Estimated Story PointsJul 28 2020

Description

Goal

User story: As a user I would like to have onboarding help for the new special page so that I can understand and use the new features offered.

We'd like to use the GuidedTour extension to onboard users to Special:Investigate.

@dmaza's investigation is on T254314: Investigate GuidedTour usage for Special:Investigate [4Hours]. Copied below:

Here is a compiled list of features that I think would be useful in our case. (steps ~ popups)

  • Tours can be started on the server or client side. A cookie can be set to start the tour on the next page load.
  • You can start a tour in any specific step ( I see this working for us to trigger different steps depending on the tab )
  • Steps don't necessarily have to be connected ( we can have various steps for one tab and not be connected to the steps in a different tab)
  • The order of steps can be set conditionally or re-arranged. They can also be skipped conditionally
  • There is no need to have a hard dependency on the GuidedTour extension (and we shouldn't).
  • There are config options and events we can use to personalize the experience

I want to point out that the extension documentation is really good and the examples give you a good picture of what can be done

Links
https://www.mediawiki.org/wiki/Extension:GuidedTour
https://www.mediawiki.org/wiki/Extension:GuidedTour/Write_an_extension_tour
https://doc.wikimedia.org/GuidedTour/master/js/#!/api/mw.guidedTour

Other links for reference
https://github.com/wikimedia/mediawiki-extensions-WikimediaMessages/blob/master/modules/rcfilters-highlight-tour.js
https://github.com/wikimedia/mediawiki-extensions-WikimediaMessages/blob/master/modules/rcfilters-intro-tour.js

Starting a tour thru a hook. This tour is in core and the dependency on the extension is not allowed (I don't think we need this but just in case)
https://github.com/wikimedia/mediawiki-extensions-WikimediaMessages/blob/master/includes/WikimediaMessagesHooks.php#L1424

Acceptance criteria:
Note:

For a message in T252984, a popup needs to be attached to an element inside the ellipsis menu. The page will need to load with the ellipsis menu open (for the first time).

Details

Event Timeline

Niharika triaged this task as Medium priority.Jun 17 2020, 6:01 AM
Niharika created this task.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJun 17 2020, 6:01 AM
Niharika updated the task description. (Show Details)Jun 17 2020, 6:01 AM
Prtksxna updated the task description. (Show Details)Jun 17 2020, 3:16 PM
Niharika updated the task description. (Show Details)Jun 17 2020, 4:13 PM
Niharika updated the task description. (Show Details)Jun 17 2020, 4:15 PM
ARamirez_WMF set the point value for this task to 4.Jun 17 2020, 4:17 PM
Niharika updated the task description. (Show Details)Jun 17 2020, 4:20 PM
ARamirez_WMF set Due Date to Jun 30 2020, 4:00 AM.Jun 17 2020, 5:12 PM
ARamirez_WMF changed the subtype of this task from "Task" to "Deadline".
dmaza claimed this task.Jun 23 2020, 12:21 PM
dmaza moved this task from Ready to In Progress on the Anti-Harassment (The Letter Song) board.
dmaza removed dmaza as the assignee of this task.Jun 24 2020, 8:54 PM
dmaza moved this task from In Progress to Ready on the Anti-Harassment (The Letter Song) board.
dbarratt removed dbarratt as the assignee of this task.
dbarratt moved this task from Ready to In Progress on the Anti-Harassment (The Letter Song) board.
dbarratt moved this task from In Progress to Ready on the Anti-Harassment (The Letter Song) board.
dbarratt added a subscriber: dbarratt.
dbarratt claimed this task.Jun 25 2020, 8:35 PM
dbarratt moved this task from Ready to In Progress on the Anti-Harassment (The Letter Song) board.

Change 607898 had a related patch set uploaded (by Dbarratt; owner: Dbarratt):
[mediawiki/extensions/CheckUser@master] Create guided tour for Special:investigate

https://gerrit.wikimedia.org/r/607898

dbarratt added a subscriber: Prtksxna.

@Prtksxna What should trigger the guided tour? Should we add a button? or should it be triggered on page load?

@Prtksxna What should trigger the guided tour? Should we add a button? or should it be triggered on page load?

It should start automatically on the page load, but we should trigger it just once. If someone dismisses it or finishes the entire tour we don't show it again. (related T256586)

dbarratt added a comment.EditedJul 14 2020, 1:22 AM

To get the tour back after closing it, you can use something like this in your console:
Initial Tour:

new mw.Api().saveOption( 'checkuser-investigate-form-tour-seen', null );

Investigate Tour:

new mw.Api().saveOption( 'checkuser-investigate-tour-seen', null );

which will reset your user preference to the default value.

or even batter, as a single command:

new mw.Api().saveOptions( { 'checkuser-investigate-tour-seen': null, 'checkuser-investigate-form-tour-seen': null } );

@Prtksxna I have a couple of questions about this, from T252984;

Checking multiple users and IPs? (attached to the Multiselect widget on the main form)
Add up to N User names and IPs and get all the information at one place. Don’t worry, we’ll create a separate CheckUser log for each of them.

  • Should N be replaced by the actual limit?
  • "at one place" sounds odd to me - I'd expect "in one place". It might just be a US English thing though. @aezell Do you have any thoughts?
dbarratt added a comment.EditedJul 14 2020, 2:34 PM

I also thought it should be "User names or IPs" (instead of and). I also wonder if it is "Usernames" or "User names" ?

@Tchanders @dbarratt, your suggestions make sense! Yes we should replace N by the actual limit:

Add up to N (to be replaced by the real limit) Usernames or IPs and get all the information in one place. Don’t worry, we’ll create a separate CheckUser log for each of them.

I've updated T252984 too.

ARamirez_WMF changed Due Date from Jun 30 2020, 4:00 AM to Jul 28 2020, 4:00 AM.Jul 15 2020, 5:10 PM

Change 607898 merged by jenkins-bot:
[mediawiki/extensions/CheckUser@master] Create guided tour for Special:Investigate

https://gerrit.wikimedia.org/r/607898

@Prtksxna @Niharika @dbarratt

For "Matching User Agents?", I find only one cell is highlighted, even if there are other matching rows.


You have to actually hover over the highlighted cell for the highlighting to work as usual. Will this be confusing? Or are we expecting users to hover over it to see how it works?

How "robust" do we want the tour to be if users interact with other parts of the page during the tour?

For example, if you pin a cell the tool menu won't show in "Need more context?" and "Narrowing your investigation?":

If you reorder the table while a cell is highlighted, you can be left with a cell permanently highlighted (until you refresh the page): e.g.
Start:


Reorder IP column:

Cell stays highlighted:

If you click "Block" before you get to the "Want to block?" step, the popup is not in its usual place:


Usual place:

There are at least a few other similar things (all fairly minor).

Might we want to grey the background of the page to prevent users interacting with anything but the guided tour (like we do, for example, in The Wikipedia Adventure (click "Start the Adventure")). Or will that undermine the point of the guided tour?

Moving this to design review so that @Prtksxna can summarize the changes we should make re @dom_walden's findings. Thanks everyone for discussing this!

Based on how much time this would take, I suggest two approaches:

Add Overlay

The overlay solves most (if not all) of the problems and is a config in GuidedTours so should be easy to add. On the other hand not being able to interact with the UI can be frustrating. There is a higher chance that the user would dismiss the entire tour just so that they can interact with the tool.

Make adjustments to when and how the tour shows up

This is in the direction of what @dom_walden was asking:

How "robust" do we want the tour to be if users interact with other parts of the page during the tour?

Looking at some of the issues from above:

For example, if you pin a cell the tool menu won’t show in “Need more context?” and “Narrowing your investigation?“

The popup should only show up when the UI element is there. Or force the UI element to be visible so that people are able to make that association.

If you reorder the table while a cell is highlighted, you can be left with a cell permanently highlighted (until you refresh the page)

This can be ignored in my opinion. It is a one time issue that occurs in a specific case. Once the tour is done it can never happen again.

If you click “Block” before you get to the “Want to block?” step, the popup is not in its usual place:

The popup should only show up if its in the order, otherwise it should remain hidden. And if it is in order, it should show up in the right place.

During estimation we decided to go with the overlay T258616: CU 2.0: Add an overlay to the GuidedTour
We'll also be adding a restart tour link on the Special:Investigate page T256586: Special:Investigate: Onboarding: Restart tour and help links

Niharika closed this task as Resolved.Jul 31 2020, 10:22 PM