“Run Build Plan” actions can only trigger when a revision is updated with a new diff.
The status is not being considered: Herald is immediately ignoring the rule because “the update which triggered Herald did not update the diff for this revision”. The transactions (visible in the “Transactions” table in the transcript) are an “accept” and a “state change”. Neither of these transactions are a “diff update”, so this set of actions can never trigger a build.
If Herald allowed your rule to run exactly as written, it would trigger a new build every time someone added a comment, subscribed, edited the title, etc., of an accepted revision.
See also some discussion in https://secure.phabricator.com/T13166.
There is currently no way to have Herald run builds in response to events other than diff updates (like a revision becoming “Accepted”, a particular comment, etc). There is no technical reason Herald can’t trigger builds in these cases, but use cases are rare and writing correct rules is difficult. In this case, you likely want something like “[ Transaction group includes a revision status change to ][ accepted ]”, which doesn’t currently exist, and wasn’t easy to implement at the time “Run build plans” was written, prior to https://secure.phabricator.com/T13283.
Herald may support uncommon triggers like this in the future, but there’s currently no customer interest in this and thus no plan to add support for a field like [ Transaction group includes a revision status change to ]
or an action like [ Run build plans even if diff has not changed ]
.
There is a small amount of customer interest in an external API for triggering builds (see https://secure.phabricator.com/T13072), and you could accomplish your goal using Webhooks if this API existed, but the requesting install found a workaround for their use case so this is a low priority and I can’t guess when it will ship.