---
# System prepended metadata

title: Default GitHub Labels
tags: [Handbook, Project Management, Organization]

---

# Default GitHub Labels

We use a modified sane labelling scheme as [proposed here](https://medium.com/@dave_lunny/sane-github-labels-c5d2e6004b63) by Dave Lunny, along with inspiration from [ManageIQ](https://github.com/ManageIQ/guides/blob/master/labels.md).

It's broken down into four different types of labels: **status labels**, **release labels**, **type labels** and **change labels**.

SRC | NIPs have their own labelling schema which are defined [here](todo: make 'here').

## Status Labels

These are intended to cover a broad range of states that an issue may be in during different stages of development. Only *one* status label will be applied to a particular issue - for instance, something can't be both 'In Progress' and 'Abandoned'.

| Label                 | Hex Code | Description                                                                                                     |
| :-------------------- | -------- | :-------------------------------------------------------------------------------------------------------------- |
| Status: Available     | Text     | This issue is currently available to be worked on.                                                              |
| Status: Revision      |          | This issue has not been completed, and needs to be revised as detailed in the comments.                         |
| Status: In Progress   |          | This issue is currently being worked on.                                                                        |
| Status: On Hold       |          | This issue has been put on hold for reasons detailed in the comments.                                           |
| Status: Review Needed |          | This issue is waiting for a code review or design review.                                                       |
| Status: Blocked       |          | This is currently an issue that is unable to be resolved or worked on due to a blocker.                         |
| Status: Completed     |          | This issue has been completed and is awaiting scheduling for the next release candidate.                        |
| Status: Pending       |          | This issue is currently pending approval for the next release candidate.                                        |
| Status: Abandoned     |          | This issue has been abandoned, for reasons detailed in the comments. When applied, this issue should be closed. |
| Status: Unmergeable   |          | The pull request is unmergeable, for reasons detailed in the comments.                                          |
| Status: Stale         |          | This issue is old or hasn't had activity in >6 months.                                                          |

## Release Labels

These labels track an issue as it moves into testing (and eventually deployment).

Our product release process follows the below flow.

1. Issues with the [Status: Completed] label are scheduled for *review*.
2. Issues migrate from the [Release: Review] label to [Release: Testing] once they launched in testnet or in a test environment.
3. Issues move to blocked once a problem has been found that needs further development. Move the issue back to [Status: Available].
4. Issues migrate to [Release: Accepted] once they have passed testing and are ready to be scheduled in inclusion for an RC.
5. Issues migrate to [Release: Pending] once they are scheduled for inclusion in a release candidate.
6. Issues migrate to [Release: Live] once they're in mainnet (or otherwise released).
7. Issues move to [Release: On-Hold] if they are currently not scheduled for inclusion in a release candidate.

```
                                                              ┌────────────┐
                                                              │            │
                                                              │  On-Hold   ├─────┐
                                                              │            │     │
                                                              └─────▲──────┘     │
                                                                    │            │
                                                                    │            │
                                                                    │            │
┌───────────┐       ┌────────────┐      ┌────────────┐        ┌─────┴──────┐     │
│           │       │            │      │            │        │            │     │
│  Review   ├───────►  Testing   ├──────►  Accepted  ├────────►  Pending   ◄─────┘
│           │       │            │      │            │        │            │
└─────▲─────┘       └─────┬──────┘      └────────────┘        └─────┬──────┘
      │                   │                                         │
      │                   │                                         │
      │             ┌─────▼──────┐                                  │
      │             │            │                            ┌─────▼──────┐
      └─────────────┤  Blocked   │                            │            │
                    │            │                            │    Live    │
                    └────────────┘                            │            │
                                                              └────────────┘
```

Release labels track where an issue in the release candidate process. Maintainers can use this to prepare their releases for inclusion in Milestones. These labels are exclusively for issues that have been 'completed'.

| Label             | Hex Code | Description                                                                                     |
| :---------------- | -------- | :---------------------------------------------------------------------------------------------- |
| Release: Review   | Text     | This issue has been accepted for the next release candidate. Contrast with 'Status: Complete'.  |
| Release: Testing  |          | This issue is currently in testing (QA & performance) with other issues in the review pipeline. |
| Release: Blocked  |          | This issue has failed testing or needs further development.                                     |
| Release: Accepted |          | This issue has been accepted for inclusion in a release candidate.                              |
| Release: Pending  |          | This issue is pending release.                                                                  |
| Release: On-Hold  |          | This issue is currently on-hold.                                                                |
| Release: Live     |          | This issue is currently live and in production.                                                 |

## Type Labels

| Label              | Hex Code | Description                                                                                         |
| :----------------- | :------- | :-------------------------------------------------------------------------------------------------- |
| Type: Bug          |          | Not the ladybug kind, but the software gremlin kind.                                                |
| Type: Sporadic Bug |          | A bug that manifests as test failures unpredictably.                                                |
| Type: NotABug      |          | This issue is not a bug as reported, or not reproducible. When applied, the issue should be closed. |
| Type: DevOps       |          | This issue is related to DevOps (such as AWS, CI/CD, network monitoring, logs).                     |
| Type: Enhancement  |          | An enhancement, new feature, or quality of life improvement.                                        |
| Type: Design       |          | Issues or changes specifically related to design (including UX/UI, look-and-feel, and general art.) |
| Type: Duplicate    |          | This issue is a duplicate. When applied, the duplicate issue should be referenced in a comment.     |
| Type: Help Wanted  |          | An issue that can be handled by anyone, even new members of the community.                          |
| Type: Question     |          | Issues that are just questions. When the question is resolved, the issue should be closed.          |
| Type: Social Media |          | Issues specifically related to social media and external communications.                            |
| Type: Tools        |          | Issues specifically related to internal tooling, such as Discord, Telegram, GitHub, CI/CD, etc.     |

## Change Labels

These are intended to clearly articulate what the following PR *changes*. Think of these as user-facing labels - who, or what, is this change affecting?

| Label                        | Hex Code | Description                                                                                          |
|:---------------------------- |:-------- |:---------------------------------------------------------------------------------------------------- |
| Change: Cleanup              |          | Changes that only make the code cleaner and do not change how the code works, nor the outputs.       |
| Change: Dependencies         |          | Changes that affect dependencies.                                                                    |
| Change: Developer            |          | Changes that affect developers only, including non-customer-facing tools.                            |
| Change: Documentation        |          | Changes to documentation only.                                                                       |
| Change: Internationalization |          | Changes that are for internationalization only.                                                      |
| Change: Performance          |          | Changes that are for performance improvements only.                                                  |
| Change: Refactoring          |          | Changes in the way the code works internally without changing output. Contrast to 'Change: Cleanup'. |
| Change: Technical Debt       |          | Changes that remove or significantly update old unused code and/or dependencies.                     |
| Change: Frontend             |          | Changes to the frontend code of an application or website.                                           |
| Change: User Experience      |          | Changes to the user experience or user flow of an application.                                       |
| Change: Test                 |          | Changes to test code only.                                                                           |
| Change: Tools                |          | Changes to customer-facing tools. Contrast to 'Change: Developer'.                                   |

Questions

You might wonder why we don't have priority labels. Generally when priority labels are introduced, *everything* becomes a 'mission-critical-must-fix-now'. Priority labels also encourage laziness - if you own your code, you should know what is and isn't an urgent issue.

###### tags: `Handbook` `Project Management` `Organization`
