Page MenuHomePhabricator

Account setup: Integrate interest selector into suggested edits + propose tasks by interest (DE1.3.1)
Open, HighPublic3 Estimated Story Points

Description

User story & summary

As a new account holder, I want suggested edits matched to my selected interests so that the tasks I see are relevant to me.

Background & research

Parent task: T430058: [EPIC] Account Setup (DE1.3.1 - early onboarding)
Depends on the interest selector task: T432811: Account setup: Create interest selector and storage of interests (DE1.3.1)

The interest selector built in T432811 stores a set of articles/topics. This task connects that stored set to the suggested edits module on the newcomer homepage and to the suggested edits carousel, and defines what newcomers see when they have no stored interests, when their interests return nothing, and when they return a single result.

We should also refer back to T433151: [SPIKE] Investigate suggestion sources for interest picker when there is no seed article (DE1.3.1) as we implement this with real data, so that we have a better understanding on how often the empty pool might happen.

Design

Figma specs

Full account setup flow, including every action that leads to the newcomer homepage:

image.png (8,228×6,128 px, 3 MB)

Newcomer selected interests during account setup
Suggested edits on the newcomer homepage are drawn from those interests. The module counter reflects the size of the matched set ("1 of 4 suggestions"). The module's primary button stays "See all suggestions".

image.png (1,880×1,880 px, 399 KB)

Newcomer has no stored interests (skipped account setup)
Skipping can happen by closing the welcome screen (X on 1/3), or tapping "Go to your Home" on 3/3 without selecting any interest. In all two cases the newcomer lands on the newcomer homepage and the suggested edits module shows the whole unfiltered pool with the counter reflecting the full pool ("1 of 1,174,550 suggestions"). The module's primary button changes from "See all suggestions" to "Select interests".

image.png (5,170×2,228 px, 1 MB)

Stored interests return no suggestions
The module reuses the existing empty state copy: "No suggestions found" and "Select other interests or difficulty levels to find suggested edits." The primary button reads "Select interests".

image.png (1,712×3,732 px, 425 KB)
en.wikipedia.org_w_index.php_title=Special_Homepage&source=personaltoolslink&namespace=0(Pixel 9a) (1).png (824×1,848 px, 90 KB)

Stored interests return exactly one suggestion
The single suggestion is shown as-is, with the counter reading "1 of 1 suggestions". The set is not padded with random suggestions.

Reaching the interests dialog
"Select interests" opens the same interest selector UI used in account setup screen 3 of 3, with any stored interests pre-filled as chips and their related articles listed below. For a newcomer with no stored interests, the dialog opens empty with random articles listed. The dialog also reports the size of the resulting set ("4 suggested edits found"). The dialog is also reachable from the "Interests" filter in the suggested edits carousel.

image.png (2,904×2,060 px, 513 KB)
image.png (1,880×1,866 px, 444 KB)

6. Reaching the carousel
Regardless of which label the primary button shows, the suggested edits carousel remains reachable by tapping the suggestion card itself, or the arrow in the "Suggested edits" module header.


Acceptance criteria

For newcomers with stored interests

AC1

  • Given I selected interests during account setup
  • When I land on the newcomer homepage
  • Then the suggested edits module shows suggestions matched to my interests.

AC2

  • Given the suggested edits module is showing interest-matched suggestions
  • When I view the module
  • Then the primary button reads "See all suggestions"

AC3

  • Given I am in the suggested edits carousel
  • When I tap the "Interests" filter
  • Then the interest selector dialog opens with my stored interests pre-filled

AC4

  • Given I have changed my interests in the dialog
  • When I tap "Done"
  • Then the suggested edits set and its counter update to reflect the new interests

For newcomers with no stored interests

AC5

  • Given I skipped account setup (closed the welcome screen, or went to Home without selecting an interest)
  • When I land on the newcomer homepage
  • Then the suggested edits module shows the full unfiltered pool of suggestions and the counter reflects the total pool size

AC6

  • Given the suggested edits module is showing the unfiltered pool
  • When I view the module
  • Then the primary button reads "Select interests"

AC7

  • Given the suggested edits module is showing the unfiltered pool
  • When I tap "Select interests"
  • Then the interest selector dialog opens with no interests selected and random articles listed

Edge cases

AC8

  • Given my stored interests return no suggested edits
  • When I view the suggested edits module
  • Then I see "No suggestions found" and "Select other interests or difficulty levels to find suggested edits.", and the primary button reads "Select interests"

AC9

  • Given my stored interests return exactly one suggested edit
  • When I view the suggested edits module
  • Then that single suggestion is shown and the counter reads "1 of 1 suggestions", with no additional unmatched suggestions added

AC10

  • Given the suggested edits module is showing at least one suggestion, with or without stored interests
  • When I tap the suggestion card or the arrow in the module header
  • Then the suggested edits carousel opens

Event Timeline

KStoller-WMF moved this task from Needs Refinement to Needs Estimation on the Growth-Team board.

