Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 1 | # Life of a ChromeOS Bug |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 2 | |
| 3 | [TOC] |
| 4 | |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 5 | ChromeOS maintains two public issue trackers where you can report bugs and |
| 6 | request features for core ChromeOS functionality. (For details on this issue |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 7 | tracker, see [Reporting Bugs]. |
| 8 | |
| 9 | Reporting bugs is great (thank you!), but what happens to a bug report after |
| 10 | you file it? This page describes the life of a bug. |
| 11 | |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 12 | >**Note:** The ChromeOS Public Issue Tracker is intended only for bugs and |
| 13 | feature requests related to core ChromeOS functionality, and is a technical |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 14 | tool for the Open Source community. |
| 15 | |
| 16 | **This isn't a customer support forum.** For support information, see the |
| 17 | [Chromebook](https://support.google.com/chromebook) help center. |
| 18 | |
| 19 | *** promo |
| 20 | Here are the key stages in the life of a bug: |
| 21 | |
| 22 | 1. A bug is filed, and has the state **_New_**. |
| 23 | 2. The internal team periodically reviews and triages bugs. Bugs are triaged |
| 24 | into one of four **_buckets_**: New, Open, No-Action, or Resolved. |
| 25 | 3. Each bucket includes a number of states that provide more detail on the |
| 26 | fate of the issue. |
| 27 | 4. Bugs marked **_Resolved_** will be included in a future release of Chrome |
| 28 | OS. |
| 29 | *** |
| 30 | |
| 31 | ## Bucket details |
| 32 | |
| 33 | We use the **Status** field in Issue Tracker to specify the status of an issue |
| 34 | in the resolution process. This is consistent with the definitions specified |
| 35 | in the [Issue Tracker documentation] |
| 36 | (https://developers.google.com/issue-tracker/concepts/issues#status). |
| 37 | |
| 38 | ### New issues |
| 39 | |
| 40 | New issues include bug reports that haven't been acted upon. The two states |
| 41 | are: |
| 42 | *** promo |
| 43 | * **New:** The bug report hasn't been triaged (that is, reviewed by the |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 44 | ChromeOS team). |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 45 | * **Reassigned to reporter:** The bug report has insufficient information |
| 46 | to act upon. The person who reported the bug needs to provide additional |
| 47 | details before it can be triaged. If enough time passes and no new |
| 48 | information is provided, the bug may be closed by default, as one of the |
| 49 | No-Action states. |
| 50 | *** |
| 51 | ### Open issues |
| 52 | |
| 53 | This bucket contains bugs that need action, but that are still unresolved, |
| 54 | pending a change to the source code. |
| 55 | *** promo |
| 56 | * **Assigned:** The bug report has been recognized as an adequately detailed |
| 57 | report of a legitimate issue and the bug has been assigned to a specific |
| 58 | contributor to assess and analyze. |
| 59 | * **Accepted:** The assignee has acknowledged the issue and has started to |
| 60 | work on it. |
| 61 | *** |
| 62 | Typically, a bug starts in **Assigned**, and remains there until someone |
| 63 | intends to resolve it, at which point it enters **Accepted**. However, note |
| 64 | that this isn't a guarantee, and bugs can go directly from **Assigned** to |
| 65 | one of the Resolved states. |
| 66 | |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 67 | In general, if a bug is in one of the Open states, the ChromeOS team has |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 68 | recognized it as a legitimate issue, and a high-quality contribution fixing |
| 69 | that bug is likely to get accepted. However, it is impossible to guarantee |
| 70 | the completion of a fix in time for any particular release. |
| 71 | |
| 72 | ### No-Action issues |
| 73 | |
| 74 | This bucket contains bugs that are deemed to not require any action. |
| 75 | *** promo |
| 76 | * **Won't Fix (Not reproducible):** The team attempted to reproduce the |
| 77 | behavior described, and was unable to do so. This sometimes means that the |
| 78 | bug is legitimate but simply rare or difficult to reproduce, or there wasn't |
| 79 | enough information to fix the issue. |
| 80 | * **Won't Fix (Intended behavior):** The team has determined that the |
| 81 | behavior described isn't a bug, but is the intended behavior. This state is |
| 82 | also commonly referred to as _working as intended (WAI)_. For feature |
| 83 | requests, the team has determined that the request isn't going to be |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 84 | implemented in ChromeOS. |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 85 | * **Won't Fix (Obsolete):** The issue is no longer relevant due to changes |
| 86 | in the product. |
| 87 | * **Won't Fix (Infeasible):** The changes that are needed to address the |
| 88 | issue aren't reasonably possible. This status is also used for issues reported |
| 89 | that can't be handled, typically because it is related to a customized device |
| 90 | or to an external app, or the reporter mistook this tracker as a help forum. |
| 91 | * **Duplicate:** There was already an identical report in the issue tracker. |
| 92 | Any actual action will be reported on that report. |
| 93 | *** |
| 94 | ### Resolved issues |
| 95 | |
| 96 | This bucket contains bugs that have had action taken, and are now considered |
| 97 | resolved. |
| 98 | *** promo |
| 99 | * **Fixed (verified):** This bug has been fixed, and has been confirmed by |
| 100 | testing on an official build, but may not necessarily be included in a formal |
| 101 | release. When this state is set, we try to also set a property indicating |
| 102 | which release it was fixed in. |
| 103 | * **Fixed:** This bug has been fixed (or feature implemented) in a source |
| 104 | tree, but might not yet have been tested against an official build. |
| 105 | *** |
| 106 | ## Maintenance |
| 107 | |
| 108 | The states and lifecycle above are how we generally try to track software. |
Harry Cutts | 4461519 | 2022-04-21 22:39:14 | [diff] [blame^] | 109 | However, ChromeOS contains a lot of software and gets a correspondingly large |
Shuba Jagannathan | cb083d9 | 2020-11-02 00:21:37 | [diff] [blame] | 110 | number of bugs. As a result, sometimes bugs don't make it through all the |
| 111 | states in a formal progression. We try to keep the system up to date, but we |
| 112 | tend to do so in periodic _bug sweeps_ where we review the database and make |
| 113 | updates. |
| 114 | |
| 115 | [Reporting Bugs]: reporting_bugs.md |