Page MenuHomePhabricator

Packages that are configured to auto-audit often generate audits that are un-closable
Closed, ResolvedPublic

Description

Here's the setup:

  1. Create a package in Owners and make yourself the only owner.
  2. Create a revision that touches some files in the package. Have someone else review it, make some comments and accept the revision.
  3. Make some changes to the diff (for example to address small nitpicks from the review) and submit the change.

An Audit will be created because "Changed After Revision Was Accepted", which is expected. But one of the auditors will be the package itself and I cannot audit on behalf of that package, since I am the author, so the audit is stuck in a permanent "requires audit" state.

Event Timeline

anton.vladimirov raised the priority of this task from to Needs Triage.
anton.vladimirov updated the task description. (Show Details)
anton.vladimirov added a subscriber: anton.vladimirov.

Other than bin/audit delete, is there any other way for clearing this (preferably automatic)?

You can set audit.can-author-close-audit to true

That doesn't seem to do it. I still get "Partially Audited".

Screen_Shot_2015-03-27_at_12.26.19_PM.png (138×464 px, 34 KB)

In the image above, I (anton) am the owner of both "Viewing Pane" and "Header Display" packages.

I'm seeing this same problem if a single user is a member of two projects. That user can only accept the audit for one of the projects leaving it in this state.

For instance, if user Kevin is in project A and B and a checkin single check-in occurs with changes for both projects, then the revision requires two audits but when Kevin accepts the audit, it only accepts it for one of the projects. To further complicate this issue, if Kevin is the only member of project B when the there is no way to accept the audit.

I'm seeing the same thing:

pasted_file (277×544 px, 30 KB)

The project ends up as being a reviewer and the audit is just partially accepted.

right now, out workaround is to use herald to create the audio, and use "author is not any of " the single person group. a better explaination of the situation was written in my T6701.

When we can identify the author, I'm just going to make auditing stop trigger audits by any packages they own, even if there was no review.

FWIW this exact set of reproduction steps no longer works. However, an Owners package set to generate an audit, but without any members, will be unclosable as well.

epriestley claimed this task.

I'm just going to presume this is resolved, in some sense, by D17181, because you can now remove auditors regardless of other outcomes.

This report is fairly old and seems to describe several different behaviors, some of which probably no longer exist (or may not exist shortly, after changes in T10978). Some of them (like an Owners package which triggers audits but has no owners) are probably already correct.

If there are remaining issues: wait for T10978 to settle down (circa the next promotion to stable, around Jan 20th?) and then file new reports with specific reproduction steps and we can deal with situations one-by-one. After D17181, simply removing auditors should get you out of any situation even if our other behaviors can be improved.