Update triage guide to match the new label scheme

Element Web issue labels have been changed to match a new scheme that has been
piloted by the [Synapse
team](https://github.com/matrix-org/synapse/issues/9460). The new triage
guidance here is largely borrowed from the Synapse guide, but with some
Element-specifics to reflect how we use priority, add code areas, etc.
This commit is contained in:
J. Ryan Stinnett 2021-03-05 16:36:51 +00:00
parent 4f0fccfe96
commit 0469805eb1
5 changed files with 64 additions and 43 deletions

View file

@ -36,7 +36,7 @@ file a bug here too! -->
For the web app: For the web app:
- **Browser**: Chrome, Safari, Firefox? which version? - **Browser**: Chrome, Firefox, Safari, Edge? which version?
- **OS**: Windows, macOS, Ubuntu, Arch Linux, etc? - **OS**: Windows, macOS, Ubuntu, Arch Linux, etc?
- **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web? - **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web?

View file

@ -2,7 +2,7 @@
name: Bug report name: Bug report
about: Create a report to help us improve about: Create a report to help us improve
title: '' title: ''
labels: bug labels: T-Defect
assignees: '' assignees: ''
--- ---
@ -46,7 +46,7 @@ Logs being sent: yes/no
For the web app: For the web app:
- **Browser**: Chrome, Safari, Firefox? which version? - **Browser**: Chrome, Firefox, Safari, Edge? which version?
- **OS**: Windows, macOS, Ubuntu, Arch Linux, etc? - **OS**: Windows, macOS, Ubuntu, Arch Linux, etc?
- **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web? - **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web?

View file

@ -2,7 +2,7 @@
name: Suggestion or Feature request name: Suggestion or Feature request
about: Suggest an idea for this project about: Suggest an idea for this project
title: '' title: ''
labels: suggestion labels: T-Enhancement
assignees: '' assignees: ''
--- ---

View file

@ -2,7 +2,7 @@
name: User Interface or Usability Bug report name: User Interface or Usability Bug report
about: Please include screenshots in UI/UX bug reports about: Please include screenshots in UI/UX bug reports
title: '' title: ''
labels: bug, ui/ux labels: T-Defect
assignees: '' assignees: ''
--- ---
@ -48,7 +48,7 @@ Logs being sent: yes/no
For the web app: For the web app:
- **Browser**: Chrome, Safari, Firefox? which version? - **Browser**: Chrome, Firefox, Safari, Edge? which version?
- **OS**: Windows, macOS, Ubuntu, Arch Linux, etc? - **OS**: Windows, macOS, Ubuntu, Arch Linux, etc?
- **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web? - **URL**: develop.element.io / app.element.io / somewhere else? If a private server, what version of Element Web?

View file

@ -388,51 +388,72 @@ For a developer guide, see the [translating dev doc](docs/translating-dev.md).
Triaging issues Triaging issues
=============== ===============
Issues will be triaged by the core team using the below set of tags. We strive to completely cover all applicable issues with these core labels:
Tags are meant to be used in combination - e.g.: 1. __Type__ — Every issue is assigned a type:
* P1 critical bug == really urgent stuff that should be next in the bugfixing todo list - __[T-Defect](https://github.com/vector-im/element-web/labels/T-Defect):__
* "release blocker" == stuff which is blocking us from cutting the next release. Bugs, crashes, hangs, vulnerabilities, or other reported problems
* P1 feature type:voip == what VoIP features should we be working on next? - __[T-Enhancement](https://github.com/vector-im/element-web/labels/T-Enhancement):__
New features, changes in functionality, performance boosts, user-facing
improvements
- __[T-Task](https://github.com/vector-im/element-web/labels/T-Task):__
Refactoring, enabling or disabling functionality, other engineering tasks
- __[T-Other](https://github.com/vector-im/element-web/labels/T-Other):__
Questions, user support, anything else
priority: **compulsory** 2. __Severity__ — All issues labeled `T-Defect` are also assigned a severity:
* __[S-Critical](https://github.com/vector-im/element-web/labels/S-Critical):__
Prevents work, causes data loss, affects many users, and/or has no
workaround
* __[S-Major](https://github.com/vector-im/element-web/labels/S-Major):__
Severely degrades major functionality or product features, with no
satisfactory workaround
* __[S-Minor](https://github.com/vector-im/element-web/labels/S-Minor):__
Impairs non-critical functionality, or suitable workarounds exist
* __[S-Tolerable](https://github.com/vector-im/element-web/labels/S-Tolerable):__
Purely cosmetic or low / no impact to users
* P1: top priority - i.e. pool of stuff which we should be working on next 3. __Priority__ — All issues which are not `T-Other` are assigned a priority:
* P2: still need to fix, but lower than P1 * __[P1](https://github.com/vector-im/element-web/labels/P1):__ Next
* P3: non-urgent * __[P2](https://github.com/vector-im/element-web/labels/P2):__ Later
* P4: interesting idea - bluesky some day * __[P3](https://github.com/vector-im/element-web/labels/P3):__ Eventually
* P5: recorded for posterity/to avoid duplicates. No intention to resolves right now. * __[P4](https://github.com/vector-im/element-web/labels/P4):__ Interesting —
Not yet scheduled, will accept patches
* __[P5](https://github.com/vector-im/element-web/labels/P5):__ Dubious —
Will not schedule, would consider patches
bug or feature: **compulsory** 4. __Area__ — Most issues are assigned one or several code "areas" using one of
the many `A-` prefixed labels, e.g. `A-Composer` or `A-Spaces`. Each area
label maps to a group of features or portion of the UI surface in the app.
* bug ### Other common labels
* feature
bug severity: **compulsory, if bug** We have a handful of other labels which are added on an as-needed basis, and not expected to be exhaustive:
* critical - whole app doesn't work * __Exceptions__ — Special flags for issues and pull requests:
* major - entire feature doesn't work * __[X-Needs-Info](https://github.com/vector-im/element-web/labels/X-Needs-Info):__
* minor - partially broken feature (but still usable) This issue is blocked pending further information from the reporter
* cosmetic - feature works functionally but UI/UX is broken * __[X-Regression](https://github.com/vector-im/element-web/labels/X-Regression):__
Denotes things breaking which previously worked
* __[X-Release-Blocker](https://github.com/vector-im/element-web/labels/X-Release-Blocker):__
Issues which must be resolved before making a release
types * __[Easy](https://github.com/vector-im/element-web/labels/Easy)__ / __[Help
* type:* - refers to a particular part of the app; used to filter bugs Wanted](https://github.com/vector-im/element-web/labels/Help%20Wanted)__ —
on a given topic - e.g. VOIP, signup, timeline, etc. Well-defined issues which are suitable for folks new to the codebase
additional categories (self-explanatory): * __[Privacy](https://github.com/vector-im/element-web/labels/Privacy)__ /
__[Security](https://github.com/vector-im/element-web/labels/Security)__ —
Issues which may present privacy / security concerns
* release blocker * __[Sponsored](https://github.com/vector-im/element-web/labels/Sponsored)__ —
* ui/ux (think of this as cosmetic) Used internally by Element to denote issues with external funding
* network (specific to network conditions)
* platform specific
* accessibility
* maintenance
* performance
* i18n
* blocked - whether this issue currently can't be progressed due to outside factors
community engagement ### Ad hoc labels (`Z-`)
* easy
* hacktoberfest We have reserved the `Z-` prefix for ad hoc labels.
* bounty? - proposal to be included in a bounty programme
* bounty - included in Status Open Bounty Any member of the core team is welcome to create labels beginning with `Z-` for
any purpose, such as tracking personal areas of interest or providing a common
way to label cross-repo initiatives. The prefix avoids interference with the
project's main labels.