JavaScript:Bugzilla
This page explains how the JavaScript Team uses Bugzilla.
Contents
Bugzilla components
- Core::JavaScript Engine
- Core::JavaScript Engine: JIT
- Core::JavaScript: GC
- Core::JavaScript: Internationalization API
- Core::JavaScript: Standard Library
- Core::Javascript: Web Assembly
- Core::js-ctypes
Whiteboard flags
A few whiteboard flags are used today in the JS components:
- [#jsapi:crashes-retriage] Used for crash-stat crashes which might be harder to investigate alone. This whiteboard tag is used to cluster the analysis of crash-stat reports. (Owner: Ted Campbell)
- [qf] Used for any performance regression/improvement which can be part of the Quantum Flow effort of fixing known bugs. (Owner: Kannan Vijayan) These bugs are later sorted by the performance team into [qf:p1], [qf:p2] and [qf:p3]
- [arm64:m...] Used to track milestone blocker bugs for ARM64 Fennec and GeckoView.
- [lang={c++,py,js}] Is used in tandem with the good-first-bugs keyword to list this bug as in BugsAhoy!.
As a convention, anybody can follow the following naming for using the whiteboard to improve Bugzilla searches. However, note that whiteboard searches are not indexed in Bugzilla databases and this might lead to performance issues.
- [:nick:...] Used by the user :nick for managing bugs.
- [#channel:...] Used by members of the IRC #channel for managing bugs.
Priority Flags
Priority flags are used to track whether a bug is going to be worked on soon.
- P1: The bug is being worked on, or it should urgently be worked on.
- P2: This is in someone todo-list.
- P3: backlog; to be fixed … one day.
- P4: There is no P4.
- P5: Patches are welcome!
Severity
Severity flags should be N/A for enhancement and tasks. Any others should have a severity set from S1 to S4, which definitions are listed in the source documentation.
Triage
A meeting is held every week, on Tuesday 9am PT. (contact Steven De Tar, to be invited)
The triage effort is currently held by Steven De Tar, Nicolas B. Pierron, Bryan Thrall, and Matthew Gaudet. They mainly work off the following lists:
- List of non-prioritized bugs - This list is used to set the missing priority flags and whiteboard flags to the corresponding bugs and sometimes needinfo? people.
- List of bugs without severity - Bug set as defect should have a severity, this list output all bugs with a defect annotation but no severity.
- BugDash - Scroll down to the bottom, under "Pending Untriaged (defects only)". This reports per-component the number of bugs which need to be triaged.
- Regressions - The queries there are used by the regression triage meeting. Convenient summary query for 67-68-69 regressions
- Security bugs - Also, this query is the same but not limited to sec-high and sec-critical bugs
- Triage Center — List all non-triaged bugs for all JS components.
- List of Non-Rooted Bugs — “All your bugs are belong to Bug SpiderMonkey”, We have a tree of meta-bugs, and all bugs concerning SpiderMonkey should indirectly block the Bug SpiderMonkey. Using the tree view of this bug is one way to find what might be a good meta bug to add to the blocked list.
List of Non-Rooted Bugs By Year
- List of Non-Rooted Bugs 2023
- List of Non-Rooted Bugs 2022
- List of Non-Rooted Bugs 2021
- List of Non-Rooted Bugs 2020 (matthew)
- List of Non-Rooted Bugs 2019 (matthew finished)
- List of Non-Rooted Bugs 2018 (matthew finished)
- List of Non-Rooted Bugs 2017 (matthew finished)
- List of Non-Rooted Bugs 2016 (matthew finished)
- List of Non-Rooted Bugs 2015 (steven)
- List of Non-Rooted Bugs 2014 (nicolas)
- List of Non-Rooted Bugs 2013 (matthew finished)
- List of Non-Rooted Bugs 2012 (will)
- List of Non-Rooted Bugs 2011 (bryan)
Minimum Requirements
A bug that is actionable and has been triaged should have, at a minimum:
- A priority set
- A severity set
- It should block one of the meta-bugs
A bug that isn't actionable and has been triaged should have:
- A need-info for someone who can explore the bug further or has information needed to make the bug actionable
- A comment describing the information that is lacking
P1 re-triage
Sometimes, we re-triage P1 which have seen no activity for a while. This is useful to make sure developers did not forget any important bugs. The following searches are lists of non-meta and non-stalled P1 issues affecting Firefox VV.
In this case affecting means: status-firefoxVV == affected || (status-firefoxVV is-empty && creation-date <= betaVV-merge-date). The calendar for each version can be found at https://fx-trains.herokuapp.com/release/ .
To avoid re-iterating over iterating every weeks over the same bugs, we filter out bugs which have been changed in the last 10 days.
- List of P1 affecting Firefox 98
- List of P1 affecting Firefox 90
- List of P1 affecting Firefox 87
- List of P1 affecting Firefox 76
- List of P1 affecting Firefox 75
- List of P1 affecting Firefox 74
- List of P1 affecting Firefox 70
- List of P1 affecting Firefox 67
- List of P1 affecting Firefox 66
Tools
- Meta-bugs extension (by nbp) to highlight fields in Bugzilla that need attention during triage