| # Chrome Network Bug Triage : Components and labels |
| |
| ## Some network component caveats |
| |
| * **Internals>Network>SSL** |
| |
| This includes issues that should be also tagged as **Security>UX** |
| (certificate error pages or other security interstitials, omnibox indicators |
| that a page is secure), and more general SSL issues. If you see requests |
| that die in the SSL negotiation phase, in particular, this is often the |
| correct component. |
| |
| * **Internals>Network>DataProxy** |
| |
| Flywheel / the Data Reduction Proxy. Issues require "Reduce Data Usage" be |
| turned on. Proxy URL is [https://proxy.googlezip.net:443](#), with |
| [http://compress.googlezip.net:80](#) as a fallback. Currently Android and |
| iOS only. |
| |
| * **Internals>Network>Cache** |
| |
| The cache is the layer that handles most range request logic (Though range |
| requests may also be issued by the PDF plugin, XHRs, or other components). |
| |
| * **Internals>Network>SPDY** |
| |
| Covers HTTP2 as well. |
| |
| * **Internals>Network>HTTP** |
| |
| Typically not used. Unclear what it covers, and there's no specific HTTP |
| owner. |
| |
| * **Internals>Network>Logging** |
| |
| Covers **about:net-internals**, **about:net-export** as well as the what's |
| sent to the NetLog. |
| |
| * **Internals>Network>Connectivity** |
| |
| Issues related to switching between networks, `ERR_NETWORK_CHANGED`, Chrome |
| thinking it's online when it's not / navigator.onLine inaccuracies, etc. |
| |
| * **Internals>Network>Filters** |
| |
| Covers gzip, deflate and brotli issues. `ERR_CONTENT_DECODING_FAILED` |
| indicates a problem at this layer, and bugs here can also cause response |
| body corruption. |
| |
| ## Common non-network components |
| |
| Bugs in these areas often receive the **Internals>Network** component, though |
| they fall largely outside the purview of the network stack team: |
| |
| * **UI>Browser>Downloads** |
| |
| Despite the name, this covers all issues related to downloading a file |
| except saving entire pages (which is **Blink>SavePage**), not just UI |
| issues. Most downloads bugs will have the word "download" or "save as" in |
| the description. Issues with the HTTP server for the Chrome binaries are |
| not downloads bugs. |
| |
| * **UI>Browser>SafeBrowsing** |
| |
| Bugs that have to do with the process by which a URL or file is determined |
| to be dangerous based on our databases, or the resulting interstitials. |
| Determination of danger based purely on content-type or file extension |
| belongs in **UI>Browser>Downloads**, not SafeBrowsing. |
| |
| * **Blink>Forms** |
| |
| Issues submitting forms, forms having weird data, forms sending the wrong |
| method, etc. |
| |
| * **Blink>Loader** |
| |
| Cross origin issues are sometimes loader related. Blink also has an |
| in-memory cache, and when it's used, requests don't appear in |
| about:net-internals. Requests for the same URL are also often merged there |
| as well. This does *not* cover issues with content/browser/loader/ files. |
| |
| * **Blink>ServiceWorker** |
| |
| * **Blink>Storage>AppCache** |
| |
| * **Blink>Network>WebSockets** |
| |
| Issues with the WebSockets. Attach this component to any issue about the |
| WebSocket feature regardless of where the cause of the issue is (net/ or |
| Blink). |
| |
| * **Blink>Network>FetchAPI** |
| |
| Generic issues with the Fetch API - missing request or response headers, |
| multiple headers, etc. These will often run into issues in certain corner |
| cases (Cross origin / CORS, proxy, whatever). Attach all components that |
| seem appropriate. |
| |
| * **Blink>Network>XHR** |
| |
| Generic issues with sync/async XHR requests. |
| |
| * **Blink>WebRTC>Network** |
| |
| Anything WebRTC-related does not use the net stack and should go here. |
| |
| * **Services>Sync** |
| |
| Sharing data/tabs/history/passwords/etc between machines not working. |
| |
| * **Services>Chromoting** |
| |
| * **Platform>Extensions** |
| |
| Issues extensions loading / not loading / hanging. |
| |
| * **Platform>Extensions>API** |
| |
| Issues with network related extension APIs should have this component. |
| chrome.webRequest is the big one, I believe, but there are others. |
| |
| * **Internals>Plugins>Pepper[>SDK]** |
| |
| * **UI>Browser>Omnibox** |
| |
| Basically any issue with the omnibox. URLs being treated as search queries |
| rather than navigations, dropdown results being weird, not handling certain |
| Unicode characters, etc. If the issue is new TLDs not being recognized by |
| the omnibox, that's due to Chrome's TLD list being out of date, and not an |
| omnibox issue. Such TLD issues should be duped against |
| http://crbug.com/37436. |
| |
| * **Internals>Media>Network** |
| |
| Issues related to media. These often run into the 6 requests per hostname |
| issue, and also have fun interactions with the cache, particularly in the |
| range request case. |
| |
| * **Internals>Plugins>PDF** |
| |
| Issues loading PDF files. These are often related to range requests, which |
| also have some logic at the Internals>Network>Cache layer. |
| |
| * **UI>Browser>Navigation** |
| |
| * **UI>Browser>History** |
| |
| Issues which only appear with forward/back navigation. |
| |
| * **OS>Systems>Network** / **OS>Systems>Mobile** / **OS>Systems>Bluetooth** |
| |
| These should be used for issues with Chrome OS's platform network code, and |
| not net/ issues on Chrome OS. |
| |
| * **Blink>SecurityFeature** |
| |
| CORS / Cross origin issues. Main frame cross-origin navigation issues are |
| often actually **UI>Browser>Navigation** issues. |
| |
| * **Privacy** |
| |
| Privacy related bug (History, cookies discoverable by an entity that |
| shouldn't be able to do so, incognito state being saved in memory or on disk |
| beyond the lifetime of incognito tabs, etc). Generally used in conjunction |
| with other components. |
| |
| ## Common labels |
| |
| * **Type-Bug-Security** |
| |
| Security related bug (Allows for code execution from remote site, allows |
| crossing security boundaries, unchecked array bounds, etc) should be tagged |
| with this label. |