Page MenuHomeMiraheze

User groups disappeared
Closed, InvalidPublic

Description

After an update regarding MirahezeMagic, user rights now redirect to [[User groups]] in Meta. On some wikis, user rights are practically gone (the name (Bureaucrat, administrator, etc.) in Special:Statistics, Special:Preferences, for example). This happened on some wikis. I've already made a report like this on [[community noticeboard]] and a user says he forwarded it to the Miraheze SRE. Also, if this is a duplicate, apologies. If anyone tries to help here, I'd be very grateful. Thanks.

Event Timeline

Universal_Omega claimed this task.

This was done intentionally as requested by a Steward (Dmehus), the PR that did this can likely be reverted on community/Steward desire. We merged it because it was something effecting wikis so in my opinion when I merged it, Steward jurisdiction and based on the opinion of the Steward not requiring community consensus (and since its there job to gain consensus) I merged it. This'll likely have to go through community venues.

I'm not talking about the link that redirects to User groups, but the rights that disappeared. Is this on purpose? Because, it appears on some wikis and not others.

Oh, you mentioned linking to meta. My apologies.

Manual creation of the group pages does not resolve the issue.

Why are we overriding group-bureaucrat? It is an override with the exact same text as default... I guess I missed that when merging PR.

It works on some languages also like https://gtavariants.miraheze.org/wiki/Special:Statistics?uselang=fr

I'm also not able to reproduce this at all on my own wiki.

This happens on the wiki, I used a few of my local languages and they didn't show up (ig,ha) but when I tried fr as you did, it worked, But en didn't too.
So there must be something wrong.

Maybe purge the wiki or something

Maybe purge the wiki or something

How do you purge a wiki?

It's on a sysadmin caps, maybe @RhinosF1 could help if he wants to.

Hello. It's been a few days and this is still active. Are in the service to discover something? Or do I have to do something?

After manually creating the groups in MediaWiki:Grouppage, I "solved" the problem as the groups came back. https://gtavariants.miraheze.org/wiki/Special:Statistics @dross creating the pages "solved" the problem

Even so, not planning to close as resolved because it's a problem in several wikis and have to do something manual to avoid it instead of reappearing by itself, and, this only happens with pages that redirect to User groups.

@YellowFrogger If this task is to stay open, we'll need another where this is happening in order to be able to debug/fix.

@YellowFrogger If this task is to stay open, we'll need another where this is happening in order to be able to debug/fix.

It's on planetariumwiki as well.

After manually creating the groups in MediaWiki:Grouppage, I "solved" the problem as the groups came back. https://gtavariants.miraheze.org/wiki/Special:Statistics @dross creating the pages "solved" the problem

Hmmm, that's strange. Doesn't appear to be the case on planetariumwiki.

In T8667#176789, @dross wrote:

After manually creating the groups in MediaWiki:Grouppage, I "solved" the problem as the groups came back. https://gtavariants.miraheze.org/wiki/Special:Statistics @dross creating the pages "solved" the problem

Hmmm, that's strange. Doesn't appear to be the case on planetariumwiki.

Correction: Only works for local pages. Tested with MediaWiki:Grouppage-bot and MediaWiki:Grouppage-bureaucrat.

John claimed this task.
John added a subscriber: John.
> var_dump( UserGroupMembership::getGroupName( 'sysop' ) );
string(14) "Administrators"

> var_dump( UserGroupMembership::getGroupPage( 'sysop' ) );
object(Title)#706 (25) {

Both code snippets return values as expected.

> $lr = \MediaWiki\MediaWikiServices::getInstance()->getLinkRendererFactory()->create();

> var_dump( $lr->makeLink( UserGroupMembership::getGroupPage( 'sysop' ), UserGroupMembership::getGroupName( 'sysop' ) ) );
string(146) "<a href="https://meta.miraheze.org/wiki/Special:MyLanguage/User_groups#Administrators" class="extiw" title="m:Special:MyLanguage/User groups"></a>"

> var_dump( $lr->makeLink( UserGroupMembership::getGroupPage( 'bureaucrat' ), UserGroupMembership::getGroupName( 'bureaucrat' ) ) );
string(172) "<a href="/w/index.php?title=The_Planetarium:Bureaucrats&amp;action=edit&amp;redlink=1" class="new" title="The Planetarium:Bureaucrats (page does not exist)">Bureaucrats</a>"

Strange that it can be reproduced in code.

> var_dump( $lr->makeLink( UserGroupMembership::getGroupPage( 'sysop' ), "Administrators" ) );
string(146) "<a href="https://meta.miraheze.org/wiki/Special:MyLanguage/User_groups#Administrators" class="extiw" title="m:Special:MyLanguage/User groups"></a>"

> var_dump( $lr->makeLink( UserGroupMembership::getGroupPage( 'sysop' ), "Hello" ) );
string(151) "<a href="https://meta.miraheze.org/wiki/Special:MyLanguage/User_groups#Administrators" class="extiw" title="m:Special:MyLanguage/User groups">Hello</a>"

> var_dump( $lr->makeLink( UserGroupMembership::getGroupPage( 'sysop' ), "Sysop" ) );
string(151) "<a href="https://meta.miraheze.org/wiki/Special:MyLanguage/User_groups#Administrators" class="extiw" title="m:Special:MyLanguage/User groups">Sysop</a>"

Even stranger that it is the text string "Administrators" that is seemingly refusing to load. A bit of debugging has led me to this section of code as being responsible for the change.

> var_dump( $lr->makeKnownLink( UserGroupMembership::getGroupPage( 'sysop' ), "Administrators" ) );
string(14) "Administrators"
object(HtmlArmor)#555 (1) {
  ["value":"HtmlArmor":private]=>
  bool(false)
}

So it is clearly a hook. The only extension that is enabled that uses this hook is DisplayTitle. If we delve into DisplayTitle, we see $text is manipulated to be an object of type HtmlArmor here

Looking into the code, this actually seems expected behaviour. DisplayTitle recognises the links as being real, existing pages. When it attempts to retrieve the title for a page it believes exists, it returns an empty string.

Solutions are:

  • revert the above changes
  • change MediaWiki:grouppage-sysop, etc. locally
  • investigate a solution within DisplayTitle on how to resolve this strange situation
  • do nothing.

All the above solutions can be handled separately, so as far as this task is concerned, I believe this is resolved as invalid.