Page MenuHomePhabricator

Create top articles read for logged-in users
Closed, ResolvedPublic2 Estimated Story Points

Description

Background

This year we would like to offer logged-in users their top read articles for Year in Review.

Requirements

  • User must be logged-in
  • This slide is agnostic of primary language
  • User should see the top 5 articles they visited most frequently
  • Use placeholder image until contractor provides new image
  • [Added Oct 14] Only show this slide if the user has a minimum of 1 article that they have visited multiple times.
    • If they only have 1 article they've visited more than 1 time, then we just show that 1 article. If they only have 2 articles they've visited multiple times, we show those two articles, etc.
    • If they do not have at least 1 article the've visited multiple times, hide the slide.

Engineering Notes

  • Create a new slide data controller for populating and persisting this new slide data. Data can be fetched from the WMFPageViewsDataController's fetchPageViewCounts method. Ensure the top 5 articles are persisted with this slide data.
  • Create new V3 slide
    • Lean on WMFYearInReviewSlideStandardViewModel + WMFYearInReviewSlideStandardView for this. Ensure new slide is only inserted when V3 developer setting is enabled (slides are inserted in the WMFYearInReviewViewModel).
  • Ensure sharing individual slide still works well
Test notes
  1. Delete all Wikipedia apps on device. Fresh install the app (White icon, 7.8.5). Ensure device is logged in.
  2. Navigate to a bunch of different articles varying amounts (note roughly which ones had the most visits)
  3. Enable YIR v3 in dev settings
  4. Navigate to profile
  5. Year in review
  6. Scroll through the slides until you see Your Top Articles slide
  7. Ensure they align with step 2
  8. Feel free to repeat 1-7 as needed to ensure changing of rankings

Event Timeline

Tsevener set the point value for this task to 2.Aug 26 2025, 2:05 PM
Tsevener triaged this task as Medium priority.Aug 27 2025, 10:35 PM

Kicked this off in Staging 7.8.1 (100) for design review -

Test Steps:

  1. In Staging / US / English / logged in
  2. Enable YIR v3 in dev settings
  3. Navigate to a bunch of different articles varying amounts (note roughly which ones had the most visits)
  4. Toggle YIR data collection off/on in settings
  5. Navigate to profile
  6. Year in review
  7. Scroll through the slides until you see Your Top Articles slide
  8. Ensure they align with step 3
  9. Feel free to repeat 3-4 as needed to ensure changing of rankings

hi @Tsevener, what do you mean in step #5 re: Toggle YIR data collection off/on in settings? do you mean the YIR toggle? if so, I don't see that on the screen even though I followed steps 1-4:

Settings 7.jpeg (2×1 px, 513 KB)

also, to clarify — I thought we wanted to show the top articles that the user read the longest, not visited the most frequently — theoretically there could be an article you visit just once that you read for longer than a different article you visit multiple times but don't read for very long. @JTannerWMF can you confirm?

TY

Hi @SChekfa-WMF !

Are you on staging (black label)? That's also one of the testing requirements, and you may have to background/foreground between. If you still have issues feel free to message on Slack and I can help debug :)

Waiting on Jaz's answer for the article stuff, the AC said "visited most frequently" so that's what we went with, and I think the same logic that we had last year, too

Per sync meeting with @SChekfa-WMF, design on this looks good. I will keep this in blocked while we confirm what we're counting here. Are we counting articles that had the most visits, or are we counting articles that were read for the longest amount of time? @JTannerWMF

Visited most frequently. Shay often tells us session length is a tricky metric, and for the global slides we look at pageviews not time spent so I want to use the same logic here.

@Tsevener did ya'll implement a minimum requirement for showing this slide? (replicating on Android)

@HNordeenWMF Only that there is at least 1 article to show, otherwise the slide is not inserted:

Screenshot 2025-09-24 at 8.03.18 AM.png (1×564 px, 264 KB)

HNordeenWMF renamed this task from Create top articles read for logged-in users to Create top articles read for logged-in users.EditedOct 14 2025, 9:27 PM
HNordeenWMF updated the task description. (Show Details)

Moving back. Please check that this behavior is happening on iOS (please update if it's not):

  • [Added Oct 14] Only show this slide if the user has a minimum of 1 article that they have visited multiple times.
    • If they only have 1 article they've visited more than 1 time, then we just show that 1 article. If they only have 2 articles they've visited multiple times, we show those two articles, etc.
    • If they do not have at least 1 article the've visited multiple times, hide the slide.
Tsevener added a subscriber: GOlson-WMF.

Hi @HNordeenWMF,

Should all articles in the copy have 2+ visits?

Cat - visited 2 times
Dog - visited 1 time
Bird - visited 1 time

Does the slide list only Cat, or all of these articles?

ABorbaWMF subscribed.

Appears to be fixed on 7.8.5 (5867)

Tested on iPhone 16 on iOS 26, iPad 12.9 on iPadOS 26, and iPhone 11 on iOS 18. Tested on all themes

HNordeenWMF claimed this task.