HomePhabricator

Disallow revisions in deleted boards

Authored by matthiasmullie.

Description

Disallow revisions in deleted boards

Unless user has deletedhistory permissions

This could have a performance impact: now every check will
require workflow to be loaded.
However, on "regular" pages, the workflow should've already
been loaded anyway. In listings (contribs, RC, history, ...),
these should be batchloaded & buffered cache will take care
of this.

Even though the performance hit should be negligable, if any,
I originally wanted to do this differenty: I wanted to hook
into WikiPageDeletionUpdates & delete every topic (and post?)
in that board. However:

  • I don't want to create a bogus delete revision
  • If board gets restored, it could get weird to figure out if a topic was auto-deleted along with board (and should also be restored), or was previously genuinly deleted
  • Perhaps workflow could be deleted instead, but that's going to require some refactoring & we'd still need it to render the revisions in lists
  • Haven't even looked if there's a hook after restoring a board (though there probably is, or we could add one)

Either way, that idea didn't look promising, but I'm open to
other wild suggestions.

Bug: T90969
Change-Id: I60b34868871ab17455cb2e03f6a44ac42e1c896e