Value proposition:
As an editor who frequently patrols pages, I want to have the option to be able to watch a page temporarily so that I can keep an eye on some pages briefly without having them on my permanent list of pages to watch.
Open questions:
- What is the status of what WMDE started working on; did they run into notable challenges we should know about before stopping?
- What database columns are in the watchlist table (and/or watchlist properties) that can be used to store and read a timestamp? Are they available or do they need to be added? What are the options for this? do we need to change schema, add a separate table, or work with what we have?
- What populates the Watchlist entries? Is it a single place (on load?) or multiple places? If we want to add an operation to validate watched pages, how many places do we need to add it to?
- If we keep expired pages for a month after expiration, can we control what populates the watchlist table during that month? Is that done on load of the watchlist? Can we stop populating revisions of those expired pages even if the user did not visit the page?
- Is there an API that is impacted by this? Do we have an API for watchlist, and/or that touches the watchlist? Do we need to include any operation there as well?
- Notifications: For flow (or any other place that notifies you for watched pages) do we need another operation? Can we easily implement the expiration for those as well or do they require a different operation, seeing as the Event (in Echo) is created on the spot (after saving Flow reply) can we take into account expiration of the watched page/topic?
Helpful links:
- The wish: https://meta.wikimedia.org/wiki/Community_Wishlist_Survey_2019/Watchlists/Watchlist_item_expiration
- https://meta.wikimedia.org/wiki/WMDE_Technical_Wishes/Watchlist_Expiry
- T124752: RFC: Expiring watch list entries
- T8964: Watch pages for a few days only (add an expiry time)
- T100508: Watchlist expiry: Watch pages for a specified time frame (2013) (and related task graph)
- Adam's blog post about watchlist refactoring work done by WMDE