Skip to content

Commit 4678be9

Browse files
committed
docs(contrib): add guide for Triaging Issues
1 parent 775fac1 commit 4678be9

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

docs/ISSUES.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,68 @@
22

33
The [issue tracker][issues] for hyper is where we track all features, bugs, and discuss proposals.
44

5+
## Triaging
6+
7+
Once an issue has been opened, it is normal for there to be discussion
8+
around it. Some contributors may have differing opinions about the issue,
9+
including whether the behavior being seen is a bug or a feature. This
10+
discussion is part of the process and should be kept focused, helpful, and
11+
professional.
12+
13+
The objective of helping with triaging issues is to help reduce the issue
14+
backlog and keep the issue tracker healthy, while enabling newcomers another
15+
meaningful way to get engaged and contribute.
16+
17+
### Acknowledge
18+
19+
Acknowledge the human. This is meant actively, such as giving a welcome, or
20+
thanks for a detailed report, or any other greeting that makes the person feel
21+
that their contribution (issues are contributions!) is valued. It also is meant
22+
to be internalized, and be sure to always [treat the person kindly][COC]
23+
throughout the rest of the steps of triaging.
24+
25+
### Ask for more info
26+
27+
Frequently, we need more information than was originally provided to fully
28+
evaluate an issue.
29+
30+
If it is a bug report, ask follow up questions that help us get a [minimum
31+
reproducible example][MRE]. This may take several round-trip questions. Once
32+
all the details are gathered, it may be helpful to edit the original issue text
33+
to include them all.
34+
35+
### Categorize
36+
37+
Once enough information has been gathererd, the issue should be categorized
38+
with [labels][#labels]. Ideally, most issues should be labelled with an area,
39+
effort, and severity. An issue _can_ have multiple areas, pick what fits. There
40+
should be only one severity, and the descriptions of each should help to pick
41+
the right one. The hardest label to select is "effort". If after reading the
42+
descriptions of each effort level, you're still unsure, you can ping a
43+
maintainer to pick one.
44+
45+
### Adjust the title
46+
47+
An optional step when triaging is to adjust the title once more information is
48+
known. Sometimes an issue starts as a question, and through discussion, it
49+
turns out to be a feature request, or a bug report. In those cases, the title
50+
should be changed from a question, and the title should be a succict action to
51+
be taken. For example, a question about an non-existant configuration option
52+
may be reworded to "Add option to Client to do Zed".
53+
54+
### Mentoring
55+
56+
The last part of triaging is to try to make the issue a learning experience.
57+
After a discussion with the reporter, it would be good to ask if they are now
58+
interested in submitting the change described in the issue.
59+
60+
Otherwise, it would be best to leave the issue with a series of steps for
61+
anyone else to try to write the change. That could be pointing out that a
62+
design proposal is needed, addressing certain points. Or, if the required
63+
changes are mostly know, a list of links to modules and functions where code
64+
needs to be changed, and to what. That way we mentor newcomers to become
65+
successful contributors of new [pull requests][PRs].
66+
567
## Labels
668

769
Issues are organized with a set of labels. Most labels follow a system of being prefixed by a "type".
@@ -47,3 +109,5 @@ The severity marks how _severe_ the issue is. Note this isn't "importance" or "p
47109
- **S-refactor**: improve internal code to help readability and maintenance.
48110

49111
[issues]: https://github.com/hyperium/hyper/issues
112+
[COC]: ./CODE_OF_CONDUCT.md
113+
[PRs]: ./PULL_REQUESTS.md

0 commit comments

Comments
 (0)