[FE] Customizable Stages in Cycle Analytics
Problem to solve
This issue summarizes the investigation and discussions on https://gitlab.com/gitlab-org/gitlab-ee/issues/12196, listing the final requirements for the FE implementation.
This issue will be updated as requirements change.
MRs
-
Stage card ui update -
Add stage button -
Custom stage form -
Single label selector -
New Cycle Analytics backend integration -
Fetch stage events and median values
Requirements
Additional UI components
-
Implement card ui -
Hovering over a card shows additional options (for maintainers only) -
Implement card button (for add stage) -
Label dropdown selector
Cycle Analytics form UI
-
Only users with reporter or higher can view -
Fields -
Object name- no longer needed - Start event
- Filter the initial request for
can_be_start_event
- Filter the initial request for
- Stop event
- disabled until a start event is selected
- displays an error and clears the stop event if a new start event is chosen that is not compatible
- Optional field for extra parameter
- Currently label fields are the only fields that will require an extra parameter
-
Label dropdown selector already existsSingle label selector
- Add / Save stage button
- When a new stage is added it should appear at the end of the list of stages (post request to persist and set the new position from the result in the response)
- We should also refetch the list of stages after adding a new stage
- Cancel button
- Clear the values and close the form
-
BE API Integration
-
Edit stage button - Clicking on this should show the form prepopulated
Only maintainers can see this option
-
Hide stage button Only maintainers can see this option
-
Initial request GET */cycle_analytics - Summary information
- Events
- Stages (default + custom)
-
Persist Add new stage -
Persist Hide stage -
Feature specs for: -
Display form (with the appropriate permissions) -
Adding custom stage -
Hiding default stage -
Reinstate default stage- left out of mvp -
Remove custom stage -
Edit custom stage
-
Custom ordering of stages - moved to a new issue
Restoring custom stages To be explored in the future.
Questions
- When we click cancel, should we:
- Clear the form values and keep the form open
❌ - Clear the values and close the form
✔
- Clear the form values and keep the form open
- Do we need an optional parameter for the stop event?
- ie. Can we select
Label added / removed
etc as a stop event✔ ️
- ie. Can we select
- Will any other event types require additional parameters?
Edited by 🤖 GitLab Bot 🤖