Ideally, publish operations should act like this:
- The "Acting As" PHID is the identity PHID associated with the commit. If one does not exist, the acting as PHID is the Diffusion application.
- When we want to respect policies (`Fixes Txxx`), the acting user is the user associated with the identity, if one exists, or the omnipotent user if one does not.
- The "Acting User" in Herald is the acting user associated with the identity, if one exists, or the Diffusion application, if one does not.
---
//Boneyard//
- The `git fetch` change in D20421 may require an adjacent change to the two places where we call `isWorkingCopyBare()` before listing refs. I suspect we can now remove the special casing.
- From D20436, we should go dig up the actual `wire-proto.c` in Git and verify the discovered protocol matches the implemented protocol.