Work Items - Hierarchy Widget for Tasks MVC
## Background & context This epic documents the work needed to create a hierarchy widget that can be used with [tasks](https://gitlab.com/groups/gitlab-org/-/epics/7103). #### Problem to solve When decomposing an issue, I want to ensure the implementation steps are discrete, actionable, and trackable, so I can increase alignment on the scope of delivering a piece of business value. - JTBD: Increase alignment on the overall impact and importance of even the most granular items within my plan. - Emotional goal: Fostering motivated teams that understand the impact of what they are working on. ![image](/uploads/9e020fa23d6a4f8753fc76da51734a90/image.png) <!-- #### User feedback Attach any relevant feedback or research here* --> ## Measuring success #### Scope We will need to create a widget in which you can: ##### MVC1 - Foundational work 1. Backend work to support widget for hierarchies. 1. The hierarchy widget will list all Tasks that are children of an issue. 1. The hierarchy widget is supported within the legacy issue view 1. To determine the work item type, we will look at the hierarchy to determine the valid types: * If there's only one valid child type, then the user does not need to choose a work item type. * If there's more than one child type, then the user needs to choose a work item type. For the initial MVC the only child of Issues will be Tasks so we won't need users to choose a work item type. ##### MVC 2 - Basic Workflow - Create and remove tasks 1. Create a place where a new work item can be created in the context of an existing work item. 1. A work item can be created by just entering a title. 1. The newly created work item will be a child of the issue in which it was entered. 1. Users can remove the parent/child relationship from the hierarchy widget. ###### MVC 3 - Advanced Workflow - Add existing and sorting tasks 1. A user can find an existing work item (by ID or title) and add it as a child IF it is a valid type. If there's an existing parent relationship, that is replaced (only a single parent). 2. Users receive a notification when their tasks are being re-parented. 3. Ability to sort tasks in the widget ###### MVC 4 - UX Improvements ##### MVC 5 - Edit relationships within the work item UI 1. Give the option to make Tasks `parent/child` or `related` in the GFM creation flow. 1. A Task will show which Issue is its parent and allow you to change it. #### Success metrics - `#` of tasks created - Decreased "task like" issues - Positive feedback from users (investigate workaround usage) <!-- ## Release notes -->
epic