OLD | NEW |
1 # Chrome Network Bug Triage : Components and labels | 1 # Chrome Network Bug Triage : Components and labels |
2 | 2 |
3 ## Some network component caveats | 3 ## Some network component caveats |
4 | 4 |
5 **UI>Browser>Downloads** | 5 * **UI>Browser>Downloads** |
6 : Despite the name, this covers all issues related to downloading a file except | |
7 saving entire pages (which is **Blink>SavePage**), not just UI issues. | |
8 Most downloads bugs will have the word "download" or "save as" in the | |
9 description. Issues with the HTTP server for the Chrome binaries are not | |
10 downloads bugs. | |
11 | 6 |
12 **UI>Browser>SafeBrowsing** | 7 Despite the name, this covers all issues related to downloading a file |
13 : Bugs that have to do with the process by which a URL or file is determined to | 8 except saving entire pages (which is **Blink>SavePage**), not just UI |
14 be dangerous based on our databases, or the resulting interstitials. | 9 issues. Most downloads bugs will have the word "download" or "save as" in |
15 Determination of danger based purely on content-type or file extension | 10 the description. Issues with the HTTP server for the Chrome binaries are |
16 belongs in **UI>Browser>Downloads**, not SafeBrowsing. | 11 not downloads bugs. |
17 | 12 |
18 **Internals>Network>SSL** | 13 * **UI>Browser>SafeBrowsing** |
19 : This includes issues that should be also tagged as **Security>UX** | |
20 (certificate error pages or other security interstitials, omnibox indicators | |
21 that a page is secure), and more general SSL issues. If you see requests | |
22 that die in the SSL negotiation phase, in particular, this is often the | |
23 correct component. | |
24 | 14 |
25 **Internals>Network>DataProxy** | 15 Bugs that have to do with the process by which a URL or file is determined |
26 : Flywheel / the Data Reduction Proxy. Issues require "Reduce Data Usage" be | 16 to be dangerous based on our databases, or the resulting interstitials. |
27 turned on. Proxy url is [https://proxy.googlezip.net:443](), with | 17 Determination of danger based purely on content-type or file extension |
28 [http://compress.googlezip.net:80]() as a fallback. Currently Android and | 18 belongs in **UI>Browser>Downloads**, not SafeBrowsing. |
29 iOS only. | |
30 | 19 |
31 **Internals>Network>Cache** | 20 * **Internals>Network>SSL** |
32 : The cache is the layer that handles most range request logic (Though range | |
33 requests may also be issued by the PDF plugin, XHRs, or other components). | |
34 | 21 |
35 **Internals>Network>SPDY** | 22 This includes issues that should be also tagged as **Security>UX** |
36 : Covers HTTP2 as well. | 23 (certificate error pages or other security interstitials, omnibox indicators |
| 24 that a page is secure), and more general SSL issues. If you see requests |
| 25 that die in the SSL negotiation phase, in particular, this is often the |
| 26 correct component. |
37 | 27 |
38 **Internals>Network>HTTP** | 28 * **Internals>Network>DataProxy** |
39 : Typically not used. Unclear what it covers, and there's no specific HTTP | |
40 owner. | |
41 | 29 |
42 **Internals>Network>Logging** | 30 Flywheel / the Data Reduction Proxy. Issues require "Reduce Data Usage" be |
43 : Covers **about:net-internals**, **about:net-export** as well as the what's | 31 turned on. Proxy url is [https://proxy.googlezip.net:443](#), with |
44 sent to the NetLog. | 32 [http://compress.googlezip.net:80](#) as a fallback. Currently Android and |
| 33 iOS only. |
45 | 34 |
46 **Internals>Network>Connectivity** | 35 * **Internals>Network>Cache** |
47 : Issues related to switching between networks, ERR_NETWORK_CHANGED, Chrome | |
48 thinking it's online when it's not / navigator.onLine inaccuracies, etc. | |
49 | 36 |
50 **Internals>Network>Filters** | 37 The cache is the layer that handles most range request logic (Though range |
51 : Covers SDCH and gzip issues. ERR_CONTENT_DECODING_FAILED indicates a problem | 38 requests may also be issued by the PDF plugin, XHRs, or other components). |
52 at this layer, and bugs here can also cause response body corruption. | 39 |
| 40 * **Internals>Network>SPDY** |
| 41 |
| 42 Covers HTTP2 as well. |
| 43 |
| 44 * **Internals>Network>HTTP** |
| 45 |
| 46 Typically not used. Unclear what it covers, and there's no specific HTTP |
| 47 owner. |
| 48 |
| 49 * **Internals>Network>Logging** |
| 50 |
| 51 Covers **about:net-internals**, **about:net-export** as well as the what's |
| 52 sent to the NetLog. |
| 53 |
| 54 * **Internals>Network>Connectivity** |
| 55 |
| 56 Issues related to switching between networks, `ERR_NETWORK_CHANGED`, Chrome |
| 57 thinking it's online when it's not / navigator.onLine inaccuracies, etc. |
| 58 |
| 59 * **Internals>Network>Filters** |
| 60 |
| 61 Covers SDCH and gzip issues. `ERR_CONTENT_DECODING_FAILED` indicates a |
| 62 problem at this layer, and bugs here can also cause response body |
| 63 corruption. |
53 | 64 |
54 ## Common non-network components | 65 ## Common non-network components |
55 | 66 |
56 Bugs in these areas often receive the **Internals>Network** component, though | 67 Bugs in these areas often receive the **Internals>Network** component, though |
57 they fall largely outside the purview of the network stack team: | 68 they fall largely outside the purview of the network stack team: |
58 | 69 |
59 **Blink>Forms** | 70 * **Blink>Forms** |
60 : Issues submitting forms, forms having weird data, forms sending the wrong | |
61 method, etc. | |
62 | 71 |
63 **Blink>Loader** | 72 Issues submitting forms, forms having weird data, forms sending the wrong |
64 : Cross origin issues are sometimes loader related. Blink also has an | 73 method, etc. |
65 in-memory cache, and when it's used, requests don't appear in | |
66 about:net-internals. Requests for the same URL are also often merged there | |
67 as well. This does *not* cover issues with content/browser/loader/ files. | |
68 | 74 |
69 **Blink>ServiceWorker** | 75 * **Blink>Loader** |
70 | 76 |
71 **Blink>Storage>AppCache** | 77 Cross origin issues are sometimes loader related. Blink also has an |
| 78 in-memory cache, and when it's used, requests don't appear in |
| 79 about:net-internals. Requests for the same URL are also often merged there |
| 80 as well. This does *not* cover issues with content/browser/loader/ files. |
72 | 81 |
73 **Blink>Network>WebSockets** | 82 * **Blink>ServiceWorker** |
74 : Issues with the WebSockets. Attach this component to any issue about the | |
75 WebSocket feature regardless of where the cause of the issue is (net/ or | |
76 Blink). | |
77 | 83 |
78 **Blink>Network>FetchAPI** | 84 * **Blink>Storage>AppCache** |
79 : Generic issues with the Fetch API - missing request or response | |
80 headers, multiple headers, etc. These will often run into issues in certain | |
81 corner cases (Cross origin / CORS, proxy, whatever). Attach all components th
at | |
82 seem appropriate. | |
83 | 85 |
84 **Blink>Network>XHR** | 86 * **Blink>Network>WebSockets** |
85 : Generic issues with sync/async XHR requests. | |
86 | 87 |
87 **Blink>WebRTC>Network** | 88 Issues with the WebSockets. Attach this component to any issue about the |
88 : Anything WebRTC-related does not use the net stack and should go here. | 89 WebSocket feature regardless of where the cause of the issue is (net/ or |
| 90 Blink). |
89 | 91 |
90 **Services>Sync** | 92 * **Blink>Network>FetchAPI** |
91 : Sharing data/tabs/history/passwords/etc between machines not working. | |
92 | 93 |
93 **Services>Chromoting** | 94 Generic issues with the Fetch API - missing request or response headers, |
| 95 multiple headers, etc. These will often run into issues in certain corner |
| 96 cases (Cross origin / CORS, proxy, whatever). Attach all components that |
| 97 seem appropriate. |
94 | 98 |
95 **Platform>Extensions** | 99 * **Blink>Network>XHR** |
96 : Issues extensions loading / not loading / hanging. | |
97 | 100 |
98 **Platform>Extensions>API** | 101 Generic issues with sync/async XHR requests. |
99 : Issues with network related extension APIs should have this component. | |
100 chrome.webRequest is the big one, I believe, but there are others. | |
101 | 102 |
102 **Internals>Plugins>Pepper[>SDK]** | 103 * **Blink>WebRTC>Network** |
103 | 104 |
104 **UI>Browser>Omnibox** | 105 Anything WebRTC-related does not use the net stack and should go here. |
105 : Basically any issue with the omnibox. URLs being treated as search queries | |
106 rather than navigations, dropdown results being weird, not handling certain | |
107 unicode characters, etc. If the issue is new TLDs not being recognized by | |
108 the omnibox, that's due to Chrome's TLD list being out of date, and not an | |
109 omnibox issue. Such TLD issues should be duped against | |
110 http://crbug.com/37436. | |
111 | 106 |
112 **Internals>Media>Network** | 107 * **Services>Sync** |
113 : Issues related to media. These often run into the 6 requests per hostname | |
114 issue, and also have fun interactions with the cache, particularly in the | |
115 range request case. | |
116 | 108 |
117 **Internals>Plugins>PDF** | 109 Sharing data/tabs/history/passwords/etc between machines not working. |
118 : Issues loading pdf files. These are often related to range requests, which | |
119 also have some logic at the Internals>Network>Cache layer. | |
120 | 110 |
121 **UI>Browser>Navigation** | 111 * **Services>Chromoting** |
122 | 112 |
123 **UI>Browser>History** | 113 * **Platform>Extensions** |
124 : Issues which only appear with forward/back navigation. | |
125 | 114 |
126 **OS>Systems>Network** / **OS>Systems>Mobile** / **OS>Systems>Bluetooth** | 115 Issues extensions loading / not loading / hanging. |
127 : These should be used for issues with ChromeOS's platform network code, and | |
128 not net/ issues on ChromeOS. | |
129 | 116 |
130 **Blink>SecurityFeature** | 117 * **Platform>Extensions>API** |
131 : CORS / Cross origin issues. Main frame cross-origin navigation issues are | |
132 often actually **UI>Browser>Navigation** issues. | |
133 | 118 |
134 **Privacy** | 119 Issues with network related extension APIs should have this component. |
135 : Privacy related bug (History, cookies discoverable by an entity that | 120 chrome.webRequest is the big one, I believe, but there are others. |
136 shouldn't be able to do so, incognito state being saved in memory or on disk | 121 |
137 beyond the lifetime of incognito tabs, etc). Generally used in conjunction | 122 * **Internals>Plugins>Pepper[>SDK]** |
138 with other components. | 123 |
| 124 * **UI>Browser>Omnibox** |
| 125 |
| 126 Basically any issue with the omnibox. URLs being treated as search queries |
| 127 rather than navigations, dropdown results being weird, not handling certain |
| 128 unicode characters, etc. If the issue is new TLDs not being recognized by |
| 129 the omnibox, that's due to Chrome's TLD list being out of date, and not an |
| 130 omnibox issue. Such TLD issues should be duped against |
| 131 http://crbug.com/37436. |
| 132 |
| 133 * **Internals>Media>Network** |
| 134 |
| 135 Issues related to media. These often run into the 6 requests per hostname |
| 136 issue, and also have fun interactions with the cache, particularly in the |
| 137 range request case. |
| 138 |
| 139 * **Internals>Plugins>PDF** |
| 140 |
| 141 Issues loading pdf files. These are often related to range requests, which |
| 142 also have some logic at the Internals>Network>Cache layer. |
| 143 |
| 144 * **UI>Browser>Navigation** |
| 145 |
| 146 * **UI>Browser>History** |
| 147 |
| 148 Issues which only appear with forward/back navigation. |
| 149 |
| 150 * **OS>Systems>Network** / **OS>Systems>Mobile** / **OS>Systems>Bluetooth** |
| 151 |
| 152 These should be used for issues with ChromeOS's platform network code, and |
| 153 not net/ issues on ChromeOS. |
| 154 |
| 155 * **Blink>SecurityFeature** |
| 156 |
| 157 CORS / Cross origin issues. Main frame cross-origin navigation issues are |
| 158 often actually **UI>Browser>Navigation** issues. |
| 159 |
| 160 * **Privacy** |
| 161 |
| 162 Privacy related bug (History, cookies discoverable by an entity that |
| 163 shouldn't be able to do so, incognito state being saved in memory or on disk |
| 164 beyond the lifetime of incognito tabs, etc). Generally used in conjunction |
| 165 with other components. |
139 | 166 |
140 ## Common labels | 167 ## Common labels |
141 | 168 |
142 **Type-Bug-Security** | 169 * **Type-Bug-Security** |
143 : Security related bug (Allows for code execution from remote site, allows | 170 |
144 crossing security boundaries, unchecked array bounds, etc) should be tagged | 171 Security related bug (Allows for code execution from remote site, allows |
145 with this label. | 172 crossing security boundaries, unchecked array bounds, etc) should be tagged |
| 173 with this label. |
OLD | NEW |