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:

  1. Create a meta issue -> can't be automated, someone needs to type e.g. the title
  2. Create a checkbox list of sub-issues -> can be created from the parent-child association
  3. 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
  4. 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
  • VHDL-2017
    • Integrate proposed language changes
      • LCS-001
      • LCS-002
      • ...
      • LCS-095
    • Review existing code
      • Update page references in all packages

Related issues:

  • #2001 (closed)
Edited May 19, 2022 by Coung Ngo
Assignee Loading
Time tracking Loading