Owners not triggering audit on No Owner Involvement

Hi, after updating Phabricator to latest version (idk what version we had before) Owners stopped triggering audits on rule “No owner involvement”.

I believe, I found bug in your code (there is no reproduction, sorry, but just look at the code, I think it is obvious and you should be able to reproduce bug than).

Basically, when I started tracking what code might be responsible I got to this if($audit_uninvolved)
PhabricatorRepositoryCommitPublishWorker.php$253-262

In our situation (where it is not working) we have commit, single package and author - no review.

So if we continue through IsOwnerInvolved function, we get to these lines, where I believe should be return false instead of true.
PhabricatorRepositoryCommitPublishWorker.php$296-298
(Even comment says so … there is no owners involvement so IsOwnerInvolved -> return false if author is not involved and there is no revision to work with)

This bug was probably introduced in https://secure.phabricator.com/D20126 where you moved pieces of code from shouldTriggerAudit into isOwnerInvolved. You correctly inversed all return values, except for this one.

PS: this line of code seems useless, you can probably remove it :slight_smile: https://secure.phabricator.com/source/phabricator/browse/master/src/applications/repository/worker/PhabricatorRepositoryCommitPublishWorker.php$148

Thank you for fixing this.

Thanks! I filed a placeholder for this at https://secure.phabricator.com/T13402 until I can triage it properly.

Hi, no problem :). After switching it to false on our local installation, everything started working again, so this should be swift and easy to fix :). Just try to create Owners package A with UserA controlling PathA with No Owner Involvement audit settings and then take UserB and commit something into PathA (without revision).