| # Triage Priorities for Dart Migration tool |
| |
| This document describes the relative priorities for bugs filed under the |
| `area-migration` tag in GitHub as in |
| [this search](https://github.com/dart-lang/sdk/issues?q=is%3Aopen+is%3Aissue+label%3Aarea-migration). |
| While there are always exceptions to any rule, in general try to align our |
| priorities with these definitions. |
| |
| To triage bugs, search for `area-migration` |
| [bugs that are not currently triaged](https://github.com/dart-lang/sdk/issues?q=is%3Aopen+is%3Aissue+label%3Aarea-migration+-label%3AP0+-label%3AP1+-label%3AP2+-label%3AP3+-label%3AP4) |
| and for each bug, mark priority based on how closely it matches with the below |
| constraints. |
| |
| ## Migration tool triage priorities |
| |
| Descriptions here use [terms and definitions](#terms-and-definitions) from the |
| end of this document. If your bug doesn't precisely match one of these, |
| consider how impactful it is compared to examples given here and pick a priority |
| reflecting that. |
| |
| ### P0 |
| |
| * Crashes that can't be worked around by `--ignore-exceptions`, typical impact or widespread. |
| * Crashes that can be worked around by `--ignore-exceptions`, widespread. |
| |
| ### P1 |
| |
| * Crashes that can be worked around by `--ignore-exceptions`, typical impact. |
| * An enhancement required for critical milestones for key users, or that has |
| significant evidence gathered indicating a positive impact if implemented. |
| * A problem that is significantly impairing a key user's ability to migrate |
| their code. |
| |
| ### P2 |
| |
| * Crashes, edge case. |
| * An enhancement with typical impact that doesn't fit the criteria above but |
| would still be significantly beneficial to users (i.e. more than just a "would |
| be nice" feature). |
| * A problem with typical impact that doesn't fit the criteria above, but impairs |
| users' ability to migrate their code. |
| |
| ### P3 |
| |
| * Crashes, theoretical. |
| * An enhancement that doesn't fit the criteria above. |
| * A problem that doesn't fit the criteria above, but impairs users' ability to |
| migrate their code. |
| |
| ## Terms and definitions |
| |
| ### Terms describing impact |
| |
| * "widespread" - Impact endemic throughout the ecosystem, or at least far |
| enough that this is impacting multiple key users. |
| * "typical impact" - Known to impact a key user, or likely to impact a |
| significant percentage of all users. Issues are assumed to have typical |
| impact unless we have evidence otherwise. |
| * "edge cases" - Impacting only small parts of the ecosystem. For example, one |
| package, or one key user with a workaround. Note this is an edge case from |
| the perspective of the ecosystem vs. language definition. Note that since the |
| migration tool is still in an early adoption phase, if a bug has only been |
| reported by one user, that's not sufficient evidence that it's an edge case. |
| To be considered an edge case, we need to have a concrete reason to suspect |
| that the bug is caused by an unusual pattern in the user's source code, or |
| unusual user behavior. |
| * "theoretical" - Something that we think is unlikely to happen in the wild |
| and there's no evidence for it happening in the wild. |
| |
| ### Other terms |
| |
| * "key users" - Flutter, Pub, Fuchsia, Dart, Google3, 1P |