Page MenuHomePhabricator

Add Worklist tab shell to EventDetails
Open, In Progress, Needs TriagePublic

Description

NOTE: Remove sections that are not needed. Instead, leave the section and write NOT NEEDED as its content.
NOTE: For the tab name definition we will start with "Worklist" and change later if needed, this was discussed in the sprint planing on 2026-04-30

Background: The EventDetails page contains a tab bar with multiple tabs (e.g. Contributions). This task adds a new "Worklist" tab to that tab bar as an empty shell (no content yet). The tab must be positioned before the Contributions tab and must be shown only for contribution events. Tasks TBA, TBA, and TBA will add content to this shell.

Type of story
  • Front end
Acceptance criteria
  • A "Worklist" tab is registered in the EventDetails tab bar and is positioned before the Contributions tab.
  • The tab body renders an empty panel (placeholder or spinner) with no functional content.
  • The tab is shown only when:
    • the event is a contribution event, and
    • the Worklist feature flag is enabled (T423606).
  • When the Worklist feature flag is disabled, the tab is not shown regardless of event type.
  • The tab shell does not break any existing tab (Contributions or others) when shown or hidden.
Messages and copy included
  • For happy path:
    • Message key: campaignevents-event-details-tab-worklist
      • Message text: Worklist (To be confirmed)
      • Message suggestion: "Worklist"
      • Context: label of the Worklist tab in the EventDetails tab bar
Depends on
  • T423606 (Worklist feature flag gating must be implemented)
Testing required?
  • Yes
  • Minimum testing to pass QA:
    • With feature flag ON: the tab appears only for contribution events and is positioned before Contributions.
    • With feature flag OFF: the tab never appears.
    • No JS errors on page load.
  • Tested end-to-end in: task-8 and task-9 (which add content to this shell)
Technical details
  • Follow the existing pattern for tab registration in the EventDetails page (locate the Vue component or PHP template that registers tabs and replicate the pattern).
  • Gate the tab registration behind the Worklist feature flag (T423606).
Split patches suggestion
  • Branch 1: Tab registration + conditional display logic + empty panel Vue component
Gherkin scenarios

Feature: Worklist tab shell in EventDetails

  • Scenario: Tab appears for contribution events when feature flag is ON
    • Given the Worklist feature flag is enabled
    • And the event is a contribution event
    • And I am viewing the EventDetails page for that event
    • Then I see a "Worklist" tab in the tab bar
  • Scenario: Tab does not appear for non-contribution events even when feature flag is ON
    • Given the Worklist feature flag is enabled
    • And the event is not a contribution event
    • And I am viewing the EventDetails page for that event
    • Then I do not see a "Worklist" tab in the tab bar
  • Scenario: Tab does not appear when feature flag is OFF
    • Given the Worklist feature flag is disabled
    • And the event is a contribution event
    • And I am viewing the EventDetails page for that event
    • Then I do not see a "Worklist" tab in the tab bar
  • Scenario: Tab is positioned before the Contributions tab
    • Given the Worklist feature flag is enabled
    • And the event is a contribution event
    • And I am viewing the EventDetails page for that event
    • Then the "Worklist" tab appears before the "Contributions" tab in the tab bar
  • Scenario: Tab body renders an empty panel
    • Given the Worklist feature flag is enabled
    • And the event is a contribution event
    • And I am viewing the EventDetails page for that event
    • When I click the "Worklist" tab
    • Then the tab body is displayed without errors
    • And no article list or form is shown yet

Event Timeline

cmelo updated the task description. (Show Details)

One quick note:

campaignevents-worklist-tab-label

This should use the standard prefix for tabs, so campaignevents-event-details-tab-worklist.

cmelo updated the task description. (Show Details)

Change #1281445 had a related patch set uploaded (by Mhorsey; author: Mhorsey):

[mediawiki/extensions/CampaignEvents@master] Add worklist tab shell to special:eventdetails

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

the event is a contribution event

To clarify, what does this mean? That contribution tracking is enabled, or that at least one of the event types is in the "contributions" category?

Also noting that the tab message is marked as "to be confirmed", I imagine that is no longer the case?

@Daimona, an event does not need to have contribution tracking enabled in order to have the worklist tab. It just needs to be a contribution event type. This is the minimum criteria for allowing it, since it would not make sense to have a worklist tab for an event that is, for example, a meetup or conference alone. However, we do not want to restrict it events that have contribution tracking, in case some events do like the concept of showing editing intentions (via a worklist) but, for various reasons, do not want to enable contribution tracking.

As for the text, I believe that was added there because we decided we could move along with the general work, even as we decide the details of the message text.