Change #1314894 had a related patch set uploaded (by Michael Große; author: Michael Große):

[mediawiki/extensions/GrowthExperiments@master] [DNM]: proof of concept for vue intereset-selector in OOUI

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

(proof of concept investigation only, not something ready to be merged)

  1. if people tap on the X they land on the Newcomer Homepage with (A) the default selection of suggestions as in production or (B) a selection of suggested edits based on the page where they initiated the account creation process (if page is not the Main Page)

Do we need to consider the places a user might initiate account creation here? e.g. If I was about to save my edit, and clicked X, I'd expect to go back to my editing session. I'm not sure on all the places you can initiate creating an account.

  1. if the account creation process was initiated on a page other than an article page (Main Page also excluded even if it counts as a article page) we display random suggestions ...

I'm curious about the random part. The purpose of the suggestion list is to display articles the user may be likely to add to their list of interests. Random pages are exceedingly unlikely to be of interest. At least on English Wikipedia, 5 random articles are likely to be something like 3 small rural villages and 2 sportspeople.

I wonder if we can do better than random for not much more effort, like is there perhaps an easy way to get some articles on big or important topics? It might make more sense to me if this list had, for example: Delhi, France, Rice, Elephant, Dandelion. I'm more likely to spot something I'm at least tangentially interested in, I think.

... below a multiselectlookup. the "Go your Home" button is default quiet as long as one interest is not picked.

Should it stop being quiet as soon as 1 interest is selected, or should we encourage more than one? (I see further down the implication is 3 articles?)

  1. if we opt for option A above we need to add inline validation. a warning once a 4th interest is being added, and an error on submit.

Why do we not want users to add more than 3 interests?

@Samwalton9-WMF FYI i've just realized that i posted my comment on the wrong task, sorry! this task is about bringing the 'interests' selector inside the 'suggested edits' module so that people can access their interests from their Newcomer Homepage too, and not only during account setup.

some more notes to hopefully make the task description more actionable, and open questions in bold:

  1. when people skip account setup, or have no interests inside the 'suggested edits' module we could show (A) random suggestions [[ URL | as we do in production ]] or (B) swap the 'see all suggestions' button with 'Select interests' button which opens the 'interests' selector.
    image.png (1,712×3,732 px, 431 KB)
    repurposing ux copy from production
    image.png (1,712×3,732 px, 424 KB)
  2. when there are interests selected the 'suggested edits' module should display easy tasks that are aligned with those interests.
    image.png (856×1,880 px, 219 KB)
    image.png (1,712×3,732 px, 417 KB)
  3. when there are no 'suggested edits' based on the expressed interests we could (A) show no suggestions or (B) prompt newcomers to add more interests.
    image.png (1,712×3,732 px, 424 KB)

when there are no 'suggested edits' based on the expressed interests we could (A) show no suggestions or (B) prompt newcomers to add more interests.

I wonder if we should also consider (C) show random suggestions along with a prompt to add more interests to receive more personalized suggestions.

when there are no 'suggested edits' based on the expressed interests we could (A) show no suggestions or (B) prompt newcomers to add more interests.

I wonder if we should also consider (C) show random suggestions along with a prompt to add more interests to receive more personalized suggestions.

yeah, we could do that. i was just worried about introducing too many changes to the 'suggested edits' module, and providing competing call to actions on the same module.

while playing around this is the current UX if there are now suggestions avaiable for the newcomer selected topics.

en.wikipedia.org_w_index.php_title=Special_Homepage&source=personaltoolslink&namespace=0(Pixel 9a).png (824×1,848 px, 243 KB)

en.wikipedia.org_w_index.php_title=Special_Homepage&source=personaltoolslink&namespace=0(Pixel 9a) (1).png (824×1,848 px, 90 KB)

Noting that during estimation we noticed that this task was too complex to be done as a whole. It will be split into backend work and frontend work.

A child task to address the backend work which will be pulled into Q1 Sprint 5 will be created by @Michael, for discussion during backlog refinement.

Test wiki created on Patch demo by MGrosse-WMF using patch(es) linked to this task:
https://fcfcc08b07.catalyst.wmcloud.org/w/

KStoller-WMF set the point value for this task to 3.Mon, Aug 24, 3:47 PM
KStoller-WMF moved this task from Needs Estimation to Up next Sprint on the Growth-Team board.

Not a blocker for minimal module migration, but noting that we'll need to work the interest selector into T432037: Register Suggested Edits Module with PersonalDashboard once it lands in production. That could be a follow up task once this is resolved.

Change #1338883 had a related patch set uploaded (by Sergio Gimeno; author: Sergio Gimeno):

[mediawiki/extensions/GrowthExperiments@master] NewcomerTasks: Add interest filters to the growth tasks API client

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

Change #1338884 had a related patch set uploaded (by Sergio Gimeno; author: Sergio Gimeno):

[mediawiki/extensions/GrowthExperiments@master] SuggestedEdits: Add the interest selector for the onboarding experiment

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