Requests for comment/Global AbuseFilter/Proposal
Hello. As you probably know, AbuseFilter is a MediaWiki extension which is used to prevent vandalism and spam. More specifically, admins and other privileged users create "filters" which detect a certain pattern of abuse. The admin can make any filter "public" (where anyone can view the source and the log of all hits) or "private" (only privileged users can view the source and log). Abuse filters can match edits or other actions. From this point on, they may simply be referred to as "edits", so they are not confused with the action that the filter triggers. The admin can choose among the following actions to be triggered when a matching edit is found: tag the edit, prevent the edit, warn the user, or block the user (or none of these, or a combination). Whenever an edit trips the filter, it is logged. It is also possible to only rate limit certain patterns of editing using filters, but this is not the default.
AbuseFilters are a good tool for local admins to deal with spam, but what about cross-wiki spam/abuse? The work to create global abusefilters started in 2009, but was not completed for several years. In 2012, a proposal to create a "Global AbuseFilter" was created. A vote was held on the talk page, with a majority of supports, but it was not well-advertised and had little participation. For almost two years, the proposal was mostly dead, but the technical implementation continued (slowly). In 2014, Global AbuseFilters were enabled on a limited set of wikis (metawiki, specieswiki, incubatorwiki, testwiki, test2wiki, mediawikiwiki, and "small wikis"). This was the beginning of the trial phase. Global filters have recently been activated on "medium sized wikis" (list) as well. Some rules about global filters were proposed, but never completely accepted.
I think we should have some policies and guidelines about global filters, so I encourage discussion of any of the following points.
Also feel free to propose new ideas, especially toward the beginning of the RfC (so there is time to discuss them). After all, this is a request for comment, not a vote.
Should cross-wiki filters exist at all? [edit]
I think so. It helps with dealing with cross-wiki abuse (spam in particular), and makes local admins' jobs easier.
Who should be allowed to create/edit/view global abuse filters and the abuse logs? [edit]
Currently stewards and abuse filter editors can create, edit, and view global filters, and Meta admins can also view global filters. It is also possible for stewards to globally enable filters created by local Meta admins, because Global AbuseFilter is controlled from Meta-Wiki. Should there be a process to request abuse filter editor rights? Should global sysops be granted this right by default? Should local admins be allowed to view filters and disable them locally on a case-by-case basis, or at least view the abuse log?
What should they be used for? [edit]
Currently: Cross-wiki spam and vandalism. For abuse that only affects one or two wikis, local filters should be used. Global filters should be used for spammers or vandals that actually hit multiple wikis. Anything else?
What actions should be allowed? [edit]
Previously proposed: Filters which do anything other than tagging should have the non-tagging actions removed after 1 week of no valid (non-false-positive) hits of the global filter.
The blocking function is available because Meta decided to use it locally and global filters depend on the AbuseFilter interface of Meta. It was previously proposed that global filters should not get the block function set until a real policy about using it has been created, but this proposed guideline has been ignored a few times; for example, there was very recently a blocking global filter (although there probably weren't many false positives on that one). Some possibilities: no blocking, blocking but only after warning, allow blocking in specific cases, always allow blocking. Should local admins be able to control which actions of the global filter apply to their wiki?
Review of existing filters [edit]
Perhaps stewards and Meta admins should review the last 200 hits of each active global abuse filter (as of this RfC), and count the number of false positives.
In the future, maybe stewards should disable filters with no hits after a certain time, or disable non-tagging actions (see previous section).
What wikis should it apply to by default? [edit]
Proposed: Maybe small and medium sized wikis by default, but allow opting out or in. More specific?