Skip to content

Commit c9c332e

Browse files
Process: Add documentation for labels, current and proposed
1 parent ce7deb3 commit c9c332e

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed

Diff for: IssueTriage.md

+104
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# Triage Guidance for WebNN Repo
2+
3+
TODO: Consider removing these, or fit these into the documentation below.
4+
5+
- **dependencies** - unused?
6+
- **tag** - redundant with **tag-needs-resolution** and **tag-tracker** ?
7+
- **enhancement** - unclear if this is about the spec text, the proposed API, etc. Prefer **feature request** etc.
8+
- **help wanted** - unclear what help is needed; use **needs PR** or **question** instead?
9+
10+
11+
## Label Usage
12+
13+
Labels are used for:
14+
15+
- Understanding the status of a specific issue and next steps to resolve it.
16+
- Understanding the scope of work remaining on broad efforts (e.g. aligning with best practices, fixing normative issues, etc)
17+
- Identifying areas to contribute.
18+
19+
The working group chairs and spec editors should regularly review bugs and ensure that labels are accurate, and ensure that issues are getting appropriate attention; for example, scheduling discussion of new feature requests, discussion to resolve outstanding questions, and drawing attention to issues that are ready for a contributor to author a PR.
20+
21+
22+
## Types
23+
24+
Every issue should have one of these issue types, and only rarely more than one.
25+
26+
- **bug** - a flaw in the specification that will require a normative fix; for example, an algorithm computes an output incorrectly
27+
- **conventions-integration** - where the spec does not conform to specification best practices from Web IDL, Bikeshed, Infra, etc.
28+
- **use case** - a new use case for the API that should be documented or considered; may spawn other issues
29+
- **process** - a meta issue about how the specification is evolved; for example, a discussion of issue labels
30+
- **testing** - discussion of test coverage
31+
- **feature request** - _PROPOSED_ - suggestion for an addition to the proposed API
32+
- **interop** - _PROPOSED_ - discussion of differences in behavior across implementations
33+
- **samples** - _PROPOSED_ - suggestions for additional or improved samples
34+
35+
36+
## Spec Impact
37+
38+
These broad categories describe the projected impact on the specification and implementation of an issue.
39+
40+
- **Editorial** - spec text could be improved, but does not imply normative behavior changes to the proposed API
41+
- **Normative** - _PROPOSED_ - resolving the issue would require behavior changes, likely affecting implementations and tests
42+
43+
TODO: I'm not convinced of the utility of these; maybe drop them?
44+
45+
TODO: Make these lowercase for consistency?
46+
47+
## Issue Scope
48+
49+
Every issue should have at least one of these issue types, but occasionally multiple.
50+
51+
- **operation set** - discussions about the overall operator coverage of WebNN; examples include alignment with other published operator sets, use cases that require multiple new operators, compatibility with implementations, etc.
52+
- **operator specific** - _PROPOSED_ - issues regarding the specification of a single operator or small number of operators
53+
54+
## Next Steps
55+
56+
- **question** - there is outstanding discussion needed on the issue before progress can be made
57+
- **good first issue** - issues that do not require significant context for new contributors
58+
59+
60+
- **needs PR** - _PROPOSED_ - when an issue has enough discussion that the next step is to author a PR for review
61+
- **has PR** - _PROPOSED_ - the issue has a corresponding PR which should be reviewed
62+
63+
- **needs WPT** - _PROPOSED_ - a corresponding Web Platform Test should be filed, either to capture new behavior or cover a gap
64+
- **has WPT** - _PROPOSED_ - test coverage exists (either merged or in review)
65+
66+
## Resolved Issues
67+
68+
These labels can be applied to issues when the issue is closed. This is helpful to capture why the issue was closed if it isn't clear from context.
69+
70+
- **duplicate**
71+
- **invalid**
72+
- **spam**
73+
- **wontfix**
74+
75+
NOTE: GitHub supports two different actions when closing an issue: "Close as completed (Done, closed, fixed, resolved)" and "Close as not planned (Won't fix, can't repo, duplicate, stale)". The UI is subtle, but contributors are encouraged to select an appropriate resolution to assist with future review of issues, in addition to selecting an appropriate label.
76+
77+
78+
## Timeline
79+
80+
- **cr** - issue is a blocker for the next Candidate Recommendation
81+
- **v2**- issue is not considered a blocker for Proposed Recommendation
82+
83+
Implicitly, all issues not tagged **v2** must be resolved before the specification should advance to the next maturity level.
84+
85+
86+
## Horizontal Reviews
87+
88+
These labels will generally be applied to issues by a W3C horizontal review group or to bring an issue to the attention of this group for feedback. These labels are common across W3C spec repos.
89+
90+
- **a11y-needs-resolution** - raised by Accessibility Group
91+
- **a11y-tracker** - bring to attention of Accessibility Group
92+
- **i18n-needs-resolution** - raised by Internationalization Group
93+
- **i18n-tracker** - bring to attention of Internationalization Group
94+
- **privacy-needs-resolution** - raised by Privacy Group
95+
- **privacy-tracker** - bring to attention of Privacy Group
96+
- **security-needs-resolution** - raised by Security Group
97+
- **security-tracker** - bring to attention of Security Group
98+
- **tag-needs-resolution** - raised by Technical Architecture Group
99+
- **tag-tracker** - bring to attention of Technical Architecture Group
100+
101+
102+
## Label Administration
103+
104+
If you think a new label should be introduced, an old label retired, or the usage of a label reconsidered, please file a PR modifying this file including the proposed change.

0 commit comments

Comments
 (0)