Add issue triage guidelines

Bug:1022301
Change-Id: Ibb1e3adec0b4507b1b838a979871a0474a935f6f
[email protected]
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2194878
Commit-Queue: Yang Guo <[email protected]>
Auto-Submit: Michael Hablich <[email protected]>
Reviewed-by: Yang Guo <[email protected]>
diff --git a/DESIGN_GUIDELINES.md b/DESIGN_GUIDELINES.md
index 0fd76c7..9548198 100644
--- a/DESIGN_GUIDELINES.md
+++ b/DESIGN_GUIDELINES.md
@@ -24,24 +24,29 @@
 ## Roles
 ### Individual Contributor (IC)
 *LGTM*: N/A
+
 This person is the creator of the feature and the creator of the design documentation.
 
 ### The Technical Leads (TL)
 *LGTM*: Must have
+
 An LGTM is needed from the DevTools TLs, which are Benedikt Meurer ([email protected]) and Rob Paveza ([email protected]) at this point, in order to ensure architectural consistency. The TLs are also responsible for finding the right LGTM providers (i.e. the domain experts) to sign off on the design.
 
 In the absence of the TLs, the EnReOw takes over the responsibility.
 
 ### LGTM provider
 *LGTM*: Must have
+
 This is a person that is required to give LGTM. These are usually ICs which have significant knowledge about the areas in question.
 
 ### “Random” reviewer of the document (RRotD)
 *LGTM*: Not required
+
 This is somebody who is simply reviewing and comment on the proposal. Their input should be considered, although their LGTM is not required.
 
 ### The Eng Review Owners (EnReOw)
 *LGTM*: Not required
