Background
The iOS team is building the 2025 Year in Review to get user testing feedback to make improvements before release on 1 December 2025. There are four main flows with variants depending if users are editors and depending if users are donors. This task is to share each flow.
Requirements
Logged-In EN Wiki
- ✅ Receives full page feature announcement
- ✅ Hours spent/Articles read in 2025 (EN)
- ✅ EN Top Articles
- ✅ Your Top Articles
- ✅ Reading Patterns
- ✅ Categories
- ✅ Geo
- ✅ Articles Saved
- ✅ # of articles edited
- ✅ Viewed Edits
- ✅ Donor slide
- ✅ Personal Summary
- ✅ Survey
- ✅ End of Flow
Caveats
- ✅ If users does not have more than 5 articles in their history, more than 1+ minutes looking at articles, they should see the collective EN version "We spent 2,423,171,000 hours reading"
- ✅ If users have 0 edits fall back to EN collective changes made this year and collective bytes added
- ✅ If user has 0 articles saved, fall back to collective reading lists slides
- ✅ Hide 'Articles Edited' on summary slide if edit=0
- ✅ If user donated in app show icon unlocked, if user has not donated show non donor unlock custom icon CTA slide
Logged-Out EN Wiki
- ✅ Receives full page feature announcement
- ✅ Sees login/account creation prompt and rejects
- ✅ Collective hours spent (EN)
- ✅ EN Most popular articles
- ✅ Collective # of reading lists on apps
- ✅ EN Wikipedia # of articles changed
- ✅ EN Bytes added
- ✅ Donor slide
- ✅ Summary (EN Logged Out)
- ✅ Survey
- ✅End of Flow
Caveats
- ✅ Summary slide should be for EN Wikipedia collectively
Logged-In non-EN Wiki
- ✅ Receives full page feature announcement
- ✅ Hours spent/Articles read in 2025 (Non-EN)
- ✅ Collective articles viewed on apps Non-EN
- ✅ Your Top Articles
- ✅ Reading Patterns
- ✅ Categories
- ✅ Geo
- ✅ Articles Saved
- ✅ # of articles edited
- ✅ Viewed Edits
- ✅ Donor slide
- ✅ Personal Summary
- ✅ Survey
- ✅ End of Flow
Caveats
- If users does not have more than 5 articles in their history, more than 1+ minutes looking at articles, they should see the collective non-EN version as a fallback "Wikipedia was available in more than X languages"
- If users have 0 edits fall back to non-EN mobile apps collective changes made this year and times Wikipedia was edited per minute
- If user has 0 articles saved, fall back to collective reading lists slides
- Hide 'Articles Edited' on summary slide if edit=0
- If user donated in app show icon unlocked, if user has not donated show non donor unlock custom icon CTA slide
Logged-Out non-EN Wiki
- ✅ Receives full page feature announcement
- ✅ Sees login/account creation prompt and rejects
- ✅ Collective # of languages available
- ✅ Collective # of articles viewed by app users
- ✅ Collective # of reading lists on apps
- ✅ # of edits made by app editors
- ✅ Collective Times per minute articles were edited
- ✅ Donor slide
- ✅ Summary (Non-En Logged Out)
- ✅ Survey
- ✅ End of Flow
Caveats
- Summary slide should be for Non-EN Wikipedia collectively
Engineering Notes
All slide changes should be made in WMFYearInReviewViewModel, where slide view models are instantiated and inserted into the correct flow. Ensure the V2 flow (which is currently inside of a developer settings flag) remains unchanged, and all flow updates here are set up within a V3 developer settings flag conditional.
QA Notes
Can be tested in 7.8.5 (TestFlight Wikipedia, latest build).
Logged out EN Wiki:
- Ensure any existing app you have on device, you log out of.
- Delete app
- Install through Testflight
- Select EN app language in onboarding
- Go to developer settings, select YiR V3
- Test Logged out EN Wiki flow in task description.
Logged-Out non-EN Wiki
- Repeat previous steps 1-6, but select non-EN language in step 4. Test Logged-Out non-EN Wiki flow in task description in step 6.
Logged in EN Wiki:
- Ensure any existing app you have on device, you log out of.
- Delete app
- Install through Testflight
- Select EN app language in onboarding
- Populate articles. Visit 6+ articles. Visit articles from Places tab. Save 5 articles.
- Go to developer settings, select YiR V3
- Test Logged-In EN Wiki in task description.
Logged-In non-EN Wiki
- Repeat previous steps 1-7, but select non-EN language in step 4. Test Logged-In non-EN Wiki flow in task description in step 7.
