Background
The Apps team plans to explore if a personalized Wikipedia in Review feature that displays insights about a user's reading history, editing history, and donation history is engaging for App users, and inspires them to make a donation to the Wikimedia Foundation.
Requirements
- The personalized version of the slide should only display if the user has an article that has been viewed more than 2 times.
- If the user is not eligible for this slide, no slide should be shown (until Task for Collective Top Read slide is completed)
- List the title of the user's top read article
- Note how many times the article was opened
- List up to 3 top read articles if the user has them
- If two articles are tied for top-read, or in the list of top read, randomly select one
Nice to have
- Link the article title to the article
Designs
| Personalized |
Engineering Notes
- (data half) Upon app resume method (comment todo area mentioned in T376041), pull persisted slide item object for this slide identifier. If evaluated = no AND remote config does not have a personalized slide kill switch, extract the top 3 articles that were read the most. We should be able to lean on the fetchPageViewCounts() method created as a part of T370216. Save as metadata for that slide item. Then set “evaluated = yes”. Set display = “yes” if we have at least one article that was viewed >2 times.
- (UI half) Ensure that when we create the view models before presenting slides (see T376044), fetch the persisted model from previous bullet point. If display = yes, build a slide view model for this data (using the report model's metadata). Ensure slide view model is inserted into the correct order, and that associated collective "fallback" slide is NOT inserted.
