asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 1 | # Chrome Network Bug Triage : Suggested Workflow |
| 2 | |
| 3 | [TOC] |
| 4 | |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 5 | ## Identifying unlabeled network bugs on the tracker |
| 6 | |
davidben | beccd43 | 2016-06-22 18:13:18 | [diff] [blame] | 7 | * Look at new unconfirmed bugs since noon PST on the last triager's rotation. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 8 | [Use this issue tracker |
asanka | a30864c | 2016-12-13 19:28:57 | [diff] [blame] | 9 | query](https://bugs.chromium.org/p/chromium/issues/list?q=status%3Aunconfirmed&sort=-id&num=1000). |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 10 | |
eroman | 4cb6246c | 2016-02-23 04:00:27 | [diff] [blame] | 11 | * Read the title of the bug. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 12 | |
asanka | a30864c | 2016-12-13 19:28:57 | [diff] [blame] | 13 | * If a bug looks like it might be network related, middle click (or |
| 14 | command-click on OSX) to open it in a new tab. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 15 | |
| 16 | * If a user provides a crash ID for a crasher for a bug that could be |
Eric Roman | 661816b9 | 2018-05-14 23:04:12 | [diff] [blame] | 17 | net-related, see the [internal instructions on dealing with a crash ID](https://goto.google.com/network_triage_internal#dealing-with-a-crash-id) |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 18 | |
Matt Menke | ae32850c | 2018-03-20 16:40:55 | [diff] [blame] | 19 | * If network causes are possible, ask for a net-export log (If it's not a |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 20 | browser crash) and attach the most specific internals-network label that's |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 21 | applicable. If there isn't an applicable narrower component, a clear owner |
| 22 | for the issue, or there are multiple possibilities, attach the |
| 23 | Internals>Network component and proceed with further investigation. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 24 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 25 | * If non-network causes also seem possible, attach those components as well. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 26 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 27 | ## Investigating component=Internals>Network bugs |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 28 | |
rdsmith | 27684e69 | 2017-04-28 21:23:44 | [diff] [blame] | 29 | * Note that you may want to investigate Needs-Feedback bugs first, as |
Matt Menke | ae32850c | 2018-03-20 16:40:55 | [diff] [blame] | 30 | that may result in some bugs being added to this list. |
rdsmith | 27684e69 | 2017-04-28 21:23:44 | [diff] [blame] | 31 | |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 32 | * It's recommended that while on triage duty, you subscribe to the |
eroman | 12372dc | 2016-02-22 20:08:10 | [diff] [blame] | 33 | Internals>Network component (but not its subcomponents). To do this, go |
| 34 | to the issue tracker and then click "Saved Queries". |
| 35 | Add a query with these settings: |
eroman | 4cb6246c | 2016-02-23 04:00:27 | [diff] [blame] | 36 | * Saved query name: Network Bug Triage |
| 37 | * Project: chromium |
| 38 | * Query: component=Internals>Network |
| 39 | * Subscription options: Notify Immediately |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 40 | |
davidben | beccd43 | 2016-06-22 18:13:18 | [diff] [blame] | 41 | * Look through unconfirmed and untriaged component=Internals>Network bugs, |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 42 | prioritizing those updated within the last week. [Use this issue tracker |
mmenke | 212fe43 | 2016-03-10 16:51:33 | [diff] [blame] | 43 | query](https://bugs.chromium.org/p/chromium/issues/list?can=2&q=component%3DInternals%3ENetwork+status%3AUnconfirmed,Untriaged+-label:Needs-Feedback&sort=-modified). |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 44 | |
| 45 | * If more information is needed from the reporter, ask for it and add the |
mmenke | 212fe43 | 2016-03-10 16:51:33 | [diff] [blame] | 46 | Needs-Feedback label. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 47 | |
| 48 | * While investigating a new issue, change the status to Untriaged. |
| 49 | |
| 50 | * If a bug is a potential security issue (Allows for code execution from remote |
| 51 | site, allows crossing security boundaries, unchecked array bounds, etc) mark |
| 52 | it Type-Bug-Security. If it has privacy implication (History, cookies |
| 53 | discoverable by an entity that shouldn't be able to do so, incognito state |
| 54 | being saved in memory or on disk beyond the lifetime of incognito tabs, etc), |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 55 | mark it with component Privacy. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 56 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 57 | * For bugs that already have a more specific network component, go ahead and |
mmenke | 212fe43 | 2016-03-10 16:51:33 | [diff] [blame] | 58 | remove the Internals>Network component to get them off the next triager's |
| 59 | radar and move on. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 60 | |
| 61 | * Try to figure out if it's really a network bug. See common non-network |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 62 | components section for description of common components for issues incorrectly |
| 63 | tagged as Internals>Network. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 64 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 65 | * If it's not, attach appropriate labels/components and go no further. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 66 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 67 | * If it may be a network bug, attach additional possibly relevant component if |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 68 | any, and continue investigating. Once you either determine it's a |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 69 | non-network bug, or figure out accurate more specific network components, your |
Matt Menke | ae32850c | 2018-03-20 16:40:55 | [diff] [blame] | 70 | job is done, though you should still ask for a net-export dump if it seems |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 71 | likely to be useful. |
| 72 | |
derat | 81710508 | 2017-02-22 17:57:55 | [diff] [blame] | 73 | * Note that Chrome-OS-specific network-related code (Captive portal detection, |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 74 | connectivity detection, login, etc) may not all have appropriate more |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 75 | specific subcomponents, but are not in areas handled by the network stack |
| 76 | team. Just make sure those have the OS-Chrome label, and any more specific |
| 77 | labels if applicable, and then move on. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 78 | |
| 79 | * Gather data and investigate. |
| 80 | * Remember to add the Needs-Feedback label whenever waiting for the user to |
| 81 | respond with more information, and remove it when not waiting on the |
| 82 | user. |
| 83 | * Try to reproduce locally. If you can, and it's a regression, use |
| 84 | src/tools/bisect-builds.py to figure out when it regressed. |
Matt Menke | ae32850c | 2018-03-20 16:40:55 | [diff] [blame] | 85 | * Ask more data from the user as needed (net-export dumps, repro case, |
| 86 | crash ID from chrome://crashes, run tests, etc). |
| 87 | * If asking for a chrome://net-export dump, provide this link: |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 88 | https://sites.google.com/a/chromium.org/dev/for-testers/providing-network-details. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 89 | |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 90 | * Try to figure out what's going on, and which more specific network component |
| 91 | is most appropriate. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 92 | |
| 93 | * If it's a regression, browse through the git history of relevant files to try |
| 94 | and figure out when it regressed. CC authors / primary reviewers of any |
| 95 | strongly suspect CLs. |
| 96 | |
| 97 | * If you are having trouble with an issue, particularly for help understanding |
Matt Menke | ae32850c | 2018-03-20 16:40:55 | [diff] [blame] | 98 | net-export logs, email the public [email protected] list for help |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 99 | debugging. If it's a crasher, or for some other reason discussion needs to |
Eric Roman | 661816b9 | 2018-05-14 23:04:12 | [diff] [blame] | 100 | be done in private, see [internal documentation for details](https://goto.google.com/network_triage_internal#getting-help-with-a-bug) |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 101 | |
| 102 | * If it appears to be a bug in the unowned core of the network stack (i.e. no |
eroman | 9621195 | 2016-02-22 21:42:03 | [diff] [blame] | 103 | subcomponent applies, or only the Internals>Network>HTTP subcomponent |
| 104 | applies, and there's no clear owner), try to figure out the exact cause. |
asanka | ddd5dc2 | 2015-03-20 15:52:40 | [diff] [blame] | 105 | |
Eric Roman | 661816b9 | 2018-05-14 23:04:12 | [diff] [blame] | 106 | ## Crashes |
mmenke | 212fe43 | 2016-03-10 16:51:33 | [diff] [blame] | 107 | |
Eric Roman | 661816b9 | 2018-05-14 23:04:12 | [diff] [blame] | 108 | For guidance on crashes see the internal documentation: |
mmenke | 212fe43 | 2016-03-10 16:51:33 | [diff] [blame] | 109 | |
Eric Roman | 661816b9 | 2018-05-14 23:04:12 | [diff] [blame] | 110 | * [Dealing with a crash ID](https://goto.google.com/network_triage_internal#dealing-with-a-crash-id) |
| 111 | * [Looking for new crashers](https://goto.google.com/network_triage_internal#looking-for-new-crashers) |
| 112 | * [Investigating crashers](https://goto.google.com/network_triage_internal#investigating-crashers) |