AbuseFilter allows privileged users to create filters that execute on each edit. AbuseFilter duplicates a lot of the functionality of wiki pages, including revisions ( history / change logs / recent changes / diffs ), discussions (notes), and import/export
but, is also missing some of the functionality that wiki pages have that filters could benefit from, such as open talk pages (T95737), ability to watchlist filters (T62588), "view changes" before saving, and partial blocks
Since everything is a wiki page, filters should also be a wiki page. This would remove a significant amount of code from AbuseFilter, and give filters additional functionality.
The filters should be stored with custom extension (.filter ?) and content model.
AbuseFilter should use Multi-Content-Revisions to store the filter code in the main slot, and in metadata (serialized as JSON) in another slot.
Lastly, AbuseFilter should implement the userCan hook to control access to the filters (i.e. if a filter is marked as Private, it should prevent read for all unprivileged users of both the content and the discussion page). The private filters will also need to be filtered out of the database replicas (that are available on Toolforge and as dumps).
Current status: nice to have idea, but not feasible in the short term due to inability to restrict viewing of private filters