Page MenuHomePhabricator

Drop support for userspace patrolling
Closed, ResolvedPublic

Description

Discussion at https://en.wikipedia.org/wiki/Wikipedia:Page_Curation/Suggested_improvements#Remove_userspace_from_Special%3ANewPagesFeed%3F

We can either turn this off by

  1. only modifying $wgPageTriageNamespaces, or
  2. also stripping it out of the code entirely.

#2 might be better because it reduces complexity of the software, which is good for maintainability. So for example, we could remove namespace 2 from extension.json, we could delete the MFD code from delete.js, we can get rid of the code hiding the tagging menu from the toolbar, and we can get rid of the code hiding the "message the creator" code from the "mark as reviewed" menu.

A one time SQL delete query might be needed for pagetriage_page and pagetriage_page_tag entries for pages in namespace 2 (user).

I see the primary benefit of this as not encouraging patrollers to use limited patrolling bandwidth to patrol a namespace that doesn't need patrolling. There are also some technical benefits, such as reduction in SQL table sizes and simplification of the code.

Event Timeline

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

Is userspace patrolling a feature that can remain in PageTriage (but hidden away for enwiki) OR do we want to remove the feature completely from the extension?

I'm leaning towards removing it entirely. Code simplification. That MFD (miscellany for deletion) codepath in delete.js is probably very rarely used and tested, and I can see that getting out of sync with the rest of the code and getting buggy over time.

Just reading the onwiki discussion, I wonder if this dates back to a time when userspace was indexed. Since it now isn't by default, the need to patrol it seems less pressing.

Change 871923 had a related patch set uploaded (by MPGuy2824; author: MPGuy2824):

[mediawiki/extensions/PageTriage@master] Stop userspace patrolling

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

I am attempting to learn PHP (very slowly), and as such read through the patch above. I believe you can get rid of the comment on new lines 359 and 360 of listControlNav.js that reads

// || 0 is a safeguard. Old code suggested for some reason
// the namespace filter may at times not exist.

because the relevant safeguard was removed in this patch.

Additionally, are we dropping support for userspace patrolling on enwiki, or are we dropping support for patrolling non-mainspace pages in PageTriage? That is, assuming T50552 is resolved, will we support dual mainspace and userspace patrolling on other wikis? Parts of the patch appear to be geared towards the former (e.g. maintaining a list of patrolable namespaces) while other parts suggest the latter (e.g. entirely removing the dropdown menu to select a namespace).

I am attempting to learn PHP

Nice. We could always use more PHP devs

(very slowly), and as such read through the patch above. I believe you can get rid of the comment on new lines 359 and 360 of listControlNav.js that reads

// || 0 is a safeguard. Old code suggested for some reason
// the namespace filter may at times not exist.

because the relevant safeguard was removed in this patch.

Actually, if you notice, the line below the comment was changed to set the namespace to 0. This was so that people who had set their namespace to "User" should not be stuck there with no way to go to articlespace, once the patch is deployed.

Additionally, are we dropping support for userspace patrolling on enwiki, or are we dropping support for patrolling non-mainspace pages in PageTriage? That is, assuming T50552 is resolved, will we support dual mainspace and userspace patrolling on other wikis?

In {T321983#8435608}, it was decided to remove userspace patrolling support altogether.

Parts of the patch appear to be geared towards the former (e.g. maintaining a list of patrolable namespaces) while other parts suggest the latter (e.g. entirely removing the dropdown menu to select a namespace).

Some parts of the patch can be explained by the fact that i was trying to get the job done with the least amount of changes to the code.

P.S. You can leave code review messages on gerrit itself. See https://www.mediawiki.org/wiki/Gerrit/Code_review#Complete_the_review for more details.

// || 0 is a safeguard. Old code suggested for some reason
// the namespace filter may at times not exist.

because the relevant safeguard was removed in this patch.

Actually, if you notice, the line below the comment was changed to set the namespace to 0. This was so that people who had set their namespace to "User" should not be stuck there with no way to go to articlespace, once the patch is deployed.

Ah. In that case, I believe you can get rid of the "||" in the comment, because that was removed in the patch.

P.S. You can leave code review messages on gerrit itself. See https://www.mediawiki.org/wiki/Gerrit/Code_review#Complete_the_review for more details.

I will do that in the future!

Change 871923 merged by jenkins-bot:

[mediawiki/extensions/PageTriage@master] Stop userspace patrolling

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

MPGuy2824 moved this task from Waiting for enwiki deploy to Done on the PageTriage board.

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

[mediawiki/extensions/PageTriage@master] maintenance: Adjust query builder to account for no secondary namespaces

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

Change 895778 had a related patch set uploaded (by Gergő Tisza; author: Kosta Harlan):

[mediawiki/extensions/PageTriage@wmf/1.40.0-wmf.26] maintenance: Adjust query builder to account for no secondary namespaces

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

Change 895779 had a related patch set uploaded (by Gergő Tisza; author: Kosta Harlan):

[mediawiki/extensions/PageTriage@wmf/1.40.0-wmf.25] maintenance: Adjust query builder to account for no secondary namespaces

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

Change 895786 merged by jenkins-bot:

[mediawiki/extensions/PageTriage@master] maintenance: Adjust query builder to account for no secondary namespaces

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

Change 895778 merged by jenkins-bot:

[mediawiki/extensions/PageTriage@wmf/1.40.0-wmf.26] maintenance: Adjust query builder to account for no secondary namespaces

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

Change 895779 merged by jenkins-bot:

[mediawiki/extensions/PageTriage@wmf/1.40.0-wmf.25] maintenance: Adjust query builder to account for no secondary namespaces

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

Mentioned in SAL (#wikimedia-operations) [2023-03-08T22:21:26Z] <tgr@deploy2002> Started scap: Backport for [[gerrit:895778|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]], [[gerrit:895779|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]]

Mentioned in SAL (#wikimedia-operations) [2023-03-08T22:23:31Z] <tgr@deploy2002> tgr: Backport for [[gerrit:895778|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]], [[gerrit:895779|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]] synced to the testservers: mwdebug2001.codfw.wmnet, mwdebug1001.eqiad.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-03-08T22:29:09Z] <tgr@deploy2002> Finished scap: Backport for [[gerrit:895778|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]], [[gerrit:895779|maintenance: Adjust query builder to account for no secondary namespaces (T321983 T331412)]] (duration: 07m 43s)