Page MenuHomePhabricator

Implement functionality for RC page 'Type of change' filters
Closed, ResolvedPublic

Description

Provides filtering and/or highlighting for a variety of types of edits.—three of which are in the default filter set. Find the authoritative interface text (filter names and descriptions) for these at T149385. There are five filters in the group:

  • Page edits This basically targets "content" edits on article and talk pages—though in truth it's everything that's not covered by any of the other four filters in this section
  • New pagesPage creations All edits that create pages (includes pages that are not strictly "new" but were deleted then re-created).
  • Category edits changes Shows changes to categories. (Note, when a category is applied to a page, two changes result: one change to the page and change one to the category. This targets the latter.)
  • Wikidata edits: Targets edits that change a page in the current wiki but originated in a Wikidata change.
  • Log Logged actions : Targets all the log edits currently shown on the Recent Changes page (a subset of those at Special:Log).

About the functionality of these filters

  • The current RC page includes the ability to hide/show wikidata and category edits. It also includes the ability to identify new pages. These existing functionalities can be used as the basis for the filters described here.
  • HOWEVER, like all filters in the enhanced RC page filter UI, these filters conform to a set of rules that are, in some ways, very different from the existing RC page filters. The existing filters are designed primarily to EXCLUDE selected properties (in this case, wikidata or category edits). The new filters are designed to INCLUDE those properties; logically, each new group is a set of OR filters (with each group of ORs being connected to other groups by ANDs). Which means the filters in this group follow these rules:
    • To INCLUDE property A, users check the box for property A.
    • To EXCLUDE property A, the user must uncheck A and check it's complements, properties B, C, D and E.
    • If NONE of A through E are checked, then ALL are included.
    • If ALL A, B, C, D, E are checked, then the result is the same: ALL are included.
  • As per T146076, searches on the RC page are meant to be bookmarkable. Please make sure your search adds query strings to the URL.
  • As per T149391, three of these filters are defaults: Page edits, New pages and Log actions.

Related Objects

Event Timeline

Change 321478 had a related patch set uploaded (by Sbisson):
Special:RC filters: hide page edits, new pages, log entries

https://gerrit.wikimedia.org/r/321478

Change 321478 merged by jenkins-bot:
Special:RC filters: hide page edits, new pages, log entries

https://gerrit.wikimedia.org/r/321478

@SBisson - Presently, pages that are marked with 'N' in RC can be Flow boards topics (e.g. cawiki production). The filter hidenewpages does not exclude them (new wikitext pages are excluded) . Is it intentional? Topics have page id.

Also, any restriction on pages in other namespaces to be classified as new for hidenewpagesfilter?

Flow new topics are marked as new pages visually but Flow is not stored in recentchanges so that's why they are not filtered. But from the Flow extension, we can make it respect the hidenewpages filter and I think we should.

Also, Flow conversations can be pretty noisy, we should consider a "conversation" entry in the type of changes group in the UI so we can filter them out. Ping @jmatazzoni , @Pginer-WMF

Flow new topics are marked as new pages visually but Flow is not stored in recentchanges so that's why they are not filtered. But from the Flow extension, we can make it respect the hidenewpages filter and I think we should.

Also, Flow conversations can be pretty noisy, we should consider a "conversation" entry in the type of changes group in the UI so we can filter them out.

So if I understand you correctly, you're saying that in Flow wikis, new Flow topics show up in RC page results with a big N. And there are a lot of them. They are not currently being captured by the New Pages filter, but they could be.

So, I think that yes, we should make it so that the New Pages filter picks those Flow topics up. I mean, each topic does have an associated page, right? So it makes sense, I guess.

But at this time, I'm not sure we should get involved in defining and creating a "Conversations" filter to capture them—even though, use-case wise, someone who wants to patrol new pages probably does not want to see Flow topics. I say this mainly because that hypothetical new page patroller can use the Namespace filter to remove those entries (or most of them) from results, right? But also because I'm not sure we want to deal with this right now, as there is some complexity involved. E.g., we'd presumably only show the Conversations filter to Flow wikis....

I could be persuaded otherwise. @Pginer-WMF, what do you think?

I could be persuaded otherwise. @Pginer-WMF, what do you think?

If new flow topics are marked by the "N" as new pages, I think it makes sense to make them to be affected by the new page filters.

Given that new pages are already shown by default, we are not increasing such volume with this change. In addition, currently it is already possible to filter by namespace: reviewers can focus on the article namespace if that is what they want to focus on, or exclude discussion namespace if that's what they want to ignore.

