Background
The Because You Read module surfaces article recommendations based on the most recent article the user has read using the MoreLike API. It provides 3 article cards in a horizontal scroll. The reason label identifies the article is being triggered based on the users reading history.
Every For You card shares the same persistent chrome: Wikipedia logo (top left), Community tab access, language switcher dropdown (showing user-configured languages + link to language settings; changing language refreshes the module content in the selected language without leaving the module), and notification bell. The bottom navigation bar is always visible.
The three-dot more menu on each card surfaces four options: Save, Share, Hide module, and Customize interests.
Standard card structure: reason label (why the user is seeing this card) → article title → card position indicator (e.g. 2/3) → three-dot more menu → body text excerpt.
User Story
As a Wikipedia reader, after I finish reading an article I want to see related article suggestions based on what I just read, so that I can continue exploring topics that interest me without having to search.
Requirements
- ✅ The module selects the user's most recently read article (for more than 1 minute)as the basis for recommendations.
- ✅ [four] recommended article cards are displayed in a horizontal stack.
- ✅ The reason label on each card reads 'Because you read [Article Title]'.
- ✅ Each card displays: reason label, recommended article title, card position indicator (e.g. 1/3), three-dot more menu, and a short text excerpt (first paragraph of article).
- ✅ Note: 3-dot menu will be built on T419626: [M] For You Feed: Shared Card Chrome & Navigation
- ✅ The article's top image is used as a full-bleed background. If no image exists, a gradient background is shown.
- ✅ Tapping a card navigates the user to the full recommended article.
- ✅ If the user has no reading history, this module is hidden from the feed until they've read at least one article.
- Exclude disambiguation pages and main page.
Design
Derived Requirement
Ensure the For You Feed displays a Continue Reading module that prioritizes the user’s most recently read article after more than 1 minute of reading time and optionally displays up to two most recently saved reading list articles, each containing the appropriate reason label, article title, card position indicator, three-dot more menu, excerpt, and article image or gradient background fallback.
Ensure tapping any Continue Reading or reading list card navigates directly to the associated article, the module displays persistent feed chrome elements including language switching without leaving the module, and the three-dot menu provides Save, Share, Hide module, and Customize interests options.
Ensure the Continue Reading module is hidden when the user has no qualifying reading history and no reading list items, and displays only the Continue Reading card when no reading list articles exist.
Test Steps
Test Case 1: Ensure the first Continue Reading card displays the most recently read article
- Log in to Wikipedia with a user account that has recently read multiple articles for longer than 1 minute.
- Navigate away from the most recently read article.
- Open the For You Feed.
- Locate the Continue Reading module.
- Verify the first card corresponds to the most recently read article.
- ✅❓❌⬜ AC1: The first card always displays the article most recently read for more than 1 minute.
Test Case 2: Ensure the Continue Reading card displays all required metadata
- Log in with a user account that has qualifying reading history.
- Open the For You Feed.
- Locate the first Continue Reading card.
- Verify the card displays the “Continue reading” reason label.
- Verify the card displays the article title.
- Verify the card displays the card position indicator.
- Verify the card displays the three-dot more menu.
- Verify the card displays a short article excerpt.
- ✅❓❌⬜ AC2: The Continue Reading card displays the reason label, article title, card position indicator, three-dot more menu, and short excerpt.
Test Case 3: Ensure reading list cards display when saved articles exist
- Log in with a user account containing at least three saved reading list articles.
- Open the For You Feed.
- Locate the Continue Reading module.
- Verify additional cards appear after the Continue Reading card.
- Verify no more than two reading list cards are displayed.
- Verify the displayed reading list cards correspond to the most recently saved articles.
- ✅❓❌⬜ AC3: Up to two reading list cards are displayed using the user’s most recently saved reading list articles.
Test Case 4: Ensure reading list cards display required metadata
- Log in with a user account containing saved reading list articles.
- Open the For You Feed.
- Locate a reading list card within the Continue Reading module.
- Verify the card displays the “From your reading list” reason label.
- Verify the card displays the article title.
- Verify the card displays the card position indicator.
- Verify the card displays the three-dot more menu.
- Verify the card displays a short excerpt.
- ✅❓❌⬜ AC4: Reading list cards display the reason label, article title, card position indicator, three-dot more menu, and short excerpt.
Test Case 5: Ensure article images display as full-bleed card backgrounds
- Log in with a user account containing articles with lead images in reading history or reading list entries.
- Open the For You Feed.
- Locate cards within the Continue Reading module.
- Verify cards for articles with images display the article image as a full-bleed background.
- ✅❓❌⬜ AC5: Cards with article images display the article image as a full-bleed background.
Test Case 6: Ensure cards without article images display a gradient background
- Log in with a user account containing articles without lead images in reading history or reading list entries.
- Open the For You Feed.
- Locate cards corresponding to articles without images.
- Verify the cards display a gradient background instead of an image.
- ✅❓❌⬜ AC6: Cards without article images display a gradient background.
Test Case 7: Ensure tapping a Continue Reading card navigates to the associated article
- Log in with a user account containing qualifying reading history.
- Open the For You Feed.
- Tap the Continue Reading card.
- Verify the associated article page opens.
- ✅❓❌⬜ AC7: Tapping a Continue Reading card navigates the user directly to the associated article.
Test Case 8: Ensure tapping a reading list card navigates to the associated article
- Log in with a user account containing saved reading list articles.
- Open the For You Feed.
- Tap a reading list card within the Continue Reading module.
- Verify the associated article page opens.
- ✅❓❌⬜ AC8: Tapping a reading list card navigates the user directly to the associated article.
Test Case 9: Ensure the Continue Reading module is hidden when no reading history or reading list items exist
- Log in with a new user account that has no qualifying reading history and no saved reading list articles.
- Open the For You Feed.
- Verify the Continue Reading module does not appear in the feed.
- ✅❓❌⬜ AC9: The Continue Reading module is hidden when the user has no reading history and no reading list items.
Test Case 10: Ensure only one card displays when no reading list items exist
- Log in with a user account containing qualifying reading history but no reading list items.
- Open the For You Feed.
- Locate the Continue Reading module.
- Verify only one card is displayed.
- Verify the displayed card is the Continue Reading card.
- ✅❓❌⬜ AC10: The Continue Reading module displays only the Continue Reading card when no reading list items exist.
Test Case 11: Ensure persistent feed chrome displays on all cards
- Log in with a user account that can access the For You Feed.
- Open the Continue Reading module.
- Verify the Wikipedia logo is visible.
- Verify Community tab access is visible.
- Verify the language switcher dropdown is visible.
- Verify the notification bell is visible.
- Verify the bottom navigation bar remains visible.
- Swipe between cards in the module.
- Verify the persistent chrome remains visible across cards.
- ✅❓❌⬜ AC11: All Continue Reading module cards display the persistent feed chrome elements.
Test Case 12: Ensure the language switcher refreshes module content without leaving the module
- Log in with a user account configured with multiple languages.
- Open the Continue Reading module in the For You Feed.
- Open the language switcher dropdown.
- Select a different configured language.
- Verify the module content refreshes in the selected language.
- Verify the user remains within the Continue Reading module after switching languages.
- ✅❓❌⬜ AC12: Changing the language refreshes module content in the selected language without leaving the module.
Test Case 13: Ensure the three-dot menu displays all required actions
- Log in with a user account that can access the Continue Reading module.
- Open the For You Feed.
- Open the three-dot more menu on a Continue Reading card.
- Verify the Save option is displayed.
- Verify the Share option is displayed.
- Verify the Hide module option is displayed.
- Verify the Customize interests option is displayed.
- Repeat the verification for a reading list card.
- ✅❓❌⬜ AC13: The three-dot more menu displays Save, Share, Hide module, and Customize interests options on all cards.
QA Results - APK
| AC | Status | Details |
|---|---|---|
| 1 | ✅ | T419691#11947415 |
| 2 | ❌ | T419691#11947415 |
| 3 | ❌ | T419691#11947415 |
| 4 | ✅ | T419691#11947415 |
| 5 | ❌ | T419691#11947415 |
| 6 | ✅ | T419691#11947415 |
| 7 | ✅ | T419691#11947415 |
| 8 | ✅ | T419691#11947415 |
| 9 | ✅ | T419691#11947415 |
| 10 | ✅ | T419691#11947415 |
| 11 | ✅ | T419691#11947415 |
| 12 | ❌ | T419691#11947415 |
| 13 | ✅ | T419691#11947415 |










