Merge requests that require my attention
## Future of Attention Requests We’ve made the decision to not launch the attention requests feature in GitLab. While there were many positive experiences, improvements and lessons learned; there were just too many outstanding concerns we did not feel we could appropriately address while still maintaining the bar of usability we have for ourselves in this area of the product. Thank you to everyone who contributed in both the inspiration, creation and feedback phases of this process. Please watch this [video](https://youtu.be/Fgf6prHAOMk) (8 minutes) or check out the [slides](https://docs.google.com/presentation/d/1PVD-kowaW2X-DhAn1IDDuLhz8WyRxFZLu-w2gJE4j9E/edit) for more details on this decision and what we learned and what we’re doing next. <details><summary>Original Epic Description</summary> ## 2022-03-31 This feature is currently disabled due to https://gitlab.com/gitlab-com/gl-infra/production/-/issues/6728. We'll be looking at https://gitlab.com/gitlab-org/gitlab/-/issues/357437 which needs to be mitigated before we're able to turn this feature back on. ## Problem to Solve With the introduction of [Reviewers](https://gitlab.com/groups/gitlab-org/-/epics/1823), users now have multiple lists of merge requests (MRs) where they can be assigned or where they might be listed as a reviewer. In both of those cases, those statuses do not indicate if any action is required on your part, it only suggests that you have a role in the merge request. ## Vision GitLab should make it easy to distinguish between MRs that require your attention and MRs that don't. - As an author (Assignee) - Which MRs have reviewers responded to that I need to address their feedback on? - As a reviewer (Reviewer) - Which MRs need my review or approval? ## Competition https://gitlab.com/gitlab-org/gitlab/-/issues/296617 has threads that show how other competitors solve: [explicit handoff](https://gitlab.com/gitlab-org/gitlab/-/issues/296617#note_478277187), [implicit handoff](https://gitlab.com/gitlab-org/gitlab/-/issues/296617#note_478277301), and [noticing handoff](https://gitlab.com/gitlab-org/gitlab/-/issues/296617#note_478277502). ## Research [Solution validation: Waiting for status for the MR participants](https://gitlab.com/gitlab-org/ux-research/-/issues/1387) ## Proposal In https://gitlab.com/gitlab-org/ux-research/-/issues/1387 we validated with users a new feature for <abbr title="merge request">MR</abbr>s called **“attention requests”** that mimicks the common “ping-pong” that happens in the code review process. * 📹 Watch the short [video walkthrough](https://www.loom.com/share/a8540a0cbdc449a492eb40b9b45c9f93) * 📐 Check [design specs in Figma](https://www.figma.com/file/FEiKFUyW6envew4kjMGigC/Solution-validation-waiting-for?node-id=475%3A15032) 1. **Users that have permissions to edit the MR** are allowed to **manually [+add+] or [-remove-]** attention requests from **existing Assignees or Reviewers** by clicking on the **orange chevron** ▶️ icon in the MR sidebar. 1. Only these **manual** changes to attention requests are recorded as system notes, create to-dos for the target users, and send email notifications to participants. 1. Assignees/reviewers have their attention request **[+added+] automatically** when: 1. Someone adds them as an Assignee or Reviewer. 1. Assignees/reviewers have their attention request **[-removed-] automatically** when: 1. They approve the MR. 1. They add someone as an Assignee or Reviewer. 1. They request attention from an **existing** Assignee or Reviewer. 1. Someone removes them as an Assignee or Reviewer. 1. The MR is merged or closed. 1. Attention requests are signaled by that same orange chevron icon in the **MRs list** and in the **MR sidebar**. 1. In the **MRs list**, an improved tooltip displays additional information about the user's relationship with the MR. A :white_check_mark: icon is shown next to user's who have approved the MR. 1. In the **MR sidebar**, users that have an attention request have their name/username **bolded** and appear before users that don't have an attention request. 1. MR lists can be filtered with a new `attention=@user` filter. 1. Assignees/reviewers can check the MRs that need their attention via a new option in the **global MR dropdown**, that directs users to a pre-filtered list using the new `attention=@user` filter. The **count** next to the global MR dropdown now only reflects the number of MRs that match the `attention=@current_user` filter. 1. To introduce user's to these changes, an explanatory popover is shown when users open the **global MR dropdown**. When users click on `Got it!`, the popover is no longer shown. ### Nice-to-haves - Put all of the changes (even global ones, like the global MR dropdown) behind a feature flag, to better control the roll-out. - https://gitlab.com/gitlab-org/gitlab/-/issues/343528 - Instrument the global MR dropdown links and the `Request attention` button. - Changes to the **MRs list**: orange chevron icon for attention, improved tooltip, and checkmark icon for approvers. — https://gitlab.com/gitlab-org/gitlab/-/issues/343327 ## Possible future iterations - Add quick action (e.g. `/attention @user`) - https://gitlab.com/gitlab-org/gitlab/-/issues/345368 - Enhance “submit review” (batch comments) flow to allow users to modify the attention requests before submitting their review. <!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION --> *This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.* <!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION --> </details>
epic