Page MenuHomePhabricator

Partial Block should support blocking a user from creating specific titles
Closed, DuplicatePublicFeature

Description

Feature summary
Partial Block feature supports blocking a user from editing a specific existing page. It is useful when a user is particularly vandalizing that page and we would not like to prevent them from editing other pages.

This task proposes that we should be able to block a user from editing a non-existent page (i.e. creating a specific title) too.

Use case(s)

Desirable for users who keep creating a specific page in inappropriate ways (e.g., an article about themself), but are doing useful edits in other topics. See also T213837#7589467

Benefits
Currently, we either have to fully block the user, or protect the page at a higher level than what they can edit (e.g. at "sysop" level). Both of these approaches have undesirable side effects.

Implications

The current structure of ipblocks_restrictions table will not support this, as it identifies the target pages of a block using their id, and the page_id of all non-existent titles is 0. This will require modifying that table or adding a separate table.