Page MenuHomePhabricator

Hide auto-promotions into the local 'checkuser-temporary-account-viewer' group in Special:RecentChanges
Closed, ResolvedPublic

Description

WMF stewards have expressed that they would prefer that the auto-promotions into the checkuser-temporary-account-viewer group on metawiki be hidden from Special:RecentChanges. This is because there are currently a lot of of these entries being generated.

We should hide the auto-promotion into this group to avoid spamming recent change feeds.

Acceptance criteria
  • Hide the auto-promotion into the checkuser-temporary-account-viewer group from Special:RecentChanges on WMF wikis

Event Timeline

@Dreamy_Jazz Just to clarify, does this mean that we should hide these autopromotion logs everywhere, and not just temporarily now for meta?

@Dreamy_Jazz Just to clarify, does this mean that we should hide these autopromotion logs everywhere, and not just temporarily now for meta?

I believe that we should hide these everywhere and not just temporarily, based on feedback that was received. If a wiki wants to undo this, we probably would implement the hiding via config so we could undo it for just that wiki.

Seems fine to me. I don't have any concerns about doing this.

mszabo changed the task status from Open to In Progress.Oct 29 2024, 11:44 AM
mszabo claimed this task.

Change #1084262 had a related patch set uploaded (by Máté Szabó; author: Máté Szabó):

[mediawiki/core@master] user: Allow excluding autopromotions into select groups from RC

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

Change #1084262 merged by jenkins-bot:

[mediawiki/core@master] user: Allow excluding autopromotions into select groups from RC

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

Test Plan:

  • Setup some user groups with an associated $wgAutopromoteOnce condition.
  • Set $wgAutopromoteRCExcludedGroups to include at least one of these user groups.
  • Set $wgAutopromoteOnceLogInRC to true.

Upon evaluating one-shot autopromotion, if all new autopromote groups are part of $wgAutopromoteRCExcludedGroups , no RC entry should be created as a result of the autopromotion, but the change should still be recorded in the logging table.
In every other scenario, an RC entry should be published as well.

@mszabo I have in my LocalSettings.php:

$wgAutopromoteOnce = [
	'onEdit' => [
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];
$wgAutopromoteRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ];
$wgAutopromoteOnceLogInRC = true;

As a new user, I make an edit. In Special:RecentChanges, I see <user> was automatically promoted from (none) to temporary account IP viewer.

I have tried looking at the logs but I cannot work out why this is happening.

@mszabo I have in my LocalSettings.php:

$wgAutopromoteOnce = [
	'onEdit' => [
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];
$wgAutopromoteRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ];
$wgAutopromoteOnceLogInRC = true;

As a new user, I make an edit. In Special:RecentChanges, I see <user> was automatically promoted from (none) to temporary account IP viewer.

I have tried looking at the logs but I cannot work out why this is happening.

It seems that the config name was typed incorrectly in the comment above. It is named $wgAutopromoteOnceRCExcludedGroups.

@mszabo I have in my LocalSettings.php:

$wgAutopromoteOnce = [
	'onEdit' => [
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];
$wgAutopromoteRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ];
$wgAutopromoteOnceLogInRC = true;

As a new user, I make an edit. In Special:RecentChanges, I see <user> was automatically promoted from (none) to temporary account IP viewer.

I have tried looking at the logs but I cannot work out why this is happening.

It seems that the config name was typed incorrectly in the comment above. It is named $wgAutopromoteOnceRCExcludedGroups.

Yeah, that's right. Sorry about the confusion!

Ah, right, thanks!

With:

$wgAutopromoteOnce = [
	'onEdit' => [
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];

I don't see an RC entry when I set:

  • $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ]; or
  • $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer', 'captain' ];

With:

$wgAutopromoteOnce = [
	'onEdit' => [
		'captain' => [ APCOND_EDITCOUNT, 0 ],
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];

I don't see an RC entry when I set: $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer', 'captain' ];

I do see an RC entry when I set $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ];

I believe that is what we want based on T377829#10280740.

Test environment: local docker MediaWiki 1.44.0-alpha (f0dfd5e) 07:04, 1 November 2024.

Ah, right, thanks!

With:

$wgAutopromoteOnce = [
	'onEdit' => [
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];

I don't see an RC entry when I set:

  • $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ]; or
  • $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer', 'captain' ];

With:

$wgAutopromoteOnce = [
	'onEdit' => [
		'captain' => [ APCOND_EDITCOUNT, 0 ],
		'checkuser-temporary-account-viewer' => [ APCOND_EDITCOUNT, 0 ],
	]
];

I don't see an RC entry when I set: $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer', 'captain' ];

I do see an RC entry when I set $wgAutopromoteOnceRCExcludedGroups = [ 'checkuser-temporary-account-viewer' ];

I believe that is what we want based on T377829#10280740.

Test environment: local docker MediaWiki 1.44.0-alpha (f0dfd5e) 07:04, 1 November 2024.

Yeah, we still want the RC entry to be generated if the one-shot autopromotion caused some other groups to be added that are not explicitly marked for exclusion from RC. Looks good!

I guess what is left is to update site config to hide the checkuser-temporary-account-viewer group.

Change #1085593 had a related patch set uploaded (by Máté Szabó; author: Máté Szabó):

[operations/mediawiki-config@master] Exclude temp account viewer autopromotions from RC

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

Change #1085593 merged by jenkins-bot:

[operations/mediawiki-config@master] Exclude temp account viewer autopromotions from RC

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

Mentioned in SAL (#wikimedia-operations) [2024-11-11T13:03:11Z] <dreamyjazz@deploy2002> Started scap sync-world: Backport for [[gerrit:1085593|Exclude temp account viewer autopromotions from RC (T377829)]]

Mentioned in SAL (#wikimedia-operations) [2024-11-11T13:05:40Z] <dreamyjazz@deploy2002> mszabo, dreamyjazz: Backport for [[gerrit:1085593|Exclude temp account viewer autopromotions from RC (T377829)]] synced to the testservers (https://wikitech.wikimedia.org/wiki/Mwdebug)

Mentioned in SAL (#wikimedia-operations) [2024-11-11T13:10:19Z] <dreamyjazz@deploy2002> Finished scap sync-world: Backport for [[gerrit:1085593|Exclude temp account viewer autopromotions from RC (T377829)]] (duration: 07m 07s)

  NODES
Note 3
Project 7