mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
113 lines
5.5 KiB
Markdown
113 lines
5.5 KiB
Markdown
# Chrome Network Bug Triage : Suggested Workflow
|
|
|
|
[TOC]
|
|
|
|
## Identifying unlabeled network bugs on the tracker
|
|
|
|
* Look at new unconfirmed bugs since noon PST on the last triager's rotation.
|
|
[Use this issue tracker
|
|
query](https://bugs.chromium.org/p/chromium/issues/list?q=status%3Aunconfirmed&sort=-id&num=1000).
|
|
|
|
* Read the title of the bug.
|
|
|
|
* If a bug looks like it might be network related, middle click (or
|
|
command-click on OSX) to open it in a new tab.
|
|
|
|
* If a user provides a crash ID for a crasher for a bug that could be
|
|
net-related, see the [internal instructions on dealing with a crash ID](https://goto.google.com/network_triage_internal#dealing-with-a-crash-id)
|
|
|
|
* If network causes are possible, ask for a net-export log (If it's not a
|
|
browser crash) and attach the most specific internals-network label that's
|
|
applicable. If there isn't an applicable narrower component, a clear owner
|
|
for the issue, or there are multiple possibilities, attach the
|
|
Internals>Network component and proceed with further investigation.
|
|
|
|
* If non-network causes also seem possible, attach those components as well.
|
|
|
|
## Investigating component=Internals>Network bugs
|
|
|
|
* Note that you may want to investigate Needs-Feedback bugs first, as
|
|
that may result in some bugs being added to this list.
|
|
|
|
* It's recommended that while on triage duty, you subscribe to the
|
|
Internals>Network component (but not its subcomponents). To do this, go
|
|
to the issue tracker and then click "Saved Queries".
|
|
Add a query with these settings:
|
|
* Saved query name: Network Bug Triage
|
|
* Project: chromium
|
|
* Query: component=Internals>Network
|
|
* Subscription options: Notify Immediately
|
|
|
|
* Look through unconfirmed and untriaged component=Internals>Network bugs,
|
|
prioritizing those updated within the last week. [Use this issue tracker
|
|
query](https://bugs.chromium.org/p/chromium/issues/list?can=2&q=component%3DInternals%3ENetwork+status%3AUnconfirmed,Untriaged+-label:Needs-Feedback&sort=-modified).
|
|
|
|
* If more information is needed from the reporter, ask for it and add the
|
|
Needs-Feedback label.
|
|
|
|
* While investigating a new issue, change the status to Untriaged.
|
|
|
|
* If a bug is a potential security issue (Allows for code execution from remote
|
|
site, allows crossing security boundaries, unchecked array bounds, etc) mark
|
|
it Type-Bug-Security. If it has privacy implication (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),
|
|
mark it with component Privacy.
|
|
|
|
* For bugs that already have a more specific network component, go ahead and
|
|
remove the Internals>Network component to get them off the next triager's
|
|
radar and move on.
|
|
|
|
* Try to figure out if it's really a network bug. See common non-network
|
|
components section for description of common components for issues incorrectly
|
|
tagged as Internals>Network.
|
|
|
|
* If it's not, attach appropriate labels/components and go no further.
|
|
|
|
* If it may be a network bug, attach additional possibly relevant component if
|
|
any, and continue investigating. Once you either determine it's a
|
|
non-network bug, or figure out accurate more specific network components, your
|
|
job is done, though you should still ask for a net-export dump if it seems
|
|
likely to be useful.
|
|
|
|
* Note that Chrome-OS-specific network-related code (Captive portal detection,
|
|
connectivity detection, login, etc) may not all have appropriate more
|
|
specific subcomponents, but are not in areas handled by the network stack
|
|
team. Just make sure those have the OS-Chrome label, and any more specific
|
|
labels if applicable, and then move on.
|
|
|
|
* Gather data and investigate.
|
|
* Remember to add the Needs-Feedback label whenever waiting for the user to
|
|
respond with more information, and remove it when not waiting on the
|
|
user.
|
|
* Try to reproduce locally. If you can, and it's a regression, use
|
|
src/tools/bisect-builds.py to figure out when it regressed.
|
|
* Ask more data from the user as needed (net-export dumps, repro case,
|
|
crash ID from chrome://crashes, run tests, etc).
|
|
* If asking for a chrome://net-export dump, provide this link:
|
|
https://sites.google.com/a/chromium.org/dev/for-testers/providing-network-details.
|
|
|
|
* Try to figure out what's going on, and which more specific network component
|
|
is most appropriate.
|
|
|
|
* If it's a regression, browse through the git history of relevant files to try
|
|
and figure out when it regressed. CC authors / primary reviewers of any
|
|
strongly suspect CLs.
|
|
|
|
* If you are having trouble with an issue, particularly for help understanding
|
|
net-export logs, email the public net-dev@chromium.org list for help
|
|
debugging. If it's a crasher, or for some other reason discussion needs to
|
|
be done in private, see [internal documentation for details](https://goto.google.com/network_triage_internal#getting-help-with-a-bug)
|
|
|
|
* If it appears to be a bug in the unowned core of the network stack (i.e. no
|
|
subcomponent applies, or only the Internals>Network>HTTP subcomponent
|
|
applies, and there's no clear owner), try to figure out the exact cause.
|
|
|
|
## Crashes
|
|
|
|
For guidance on crashes see the internal documentation:
|
|
|
|
* [Dealing with a crash ID](https://goto.google.com/network_triage_internal#dealing-with-a-crash-id)
|
|
* [Looking for new crashers](https://goto.google.com/network_triage_internal#looking-for-new-crashers)
|
|
* [Investigating crashers](https://goto.google.com/network_triage_internal#investigating-crashers)
|