There should be a place (places due to RC vs. watchlist issue) on the backend where you can configure:
* What filters there are
* Whether they are available on new RC page, or both old and new.
* The default value (may be based on a preference, can vary by watchlist vs. RC, e.g. 'hideminor' vs. 'watchlisthideminor' preferences) (the default can vary for non-preference cases too)
* The actual modification this makes to the DB query
* Prioritization (where it appears in the filter list)
* Filters that imply other filters (e.g. if you select "Likely have problems", it should also find edits that are "Very likely have problems").
This needs to extensible by extensions (we already have a need for this, e.g. ORES, Wikidata, Translate).
I suggest hooks would be a good option for extensibility, but @mooeypoo points out having extensions modify a wg could work.
Potentially pass in callbacks to a registration method, and disable if there are any missing (e.g. {T152797}).