We have users who want to make diffs are in Work In Progress (WIP) state and avoid those diffs kicking off builds to test them (the idea is not disimilar way to https://docs.gitlab.com/ee/user/project/merge_requests/work_in_progress_merge_requests.html ). We also want to ban (or strongly) warn on attempts to land WIP diffs.
Our existing herald rules were modified to search WIP in the diff title via regex and if found then NOT kick off builds. Another rule was added that adds a “reviewblocker” bot to diffs that have WIP in their title. This made users so happy they immediately flocked to the new “feature” only to get to the stage where they were happy with the diff and wanted to remove its WIP state:
- Users removed WIP from the title but found reviewblocker reviewer was still present (I’m not aware of a way to remove a reviewer via a herald rule).
- Even after removing reviewblocker reviewer and changing the title no builds were kicked off. It turns out that an arc diff of an empty commit was required to cause all the herald rules to be reevaluated and for those builds to be initiated.
Is there anything in current Phabricator that makes this idea of a WIP workflow a bit smoother? The draft state (https://secure.phabricator.com/T2543 ) is somehow different again because we like it as it is - we still want builds to happen on things in draft and for things to only transition out of draft when the build has completed successfully.