1# Issue Lifecycle and Reporting Guidelines 2 3[TOC] 4 5This document provides an external-facing explanation of how to file a bug 6against a Jetpack library or infrastructure component and how to interpret the 7various statuses and priorities displayed in the issue tracker. 8 9## Issue tracker {#tracker} 10 11The public-facing issue tracker URL is 12[issuetracker.google.com](https://issuetracker.google.com). 13 14The top-level Jetpack component is 15[`Android Public Tracker > App Development > Jetpack (androidx)`](https://issuetracker.google.com/components/192731/manage#basic). 16**Do not** file bugs against the top-level component. Individual library 17components are organized by group and can be searched by entering the Maven 18group in the issue tracker's component field, e.g. `androidx.core`. 19 20Issues with tools, processes, or infrastructure should be reported under the 21[`Jetpack (androidx) > Infrastructure`](https://issuetracker.google.com/components/705292/manage#basic) 22component. 23 24## Reporting guidelines {#reporting} 25 26Issue Tracker isn't a developer support forum. For support information, consider 27[StackOverflow](http://stackoverflow.com). 28 29Support for Google apps is through 30[Google's support site](http://support.google.com/). Support for third-party 31apps is provided by the app's developer, for example through the contact 32information provided on Google Play. 33 341. Search for your bug to see if anyone has already reported it. Don't forget 35 to search for all issues, not just open ones, as your issue might already 36 have been reported and closed. To help you find the most popular results, 37 sort the result by number of stars. 38 391. If you find your issue and it's important to you, star it! The number of 40 stars on a bug helps us know which bugs are most important to fix. 41 421. If no one has reported your bug, file the bug. First, browse for the correct 43 component -- typically this has a 1:1 correspondence with Maven group ID -- 44 and fill out the provided template. 45 461. Include as much information in the bug as you can, following the 47 instructions for the bug queue that you're targeting. A bug that simply says 48 something isn't working doesn't help much, and will probably be closed 49 without any action. The amount of detail that you provide, such as a minimal 50 sample project, log files, repro steps, and even a patch set, helps us 51 address your issue. 52 53## Status definitions {#status} 54 55| Status | Description | 56| -------- | ----------------------------------------------------------------- | 57| New | The default for public bugs. Waiting for someone to validate, | 58: : reproduce, or otherwise confirm that this is actionable. Bugs in : 59: : this state can be either Untriaged or Triaged. Untriaged state : 60: : refers to a status where an issue has been filed against our : 61: : team, but the team/person responsible for fixing the issue has : 62: : not looked at it yet. Triaged state refers to a status where an : 63: : issue filed against the team has been reviewed by the : 64: : team/person, and they have accurately updated the priority of the : 65: : issue. : 66| Assigned | In this state, the issue is ready to be added to an iteration | 67: : with a level of certainty that it will be completed within the : 68: : upcoming team iteration. Issues here should be >=P3 : 69| Accepted | Actively being worked on by the assignee. Do not reassign. | 70| Fixed | Fixed in the development branch. Do not re-open unless the fix is | 71: : reverted. : 72| WontFix | Covers all the reasons we chose to close the issue without taking | 73: : action (can't repro, working as intended, obsolete). : 74 75## Priority criteria and SLOs {#priority} 76 77| Priority | Criteria | Resolution time | 78| -------- | ------------------------------- | ------------------------------ | 79| P0 | This issue is preventing | Less than 1 day. Don't go home | 80: : someone from getting work done : until this is fixed. : 81: : and doesn’t have a workaround. : : 82: : Examples include service : : 83: : outages, work-stopping issues, : : 84: : and build breakages : : 85| P1 | This issue requires rapid | Within the next 7 days | 86: : resolution, but can be dealt : : 87: : with on a slightly longer : : 88: : timeline than P0. Examples : : 89: : include issues that frequently : : 90: : hinder workflow, serious : : 91: : regressions, and ship-blocking : : 92: : issues : : 93| P2 | This issue is important to | Within the next month | 94: : resolve and may block releases. : : 95: : Examples include non-OKR : : 96: : feature requests and infrequent : : 97: : workflow issues. : : 98| P3 | This issue would be nice to | Less than 365 days | 99: : resolve, but it's not going to : : 100: : block any releases. Examples : : 101: : include nice-to-have feature : : 102: : requests, bugs that only : : 103: : affects a small set of use : : 104: : cases, and occasional issues. : : 105| P4 | Issue has not yet been | N/A (must triage in under 14 | 106: : prioritized. : days : 107 108## Issue lifecycle 109 1101. When an issue is reported, it is set to `Assigned` status for default 111 assignee (typically the [library owner](/docs/owners.md)) 112 with a priority of **P4**. 1131. Once an issue has been triaged by the assignee, its priority will be raised 114 from **P4** according to severity. 1151. The issue may still be reassigned at this point. 116 [Bug bounty](/docs/onboarding.md#bug-bounty) issues are 117 likely to change assignees. 1181. A status of **Accepted** means the assignee is actively working on the 119 issue. 1201. A status of **Fixed** means that the issue has been resolved in the 121 development branch. Please note that it may take some time for the fix to 122 propagate into various release channels (internal repositories, Google 123 Maven, etc.). **Do not** re-open an issue because the fix has not yet 124 propagated into a specific release channel. **Do not** re-open an issue that 125 has been fixed unless the fix was reverted or the exact reported issue is 126 still occurring. 1271. A status of **WontFix** means that the issue cannot be resolved within a 128 year due to prioritization, staffing, etc. **Do not** re-open an issue that 129 has been marked as WontFix or file identical issues. Issues that are open to 130 reconsideration will be added to an internal hotlist and revisited when the 131 circumstances surrounding their closure have changed. 132