Approval and Unapproval Merge request event actions
Summary
The merge event actions added in !8742 (merged) ("approval", "unnapproval") don't seem to be applied. When any number of approvers unapprove an MR, the action is always "unapproved" even if the MR is still considered approved.
Steps to reproduce
- Open a Merge Request that requires 1 approval
- Get approval from 2 different reviewers
- One of the reviewers removes its approval
Example Project
What is the current bug behavior?
The action in the MR event when one of the reviewers removes its approval is "unapproved" even though the MR is still approved by a reviewer and is mergeable. The same thing applies to approvals.
What is the expected correct behavior?
The action in the MR event should be "unapproval".
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
We are enterprise customers using gitlab.com
Results of GitLab application Check
Possible fixes
The code in app/services/merge_requests/remove_approval_service.rb#L46 doesn't take into account the "approval" and "unapproval" actions. Whereas the code in ee/app/services/ee/merge_requests/remove_approval_service.rb does.
Patch release information for backports
If the bug fix needs to be backported in a patch release to a version under the maintenance policy, please follow the steps on the patch release runbook for GitLab engineers.
Refer to the internal "Release Information" dashboard for information about the next patch release, including the targeted versions, expected release date, and current status.
High-severity bug remediation
To remediate high-severity issues requiring an internal release for single-tenant SaaS instances, refer to the internal release process for engineers.