+
 Stuck proposals can be escalated to the [ENG_REVIEW_OWNERS](https://cs.chromium.org/chromium/src/third_party/devtools-frontend/src/ENG_REVIEW_OWNERS) Potential use cases of such an escalation:
 - An LGTM provider is non-responsive.
 - No consensus on the design can be reached.
diff --git a/README.md b/README.md
index 40e1407..5f24b4a 100644
--- a/README.md
+++ b/README.md
@@ -12,6 +12,9 @@
 ### Design Guidelines
 Please be aware that DevTools follows additional [development guidelines](DESIGN_GUIDELINES.md).
 
+### Issue triage
+The issue triage guidelines can be found [here](docs/TRIAGE_GUIDELINES.md).
+
 ### Workflows
 
 In order to make changes to DevTools frontend, build, run, test, and submit changes, several workflows exist. Having [depot_tools](https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up) set up is a common prerequisite.
diff --git a/docs/TRIAGE_GUIDELINES.md b/docs/TRIAGE_GUIDELINES.md
new file mode 100644
index 0000000..7f377cb
--- /dev/null
+++ b/docs/TRIAGE_GUIDELINES.md
@@ -0,0 +1,96 @@
+# Triage Guidelines
+
+## Disclaimer
+The most important thing: Please use common sense. The guidelines below are likely not exhaustive and will not cover every case.
+
+## What should be triaged?
+[[Query]](https://bugs.chromium.org/p/chromium/issues/list?q=status=untriaged%20component:Platform%3EDevTools)
+
+[All Untriaged DevTools](https://bugs.chromium.org/p/chromium/issues/list?q=status=untriaged%20component:Platform%3EDevTools) issues need to be triaged.
+
+## Who is triaging?
+Right now there is a Google-internal rotation set-up, with people that do weekly shifts.
+As Microsoft is in an opposite timezone they have a similar rotation on the same triage queue, but during a different time.
+
+* Google rotation: GMT+1
+* MS rotation: GMT-9
+
+## What are the SLOs?
+[[Query]](https://bugs.chromium.org/p/chromium/issues/list?sort=id&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified&q=status%3Duntriaged%20component%3APlatform%3EDevTools%20modified-before%3Atoday-7&can=2)
+
+Issues in the untriaged queue should receive a meaningful response within a business week. This means that the goal is to make the [query mentioned above](https://bugs.chromium.org/p/chromium/issues/list?sort=id&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified&q=status%3Duntriaged%20component%3APlatform%3EDevTools%20modified-before%3Atoday-7&can=2) return zero issues.
+
+## How are priorities defined?
+* P0: This needs to be urgently done, fire drill alert!
+   * Most of the time, this seldom needs to be used.
+   * Critical security exploits that affect stable are a good example for a P0
+   * DevTools crashing on startup is a good example
+* P1: This is important. Let’s aim to get this done next
+   * Non-critical security fixes will likely be in this category
+   * Regression bugs will be likely in this category
+   *Important features that partners are waiting for might be in this category
+* P2: We want to do that. The exact time of delivery is not that important though.
+   * General feature work will likely be in this category
+   * Non-severe bugs
+* P3: This is nice, but not important. We unlikely will do work here.
+   * Edge-case bugs might fit this category
+   * Non-important feature requests too
+
+
+## How should issues be triaged?
+An issue is triaged when it meets the following criteria:
+* Priority is set correctly
+* Component is set correctly
+* Type is set correctly especially consider Feature vs Bug vs Bug-Regression
+* Status is set correctly (Available most of the time)
+* Request bisection from the Chrome Test Engineer team by adding the label "Needs-Bisect".
+
+### Setting Assigned or Available
+Set issues to Available if they don’t need immediate action and nobody right now and in the short-term future (an iteration) needs to work on it.
+
+If you think they should be addressed in the short-term please add the label “Hotlist-DevTools-CurrentSprint”.
+
+If you think they should be addressed mid-term or the next iteration, please add the label “Hotlist-DevTools-Backlog”
+
+Issues that are handled by Microsoft have the label “Hotlist-DevTools-MS-Backlog” and “Hotlist-DevTools-MS-CurrentSprint” respectively and can be considered triaged.
+
+If you think they are super urgent, please assign them to [email protected] and cc [email protected] and [email protected].
+
+### Closing issues
+Don’t be afraid to close issues with WontFix if:
+* Bugs that are not reproducible
+* After two weeks you did not get a response back from the reporter on a question
+* The requested “bug” is the intended behavior
+Make sure that you bundle the WontFix with a brief comment explaining it e.g. “Setting to WontFix because not reproducible.”
+
+## FAQ
+### What if the issue belongs to another team?
+If you think the to-triage issue is not a DevTools issue, please simply set it to a component that you think it should belong to and potentially remove the DevTools component. Make sure that the status is set to Untriaged. Feel free to CC people that you think might help with triaging this.
+This essentially moves the issue out of the DevTools triage queue into another team’s queue.
+
+### There is a feature request I am unsure how to handle. What should I do?
+Please set the request to Available and add the label “Hotlist-DevTools-ProductReview”.
+
+### How do I indicate that a bug should block a release?
+The combination of the label “M-<milestone>” and “Release-Block-<channel>” signals that this very bug is blocking a release. Examples:
+* M-80, Release-Block-Stable
+   * This blocks the release of 80 to the Stable channel
+   * Depends in which release channel 80 is, this might not be an urgent (but still important bug to fix)
+* M-81, Release-Block-Beta
+   * This blocks the release of 81 to the Beta channel
+   * Depends in which release channel 81 is, this might not be an urgent (but still important bug to fix)
+* M-81, Release-Block-Dev
+   * This blocks the release of 81 to the Dev channel
+   * This typically means that the bug is urgent and important, as Dev releases are happening every week and are ok to be a little bit buggy.
+
+## Out of scope
+### Managing the backlog
+[[Query]](https://bugs.chromium.org/p/chromium/issues/list?sort=id&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified&q=Hotlist%3DDevTools-Backlog&can=2)
+
+Managing the backlog is out of scope for the triage rotation. The backlog will be groomed continuously by hablich@ for now. The SLA is that there should be a maximum of 50 issues in there.
+### Managing the ProductReview queue
+[[Query]](https://bugs.chromium.org/p/chromium/issues/list?sort=id&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified&q=Hotlist%3DDevTools-ProductReview&can=2)
+
+Issues in ProductReview will continuously be handled by hablich@ to unblock items in there. SLA is max 10 issues.
+## References
+* [Chromium triage guidelines](https://www.chromium.org/for-testers/bug-reporting-guidelines/triage-best-practices)