User:Legoktm/Global filters everywhere

This RfC proposes to enable global AbuseFilter (also called edit filter on some wikis) across all public Wikimedia wikis. The AbuseFilter is our first line of defense in fighting spam and vandalism, and the global AbuseFilter allows for trusted Wikimedians to use their expertise to defend all Wikimedia wikis, especially smaller ones that do not have as strong technical members. Global AbuseFilters have been enabled on all "small", "medium" and some opt-in "large" wikis to great success.

Recently we have seen our cross-wiki vandals and attackers become more aggressive and sophisticated to the point where we need to increase our ability to defend Wikimedia wikis against them. Global AbuseFilter is used to track these attackers across multiple wikis, except not being able to see or stop them on large wikis is a problem that hinders the response and adds extra work for local communities. Wiki autonomy is important, but global filters are used for anti-spam and vandalism that is already being reverted and stopped universally on all of our wikis, so this really doesn't change that.

This will enable global AbuseFilters on the following wikis:

  • arwiki
  • cawiki
  • cebwiki
  • commonswiki
  • cswiki
  • dewiki
  • enwiki
  • enwikinews
  • enwiktionary
  • eswiki
  • fawiki
  • fiwiki
  • frwikisource
  • frwiktionary
  • hewiki
  • huwiki
  • idwiki
  • itwiki
  • jawiki
  • kowiki
  • mgwiktionary
  • nlwiki
  • nowiki
  • plwiki
  • rowiki
  • ruwiki
  • ruwiktionary
  • shwiki
  • srwiki
  • svwiki
  • trwiki
  • ukwiki
  • viwiki
  • zhwiki
  • zhwiktionary

No wiki will be allowed to opt-out of global filters. If there is a problem with actions taken by a global AbuseFilter maintainer, it can be discussed on Meta-Wiki just like any other conflict between global rights and local wikis would be.

Preparation edit

(This section will be moved to the talk page before publishing).

It would be nice if we had a brief explainer of how global filters have been used in the past few years, who can modify them, and if there have been any incidents or conflicts with local communities (I can't remember any off the top of my head). Legoktm (talk) 06:38, 19 February 2022 (UTC)

Also if someone could prepare a MassMessage spam list to notify the affected wikis about this. Legoktm (talk) 06:38, 19 February 2022 (UTC)

Need to make it clear that "global AbuseFltire maintainer" is for editing filters everywhere, but to edit global filters you just need to be a meta admin --DannyS712 (talk) 20:32, 19 February 2022 (UTC)
@Legoktm: I understand the need for this, but I think it would be much more palatable if there were a way for EFMs on a local wiki to opt-out of specific filters (or least limit some filters to log-only), like how admins can override global blocks. Suffusion of Yellow (talk) 22:24, 19 February 2022 (UTC)
I see a potential need for this as log-only, which I don't think is really an issue, but don't really see the need for disallow/warn/etc filters without opt-out. ProcrastinatingReader (talk) 23:48, 9 March 2022 (UTC)
@Legoktm: Question: What will happen if a global filter is set to block, but the wiki doesn't have AbuseFilter blocking enabled? Will the edit simply be disallowed? Suffusion of Yellow (talk) 22:41, 11 March 2022 (UTC)
@Suffusion of Yellow: I can answer that -- the actions from global filters can be disabled locally. This is independent from the list of actions enabled locally, and can be configured via $wgAbuseFilterLocallyDisabledGlobalActions. Right now no action is disabled, but that can be changed per-wiki if need be. --Daimona Eaytoy (talk) 14:01, 12 March 2022 (UTC)
Thanks! I didn't realize that level of control was possible. So how's this for a refined proposal?
  • By default, only actions that were enabled for local filters are enabled for global filters.
  • Any wiki may choose to opt-in to additional actions on request.
  • Any wiki may choose to opt-out of any action (except log or "throttle") on request.
For example, enwiki has "throttle", "tag", "warn", "disallow", and "blockautopromote" enabled. So "block" would be added to $wgAbuseFilterLocallyDisabledGlobalActions from the start. And if enwiki says "nope, tagging is alright but the rest have gotta go", then "warn", "disallow", and "blockautopromote" are added also. Suffusion of Yellow (talk) 19:37, 12 March 2022 (UTC)
@Suffusion of Yellow: Personally, I'd also be fine with leaving all actions enabled, since I trust the people who edit global filters on meta to be very cautious about changes to filters with "dangerous" actions. However, I do think it would make sense to only include locally-enabled actions for now, since I assume we want to play it safe. But perhaps we could do that only for wikis where global filters are not enabled yet, and leave all actions enabled on the others, since that's the status quo. Also, I would not allow disabling "warn", because it can have unintended side effects (e.g. a filter has warn+block, if warn is locally disabled but block is not it will block on the first attempt). --Daimona Eaytoy (talk) 19:52, 12 March 2022 (UTC)
@Daimona Eaytoy: Certainly, any combination with weird unintended effects wouldn't be allowed. So no disabling "warn" unless you've also disabled "disallow", "block", and "blockautopromote". And yes, I meant for wikis in the list above. The others can stay as they are. Suffusion of Yellow (talk) 20:00, 12 March 2022 (UTC)

If we want to move this forward (which I'd very much support), I think we should resolve phab:T309609 first. --Daimona Eaytoy (talk) 12:43, 31 May 2022 (UTC)