You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[User Support Response: Example](#user-support-response-example)
43
-
43
+
44
44
## Scope
45
45
46
46
These guidelines serve as a primary document for triaging incoming issues to Kubernetes. SIGs and projects are encouraged to use this guidance as a starting point, and customize to address specific triaging needs.
@@ -51,7 +51,7 @@ These guidelines serve as a primary document for triaging incoming issues to Kub
51
51
52
52
Issue triage is a process by which a SIG intakes and reviews new GitHub issues and requests, and organizes them to be actioned—either by its own members, or by other SIGs. Triaging involves categorizing issues and pull requests based on factors such as priority/urgency, SIG ownership of the issue, and the issue kind (bug, feature, etc.).
53
53
54
-
Triage can happen asynchronously and continuously, or in regularly scheduled meetings. Several Kubernetes SIGs and projects have adopted their own approaches to triaging.
54
+
Triage can happen asynchronously and continuously, or in regularly scheduled meetings. Several Kubernetes SIGs and projects have adopted their own approaches to triaging.
55
55
56
56
## Why Is Triaging Beneficial?
57
57
@@ -65,11 +65,11 @@ SIGs who triage regularly say it offers a number of benefits, such as:
65
65
- Building prioritization, negotiation and decision-making skills, which are critical to most tech roles
66
66
- Reinforcement of SIG community and culture
67
67
68
-
People who enjoy product management and iterating on processes tend to enjoy triaging because it empowers their SIGs to maintain a steady, continuous flow of work that is assessed and prioritized based on feedback and value.
68
+
People who enjoy product management and iterating on processes tend to enjoy triaging because it empowers their SIGs to maintain a steady, continuous flow of work that is assessed and prioritized based on feedback and value.
69
69
70
70
# How to Triage: A Step-by-Step Flow
71
71
72
-
This guide walks you through a standard triaging process, beginning with tools and tips.
72
+
This guide walks you through a standard triaging process, beginning with tools and tips.
73
73
74
74
## Triage-Related Tools
75
75
@@ -85,7 +85,7 @@ Opening new issues and leaving comments on other people's issues are possible fo
85
85
86
86
### Triage Party
87
87
88
-
[Triage Party](https://github.com/google/triage-party) is a tool for triaging incoming GitHub issues for large open-source projects, built with the GitHub API. Made public in April 2020, it facilitates "massively multi-player GitHub triage" and reduces contributor response latency.
88
+
[Triage Party](https://github.com/google/triage-party) is a tool for triaging incoming GitHub issues for large open-source projects, built with the GitHub API. Made public in April 2020, it facilitates "massively multi-player GitHub triage" and reduces contributor response latency.
89
89
90
90
Its features include:
91
91
- Queries across multiple repositories
@@ -101,7 +101,7 @@ Its features include:
101
101
102
102
### GitHub Project Boards
103
103
104
-
GitHub offers project boards, set up like [kanban boards](https://en.wikipedia.org/wiki/Kanban), to help teams organize and track their workflow in order to get work done. The Release Team has come to depend on [their project board](https://github.com/orgs/kubernetes/projects/29) for planning new Kubernetes releases; they also use it as an archive to show the work done for past releases.
104
+
GitHub offers project boards, set up like [kanban boards](https://en.wikipedia.org/wiki/Kanban), to help teams organize and track their workflow in order to get work done. The Release Team has come to depend on [their project board](https://github.com/orgs/kubernetes/projects/29) for planning new Kubernetes releases; they also use it as an archive to show the work done for past releases.
@@ -122,7 +122,7 @@ Several SIGs consistently meet weekly or monthly to triage issues. Here are some
122
122
123
123
### Running a Triage Meeting: Tips from api-machinery
124
124
125
-
The [api-machinery SIG](/sig-api-machinery) has found that triage meetings offer valuable opportunities for newcomers to listen, learn, and start contributing. The SIG hold triage meetings every Tuesday and Thursday and archive recordings via their [YouTube playlist](https://www.youtube.com/playlist?list=PL69nYSiGNLP21oW3hbLyjjj4XhrwKxH2R). [Watch an example of one of their meetings.](https://www.youtube.com/watch?v=bRptR9vd4S8&list=PL69nYSiGNLP21oW3hbLyjjj4XhrwKxH2R&index=2&t=13s)
125
+
The [api-machinery SIG](/sig-api-machinery) has found that triage meetings offer valuable opportunities for newcomers to listen, learn, and start contributing. The SIG hold triage meetings every Tuesday and Thursday and archive recordings via their [YouTube playlist](https://www.youtube.com/playlist?list=PL69nYSiGNLP21oW3hbLyjjj4XhrwKxH2R). [Watch an example of one of their meetings](https://www.youtube.com/watch?v=bRptR9vd4S8&list=PL69nYSiGNLP21oW3hbLyjjj4XhrwKxH2R&index=2&t=13s).
126
126
127
127
In a typical triage meeting, api-machinery members sort through every issue that they haven't triaged since the previous meeting, using a simple query and issue number to track open PRs and issues. They usually follow this process:
128
128
1. Read through the comments and the code briefly to understand what the issue is about.
@@ -135,7 +135,7 @@ The api-machinery SIG has found that consistently meeting on a regular, fixed sc
135
135
- We try to balance the load, and ask people if they are okay taking on an issue before assigning it to them.
136
136
- We skip issues that are closed.
137
137
- We also skip cherrypicks, because we consider that the code change was reviewed in the original PR.
138
-
- We ensure participation from the entire SIG and support company diversity.
138
+
- We ensure participation from the entire SIG and support company diversity.
139
139
- We use this opportunity to add [`help wanted` and `good first issue`](#help-wantedgood-first-issues) labels.
140
140
141
141
### Triage Guide by cluster-lifecycle
@@ -144,7 +144,7 @@ The cluster-lifecycle SIG has developed a [triaging page](/sig-cluster-lifecycle
144
144
145
145
## Step One: Review Newly Created Open Issues
146
146
147
-
The first step in a successful triage meeting is reviewing newly created open issues. Kubernetes issues are listed [here](https://github.com/kubernetes/kubernetes/issues). Labels are the primary tools for triaging. [Here's a comprehensive label list.](https://github.com/kubernetes/kubernetes/labels)
147
+
The first step in a successful triage meeting is reviewing newly created open issues. Kubernetes issues are listed [here](https://github.com/kubernetes/kubernetes/issues). Labels are the primary tools for triaging. [Here's a comprehensive label list](https://github.com/kubernetes/kubernetes/labels).
148
148
149
149
New issues are automatically assigned a `needs-triage` label indicating that these issues are currently awaiting triage. After triaging an issue, the issue owning SIG will use the bot command `/triage accepted`. This command removes the `needs-triage` label and adds the `triage/accepted` label.
150
150
@@ -171,7 +171,7 @@ We suggest preparing your triage by filtering out the oldest, unlabelled issues
171
171
Use [these `triage/` and `kind/support` labels](https://github.com/kubernetes/kubernetes/labels?utf8=%E2%9C%93&q=triage%2F+kind%2Fsupport) to find open issues that can be quickly closed. A triage engineer can add the appropriate labels.
172
172
173
173
Depending on your permissions, either close or comment on any issues that are identified as support requests, duplicates, or not-reproducible bugs, or that lack enough information from the reporter.
174
-
174
+
175
175
### Support Requests
176
176
177
177
Some people mistakenly use GitHub issues to file support requests. Usually they are asking for help configuring some aspect of Kubernetes. To handle such an issue, direct the author to use our [support request channels](#support-requests-channels). Then apply the `kind/support` label, which is directed to our support structures, and apply the `close` label.
@@ -191,7 +191,7 @@ The `triage/needs-information` label indicates an issue needs more information i
191
191
First, validate if the problem is a bug by trying to reproduce it.
192
192
193
193
If you can reproduce it:
194
-
*[Define its priority.](##step-three-define-priority)
194
+
*[Define its priority](#step-three-define-priority).
195
195
* Search for duplicates to see if the issue has been reported already. If a duplicate is found, let the issue reporter know, reference the original issue, and close the duplicate.
196
196
197
197
If you can't reproduce it:
@@ -218,28 +218,28 @@ Usually the `kind` label is applied by the person submitting the issue. Issues t
218
218
219
219
## Step Three: Define Priority
220
220
221
-
We use GitHub labels for prioritization. If an issue lacks a `priority` label, this means it has not been reviewed and prioritized yet.
221
+
We use GitHub labels for prioritization. If an issue lacks a `priority` label, this means it has not been reviewed and prioritized yet.
222
222
223
223
We aim for consistency across the entire project. However, if you notice an issue that you believe to be incorrectly prioritized, please leave a comment offering your counter-proposal and we will evaluate it.
224
224
225
225
226
226
|Priority label|What it means|Examples|
227
227
|---|---|---|
228
-
|`priority/critical-urgent`| Team leaders are responsible for making sure that these issues (in their area) are being actively worked on—i.e., drop what you're doing. Stuff is burning. These should be fixed before the next release. | user-visible bugs in core features <br> broken builds <br> tests and critical security issues |
228
+
|`priority/critical-urgent`| Team leaders are responsible for making sure that these issues (in their area) are being actively worked on—i.e., drop what you're doing. Stuff is burning. These should be fixed before the next release. | user-visible bugs in core features <br> broken builds <br> tests and critical security issues |
229
229
|`priority/important-soon`| Must be staffed and worked on either currently or very soon—ideally in time for the next release. Important, but wouldn't block a release. |[**XXXX**]|
230
230
|`priority/important-longterm`| Important over the long term, but may not be currently staffed and/or may require multiple releases to complete. Wouldn't block a release. |[**XXXX**]|
231
-
|`priority/backlog`| General agreement that this is a nice-to-have, but no one's available to work on it anytime soon. Community contributions would be most welcome in the meantime, though it might take a while to get them reviewed if reviewers are fully occupied with higher-priority issues—for example, immediately before a release.|[**XXXX**]|
232
-
|`priority/awaiting-more-evidence`| Possibly useful, but not yet enough support to actually get it done. | Mostly placeholders for potentially good ideas, so that they don't get completely forgotten, and can be referenced or deduped every time they come up |
231
+
|`priority/backlog`| General agreement that this is a nice-to-have, but no one's available to work on it anytime soon. Community contributions would be most welcome in the meantime, though it might take a while to get them reviewed if reviewers are fully occupied with higher-priority issues—for example, immediately before a release.|[**XXXX**]|
232
+
|`priority/awaiting-more-evidence`| Possibly useful, but not yet enough support to actually get it done. | Mostly placeholders for potentially good ideas, so that they don't get completely forgotten, and can be referenced or deduped every time they come up |
233
233
234
234
235
-
## Step Four: Find and Set the Right SIG(s) to Own an Issue
235
+
## Step Four: Find and Set the Right SIG(s) to Own an Issue
236
236
237
237
Components are divided among [Special Interest Groups (SIGs)](/sig-list.md). [The bot](https://go.k8s.io/bot-commands) assists in finding a proper SIG to own an issue.
238
238
239
239
* For example, typing `/sig network` in a comment should add the `sig/network` label.
240
240
* Multiword SIGs use dashes: for example, `/sig cluster-lifecycle`.
241
241
* Keep in mind that these commands must be on their own lines, and at the front of the comment.
242
-
* If you are not sure about who should own an issue, defer to the SIG label only.
242
+
* If you are not sure about who should own an issue, defer to the SIG label only.
243
243
* If you feel an issue should warrant a notification, ping a team with an `@` mention, in this format: `@kubernetes/sig-<group-name>-<group-suffix>`. Here, the `<group-suffix>` can be one of:
244
244
-`bugs`
245
245
-`feature-requests`
@@ -252,7 +252,7 @@ Components are divided among [Special Interest Groups (SIGs)](/sig-list.md). [Th
252
252
253
253
If you think you can fix the issue, assign it to yourself with *just* the `/assign` command. If you cannot self-assign for permissions-related reasons, leave a comment that you'd like to claim it and [begin working on a PR](github-workflow.md).
254
254
255
-
When an issue already has an assignee, **do not** assign it to yourself or create a PR without talking to the existing assignee or going through the [Follow Up](#Step-Five:-Follow-Up) steps as described in this document. Creating a PR when someone else is already working on an issue is not a good practice and is discouraged.
255
+
When an issue already has an assignee, **do not** assign it to yourself or create a PR without talking to the existing assignee or going through the [Follow Up](#step-five-follow-up) steps as described in this document. Creating a PR when someone else is already working on an issue is not a good practice and is discouraged.
256
256
257
257
## Step Five: Follow Up
258
258
@@ -266,16 +266,16 @@ If you find an issue with a SIG label assigned, but there's no evidence of movem
266
266
267
267
### If an Issue Has No Activity After 90 Days
268
268
269
-
When an issue goes 90 days without activity, the [k8s-triage-robot](https://github.com/k8s-triage-robot) adds the `lifecycle/stale` label to that issue. You can block the bot by applying the `/lifecycle frozen` label preemptively, or remove the label with the `/remove-lifecycle stale` command. The k8s-triage-robot adds comments in the issue that include additional details. If you take neither step, the issue will eventually be auto-closed.
269
+
When an issue goes 90 days without activity, the [k8s-triage-robot](https://github.com/k8s-triage-robot) adds the `lifecycle/stale` label to that issue. You can block the bot by applying the `/lifecycle frozen` label preemptively, or remove the label with the `/remove-lifecycle stale` command. The k8s-triage-robot adds comments in the issue that include additional details. If you take neither step, the issue will eventually be auto-closed.
270
270
271
271
## Further Notes
272
272
273
273
### Support Requests: Channels
274
274
275
275
These should be directed to the following:
276
276
*[User documentation](https://kubernetes.io/docs/home/) and
0 commit comments