Page MenuHomePhabricator

CheckUser: Special:GlobalContributions should highlight temporary accounts
Closed, ResolvedPublic

Description

Summary

  • As part of T388377: Special:GlobalContributions on mobile/Minerva displays an empty pair of parentheses at the end of (non-central-wiki) rows, we updated how the usernames are shown in the list of Special:GlobalContributions,
  • However, with that change alone, temporary accounts in Special:GlobalContributions are not highlighted like in other pages to show that they are indeed temporary: They are strikenthrough and have a tooltip when expired, but their background is not changed, keeping it the same way as for normal accounts.
  • When an account in Special:GlobalContributions is temporary, expired or not, it should have a different background, consistent with how they are shown in other pages.

Background

  • The former patch to strikethrough expired temp accounts in Special:GlobalContributions is here: https://gerrit.wikimedia.org/r/c/mediawiki/extensions/CheckUser/+/1126627
  • That patch adds the mw-tempuserlink-expiredCSS class and a tooltip to show whether a temporary account is expired.
  • How expired temp accounts are shown after the former patch:
    image.png (819×341 px, 100 KB)
  • How expired temporary accounts should be shown instead:
    image.png (627×123 px, 26 KB)

Technical notes

Acceptance criteria

  • Expired temporary accounts Special:GlobalContributions are shown the same way as in other pages.

Event Timeline

An initial, incomplete solution to change how temp accounts are shown can be found at https://gerrit.wikimedia.org/r/c/mediawiki/extensions/CheckUser/+/1126627/49..50, but it was eventully rolled back without being merged back to master as part of that patch. Those changes may serve as a starting point for this task.

When an account in that list is temporary, expired or not, it should have a different background, consistent with how they are shown in other pages.

Is this the same as T347209: Investigate: Grey background for temporary usernames in signatures, mentions etc? If not, could we update the task description to clarify where the boundaries are between these two tasks?

This refers only to accounts listed in Special:GlobalContributions. I've updated the summary and the AC to explicitly mention that the task is to update how the accounts are shown in that page.

Change #1137000 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/extensions/CheckUser@master] globalcontributions: Highlight temporary accounts

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

Change #1138396 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/core@master] UsrLinkRenderer: Make userLink handle users from external wikis

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

I've made some changes proposed during the code review in order to move some logic initially part of CheckUser's GlobalContributionsPager into Core's service UserLinkRenderer instead. Although the change in the pager and the service are done, I've not updated the tests yet, which are now failing. Therefore, I'm moving this back to "In Progress".

Changes done in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1138396 are breaking unit tests from IPInfo and integration tests in CheckUser, so I'm not moving it back to code review yet.

Change #1140692 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/extensions/IPInfo@master] IPInfoLogFormatterTest: Fix test depending on the database

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

Change #1141874 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/core@master] translaion: Add missing strings to qqq.json

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

hector.arroyo changed the task status from In Progress to Stalled.EditedMay 6 2025, 11:45 AM

This is currently blocked because of discussions taking place in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1138396 (see also https://wikimedia.slack.com/archives/C05T0U17GNQ/p1746526551676699).

The potential outcome of this may be the need to rebase that patch (associated with this task) on top of https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1139193 (associated with T392775: Add link color for temporary usernames in content and discussion pages, also already in review right now). I'd prefer doing the other way around (since https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1138396 is smaller), but discussions are still ongoing.

Marking this as Stalled, as this can't move forward until an agreement is reached and, eventually, until the patch for the other task is merged.

Change #1138396 merged by jenkins-bot:

[mediawiki/core@master] UserLinkRenderer: Make userLink handle users from external wikis

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

Change #1140692 merged by jenkins-bot:

[mediawiki/extensions/IPInfo@master] IPInfoLogFormatterTest: Fix test depending on the database

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

hector.arroyo changed the task status from Stalled to In Progress.May 12 2025, 1:44 PM

Change #1144598 had a related patch set uploaded (by Dreamy Jazz; author: Dreamy Jazz):

[mediawiki/core@master] Fix ::setUp multi-wiki set up code in UserLinkRendererTest

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

Change #1144598 merged by jenkins-bot:

[mediawiki/core@master] Fix ::setUp multi-wiki set up code in UserLinkRendererTest

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

Post-merge for https://gerrit.wikimedia.org/r/c/mediawiki/extensions/CirrusSearch/+/1144590 seems stuck (its status is shown as "Pending" for a while), which may be preventing checks for https://gerrit.wikimedia.org/r/c/mediawiki/extensions/CheckUser/+/1137000 from passing, since the later depends on a fix in CirrusSearch tests introduced by the former.

Tests in CirrusSearch keep failing, likely because both tests in CirrusSearch and in CheckUser modify the Site Store config (CU does so in order to check if links to external users are properly computed). I'm trying to find a workaround in CheckUser tests.

Change #1145205 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/extensions/CheckUser@master] globalcontributions: Highlight temporary accounts

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

I've pushed a new patch https://gerrit.wikimedia.org/r/c/mediawiki/extensions/CheckUser/+/1145205 without the "Depends-On" annotations (all the referenced patches are already merged), updated the test so it does not try to update the sites table and it still makes the CirrusSearch tests fail: https://integration.wikimedia.org/ci/job/quibble-vendor-mysql-php74-noselenium/96597/console

I'll try next opening an empty patch in CheckUser and then put back the former code bit by bit there to see if the issue persists.

Change #1145205 abandoned by Harroyo-wmf:

[mediawiki/extensions/CheckUser@master] globalcontributions: Highlight temporary accounts

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

Change #1137000 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] globalcontributions: Highlight temporary accounts

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

Djackson-ctr subscribed.

QA is completed, I have verified the new code has been implemented and is functioning as expected (Expired temporary accounts Special:GlobalContributions are shown the same way as in other pages).

image.png (1,177×118 px, 18 KB)