Flow new topics are marked as new pages visually but Flow is not stored in recentchanges so that's why they are not filtered. But from the Flow extension, we can make it respect the hidenewpages filter and I think we should.

Also, Flow conversations can be pretty noisy, we should consider a "conversation" entry in the type of changes group in the UI so we can filter them out.

So if I understand you correctly, you're saying that in Flow wikis, new Flow topics show up in RC page results with a big N. And there are a lot of them. They are not currently being captured by the New Pages filter, but they could be.

Yes, captured as T154486: Special:RC - have 'hidepageedits' filter out all Flow changes

While it's possible to filter everything by namespace with a combination of *_talk and Topic, I think presenting conversations as a type of change, next to wikidata, edits, log, etc makes it more discoverable. But I agree there's probably more work involved in figuring out for which users and in which circumstances this is a problem and how to best solve it. I've filled T154489: Filter Flow conversations in or out for if/when we want to address this.

@Etonkovidova, did you confirm that the "Page creations" filter (formerly "New pages") returns Flow conversations, as we decided above (and that those Flow conversations get the "N")?

Also, the names of these functions have changed, as documented in T149385. See below for corrected filternames. To the extent the code can be consistent with the filternames, it will keep everyone from getting confused. @SBisson, please confirm the new names are used to the extent possible. (I've updated the descriptions above with the approved names.) Thanks.

  • Page edits
  • New pagesPage creations
  • Category edits changes
  • Wikidata edits
  • Log Logged actions

Also, the names of these functions have changed, as documented in T149385. See below for corrected filternames. To the extent the code can be consistent with the filternames, it will keep everyone from getting confused. @SBisson, please confirm the new names are used to the extent possible. (I've updated the descriptions above with the approved names.) Thanks.

The filter names are consistent with the field or concept they filter on, as described in the code. I would prefer to leave it like that so the code is more consistent with itself, even if it's not always identical to the UI.

@SBisson rc_type = 142 (Flow post edits) won't be filtered out by hidepageedits=1

@SBisson rc_type = 142 (Flow post edits) won't be filtered out by hidepageedits=1

At this time Flow doesn't provide any filtering.

We talked about having it respect hidenewpages in T154486 and I filed T154489 to think about the general issue. Having it respect hidepageedits is an interesting idea that would help at least with some scenarios.

@jmatazzoni: Edits on Flow boards won't be filtered out by hidepageedits (the similar issue is with hidenewpages which is being addressed with T154486: Special:RC - have 'hidepageedits' filter out all Flow changes). Should we filed it as a separate ticket?

QA recommendation: Product should weigh in.

In the scheme we've defined, Flow edits (excluding Flow edits that create a new topic) belong with Page edits and only Page edits. That should be our goal.

So, to use a negative example, if I uncheck everything except Category changes, I should see Category changes only—and no Flow edits. If that is not what is happening—if Flow edits are slipping through because they're not addressed by the RC page filters—then we should fix that.

@SBisson, can you clarify? Will Flow edits be included with Page edits and only Page edits? (If not, do you want to fix it in this ticket or should we create a separate ticket?)

In the scheme we've defined, Flow edits (excluding Flow edits that create a new topic) belong with Page edits and only Page edits. That should be our goal.

So, to use a negative example, if I uncheck everything except Category changes, I should see Category changes only—and no Flow edits. If that is not what is happening—if Flow edits are slipping through because they're not addressed by the RC page filters—then we should fix that.

@SBisson, can you clarify? Will Flow edits be included with Page edits and only Page edits? (If not, do you want to fix it in this ticket or should we create a separate ticket?)

tldr: I'm working on T154486, which rolls new topics into the "new pages" filter. I will include all other Flow changes in the "page edits" filter as part of the same ticket, which I've updated accordingly.


It's unfortunately not as simple as it sounds since from RC's perspective, all this data is only tagged as "Flow". There's no notion of "new" or anything else. It makes it quite hard to filter. I'll probably have to change how data is stored.

The "N" is added during rendering when all the data is loaded and we can check a number of Flow-specific conditions (first version of the first reply to a non-moderated topic - it has nothing to do with the related Topic page).

The team met about this today and made the following decisions:

  • As per T154486, all Flow edits will be captured by the Page Edits filter.
  • We will NOT distinguish between new Flow topic creations and other flow edits, which means Flow topic creations will not be captured by the Page Creations filter.
  • However, new Flow Topics will continue, as now, to be marked with the N by the system.

@SBisson and @Mattflaschen-WMF, let me know if I've misstated or missed anything.

So, given the above, can we close this ticket?

yes