Enrich the "change project tags" transaction in "transaction.search"


Enrich the "change project tags" transaction in "transaction.search"

Depends on D20208. Ref T13255. See that task for some long-winded discussion and rationale. Short version:

  • This is a list of operations instead of a list of old/new PHIDs because of scalability issues for large lists (T13056).
  • This is a fairly verbose list (instead of, for example, the more concise internal map we sometimes use with "+" and "-" as keys) to try to make the structure obvious and extensible in the future.
  • The "add" and "remove" echo the *.edit operations.

Test Plan: Called transaction.search on an object with project tag changes, saw them in the results.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13255

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