Page MenuHomePhabricator

Notify page subscribers about notable changes to wishes and focus areas
Closed, ResolvedPublic8 Estimated Story Points

Assigned To
Authored By
MusikAnimal
Dec 5 2025, 2:56 AM
Referenced Files
F72849546: 2026-03-13_17-57-01.webm
Sat, Mar 14, 1:01 AM
F72849534: 2026-03-13_17-54-38.webm
Sat, Mar 14, 1:01 AM
F72824136: 2026-03-12_14-16-23.webm
Sat, Mar 14, 1:01 AM
F72824107: 2026-03-12_14-13-39.webm
Sat, Mar 14, 1:01 AM
F72779637: 2026-03-06_12-59-56.webm
Mar 9 2026, 3:58 PM
F72779619: 2026-03-06_12-55-55.webm
Mar 9 2026, 3:58 PM
F72779605: 2026-03-06_12-38-47.webm
Mar 9 2026, 3:58 PM
F72779574: 2026-03-06_12-36-36.webm
Mar 9 2026, 3:58 PM

Description

Background

Solving W43: Allow editors to subscribe to community wishes began with T406286: Introduce a subscribable "Updates" section to wishes. The idea was to leverage DiscussionTools by having a subscribable "Updates" section, where Wishlist managers can add signed comments to send out notifications. That's fine and dandy and we can still do that for custom messaging, but for meaningful changes that we can detect automatically (i.e. the status, focus area assignment), it would be considerably less hack to just send out the notifications ourselves instead of going through DT. This also means we can properly customize the notifications as well, as opposed to them be grouped and appear like any other DiscussionTools notification.

Until there is a "subscription" table in MediaWiki Core, we still have to leverage DiscussionTools as the means to store the subscriptions. The difference is we'll go by page subscriptions as opposed to topic subscriptions. This works out great because page subscriptions have been on Wishlist pages since we launched the continuous intake system in July 2024. As of the time of writing, there are already ~120 subscriptions to wishes.

Screenshots

Screenshot from 2025-12-04 21-29-11.png (356×676 px, 47 KB)

See the design guide: https://www.mediawiki.org/wiki/Notifications/Design_guide

For now we're using the "edit" icon (since the thing that triggered the notifications are edits), and very simple messaging.

Acceptance criteria

Our notifications should appear under "Notices" (aka "Alerts"). For each type:

  • The heading should read like Update to "W123: My wish"
  • The body should contain a brief explanation of what changed.
  • The footer should contain a link to the editor who made the change, and a link to view the diff

For now, these are the changes which will trigger a notification to be sent:

  • The status is changed
  • Focus area (un)assignments
    • This is includes notifying subscribers of focus areas when a wish is added or removed.

Derived Requirement

Ensure that users who subscribe to a wish or focus area page receive a notification under Notices (Alerts) when notable changes occur to that wish or focus area, including status changes and focus area assignment or removal.

Notifications must display a heading identifying the wish, a message explaining what changed, and a footer containing links to the editor who made the change and the associated diff.

Test Case 1: Ensure subscribers receive a notification when the status of a wish changes

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page that allows page subscriptions.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and change the wish status.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. ✅❓❌⬜ AC1: A notification appears with the heading Update to "W123: My wish" indicating the wish status has changed.

Test Case 2: Ensure subscribers receive a notification when a focus area is assigned to a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page and subscribe to the page.
  3. Log in as User B.
  4. Edit the wish page and assign a focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. ✅❓❌⬜ AC2: A notification appears under Notices explaining that a focus area was assigned to the wish.

Test Case 3: Ensure subscribers receive a notification when a focus area is removed from a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page with a focus area assigned.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and remove the focus area assignment.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. ✅❓❌⬜ AC3: A notification appears under Notices explaining that the focus area was removed from the wish.

Test Case 4: Ensure focus area subscribers are notified when a wish is added to that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish page and assign the subscribed focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. ✅❓❌⬜ AC4: A notification appears under Notices informing the subscriber that a wish was added to the focus area.

