diff options
Diffstat (limited to 'en/source/life-of-a-bug.html')
-rw-r--r-- | en/source/life-of-a-bug.html | 231 |
1 files changed, 93 insertions, 138 deletions
diff --git a/en/source/life-of-a-bug.html b/en/source/life-of-a-bug.html index 28140bcc..571b7cd6 100644 --- a/en/source/life-of-a-bug.html +++ b/en/source/life-of-a-bug.html @@ -27,170 +27,125 @@ can report bugs and request features for the core Android software stack. (For details on this issue tracker, please see the <a href="report-bugs.html">Reporting Bugs</a> page). Reporting bugs is great (thank you!), but what happens to a bug report once -you file it? This page describes the Life of a Bug.</p> +you file it? This page describes the life of a bug.</p> -<p>*Please note: the Android Open Source Project (AOSP) issue tracker is +<p class="note">The Android Open Source Project (AOSP) issue tracker is intended only for bugs and feature requests related to the core Android software stack, and is a technical tool for the Open Source community.</p> -<p>This is not a customer support forum. -You can find support for Nexus devices on -<a href="http://support.google.com/nexus">Google's Nexus support site</a>. +<p>This is not a customer support forum. For support information, see the +<a href="https://support.google.com/nexus">Nexus</a> and +<a href="https://support.google.com/pixelphone">Pixel</a> help centers. Support for other devices is provided by the device manufacturers or by the carriers selling those devices.</p> <p>Support for Google applications is through <a href="http://support.google.com/">Google's support site</a>. Support -for 3rd-party applications is with each application's developer, e.g. +for third-party applications is with each application's developer, e.g. through the contact information provided on Google Play.</p> <p>Here's the life of a bug, in a nutshell:</p> <ol> -<li> -<p>A bug is filed, and has the state "New".</p> -</li> -<li> -<p>An AOSP maintainer periodically reviews and triages bugs. Bugs are -triaged into one of four "buckets": New, Open, No-Action, or Resolved.</p> -</li> -<li> -<p>Each bucket includes a number of states that provide more detail on the -fate of the issue.</p> -</li> -<li> -<p>Bugs in the "Resolved" bucket will eventually be included in a future -release of the Android software.</p> -</li> +<li>A bug is filed, and has the state "New".</li> +<li>An AOSP maintainer periodically reviews and triages bugs. Bugs are +triaged into one of four <em>buckets</em>: New, Open, No-Action, or Resolved.</li> +<li>Each bucket includes a number of states that provide more detail on the +fate of the issue.</li> +<li>Bugs marked as "Resolved" will eventually be included in a future +release of the Android software.</li> </ol> -<h2 id="bucket-details">Bucket Details</h2> -<p>Here is some additional information on each bucket, what it means, and how -it's handled.</p> -<h3 id="new-issues">New Issues</h3> -<p>New issues include bug reports that are not yet being acted upon. The two -states are:</p> +</ul> + +<h2 id="bucket-details">Bucket details</h2> +<p> +We use the <strong>Status</strong> field in Issue Tracker to specify the status +of an issue in the resolution process. This is consistent with the definitions +specified in the <a + href="https://developers.google.com/issue-tracker/concepts/issues#status">Issue + Tracker documentation</a>. +</p> +<h3 id="new-issues">New issues</h3> +<p> +New issues include bug reports that are not yet being acted upon. The two states +are: +</p> <ul> -<li> -<p><em>New:</em> - The bug report has not yet been triaged (that is, reviewed by an AOSP maintainer.)</p> -</li> -<li> -<p><em>NeedsInfo:</em> - The bug report has insufficient information to act -upon. The person who reported the bug needs to provide additional detail -before it can be triaged. If enough time passes and no new information is -provided, the bug may be closed by default, as one of the No-Action -states.</p> -</li> + <li><strong>New:</strong> The bug report has not yet been triaged (that is, + reviewed by an AOSP maintainer.)</li> + <li><strong>New + Hotlist:NeedsInfo:</strong> The bug report has insufficient + information to act upon. The person who reported the bug needs to provide + additional detail before it can be triaged. If enough time passes and no new + information is provided, the bug may be closed by default, as one of the + No-Action states.</li> </ul> -<h3 id="open-issues">Open Issues</h3> -<p>This bucket contains bugs that need action, but which are still -unresolved, pending a change to the source code.</p> +<h3 id="open-issues">Open issues</h3> +<p> +This bucket contains bugs that need action, but which are still unresolved, +pending a change to the source code. +</p> <ul> -<li> -<p><em>Unassigned:</em> - The bug report has been recognized as an adequately -detailed report of a legitimate issue, but has not yet been assigned to an -AOSP contributor to be fixed.</p> -</li> -<li> -<p><em>Assigned:</em> - Like <em>Unassigned</em>, but the bug has been -actually assigned to a specific contributor to fix.</p> -</li> + <li><strong>Assigned:</strong> The bug report has been recognized as an + adequately detailed report of a legitimate issue and the bug has been assigned + to a specific contributor to assess and analyze.</li> + <li><strong>Accepted:</strong> The assignee has acknowledged the issue and has + started to work on it.</li> </ul> -<p>Typically, a given bug will start in <em>Unassigned</em>, where it -will remain until someone intends to resolve it, at which -point it will enter <em>Assigned</em>. However, -note that this isn't a guarantee, and it's not uncommon for bugs to go from -<em>Unassigned</em> to one of the Resolved states.</p> -<p>In general, if a bug is in one of these Open states, the AOSP team has -recognized it as a legitimate issue, and a high-quality contribution fixing -that bug is likely to get accepted. However, it's impossible to guarantee a -fix in time for any particular release.</p> - -<h3 id="no-action-issues">No-Action Issues</h3> -<p>This bucket contains bugs that have for one reason or another been -determined to not require any action.</p> +<p> +Typically, a bug starts in <strong>Assigned</strong>, and remains there until +someone intends to resolve it, at which point it enters +<strong>Accepted</strong>. However, note that this isn't a guarantee, and it's +not uncommon for bugs to go from <strong>Assigned</strong> to one of the +Resolved states. +</p> +<p> +In general, if a bug is in one of these Open states, the AOSP team has +recognized it as a legitimate issue, and a high-quality contribution fixing that +bug is likely to get accepted. However, it's impossible to guarantee a fix in +time for any particular release. +</p> +<h3 id="no-action-issues">No-Action issues</h3> +<p> +This bucket contains bugs that are deemed to not require any action. +</p> <ul> -<li> -<p><em>Spam:</em> - A kind soul sent us some delicious pork products, that we, -regrettably, do not want.</p> -</li> -<li> -<p><em>Duplicate:</em> - There was already an identical report in the issue tracker. Any actual -action will be reported on that report.</p> -</li> -<li> -<p><em>Unreproducible:</em> - An AOSP contributor attempted to reproduce the -behavior described, and was unable to do so. This sometimes means that the bug -is legitimate but simply rare or difficult to reproduce, and sometimes means -that the bug was fixed in a later release.</p> -</li> -<li> -<p><em>Obsolete:</em> - Similar to <em>Unreproducible,</em> but with a reasonable certainty -that the bug did exist in the reported version but was already fixed in -a later release.</p> -</li> -<li> -<p><em>WorkingAsIntended:</em> - An AOSP maintainer has determined that the -behavior described isn't a bug, but is the intended behavior. This state is -also commonly referred to as "WAI".</p> -</li> -<li> -<p><em>Declined:</em> - This is like <em>WorkingAsIntended</em>, except -typically used for feature requests instead of bugs. That is, an AOSP -maintainer has determined that the request is not going to be implemented in -Android.</p> -</li> -<li> -<p><em>NotEnoughInformation:</em> - The report didn't have enough information to be able to take any action.</p> -</li> -<li> -<p><em>UserError:</em> - The report was the result of a user making a mistake while using Android, -e.g. typing a wrong password and therefore not being able to connect to a -server.</p> -</li> -<li> -<p><em>WrongForum:</em> - The report cannot be handled in AOSP, typically because it is related -to a customized device or to an external application.</p> -</li> -<li> -<p><em>Question:</em> - Someone mistook the issue tracker for a help forum.</p> -</li> + <li><strong>Won't Fix (Not reproducible):</strong> An AOSP contributor attempted + to reproduce the behavior described, and was unable to do so. This sometimes + means that the bug is legitimate but simply rare or difficult to reproduce, or + there was not enough information to fix the issue.</li> + <li><strong>Won't Fix (Intended behavior):</strong> An AOSP maintainer has + determined that the behavior described isn't a bug, but is the intended + behavior. This state is also commonly referred to as <em>working as + intended</em> (WAI). For feature requests, an AOSP maintainer has determined + that the request is not going to be implemented in Android.</li> + <li><strong>Won't Fix (Obsolete):</strong> The issue is no longer relevant due + to changes in the product.</li> + <li><strong>Won't Fix (Infeasible):</strong> The changes that are needed to + address the issue are not reasonably possible. This status is also used for + issues reported that cannot be handled in AOSP, typically because it is related + to a customized device or to an external application, or the reporter mistook + this tracker as a help forum.</li> + <li><strong>Duplicate:</strong> There was already an identical report in the + issue tracker. Any actual action will be reported on that report.</li> </ul> -<h3 id="resolved-issues">Resolved Issues</h3> -<p>This bucket contains bugs that have had action taken, and are now -considered resolved.</p> +<h3 id="resolved-issues">Resolved issues</h3> +<p> +This bucket contains bugs that have had action taken, and are now considered +resolved. +</p> <ul> -<li> -<p><em>Released:</em> - This bug has been fixed, and is included in a formal release. -When this state is set, we try to also set a -property indicating which release it was fixed in.</p> -</li> -<li> -<p><em>FutureRelease:</em> - This bug has been fixed (or feature implemented) in -a source tree, but has not yet been included in a formal release.</p> -</li> + <li><strong>Fixed (verified):</strong> This bug has been fixed, and is included + in a formal release. When this state is set, we try to also set a property + indicating which release it was fixed in.</li> + <li><strong>Fixed:</strong> This bug has been fixed (or feature implemented) in + a source tree, but might not yet been included in a formal release.</li> </ul> -<h2 id="other-stuff">Other Stuff</h2> -<p>The states and lifecycle above are how we generally try to track software. +<h2 id="other-stuff">Other stuff</h2> +<p> +The states and lifecycle above are how we generally try to track software. However, Android contains a lot of software and gets a correspondingly large number of bugs. As a result, sometimes bugs don't make it through all the states in a formal progression. We do try to keep the system up to date, but we tend to do so in periodic "bug sweeps" where we review the database and make updates.</p> - </body> </html> |