Page MenuHomePhabricator

UserInfoCard: Use new icon to indicate sitewide blocked, globally blocked, or locked user
Closed, ResolvedPublic

Description

Summary

This task is to confirm the icon that will be used to indicate that the user is blocked sitewide, globally blocked, or locked.

User story

As a user, I want to easily know which edits have been made by a blocked user, in order to quickly differentiate between types of edits.

Specifications

  • Icon SVG:

Acceptance criteria

  • SVG icon is created
  • Icon is added to Codex
  • Icon is added to OOUI
  • Icon is used in UserInfoCard

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
Restricted Application added a subscriber: Aklapper. · View Herald Transcript

I think we should only do this for sitewide blocks. Seeing a blocked icon will immediately bias a patroller against a user. But blocks can be made for many reasons including for training new users -- we don't want to give them a bad reputation right off the bat.

There is prior art on the question of marking blocked/locked users. On English Wikipedia (and at least one other wiki, so I'd guess several others have something similar), we have the markblocked gadget as well as a similar script for mark-locked. Those will be worth review. Partial and temporary blocks are treated differently, but still treated, in the former case. (mark-global-blocked should probably be a thing.)

Special:Checkuser also identifies when a user is blocked or even previously blocked.

Seeing a blocked icon will immediately bias a patroller against a user.

Yes, that's rather the point.

including for training new users

The only thing I can see this meaning is "new user vandalizes, they receive a temporary block to stop vandalizing" which is not training, and is something we care about.

The only thing I can see this meaning is "new user vandalizes, they receive a temporary block to stop vandalizing" which is not training, and is something we care about.

Yeah, I meant something along those lines. Like a new user doesn't know the Three revert rule and is temporarily blocked while they learn the rules of editing the projects.

Proposed Blocked User icon attached.

SVG has been optimised following the Codex guidelines.

Screenshot 2025-11-26 at 10.56.33.png (538×824 px, 25 KB)

Looking good! Probably could use some minor tweaks regarding spacing (particularly in the bottom left corner) and I hope that the icon appears in red to draw more attention to it but otherwise I like it.

I hope that the icon appears in red to draw more attention to it but otherwise I like it.

Speaking with my volunteer hat on, I would find red confusing because the colour is used to indicate "no edits" (for contributions page links) and "page does not exist" (for other kind of pages). So I'd prefer to not see it in red.

kostajh renamed this task from UserInfoCard: Design icon to indicate blocked user to UserInfoCard: Design icon to indicate sitewide blocked user.Nov 27 2025, 9:33 AM
kostajh updated the task description. (Show Details)

Change #1247525 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[oojs/ui@master] icons: Add 'userBlocked' icon

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

Change #1247526 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[design/codex@main] icons: Add 'userBlocked' icon

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

All of our existing struck/negated icons just use the plain bar without a circle:

image.png (32×113 px, 2 KB)

image.png (32×113 px, 1 KB)

image.png (32×113 px, 1 KB)

image.png (32×113 px, 1 KB)

image.png (32×113 px, 2 KB)

image.png (32×113 px, 2 KB)

The only icon that uses a circled bar is the generic cancel icon:

image.png (28×82 px, 1 KB)

It would make more sense to follow this pattern and add a bar to the full size userAvatar icon:

image.png (32×113 px, 1 KB)

@Esanders The bar without the circle was one of a number of options explored. From what I recall we decided on the circle option as it was easier to see when scanning a list of users/contributions.

Blocked user icons exploration.png (489×1 px, 19 KB)

Change #1247525 merged by jenkins-bot:

[oojs/ui@master] icons: Add 'userBlocked' icon

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

kostajh renamed this task from UserInfoCard: Design icon to indicate sitewide blocked user to UserInfoCard: Use new icon to indicate sitewide blocked, globally blocked, or locked user.Mar 3 2026, 12:59 PM
kostajh updated the task description. (Show Details)

Change #1247589 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CheckUser@master] UserInfoCard: Show blocked user icon for blocked/locked users

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

Change #1247526 merged by jenkins-bot:

[design/codex@main] icons: Add 'userBlocked' icon

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

Change #1247676 had a related patch set uploaded (by Anne Tomasevich; author: Anne Tomasevich):

[mediawiki/core@master] Update Codex from v2.3.4 to v2.4.0

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

Change #1247676 merged by jenkins-bot:

[mediawiki/core@master] Update Codex from v2.3.4 to v2.4.0

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

Change #1247589 abandoned by Kosta Harlan:

[mediawiki/extensions/CheckUser@master] UserInfoCard: Show blocked user icon for blocked/locked users

Reason:

See Ic2e741c9e51b7c9d0b25e6b4b90c3aebc6b3f1a2

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

Change #1247966 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CheckUser@master] UserInfoCard: Add cache invalidation handlers for blocked user status

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

Change #1247967 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CheckUser@master] UserInfoCard: Show blocked user icon for blocked/locked users

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

Change #1248442 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/GlobalBlocking@master] Add GlobalBlockingGlobalUnblockAudit hook

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

Change #1248444 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CheckUser@master] UserInfoCard: Invalidate block status cache on global unblock

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

Change #1248442 merged by jenkins-bot:

[mediawiki/extensions/GlobalBlocking@master] Add GlobalBlockingGlobalUnblockAudit hook

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

Change #1248444 abandoned by Kosta Harlan:

[mediawiki/extensions/CheckUser@master] UserInfoCard: Invalidate block status cache on global unblock

Reason:

Folded into Ic2e741c9e51b7c9d0b25e6b4b90c3aebc6b3f1a2

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

Change #1249308 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CheckUser@master] UserInfoCard: Add cache invalidation hook handlers

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

This isn't resolved, see the last item in the acceptance criteria :)

Change #1250551 had a related patch set uploaded (by Kosta Harlan; author: Kosta Harlan):

[mediawiki/extensions/CentralAuth@master] GlobalUserSelectQueryBuilderFactory: Defer DB access to query time

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

Change #1250551 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] GlobalUserSelectQueryBuilderFactory: Defer DB access to query time

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

This user notes that deceased users are often blocked to prevent account hijacking: https://w.wiki/JMFY

This user notes that deceased users are often blocked to prevent account hijacking: https://w.wiki/JMFY

Yes, I've seen that. I'm not sure what we can do about it, given that there isn't a structured way to know this information across wikis. I don't think it impacts this task either, since the task is about showing the blocked status of an account.

Sure. As this task raises the visibility of a user's blocked status it should probably be a product consideration.

Change #1247966 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] UserInfoCard: Add block status cache service

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

Change #1249308 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] UserInfoCard: Add cache invalidation hook handlers

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

Change #1247967 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] UserInfoCard: Show blocked user icon for blocked/locked users

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