Content
Updated by Jens Ulferts 6 days ago
## Phases as work package attribute
**As** a project member
**I want to** assign to and see the assignment of a work package to a phase
stage/gate.
**so that** I can better understand the context the work package is in.
Assumes ###58159 is done.
**Acceptance criteria**
* Work pages receive a new attribute: The phase gate/stage they belong to.
in.
* [open] \[open\] What is the name of the attribute? e.g. "Project phase"
* A \[open\] Can a work package be assigned to multiple stages?
* \[open\] If so, are there any limitations, e.g. that a work package can only be assigned to consecutive stages?
* \[open\] If the work package dates are limited by the associated stage/gate, are they then limited to the interval created by the min of the associated stages and the max of the associated stage?
* \[open\] Can a single phase. There is not multi assignment.
work package be assigned to a gate (checklist items)?
* The attribute can be administrated same as every other attribute (e.g. status, assignee, version).
* It can be moved in and out of an attribute group.
* [open] \[open\] Should this be an attribute that is seeded? If so, which group should it be seeded into?
* [open] \[open\] Should existing installations get the attribute activated for their existing types? Assumption - no.
* The attribute's value is displayed including the colored type indicator prefix in both the split/full view as well as the table.
* [Technical detail] It \[Technical detail\] Depending on the API to be designed, the type of the lifecycle element (stage or gate) is probably or is not possible encoded in the API  response for a work package. If it is encoded, e.g. inside the URL, then the only remaining part to display be known is the existence/non existence color. That is by now part of a gate for the stage.
custom\_styles.css so it can be taken from there.
If the API does not encode the type in the url, then especially displaying the different icons in the table will be difficult.
* The attribute can be changed via an ng-select.
* [Technical detail] \[Technical detail\] Getting the data for displaying the existence/non existence of a gate prefix should be possible simpler here, but it will require coding a variation of the autocompleter.
* The attribute can be added as a column to the work package list.
* The table can be ordered and grouped by that column. The order is not by name of the phase gate/stage but by the order the phase gate/stages are in.
* \[open\] In case a work package can be assigned to multiple stages/gates.
* What is the correct order?
* \[Assumption\] Stages and gates already have an order so work packages assigned to a stage/gate should use that order.
* \[open\] What if a work package is assigned to multiple stages/gates.
* What is the correct grouping?
* The attribute can be used as a filter.
* [open] \[open\] What are the operators available? Assumption: 'is (or)', 'is not', 'is empty' and 'is not empty'.
* [open] What \[open\] What are the values available? The phase stages/gates active in the current project or those in the current project and its descendants? The current behaviour with all of the other fields is to only shows those of the current project. If the filter is used in the global list, all phases stages/gates should be shown.
* [open] Which kind of \[open\] Should there be stages/gate specific filters exist for phases and phase gates?
to be able to have filters like: 'Work packages which's gate is in 5 days'? Assumption - no.
* The attribute is journalized.
* [open] \[open\] Which messages are printed in the activity?
* In case the associated phase gate/stage is later disabled in the project administration, the value is no longer displayed, changes are not shown in the journal and the work package are not found via filters (see ###58163).
* The API v3 has a dedicated resource for phases
Stages/Gates.
* GET endpoint for referencing selected phase
stages/gates.
* GET endpoint for selecting all available (active) phases stages/gates of the project when selecting the value of the attribute.
* [open] \[open\] Is the attribute selectable to be displayed left/right/far right in the Gantt-Chart. Assumption: No.
* The new functionality is hidden behind the feature flag developed as part of ###58159
**Out of scope**
* Showing changes when activating the work package baseline comparison.
* Indicating the time span the phase stage/gate spans in the date picker of the work package.
* This would indicate when the work package should be worked on.
* \[open\] It could also be done as a message in the datepicker stating that the current dates are not matching the dates of the stage the work package is associated to.
* Date alert notification in case a work package is not finished but the phase gate/stage ends.
* A hard limit regarding the dates or a message displayed if the dates are outside of the phase's stage/gate's date range.
* This would also require rescheduling a work package in case the phase's stage/gate's dates are changed. The complexity of this would be quite high.
* Displaying the phase's stage/gate time span inside the gantt chart.
**As** a project member
**I want to** assign to and see the assignment of a work package to a phase
Assumes ###58159 is done.
**Acceptance criteria**
*
* \[open\] If so, are there any limitations, e.g. that a work package
* \[open\] If the work package dates are limited by the associated stage/gate, are they then limited to the interval created by the min of the associated stages and the max of the associated stage?
* \[open\] Can
If the API does not encode the type in the url, then especially displaying the different icons in the table will be difficult.
* What is the correct order?
* \[Assumption\] Stages and gates already have an order so work packages assigned to a stage/gate should use that order.
* \[open\] What if a work package is assigned to multiple stages/gates.
* What is the correct grouping?
*
*
*