Test Case 5: Ensure focus area subscribers are notified when a wish is removed from that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish that currently belongs to the focus area and remove the focus area assignment.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. ✅❓❌⬜ AC5: A notification appears under Notices informing the subscriber that a wish was removed from the focus area.

Test Case 6: Ensure the notification includes links to the editor and the diff

  1. Trigger any wish update notification by changing a wish status or focus area assignment.
  2. Open the notification in the Notices (Alerts) panel.
  3. Inspect the footer section of the notification.
  4. ✅❓❌⬜ AC6: The notification footer includes a link to the editor who made the change and a link to view the diff.

QA Results - Meta Beta

Event Timeline

MusikAnimal triaged this task as Low priority.
MusikAnimal raised the priority of this task from Low to Medium.
MusikAnimal changed the task status from Open to In Progress.Dec 5 2025, 2:59 AM

Change #1215378 had a related patch set uploaded (by MusikAnimal; author: MusikAnimal):

[mediawiki/extensions/CommunityRequests@master] Notify page subscribers when notable changes are made

https://gerrit.wikimedia.org/r/1215378

Change #1215382 had a related patch set uploaded (by MusikAnimal; author: MusikAnimal):

[integration/config@master] zuul: add DiscussionTools as a CommunityRequests Phan dependency

https://gerrit.wikimedia.org/r/1215382

Change #1215382 merged by jenkins-bot:

[integration/config@master] zuul: add DiscussionTools & Echo as CommunityRequests Phan dependencies

https://gerrit.wikimedia.org/r/1215382

mikez-WMF lowered the priority of this task from Medium to Low.Feb 3 2026, 8:07 PM
HMonroy changed the task status from In Progress to Open.Mar 5 2026, 9:48 PM
HMonroy moved this task from Feedback and Review to QA on the Community-Tech (Sea Lion Squad) board.

Change #1215378 merged by jenkins-bot:

[mediawiki/extensions/CommunityRequests@master] Notify page subscribers when notable changes are made

https://gerrit.wikimedia.org/r/1215378

@MusikAnimal Please review AC2-AC5, thanks!

Test Result - Meta Beta

Status: ✅ PASS ❌ FAIL
Environment: Meta Beta
OS: macOS Tahoe 26.3
Browser: Chrome 145
Device: MBA
Emulated Device: NA

Test Artifact(s):
https://meta.wikimedia.beta.wmcloud.org/wiki/Community_Wishlist/W46
https://meta.wikimedia.beta.wmcloud.org/wiki/Community_Wishlist/FA7

Test Case 1: Ensure subscribers receive a notification when the status of a wish changes

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page that allows page subscriptions.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and change the wish status.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. AC1: A notification appears with the heading Update to "W123: My wish" indicating the wish status has changed.

Test Case 2: Ensure subscribers receive a notification when a focus area is assigned to a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page and subscribe to the page.
  3. Log in as User B.
  4. Edit the wish page and assign a focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC2: A notification appears under Notices explaining that a focus area was assigned to the wish.

No FA notification

Test Case 3: Ensure subscribers receive a notification when a focus area is removed from a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page with a focus area assigned.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and remove the focus area assignment.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. AC3: A notification appears under Notices explaining that the focus area was removed from the wish.

No FA notification

Test Case 4: Ensure focus area subscribers are notified when a wish is added to that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish page and assign the subscribed focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC4: A notification appears under Notices informing the subscriber that a wish was added to the focus area.

When it was Added, notification said Removed

Test Case 5: Ensure focus area subscribers are notified when a wish is removed from that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish that currently belongs to the focus area and remove the focus area assignment.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC5: A notification appears under Notices informing the subscriber that a wish was removed from the focus area.

When it was Removed, notification said Added

Test Case 6: Ensure the notification includes links to the editor and the diff

  1. Trigger any wish update notification by changing a wish status or focus area assignment.
  2. Open the notification in the Notices (Alerts) panel.
  3. Inspect the footer section of the notification.
  4. AC6: The notification footer includes a link to the editor who made the change and a link to view the diff.

See AC1

GMikesell-WMF changed the task status from Open to In Progress.Mar 9 2026, 3:59 PM
GMikesell-WMF updated the task description. (Show Details)
GMikesell-WMF moved this task from QA to In Development on the Community-Tech (Sea Lion Squad) board.

