Owners and herald: assign default reviewer if the diff author is the owner and the diff doesn't affect others package



We setup package owners with “Review Changes With Non-Owner Author (Blocking)”. Therefore, there won’t be reviewers if the diff author is the owner.

There is a herald rule: if reviewers doesn’t exists, assign a default reviewer.


PersonA create a diff which contains his packages and PersonB packages.

Expect Behavior

PersonB is the only reviewer of the diff.


phabricator cc11dff7d317b5a1e82e24ab571fef9abb633a49 (Fri, Jan 31)

Any help would be appreciated!

Owners and Herald look at objects, determine all of the effects to apply based on the initial object state, then apply all of those effects.

All effects are applied at once after a decision has already been made about which effects to apply, so Herald rules can not act based on changes applied simultaneously by other Herald rules or other applications like Owners. Put another way: the order in which Herald rules and other similar effects execute never changes the outcome of those rules.

One approach which might work better is to use Webhooks, which execute after transactions apply. See https://secure.phabricator.com/book/phabricator/article/webhooks/.

Thanks for your detailed explanation! Really appreciate it!
Will try webhook.