Page MenuHomePhabricator

Integrate constraint reports into recent changes and watchlist
Closed, DeclinedPublic

Description

I think that WBQC could be very helpful in battling vandalism and accidentally incorrect edits if integrated into the recent changes and the watchlist, similar to ORES. Any edit that adds constraint violations (or, for a simpler first version: that increases the number of violations) could be highlighted.

On the technical side, I imagine that this would require support for specifying revision IDs in the wbcheckconstraints API, and then the user script / gadget would just get violations for the two revisions and compare them (or their count). (This would not be a full history of “what constraint violations existed at this point in time”, since all referenced entities would still be checked in their current version; the API documentation should make that clear.)

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMay 19 2017, 9:30 AM
Lydia_Pintscher triaged this task as Normal priority.Jun 11 2017, 5:42 PM
Lucas_Werkmeister_WMDE closed this task as Declined.Jan 15 2018, 7:29 PM

I think I’ll decline this issue:

  • It’s no longer clear to me how effective it would even be. Certain constraints, like “symmetric” and “inverse”, cannot be satisfied in a single edit. We also use WDQS for several constraint checks, where we don’t have any way of specifying former revision IDs.
  • It sounds like a performance nightmare. We would be sending 50 wbcheckconstraints requests simultaneously every time someone looked at a history page, recent changes, or a user’s contributions. In the case of a history page, all those requests would be for the same entity, which could be a very large one (an uncached constraint check on Q42 currently takes some twelve seconds). And all of these results would either have to be cached separately, or bypass the cache.