Page MenuHomePhabricator

Add rate limits for page deletion in Special:Nuke
Closed, ResolvedPublic

Description

Special:Nuke bypasses the rate limiter: it checks permissions via PermissionManager::getPermissionErrors() (which doesn't check rate limits) and then pushes DeletePageJob jobs directly via the job queue.

Acceptance criteria

  • Add rate limit checking to Special:Nuke before queuing deletion jobs

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

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

[mediawiki/extensions/Nuke@master] WIP SpecialNuke: Check delete rate limit before queuing deletions

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

Change #1248585 merged by jenkins-bot:

[mediawiki/extensions/Nuke@master] Check delete rate limit before queuing deletions

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

Thanks for working on this. Just to clarify, what is the user-facing impact of this? How many deletions would need to be queued before a rate limit was hit? Is the limit per-user or project-wide?

A_smart_kitten renamed this task from Add rate limits for page deletion to Add rate limits for page deletion in Special:Nuke.Mar 6 2026, 4:47 PM

Is the limit per-user or project-wide?

All of the rate limits I've seen are per-user and can even be per-user experience (newcomers can have a lower rate limit than experienced ones, for example). There are also users who can be assigned a noratelimit: https://www.mediawiki.org/wiki/Manual:User_rights#noratelimit

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

[mediawiki/extensions/Nuke@REL1_45] Check delete rate limit before queuing deletions

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

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

[mediawiki/extensions/Nuke@REL1_44] Check delete rate limit before queuing deletions

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

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

[mediawiki/extensions/Nuke@REL1_43] Check delete rate limit before queuing deletions

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

jsn.sherman claimed this task.

Change #1255788 merged by jenkins-bot:

[mediawiki/extensions/Nuke@REL1_45] Check delete rate limit before queuing deletions

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

Change #1255790 merged by jenkins-bot:

[mediawiki/extensions/Nuke@REL1_43] Check delete rate limit before queuing deletions

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

Change #1255789 merged by jenkins-bot:

[mediawiki/extensions/Nuke@REL1_44] Check delete rate limit before queuing deletions

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

Thanks for working on this. Just to clarify, what is the user-facing impact of this? How many deletions would need to be queued before a rate limit was hit? Is the limit per-user or project-wide?

@Samwalton9-WMF I don't see any current rate limits set for delete actions in mediawiki-config. This patch doesn't set any limits, it just makes Mass Delete respect them.

Limits are sometimes added/removed/modified on a temporary basis to respond to ongoing events or conditions, so there could certainly be a future impact if limits are set / adjusted downward in the future.

Maybe @kostajh could let us know if I'm missing something.