Rebuild the bulk editor on SearchEngine


Rebuild the bulk editor on SearchEngine

Depends on D18805. Ref T13025. Fixes T10268.

Instead of using a list of IDs for the bulk editor, power it with SearchEngine queries. This gives us the full power of SearchEngine and lets us use a query key instead of a list of 20,000 IDs to avoid issues with URL lengths.

Also, split it into a base BulkEngine and per-application subclasses. This moves us toward T10005 and universal support for bulk operations.


  • Renames most of "batch" to "bulk": we're curently inconsitent about this, I like "bulk" better since I think it's more clear if you don't regularly interact with .bat files, and newer stuff mostly uses "bulk".
  • When objects in the result set can't be edited because you don't have permission, show the status more clearly.

This probably breaks some stuff a bit since I refactored so heavily, but it seems mostly OK from poking around. I'll clean up anything I missed in followups to deal with remaining items on T13025.

Test Plan:

Screen Shot 2017-11-30 at 7.21.52 AM.png (866×1 px, 135 KB)

  • Bulk edited from Maniphest.
  • Bulk edited from a workboard (no more giant ?ids=.... in the URL).
  • Hit most of the error conditions, I think?
  • Clicked the "Cancel" button.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13025, T10268

Differential Revision: https://secure.phabricator.com/D18806