Page MenuHomePhabricator

Implement Global Contributions as a central page on Meta and implement redirects from other projects
Closed, ResolvedPublic

Description

Motivation

We would like to have a central page for Special:GlobalContributions access on Meta and implement redirects from other projects towards it. That main reason is that we have the logs for the tool on one wiki if we enable the special page on a single, central wiki (metawiki).

This is consistent with how some other global special pages work like Special:GlobalBlock.

Event Timeline

This is consistent with how some other global special pages work like Special:GlobalBlock.

Just to note, there is no redirect for the Special:GlobalBlock page. Instead, the stewards have instead agreed to only use the special page on metawiki. As such, there won't be any useful code from GlobalBlocking to achieve this ticket.

This is consistent with how some other global special pages work like Special:GlobalBlock.

Just to note, there is no redirect for the Special:GlobalBlock page. Instead, the stewards have instead agreed to only use the special page on metawiki. As such, there won't be any useful code from GlobalBlocking to achieve this ticket.

Stewards can't global block outside of meta, but this is controlled with user rights. Only the local Meta steward group has globalblock, not the global steward group. Similar applies to other things Stewards only do from Meta: locks, global group management, change user groups for other wikis, and renames.

(The beta cluster doesn't have the same user rights setup, so actions like global blocking can be performed from any wiki.)

Stewards can't global block outside of meta, but this is controlled with user rights.

I was not aware of this. Thanks. I think the rights being global on beta is what lead me to assume this.

As to the relevant code, my point still stands as we cannot use the method of restricting the user rights to a specific wiki for GUC.

@Dreamy_Jazz Is there a different global page we can take inspiration from for the purposes of this ticket?

@Dreamy_Jazz Is there a different global page we can take inspiration from for the purposes of this ticket?

Not that I am aware of. However, it shouldn't be too complicated to achieve.

We would like to have a central page for GUC access on Meta and implement redirects from other projects towards it.

Why? What is the benefit of this?

We would like to have a central page for GUC access on Meta and implement redirects from other projects towards it.

Why? What is the benefit of this?

One point that was raised is the idea that we have the logs for the tool on one wiki if we redirect to a central wiki.

Also, the user page of temporary accounts which have never edited the wiki being used to run the check may appear strange (because a user clicking to see contribs of that user will get an error). Once we have deployed temporary accounts to metawiki (which wont be part of the minor pilots), this would not be an issue as all temporary accounts would exist there. We could make the user links point to the wiki associated with the edit, but I don't know if that would be confusing.

It is similar to Special:GlobalBlock insofar as the stewards only use that page on metawiki so that the logs remain on one central wiki.

kostajh updated the task description. (Show Details)

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

[mediawiki/extensions/CheckUser@master] PageDisplay: Support redirecting to a central GlobalContributions page

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

Change #1080248 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] PageDisplay: Support redirecting to a central GlobalContributions page

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

One point that was raised is the idea that we have the logs for the tool on one wiki if we redirect to a central wiki.

I don't see the point since IP reveal logs can already be on any wiki.

Also, the user page of temporary accounts which have never edited the wiki being used to run the check may appear strange (because a user clicking to see contribs of that user will get an error). Once we have deployed temporary accounts to metawiki (which wont be part of the minor pilots), this would not be an issue as all temporary accounts would exist there. We could make the user links point to the wiki associated with the edit, but I don't know if that would be confusing.

Regardless of which wiki CheckUser-GlobalContributions is used on, any links should definitely go to the wiki on which the edit was made. (Tool-Global-user-contributions links to the relevant wiki.)

Centralizing will prevent the use of scripts that mark local blocks (e.g., Gadget-markblocked.js) since it will be on Meta-Wiki instead of the relevant wiki.

Change #1081138 had a related patch set uploaded (by STran; author: STran):

[operations/mediawiki-config@master] Implement redirects to meta's Special:GlobalContributions

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

Change #1081138 merged by jenkins-bot:

[operations/mediawiki-config@master] Set redirect wiki for Special:GlobalContributions

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

Mentioned in SAL (#wikimedia-operations) [2024-10-21T13:55:33Z] <stran@deploy2002> Started scap sync-world: Backport for [[gerrit:1081415|Disable IP reveal rights for local metawiki groups (T377584)]], [[gerrit:1081138|Set redirect wiki for Special:GlobalContributions (T376612)]], [[gerrit:1080227|temp accounts: Make temp accounts known on metawiki (T376132)]]

Mentioned in SAL (#wikimedia-operations) [2024-10-21T13:57:53Z] <stran@deploy2002> stran, kharlan: Backport for [[gerrit:1081415|Disable IP reveal rights for local metawiki groups (T377584)]], [[gerrit:1081138|Set redirect wiki for Special:GlobalContributions (T376612)]], [[gerrit:1080227|temp accounts: Make temp accounts known on metawiki (T376132)]] synced to the testservers (https://wikitech.wikimedia.org/wiki/Mwdebug)

Mentioned in SAL (#wikimedia-operations) [2024-10-21T14:10:29Z] <stran@deploy2002> Finished scap sync-world: Backport for [[gerrit:1081415|Disable IP reveal rights for local metawiki groups (T377584)]], [[gerrit:1081138|Set redirect wiki for Special:GlobalContributions (T376612)]], [[gerrit:1080227|temp accounts: Make temp accounts known on metawiki (T376132)]] (duration: 14m 55s)

Going to https://test.wikipedia.org/wiki/Special:GlobalContributions as my staff account redirects to https://meta.wikimedia.org/wiki/Special:GlobalContributions.

I notice that if I include a target in the page title (e.g. https://test.wikipedia.org/wiki/Special:GlobalContributions/127.0.0.1) this is not preserved in the redirect (I get redirected to https://meta.wikimedia.org/wiki/Special:GlobalContributions). Depending on what the links to Special:GlobalContributions are like on local wiki, we might want to preserve the subpages. @kostajh

We do preserve URL params when redirecting (e.g. https://test.wikipedia.org/wiki/Special:GlobalContributions?deletedOnly=1&namespace=1 redirects to https://meta.wikimedia.org/wiki/Special:GlobalContributions?deletedOnly=1&namespace=1).

Going to https://test.wikipedia.org/wiki/Special:GlobalContributions with a user with admin rights remains on testwiki and shows:

To view global contributions, please accept the agreement in your global preferences.

While logged out, the message is:

You do not have permission to view IP addresses used by temporary accounts, for the following reason:

The action you have requested is limited to users in one of the groups: Administrators, Bureaucrats, Temporary account IP viewers.

Going to https://test.wikipedia.org/wiki/Special:GlobalContributions as my staff account redirects to https://meta.wikimedia.org/wiki/Special:GlobalContributions.

I notice that if I include a target in the page title (e.g. https://test.wikipedia.org/wiki/Special:GlobalContributions/127.0.0.1) this is not preserved in the redirect (I get redirected to https://meta.wikimedia.org/wiki/Special:GlobalContributions). Depending on what the links to Special:GlobalContributions are like on local wiki, we might want to preserve the subpages. @kostajh

I think we want to fix that, yes.

Unassigned myself in case someone else wants to take this one this week.

Change #1082727 had a related patch set uploaded (by STran; author: STran):

[mediawiki/extensions/CheckUser@master] Support subpage values in Special:GlobalContribution's redirect

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

Change #1082727 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] Support subpage values in Special:GlobalContribution's redirect

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

(as asked by @Tchanders at T385086#10517159, I'm pasting this comment here)

What will be the effect of this task after temp accounts are rolled out everywhere? Will people still be directed to the central wiki or will they see the page on their home wiki?

I'm asking because this redirect will mean that:

  • people by default will see the page in English instead of their language;
  • already-set preferences will not take effect -- e.g. format of displaying dates (incl. timezones), light/dark mode and content width (for Vector 2022) -- I'm not sure how many people set that in their global preferences but rather not many;
  • gadgets and user scripts people are used to will not be loaded;
  • there may be troubles with linking to the page, as one will need to create an interwiki link perhaps using an alphabet/language foreign to them (at least in a scenario like now where the special page does not exist locally);
  • the return path is hard, as all the links in the UI lead to a different wiki than the user went from

@Niharika @KColeman-WMF @Urbanecm Do you have any thoughts on redirecting to the central wiki?

A couple of thoughts from me:

  • GlobalContributions could be used as an overview of a user's contributions globally, with follow-up on the local wikis if more detail is needed. (E.g. GlobalContributions will only show the latest 20 contributions from each wiki.)
  • However, the main motivation of a central wiki seemed to be to have the logs in one place, and I'm not sure how important that is.

On a more structural level, I do not understand why instead of making the link point to Meta, the team decided that the best thing they could do was to make the special page a 301 redirect. It would’ve been faster for end-users if the link just pointed to Meta in the first place.

On a more structural level, I do not understand why instead of making the link point to Meta, the team decided that the best thing they could do was to make the special page a 301 redirect. It would’ve been faster for end-users if the link just pointed to Meta in the first place.

We still need to have a 301 redirect for the special page, so that any links in wikitext work. Furthermore, Special:SpecialPages would have this link too.

As to why the links don't point to meta, it's simpler in the code to make a link to a local page than a central page where the target is defined via configuration. Plus single wiki installs used for testing still have the special page, which doesn't have a need to point to a different wiki.

If the 301 redirects are a problem, we can always update the links defined by software to point to the central page instead of relying on the redirect.