Change #1249418 had a related patch set uploaded (by MusikAnimal; author: MusikAnimal):

[mediawiki/extensions/CommunityRequests@master] notifications: fix typo in name of notification type; fix tests

https://gerrit.wikimedia.org/r/1249418

Change #1249422 had a related patch set uploaded (by MusikAnimal; author: MusikAnimal):

[mediawiki/extensions/CommunityRequests@master] i18n: fix messages for adding/removing wishes from FAs

https://gerrit.wikimedia.org/r/1249422

Thanks for identifying these bug! I've got fixes that are now up for review.

Change #1249422 merged by jenkins-bot:

[mediawiki/extensions/CommunityRequests@master] i18n: fix messages for adding/removing wishes from FAs

https://gerrit.wikimedia.org/r/1249422

Change #1249418 merged by jenkins-bot:

[mediawiki/extensions/CommunityRequests@master] notifications: fix typo in name of notification type; fix tests

https://gerrit.wikimedia.org/r/1249418

I think this is ready for QA again! Note this only works when editing entities using the form. Making the same changes by manually editing the wikitext does not (yet) send out notifications, or even add log entries. I've filed T419744: Make structured logging and notifications work for wikitext changes for that, to be explored at a later time.

MusikAnimal changed the task status from In Progress to Open.Mar 11 2026, 6:29 PM

@MusikAnimal Confirmed notify page subscribers about notable changes to wishes and focus areas, as seen in the videos below. I will mark this as Resolved now. Thanks for all your work!

Test Result - Meta Beta

Status: ✅ PASS
Environment: Meta Beta
OS: macOS Tahoe 26.3
Browser: Chrome 145
Device: MBA
Emulated Device: NA

Test Artifact(s):
https://meta.wikimedia.beta.wmcloud.org/wiki/Community_Wishlist/W46
https://meta.wikimedia.beta.wmcloud.org/wiki/Community_Wishlist/FA7

Test Case 1: Ensure subscribers receive a notification when the status of a wish changes

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page that allows page subscriptions.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and change the wish status.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. AC1: A notification appears with the heading Update to "W123: My wish" indicating the wish status has changed.

Test Case 2: Ensure subscribers receive a notification when a focus area is assigned to a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page and subscribe to the page.
  3. Log in as User B.
  4. Edit the wish page and assign a focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC2: A notification appears under Notices explaining that a focus area was assigned to the wish.

Test Case 3: Ensure subscribers receive a notification when a focus area is removed from a wish

  1. Log in to Wikipedia with User A.
  2. Navigate to an existing wish page with a focus area assigned.
  3. Subscribe to the wish page.
  4. Log in as User B.
  5. Edit the wish page and remove the focus area assignment.
  6. Save the edit.
  7. Log back in as User A and open the Notifications panel under Notices (Alerts).
  8. AC3: A notification appears under Notices explaining that the focus area was removed from the wish.

Test Case 4: Ensure focus area subscribers are notified when a wish is added to that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish page and assign the subscribed focus area to the wish.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC4: A notification appears under Notices informing the subscriber that a wish was added to the focus area.

Test Case 5: Ensure focus area subscribers are notified when a wish is removed from that focus area

  1. Log in to Wikipedia with User A.
  2. Navigate to a focus area page and subscribe to the page.
  3. Log in as User B.
  4. Edit a wish that currently belongs to the focus area and remove the focus area assignment.
  5. Save the edit.
  6. Log back in as User A and open the Notifications panel under Notices (Alerts).
  7. AC5: A notification appears under Notices informing the subscriber that a wish was removed from the focus area.

Test Case 6: Ensure the notification includes links to the editor and the diff

  1. Trigger any wish update notification by changing a wish status or focus area assignment.
  2. Open the notification in the Notices (Alerts) panel.
  3. Inspect the footer section of the notification.
  4. AC6: The notification footer includes a link to the editor who made the change and a link to view the diff.

See AC1

GMikesell-WMF updated Other Assignee, removed: GMikesell-WMF.
GMikesell-WMF updated the task description. (Show Details)