Author: FT2.wiki
Description:
This request is to allow "per page" filters, similar to "edit notices", as opposed to filters with a /condition/ "PAGE == [[...]]".
RATIONALE AND DETAIL:
I am considering the uses of AbuseFilter, once we get to grips with it and it's been in place a while. The filter extension has immense potential for "per article" filtering, where a filter could act to inhibit very specific kinds of vandalism and warring entries from a specific article, or warn about re-addition of specific problem content (eg to a BLP), and the like. many, many articles might benefit from this. It may be that there are "project-wide" filters, and as well, many articles have their own custom filter. There are surely well-known vandalisms or problem edits (eg on evolution, BLPs, nationalism, "stuff in the news") where AbuseFilter could actively be used to detect attempts to reinstate the problem text, and be a very major tool against vandalism.
Per-article filters could therefore replace protection or blocking on many topics over time, by inhibiting attempts to post the known problem edits.
For example if a newspaper wrote that "X may be gay" or "Y may have lied" about some individual, a filter specific to that biography or article could be created to warn about this issue and direct users to discussion on the talk page, or even block its addition, if and only if a user tried to add that specific matter to the article. If a bad source is being repeatedly added against consensus using socks or dynamic IPs, a filter could be created to prevent the addition, explain why, link to the discussion, and warn the user not to re-add it without consensus. If it was one (banned) edit warrior, the filter could even be configured (given consensus) to automatically block the account as a ban evasion account, on attempting to add that source.
Many articles could benefit from something of this capability. They might be designated by means of a "Requests for Filter" process, in which a filter to warn or prevent a specific kind of abuse on that article is designed and active for a period of time, following evidence of a type of persistent abuse (see also: bug 18246 "Expiry time option on filters"). There are many kinds of abuse that would benefit from this.
At present, all filters affect an entire project. There is an "if page=X" option but for various reasons it's less than ideal. Each filter must be checked, for each edit, leading to an upper limit on the number of checks (and hence filters) in total. "Per article" filters get round that because AbuseFilter would only check the general project filters and specific filters saved against that article, ignoring competely any filter settings that might exist against other articles.
Not running these filters on every edit (where it isn't relevant to that article) by having some filters indexed with the article itself, would 1/ be much smarter, and 2/ therefore allow much wider use of filters for abuse on many individual articles and topics without server lag.
In essence, I'm envisaging the potential to use abuse filter widely. We might end up with a few tens or even hundreds of thousands of articles with custom filters on them, much like we have many articles with protection or the like. An article becomes subject to a given type of abuse? Post a [[WP:Request for Filter]] and if agreed and feasible, a filter will be set up to prevent it for a limited period. Obviously good (bug-free) filter design would be essential, but we'll gain experience at filter design, and this would be an immensely capable anti-vandalism tool. I think it's got enough potential that once we get the hang of managing wiki-wide filters, article-specific filters will be immensely useful :)
Version: unspecified
Severity: enhancement