B2G/Triage
⚡ Warning: The content of this page is obsolete and kept for archiving purposes of past processes.
This page is a rollup of all the bug queries floating across the B2G project. This will include Gonk, Gaia, Gecko, and Marketplace.
Contents
Branch Rules
- Development Branch
- master / mozilla-central
- mozilla-aurora
- Release Branch
- Platform Branch
- Original Diagram: https://docs.google.com/a/mozilla.com/drawings/d/1boCUd95zY090mNhuu6A4LO8XJnshKi6pisj18wc2Gr0/edit?usp=sharing
Triage and Landing Responsibility
FxOS Core Group
- The triage process is handled by FxOS core group. To plus (+) them or not is decided based on triage criteria and urgency level.
- Before feature complete (FC) date, FxOS functional teams are in development and stabilization stages. Each functional team should cover the triage process.
- After feature complete date, release management team handles release based triage process.
- After platform branches are created, FxOS device group (TAMs, EPMs and EMs) drives the triage process on bugs that are reported for platform launches.
- Blocking-b2g flag indicates where the fixes should be landed to:
- If a bug matches the blocking criteria, it will be tagged with blocking-b2g:version#+ value(for example, blocking-b2g:2.1+). Fixes will go to corresponding version branch and master / mozilla-central.
- Otherwise, it should be minus'ed (-) and fixes only go to master / mozilla-central.
Landing Criteria
- Core Group only land fixes to following branches:
- Master / mozilla-central
- mozilla-aurora
- FxOS Release Branch (before Code Compelete (CC) milestone)
- Checklist:
- Code Review by Core Team
- Core QA team or Outsource QA team verified
- (*)Landing Approvals for Release Branch
FxOS Device Group
- The triage process is handled by FxOS device group. To plus them or not is decided based on the influence on device launches.
- Blocking-b2g flag indicates where the fixes should be landed to depends on:
- If the issue is regression and can be reproduced on main release(for example, 2.0+, 2.1+, ...).
- If yes, blocking-b2g flag should be set to the values for FxOS core group(for example, 2.0+, 2.1+, ...). Fixes should go to specific version branches and master / mozilla-central.
- Otherwise, it should be set with values for FxOS device group(for example, 2.0M+, 2.1S+, …). It means, the bugs only affect platform specific launches. We will tag keywords(ex, "[2.0M_Only], [2.1S_Only]") in the whiteboard and fixes only go to 2.0M / 2.1S branch.
- If the fixes are urgent to be landed for some reasons, these blocking-b2g flags should be device group specific values(for example, 2.0M+, 2.1S+, …).
- If the bugs only affect platform specific launches, we will tag keywords(ex, "[2.0M_Only], [2.1S_Only]") in the whiteboard and fixes only go to 2.0M / 2.1S branch.
- Otherwise(to 2.1 or 2.2), fixes will go to platform branches "and" master / mozilla-central as well.
- If the issue is regression and can be reproduced on main release(for example, 2.0+, 2.1+, ...).
- After partner and device group identified a bug as a device Blocker bug, device group will configure the Blocker bug to block a device launch meta bug(for example, Woodduck_Blocker meta bug).
- Tracking flag(for example, status-b2g-v2.0M) is marked as "affected" once we identify that platform launches are affected by this bug.
- Device branch sheriff will mark status-b2g-v2.0M to "fixed" and also put “verifyme” at Keywords field if bug assignee initial pull request and review+.
- Device QA will mark status-b2g-v2.0M to "verified" if bug is verified fixed.
- Once a bug is tagged as a Blocker(blocking-b2g:release#+), FxOS core group shouldn't minus it, due to its urgency and importance on device launches.
- So, overall, the tagging rule after triage driven by device group is(take 2.0M as an example):
Tagging rule | Description | Action | Landing to master/m-c | Landing to Release Ex. 2.0 | Landing to Platform Ex. 2.0M |
---|---|---|---|---|---|
Keyword: regression;
blocking-b2g:2.0M+; status-b2g-v2.0:affected; status-b2g-v2.0M:affected |
Bug found in device branch and also identified as regression issue for main release | NI release manager for making blocking-b2g:2.0+ | Yes | Yes | Yes |
blocking-b2g:2.0M+;
status-b2g-v2.0:affected status-b2g-v2.0M:affected |
Bug found in device branch but not regression issue for main release | Yes | --- | Yes | |
Whiteboard: [2.0M_Only];
blocking-b2g:2.0M+; status-b2g-v2.0:unaffected; status-b2g-v2.0:affected; |
Bug found in device branch only | --- | --- | Yes |
Landing Criteria
- Device Group could land fixes to following branches
- FxOS release branch (Code Completed)
- FxOS platform branch
- Checklist:
- Decision depends on affected flags
- Code Reviews
- Core/Device/OutSource QA verified and test results
- Landing approvals by management stakeholders
- So, based on what we are tagging on bugs, the relationship between landing target and bug tagging:
Platform launches (2.0M+) | Platform affected (2.0M+, 2.0M affected) | Platform only (2.0M+ Only) | |
---|---|---|---|
Master / m-c | Yes | Yes | No |
FxOS release branch (2.0) | No | Only Regression issues | No |
FxOS platform branch (2.0M) | Yes | Yes | Yes |
Release Triage
- Dial-in and Vidyo connection details for all triage sessions are the same as all Firefox OS general meetings: https://wiki.mozilla.org/B2G#Meetings
Triage for 2.5.0
Schedule
- FxOS event Public calendar link : http://bit.ly/1rdBtYW
Queries
- 2.5?: http://mzl.la/1T9xI0E
- 2.5+: http://mzl.la/1T9y2N0
- 2.5 Smoke test bugs: http://mzl.la/1T9ydaW
- 2.5 regression bugs: http://mzl.la/1T9xI0E
- 2.5 Crash bugs: http://mzl.la/1T9yBpR
- Unassigned 2.5+ bugs: http://mzl.la/1LLVxu8
- 2.5+ blockers last commented since 3 days: http://mzl.la/1LLVVZQ
Triage for 2.2.0
Schedule
- Every Tuesday at 8 am PT in B2G vidyo room
- Every Wednesday 11am PT in B2G vidyo room
- FxOS event Public calendar link : http://bit.ly/1rdBtYW
Queries
- 2.2?: http://mzl.la/14swFUO
- 2.2+: http://mzl.la/14sx89F
- 2.2 Smoke test bugs: http://mzl.la/1KJ5FC8
- 2.2 regression bugs: http://mzl.la/1rPKF4I
- 2.2 Crash bugs: http://mzl.la/1l1nM6U
- Unassigned 2.2+ bugs: http://mzl.la/1onQuE1
- 2.2+ blockers last commented since 3 days: http://mzl.la/1nCPHyr
Triage for 2.1.0
Schedule
- Every Tuesday at 8 am PT in B2G vidyo room
- Every Wednesday 11am PT in B2G vidyo room
- FxOS event Public calendar link : http://bit.ly/1rdBtYW
Queries
- 2.1?: http://mzl.la/1ATgdGM
- 2.1+: http://mzl.la/1l1nmh4
- 2.1 Smoke test bugs: http://mzl.la/1rFBlR9
- 2.1 regression bugs: http://mzl.la/1rPKF4I
- 2.1 Crash bugs: http://mzl.la/1l1nM6U
- Unassigned 2.1+ bugs: http://mzl.la/1onQuE1
- 2.1+ blockers last commented since 3 days: http://mzl.la/1nCPHyr
Triage for 2.0.0
Schedule
- Starting June 10th, Every Tuesday at 10 am PT in B2G vidyo room
- Every Wednesday and Thursday at 8:30 am PT in B2G vidyo room
Queries
- 2.0?: http://mzl.la/1l1oJfB
- 2.0+: http://mzl.la/1nCN3sg
- 2.0 Smoke test bugs: http://mzl.la/1pkM8dk
- 2.0 Crash bugs: http://mzl.la/1tKCC7a
- Unassigned 2.0+ bugs: http://mzl.la/1mNoKmW
- 2.0+ blockers last commented since 3 days: http://mzl.la/1pTyHT6
Triage for 1.4.0
Schedule
- Three sessions: Tues/Weds/Thurs at 08:30 AM PST / 16:30 CET / 23:30 CST (US + EU)
- One session: Weds (US) + Thurs (EU/TW) at 22:00 PST / 06:00 CET / 13:00 CST
Queries
- 1.4?
- 1.4+
- 1.4 Smoke test bugs
- 1.4 Crash bugs
- Unassigned 1.4+ bugs
- 1.4+ blockers last commented since 3 days
Triage for 1.3.0
Schedule
- Three sessions: Weds/Thurs at 08:30 AM PST / 16:30 CET / 23:30 CST (US + EU)
- Tuesday triage: 10AM PST
- One session: Weds (US) + Thurs (EU/TW) at 22:00 PST / 06:00 CET / 13:00 CST
Queries
- 1.3?
- 1.3+
- Smoke test bugs
- Crash bugs
- Unassigned 1.3+ blockers
- Unassigned 1.3? bugs
- 1.3+ blockers last commented since 3 days
Tarako Triage
- Everyday 4pm Asia (Taipei) / 9am CET
- [US coverage] Wednesday 2-3 PM PT in B2G vidyo room and Thursday 9:30 - 10:00 am PT in Bhavana's vidyo room
- Bug queries
- Partner test blockers, whiteboard [SI-testing-blocker]: http://goo.gl/Xt1Z6B
- 1.3T+ Nobody's : http://goo.gl/SCGhvc
- Unresolved 1.3T+: http://mzl.la/1hVbw6O (does not include POVB blocking bugs)
- Full unresolved 1.3T+ last commented since 3 days: http://goo.gl/bCose2
- 1.3T?: http://goo.gl/axBcEC
- 1.3T+: http://goo.gl/XY5wSt
- 1.3T+ with [demo] whiteboard: http://goo.gl/oDgz3Y
- 1.3T+ bugs with [tarako_only] whiteboard: http://goo.gl/1G3GsX
- 1.3T+ bugs with [POVB] whiteboard: http://goo.gl/tKXE0H
- Bugs uplifted to Tarako branch (status-b2g-v1.3T: fixed): http://goo.gl/F6kXAg
- Bugs pending uplifts to Tarako branch (status-b2g-v1.3T: not fixed): http://mzl.la/1qokks8
- Resolved 1.3T+: http://goo.gl/Fx599A
Blocker Triage Guidelines
Issues that Should Block
- Major issue in new feature - especially those in which a large number of users will be impacted, or a smaller number of users will be significantly impacted
- Major identifiable regressions (perf or otherwise)
- Non-localizable strings
- Top Crashes
- sec-high, sec-critical security bugs
- Smoke-test regression
- Data loss
- Issues that block partner certification (bluetooth, wifi, legal, etc.)
- Issues getting a lot of support calls with partners or on SUMO
- Issues critical around updates (especially if there's been a repro)
- Anything critical around the first time experience
- Major Dialer, SMS, and VM communication issues
- Issues that prevent automated tests in established testsuites (visible test suites on b2g integration branches on Treeherder) from running green at least 90% of the time.
- Certification waivers from the previous release (new policy)
- Major issue with an embedded 3rd party app (in case it can't be solved, it could be decided to remove the app)
- Issues that block device launches(ex, IOT, CS blockers) and agreed with partners.
Issues that Should Not Block
Any exceptions to these rules must be discussed on b2g-release-drivers@mozilla.org or with Release Management:
- Enhancements
- New Features
- New perf requirements (see enhancements)
- Non-critical string changes (due to l10n)
- Polish and other minor issues
- Unfinished localization (except in the last ~3 weeks of the release)
- Issues requiring the user to perform extremely uncommon use cases
- Issues in languages not being shipped in the version of B2G
- Bugs without clear STR or that are not reproducible
- Bugs that do not impact production phones or the simulator
Blocker Nomination Notes
Here are some other pointers to keep in mind:
- Please do not file a bug without having first determined whether or not it's a regression. If you find it is a regression, please add the keyword and help identify a regression window
- Please ensure that anybody who is nominating critical issues is aware of the above criteria
- Please include a description of why an issue is critical for you when nominating (tell us if it's a certification blocker)
- Do not file multiple issues in a single bug
- Please make sure that whoever nominates a bug for blocking is available to promptly answer questions. Even better, please make sure to use one Bugzilla account per individual nominating.
Whiteboards & Flags
Blocker Whiteboard Additions
As of the week of 4/15/13, we will now use:
- [POVB] in the whiteboard to denote "part of vendor build" (OEM-specific)
- Denotes that this bug is the responsibility of the OEM
- Used in conjunction with an impacted device in the whiteboard, for instance [buri], [ikura], or [COM_RIL] (for partner RIL issues)
- [NPOTB] in the whiteboard to denote "not part of the build"
- Used for bugs that involve server infrastructure, build scripts, tests, etc.
- [Apps Watch List] is the whiteboard used for any bug that impacts apps sourced from Marketplace, the Review process, or bugs used to generate grid builds. The resolution of these bugs have been determined to be outside the sphere of control of the 3rd party developer who is responsible for submissions to the Marketplace. App Review Team, Partner Engineering and Content Program Management use the flag to track bugs that impact their arena.
- [Apps Watch List1] is used for bugs related to pre-installed apps that are the responsibility of a 3rd party developer to resolve. The Apps Review team uses this tag to trigger communications to the 3rd party developers who contribute apps to Marketplace.
Flag Descriptions
- blocking-basecamp is no longer in use (https://bugzilla.mozilla.org/show_bug.cgi?id=830433)
- blocking-b2g
- blocking-b2g:tef? is for nominating CRITICAL bug fixes to be considered for v1.0.0.0 after 1/15/2013
- blocking-b2g:tef+ is for bugs that we've got agreement with partners about needing as part of v1.0.0.0
- blocking-b2g:shira? is for nominating bug fixes to be considered for v1.0.1
- blocking-b2g:shira+ is for bugs required for v1.0.1 to ship
- blocking-b2g:leo? is for nominating bug fixes to be considered for v1.1.0
- blocking-b2g:leo+ is for bugs required for v1.1.0 to ship
- tracking-b2g18:+ means the bug must be fixed on the v1 branch, and tracking-b2g18:? represents a nomination
- tracking-b2g18:19+ means the bug must be fixed on the v1 branch within 6 weeks after v1.0 code ships (to be fixed prior to FF19's release). This flag will be used for security bugs fixed in FF19, for example.
- status-b2g18-v1.0.0 represents the fix status on v1.0.0 branch (gaia v1.0.0 and/or mozilla-b2g18_v_1_0_0)
- status-b2g18 represents the fix status on the v1.* branches (currently v1.0.1 until it branches, we'll add a separate status flag for it)
Project Flags
blocking-b2g Flag
Definition
- blocking-b2g:version#? is nomination as blocker for the specific version.
- blocking-b2g:version#+ indicates as release blocker for the specific version. Decisions are made during triage process.
- blocking-b2g:--- (default flag. indicating undefined)
- blocking-b2g:- (meaning non-blocking to any release)
Note
- Triage guideline https://wiki.mozilla.org/B2G/Triage#Blocker_Triage_Guidelines
feature-b2g Flag
Definition
- feature-b2g:version#? is defined as "this feature is being proposed for this release"
- feature-b2g:version#+ is define as "this feature has been committed or done (by the engineering team(s)) for this release"
- feature-b2g:--- (default flag. indicating undefined)
- feature-b2g:- (meaning not a committed feature to any release)
Note
- [meta] bugs features and all dependencies targeted for a particular release should mark feature-b2g flag.
- The feature-b2g flag should assigned to engineering tasks falling under the user stories AND the user stories themselves.
- Who has the permission? PM and EPM, engineer managers and partner peers have the access
tracking-b2g Flag
Definition
- The teams need such a bucket to track backlog items apart from blocking-b2g and feature-b2g.
- Attributes, sorted in priority
- tracking-b2g:+ is the TopX item in the backlog
- tracking-b2g:backlog is the regular backlog item
- tracking-b2g:--- (default flag. indicating undefined)
- tracking-b2g:- (lowest priority)
Note
- Permission? Everyone in the team should be able to set such flag. We're encouraging the backlog grooming to happen frequently and can be presented by using tracking-b2g flag.
- We don't specify version# because supposedly these are neither release blockers nor feature blockers.
ux-b2g Flag
Definition
- Marks UX bugs required for a front-end feature (usually OS-wide) to work properly.
- Distinguishes polish and non-blocking UX bugs from blocking UX bugs.
Rationale and History
The ux-b2g flag was created during the 2.0 release, which was a "UX heavy release:" 2.0 included a lot of UX changes to gestures, animations, the home screen, and so on. This meant that there were numerous OS-wide features -- like the thin, pale blue notifications bar, for example -- that needed to block 2.0+, and that required many UX bugs to be completed (graphics, transitions, animations). Each of these UX bugs needed to block 2.0+ if the finished, front-end feature was to look and behave properly across the OS. The ux-b2g flag was added when these "smaller" bugs were incorrectly marked as "polish," and were actually needed in order for a feature to work.
Note
Only members of the Firefox OS UX team and Release Management should set the ux-b2g flag.
Keywords and Flags used by QAs
This Wiki page provides a summary of how we manage requests for QA support through Bugzilla, more specifically for the B2G QA team.