New Option: Remove PR Approval (from additional updates) based on CODEOWNERs

_tldr proposal: _On updates to pull requests the approval of a codeowner should only be removed if the code that codeowner owns has been updated. If that isn’t the case the approval stays put.

The current behavior is:

I have a branch that has 10 different codeowners on it. 9 of those codeowners approve, then the last codeowner points out I spelled “data” like “dtaa”. I push a very small 2 character update and now I need to hunt down all ten codeowners to get them to approve something that has nothing to do with their code. Can’t merge for another day. Anger. Sadness.

Ideal flow:

I have a branch that has 10 different codeowners on it. 9 of those codeowners approve, then the last codeowner points out I spelled “data” like “dtaa”. I push a very small 2 character update and now, because that typo was only in one file owned by that 10th codeowner, all the other approvals stay put and I can ping just that last codeowner for approval. Merge my code that day. Beauty. Love.

32 Likes

Hi @clintfmullins,

Thanks for this feedback! We’re always working to improve GitHub, and we consider every suggestion we receive. I especially see the value in what you’re proposing here. I’ve logged your feature request in our internal feature request list. Though I can’t guarantee anything or share a timeline for this, I can tell you that it’s been shared with the appropriate teams for consideration.

Please let me know if you have any other questions.

Cheers!

Hi Nadia,

Thank you for the swift reply and feature consideration. This is a high value feature for the organizations I’m a part of and I want to do everything I can to bump it up on Github’s priority queue. Do you have any suggestions as to how I can attempt to make that happen?

Thanks again,

Clint

Hi Clint,

I can’t make any promises. If you want, you can also email the request to private support, but we can’t guarantee anything. Rest assured, I will share the level of importance for your team on this with our team.

Cheers!

Current behaviour, without being able to undo approvals is pretty strange. If a reviewer accidentally approves, and wants to indicate that it was in fact accidental and the PR should not be merged, they have two options:

  • Post a comment and hope the PR won’t be merged

  • Add another review with “change request”

However, “change request” reviews can be dismissed unless configured otherwise, so a PR that’s approved and then marked with “change request” will become mergable if that “change request” is dismissed.

Even without the scenario of an accidental approval, I could see situations where it would make sense for repository owners to be able to “veto” an approval, i.e. dismissing it without having to reconfigure repository settings and limiting who can approve PRs.

Perhaps you could re-consider adding this feature?

4 Likes

You can dismiss approvals now too.