BE: Handle child items when work item type is changed to another type

Summary

Currently, changing a work item type is restricted when a child item is present. It was proposed in the first iteration to give user option to either

  • remove all the child items
  • convert them to appropriate type. e.g., Tasks are converted to Key results if an Issue is converted to an Objective.

Proposal

  • Give option to user to either remove all the child items or convert them to relevant type
  • If there are no child items, do not show the Child items dropdown.
  • In case a type with child item support is converted to a type with no support, it will only have an option to remove the relationships
  • Remove relationships option removes all the child items will simple remove all the items
  • Convert Child types options converts all the items from current child item type to the relevant type
Converted to Epic Issue Task Objective Key result
Epic

-

Epics/Issues > Task ?

Remove relationships

Epics/Issues > Objectives/Key results

Remove relationships
Issue

Tasks > Issues

-

Remove relationships

Tasks > Key results

Remove relationships
Task

-

-

-

-

-

Objective

Objectives/Key results >

Epics/Issues

Objectives/Key results > Tasks ?

Remove relationships

-

Remove relationships
Key result

-

-

Remove relationships

-

-

Questions

  1. What will happen when child items with hierarchy are converted to non-hierarchical child items. e.g., Epic type with hierarchical epic child items is converted to a Issue type.
  2. When an issue is converted to an epic, will the tasks be converted into epics or issues? Same for Objective to Epic or Objective to Issue.

Resources

Verification

Issue to Objective example:

  1. Login with any user
  2. Go to Project > Issues
  3. Open or create an Issue with Child items
  4. Click on More actions in the top right
  5. Select the Change type action
  6. In the modal, select the type with Child items support
  7. Select an option whether to
    1. Remove relationship
    2. Convert Task to Key result
  8. If Remove relationship is selected, remove all the child when Change type is selected
  9. If Convert Task to Key result is selected, the Tasks are converted into Key result in the background when Change type is selected
Edited by Rajan Mistry