Support Iteration Cadence CRUD and multiple Iteration Cadences within a Group
Problem to solve
This is part of a workstream to automate iteration cadences and support more flexibility for teams that share projects. The full problem statement can be found here -- &5077
Proposal
- BE
- handle create/update/delete iteration cadences
- perhaps restrict cadences to non-automatic in this iteration, so iteration creation will still be manual but start date and end dates can be precomputed based on iteration duration.
- fetch iteration cadences
- fetch iterations for a given cadence or given list of cadences
- fetch iterations from all cadences
- have a limit to protect against abuse, as it is possible to generate many cadences with many iterations
- handle iteration names based on cadence name
- handle create/update/delete iteration cadences
- FE
- handle create/update/delete iteration cadences
- handle multiple iteration cadences lists
- first load cadences and for each cadence load its iterations async ?
- have the iterations dropdown handle multiple iteration cadences
- on issue sidebar
- on issue filter bar
- on issue board filter bar
This is the second step towards &5077 (comment 467401527)
Further details
Allows historical data to be migrated into the project from external services.
UX & Vertical Slices
MVC:
-
I can enter the name for the Iteration cadence. (Required Field) -
I can enter a description using markdown for the Iteration Cadence. (Optional Field) -
When Automated Scheduling
is disabled and all the required fields are defined, I can click a button to create only the cadence, create the cadence and proceed to creating a new iteration within the cadence, or cancel the creation process all together. (see wireframes for example) -
When I click the button to create the cadence and proceed to creating a new iteration within the cadence
, I am taken to the create/edit form for a single Iteration. -
When I click the button to create cadence only
, I am taken to the Iteration Cadence list view. -
The single iteration create/edit form behaves the same way as it does currently with the exception of no longer having a name
field as that will be inherited from the iteration cadence as each iteration with the cadence will be identified via its sequential number + date range. -
When a Group belongs to GitLab Starter and it has already created an iteration cadence within the Group, disable the New Cadence
button and show a tool tip prompting them to upgrade to GitLab Premium in order to add more cadences to the Group.
Next:
-
I can disable Automated Scheduling
(default to enabled) -
If Automated Scheduled
is disabled, I cannot change or interact with any other fields exceptDescription
. -
I can enter the start date for the first Iteration. -
I can select the duration (in weeks) for each Iteration within my cadence from a drop down list with values of 1
,2
,3
,4
,5
, or6
-
I can select the number of future iterations i want to always have automatically scheduled from a list with the following values -- 2
,4
,6
,8
, or10
-
All fields are required except Description
whenAutomated Scheduling
is enabled. When it is disabled, onlyName
is required. -
When Automated Scheduling
is enabled and the required fields are defined, I can either click a button to create the cadence or to cancel the creation process.
Permissions and Security
Documentation
Availability & Testing
What does success look like, and how can we measure that?
What is the type of buyer?
- GitLab Starter can create a single iteration cadence (with many iterations in it) within a Group
- GitLab Premium can create multiple iteration cadences within a Group.
Is this a cross-stage feature?
Links / references
🤖
Auto-Summary Discoto Usage
Points
Discussion points are declared by headings, list items, and single lines that start with the text (case-insensitive)
point:
. For example, the following are all valid points:
#### POINT: This is a point
* point: This is a point
+ Point: This is a point
- pOINT: This is a point
point: This is a **point**
Note that any markdown used in the point text will also be propagated into the topic summaries.
Topics
Topics can be stand-alone and contained within an issuable (epic, issue, MR), or can be inline.
Inline topics are defined by creating a new thread (discussion) where the first line of the first comment is a heading that starts with (case-insensitive)
topic:
. For example, the following are all valid topics:
# Topic: Inline discussion topic 1
## TOPIC: **{+A Green, bolded topic+}**
### tOpIc: Another topic
Quick Actions
Action Description /discuss sub-topic TITLE
Create an issue for a sub-topic. Does not work in epics /discuss link ISSUABLE-LINK
Link an issuable as a child of this discussion
Last updated by this job
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.