When it comes to bug work flow/triage we have two main goals (which we share with the Ubuntu project as a whole):
- Bring important bugs to the surface more reliably
- Churn through the open bugs more efficiently
The following chart describes the flow of a bug until it gets into the hands of a developer to work on. Orange represents a step anyone can perform, while yellow is reserved for those steps handled by Ubuntu One team managers. Details supporting this chart follow below.
The following statuses should be used by all those reviewing bugs:
New: The bug is newly reported.
Incomplete: The bug report is incomplete and needs more information before it can be triaged.
Invalid: The report describes the software's normal behaviour, or is unsuitable for any other reason.
Confirmed: A member of the community believes that this report describes a genuine bug in enough detail that a developer could start work on a fix.
The following statuses are set by the Ubuntu One team managers:
Triaged: Ubuntu One team manager considers that the bug report contains all information a developer needs to start work on a fix.
Won't Fix: this is acknowledged as a genuine bug but the project has no plans to fix it. This may be due to lack time and resources, we don't want to leave bugs in limbo if we aren't likely be able to schedule time to fix it.
The following statuses are to be set by the developer working on the bug:
In Progress: A developer has taken responsibility to fix the bug and has begun work.
Fix Committed: A developer has committed his/her fix to the project's codebase.
Fix Released: A new version of the software, featuring the bug fix, has been released.
Every valid bug should be assigned to one (and only one) of the following Ubuntu One teams:
ubuntuone-client-engineering Handles the desktop and mobile work
ubuntuone-foundations+ Handles server side items related to: file sync, U1DB, Dash scopes, etc.
ubuntuone-ops+ Handles infrastructure, keeping the lights on, etc.
ubuntuone-web Handles web ui stuff.
ubuntuone-design-ux Handles design and user experience tasks.
Don't worry too much if you aren't sure which team queue a bug should go into, if the team manager disagrees they will take care of moving it to the correct queue.
The following tags are used to help us find and sort bugs. Please use them where applicable.
Always choose (only) one of the following 'deployment' tags. These tags indicate at what point the defect was found.
u1-on-production - for defects found on production, also applies for client build releases (aka not beta)
u1-on-flag - for defects found on production which are behind a feature flag
u1-on-staging - for defects found on staging (or beta for client releases)
u1-on-edge - applies only to web, for defects found on edge server
u1-on-dev - for defects found on local developer instances
Always choose one of the following tags to show who was responsible for finding the defect:
u1-by-user - Any bug that was filed directly by our customers outside of Canonical
u1-by-automation - If the bug discovery was a result of automated testing
u1-by-dev - Discovered by anyone within Canonical outside of QA/Support
u1-by-support - Any bug that was filed as a result of a support request
u1-by-qa - Any bug that was filed as a result of QA manual testing
Please tag these bugs with one (and only one) of these tags, or leave it if nothing fits:
u1-ui - For ANY web app defect relating mainly to the User Interface or UX
u1-api - ANY bug related to any API
u1-syncdaemon - Any syncdaemon or file sync server side bug
u1-contacts - Contacts functionality
u1-documentation - for bugs relating to FAQs, Terms, help, etc..
u1-files - Any bug related files functionality for U1 Web
u1-music-player - Bug related to web music player
u1-notes - Bugs related to notes
u1-photos - Photos U1 Web bugs
u1-promo - Bug relating to functionality of our special promotions (ie. Humble Indie Bundle, 6 months free music streaming etc..)
u1-web-music-store - Functional defects related to purchasing music
u1-server - For miscellaneou U1 Web defects (ie. cookies not being placed etc..)
u1-mac - U1 Client: OSX bugs
u1-ubuntu -U1 Client: Ubuntu bugs
u1-windows - U1 Client: Windows bugs
u1-linux - U1 Client: Linux bugs for other distributions ie. Fedora etc..
u1-dash - Bugs relating to In-Dash Payments
u1-scopes - Smart Scopes bugs
Every valid bug should be marked as affecting an appropriate Ubuntu One project if it is a package bug. For a list of projects see the Ubuntu One Launchpad home page. Note: Use ubuntuone-servers for any bugs related to the Ubuntu One web UI in addition to specific server side issues.
Take your best guess at importance:
Critical - The bug dramatically impairs users. Users may lose their data.
High - The bug prevents users from completing their tasks
Medium - The bug is an inconvenience for many users
Low - The bug is an inconvenience to users, but it does not prevent them from completing their tasks
Wishlist - Desired functionality for future consideration.