Skip to content

Decide what to do when an issue/MR has several team labels

In #201 (closed), we added stage/group labels based on the team labels of an issue/MR.

We only did that when the issue/MR had a single team label.

We should decide what we want to do in the case an issue/MR has more than one team label:

  • Choose the first team label applied?
  • Choose the last team label applied?
  • Ask the author to pick one?
  • Use the "intelligent" inference (using category/feature labels to deduce the stage/group labels)?
  • Something else?

Plan

For Create [DEPRECATED], Plan [DEPRECATED], Manage [DEPRECATED] (843)

Data from @markglenfletcher

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for CE in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues Number merged MRs Number open MRs
~Create 1111 35 4
~Plan 344 23 4
~Secure 1 5 0
~Configure 8 8 0
~Verify 11 13 2
~Release 7 10 1
~Monitor 1 6 1
~Manage 896 17 0
~Package 2 1 0

Items are counted once for each legacy label they have. For example, an issue with ~Create and ~Plan will be counted in both ~Create and ~Plan tally

This appears to be a much bigger problem for issues where multiple legacy labels are applied.

I think we will need to check these resources to determine the correct stage label to apply, unless we can infer based on other data present such as:

  • author (for MRs)
  • category labels (for issues)

However, many of these merged MRs are old (we are considering all merged MRs) and the author may have moved to another group since.

Data from @rymai as of 2019-08-08

I've pushed a dedicated branch to gather the numbers:

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for CE in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues Number merged MRs Number open MRs
~Manage 687 19 0
~Plan 155 27 3
~Create 786 36 3
~Verify 4 11 2
~Package 0 1 0
~Release 1 8 1
~Configure 3 13 0
~Serverless 0 6 0
~Monitor 1 7 0
~Secure 0 3 0
~Defend 0 0 0
~Growth 2 6 0
~Gitaly 6 41 1
~Gitter 3 0 0
~Distribution 3 6 0
~Geo 2 18 0
~Memory 1 1 1
~Ecosystem 0 0 0

Note:

  1. Since groupgitaly is under devopscreate (https://about.gitlab.com/handbook/product/categories/#gitaly-group), the issues/MRs that have ~Gitaly and ~Create can be assigned groupgitaly and devopscreate safely.
  2. Since ~"group::serverless and paas" is under ~"devops::configure" (https://about.gitlab.com/handbook/product/categories/#serverless--paas-group), the issues/MRs that have ~Serverless and ~Configure can be assigned ~"group::serverless and paas" and ~"devops::configure" safely.
  3. Some MRs have ~"Category::Continuous Integration", ~"Verify" and another team label. In those cases I think it's safe to assign devopsverify and ~"group::continuous integration".
  4. Some MRs have ~"Cloud Native", ~"Distribution" and another team label ~"Release". In those cases I think it's safe to assign ~"devops::enablement" and groupdistribution .

Data from @rymai as of 2019-08-19

I've pushed a dedicated branch to gather the numbers: https://gitlab.com/gitlab-org/quality/triage-ops/-/jobs/275261491

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for CE in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues Number merged MRs Number open MRs
Manage [DEPRECATED] 690 1 0
Plan [DEPRECATED] 143 1 3
Create [DEPRECATED] 788 4 3
~"Verify [DEPRECATED]" 3 11 2
~"Package [DEPRECATED]" 0 1 0
~"Release [DEPRECATED]" 1 8 1
~"Configure [DEPRECATED]" 3 13 0
~"Serverless [DEPRECATED]" 0 6 0
~"Monitor [DEPRECATED]" 0 5 1
~"Secure [DEPRECATED]" 0 2 0
~"Defend [DEPRECATED]" 0 0 0
~"Growth [DEPRECATED]" 1 6 0
~"Gitaly [DEPRECATED]" 0 1 1
~"Gitter [DEPRECATED]" 0 0 0
~"Distribution [DEPRECATED]" 2 3 0
~"Geo [DEPRECATED]" 1 4 0
~"Memory [DEPRECATED]" 0 1 1
~"Ecosystem [DEPRECATED]" 0 0 0

Note:

Most of the open issues are:

  1. Create [DEPRECATED]
  2. Manage [DEPRECATED]
  3. Plan [DEPRECATED]

Breadown is as follows:

Data from @rymai as of 2020-02-18

I've pushed a dedicated MR (!417 (closed)) to gather the numbers: https://gitlab.com/gitlab-org/quality/triage-ops/-/jobs/441360121

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for gitlab-org/gitlab in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues Number merged MRs Number open MRs
Manage [DEPRECATED] 656 20 0
Plan [DEPRECATED] 141 13 0
Create [DEPRECATED] 763 10 0
~"Verify [DEPRECATED]" 1 6 0
~"Package [DEPRECATED]" 0 1 0
~"Release [DEPRECATED]" 0 1 0
~"Configure [DEPRECATED]" 1 8 0
~"Serverless [DEPRECATED]" 0 1 0
~"Monitor [DEPRECATED]" 0 7 0
~"Secure [DEPRECATED]" 0 4 0
~"Defend [DEPRECATED]" 0 0 0
~"Growth [DEPRECATED]" 0 19 0
~"Gitaly [DEPRECATED]" 0 2 0
~"Gitter [DEPRECATED]" 0 0 0
~"Distribution [DEPRECATED]" 1 1 0
~"Geo [DEPRECATED]" Label has been deleted already. N/A N/A
~"Memory [DEPRECATED]" 0 0 0
~"Ecosystem [DEPRECATED]" Label has been deleted already. N/A N/A

Note:

Most of the open issues are:

  1. Create [DEPRECATED]
  2. Manage [DEPRECATED]
  3. Plan [DEPRECATED]

Breakdown of the top label pairs is as follows for open issues:

Data from @rymai as of 2021-01-19

I've pushed a dedicated MR (!417 (closed)) to gather the numbers: https://gitlab.com/gitlab-org/quality/triage-ops/-/jobs/972608141

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for gitlab-org/gitlab in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues
Manage [DEPRECATED] 523
Plan [DEPRECATED] 108
Create [DEPRECATED] 613

Data from @rymai as of 2024-07-25

I've pushed a dedicated MR (!2956 (closed)) to gather the numbers: https://gitlab.com/gitlab-org/quality/triage-ops/-/jobs/7428520784

Affected issues and MRs

Multiple legacy labels present

Number of issues and MRs for gitlab-org/gitlab in the state with multiple legacy label with no stage label present:

Legacy Label Number open issues
Manage [DEPRECATED] 267
Plan [DEPRECATED] 64
Create [DEPRECATED] 327
Edited by Rémy Coutable