Meta-Issues: Allow the building for a issue hierachry
Description
Allow issues (so called meta-issues) to reference other issues (so called sub-issues) or alternatively other milestones (so called sub-milestones). A parent-child association is created and all linked sub-issues are listed with their state in the meta-issue view.
Proposal
The current set of features like issues, boards, milestones and labels allow us to create a rather flat organisation of issues. That's OK for many agile or collaborative project management flows. More difficult flows can be organized by creating so called meta-issues.
A meta-issue is an issue linking to sub-issues. It contains a checkbox list with links to all sub-issues. If a sub-issue is closed, the checkbox in the meta-issue is checked. If all sub-issues are closed, the meta-issue get's closed too.
Currently, this flow needs a lot of manual work:
- Create a meta issue -> can't be automated, someone needs to type e.g. the title
- Create a checkbox list of sub-issues -> can be created from the parent-child association
- Update the checkbox list, if new issues are assigned to an existing meta-issue -> the sub-issue state can be reflected as a checkbox state
- Check if all sub-issues are closed and manually close the meta-issue -> changing the state of a sub-issue triggers a check in the corresponding meta-issue
Alternative
An alternative, but similar flow could use meta-issues and sub-milestones. In that case, all tasks are organized in a sub-milestone. Each sub-milestone has a corresponding meta-issue, which is in turn organized in a (parent-)milestone.
So in that scenario, a meta-issue is linked to milestone and the state of a meta-issue (open ... closed) is corresponding to the state of a milestone. This should also include the due date. So by creating a milestone and setting the kind to "sub-milestone", a new meta-issue is created containing the same title and due date. The meta-issue can now be assigned to a parent-milestone.
Hier is an example hierarchy of tasks:
- Some day maybe
- Implement unlimited integer types
-
VHDL-2020
- Integrate proposed language changes
- Implement derived integer types
- Implement derived enumeration types
- Review existing code
- Create a style guide
- Apply the style guide to all packages
- Remove dead code
- Review all code comments
- Comment all uncommented subprograms
- Integrate proposed language changes
- VHDL-2017