Establish a small set of labels that are succinct, intuitive, documented and which allow us to capture the many dimensions of an issue/PR.
# Approach
- Create a YAML database of labels that will be used consistently across all Kata repos.
- Allow individual repos to supplement the base list of labels by providing their own YAML snippet.
- Add tooling to check and view the YAML database files.
- Get agreement on the labels to use.
- Apply the labels defined in the YAML labels database to all Kata repos.
- Add CI checks to validate the labels database.
- Review the backlog of issues + PRs across all repos and manually apply labels.
- Start to improve our process by:
- Creating GitHub issue templates to auto-label issues.
- Make the bug triage slightly more formal by having the team review each new issue and apply a few labels (things like priority).
- Consider using Planning Poker to "size" issues and break them down into manageable chunks.
- Auto-add labels to PRs showing their relative sizes (by SLOC).
- Start using GitHub projects to manage upcoming releases.
- ...
The basic mantra is "automate and organise" - we don't want to impose heavy process, but we do want to make better use of our resources. By applying a few well-chosen labels (automatically where possible), we can start to get a clearer picture of the backlog, which will hopefully allow us to clear it down more quickly.
Labels will allow us to categorise issues and PRs quickly rather than having to trawl through screens of log output, etc. Also, labels will allow teams to focus on particular groups of issues and PRs rather than having to fall back on the dreaded "github ping" to get attention on particular areas.
Please comment on https://github.com/kata-containers/tests/pull/1466 so we can start moving this forward.