Create and edit issue board with milestone
Resources
PM @victorwu | UX @cperessini | FE @iamphill
Part of
#25698 (closed) Issue board as a workflow tool
Problem
As detailed in #25698 (closed), we are solving for the use cases where an issue board with a period of software development. Common terms are "sprint" or "iteration". GitLab has a "milestone" feature, which is used to capture this concept. In the current implementation, an issue board shows all issues (filtered in their respective columns). You can filter on milestones in the UI, but a milestone is not associated with the issue board as a first class citizen. This does not align with the notion of an issue board associated with a single milestone.
Solution and design
- Remove milestone from the issue board filter UI.
- Associate a milestone selection with an issue board, as a first class citizen. That is, an issue board can be associated with:
- No milestones: Only issues without a milestone can show up on this board.
- A particular milestone: Only issues with that particular milestone can show up on this board.
- Any milestones: Only issues with any milestone can show up on this board.
- When creating an issue board, allow the user to associate a milestone selection with it.
- Allow a user to associate a milestone selection with any issue board.
- The milestone selection persists for that board. So if one user changes it, other users viewing the board later will see the changes reflected automatically.
- The milestone selection should be different from the issue board filter UI. (Because the filter UI implies non-persistence, and per-session behavior.)
- This design solves at least two use cases:
- A team creates a new board for every new "period" of software development work.
- A team recycles the same board for every new "period". In this case, they just edit the milestone selection at the beginning of every period.
Out of scope
- Fine-grained permissions are out of scope for this issue. Any user who can currently create or edit a board can do so with the milestone selection. That is, milestone selection is an attribute of creating and editing a board, same as the board name.
Edited by 🤖 GitLab Bot 🤖