Mozilla receives hundreds of bug reports and feature requests from users daily. Getting bugs to the right eyes ASAP is essential in order to fix them quickly. This is where bugtriage comes in: until a developer knows a bug exists, they won’t be able to fix it.
Historically, the product/component assignment has been mostly done manually by volunteers and some developers. Unfortunately, this process fails to scale. A large number of bugs filed. it is unworkable to make each developer look at every bug.
Bug Bug: Machine learning Model
Mozilla has a large training set of bugs data to train model. two decades worth of bugs which have been reviewed by Mozillians and assigned to products and components. The bug data can’t be used as-is and any change to the bug after triage would create trouble during product operation. So Mozilla rolled back the bug to the time it was originally filed. Out of 396 components, 225 components had more than 49 bugs filed in the past 2 years. During operation, Mozilla developers performed the assignment when the model was confident enough of its decision and currently. the team is using a 60% confidence threshold.
For training of an XGBoost model, features collected from the title, the first comment, and the keywords/flags associated with each bug.
Developers have deployed BugBug in production at the end of February 2019, they have triaged around 350 bugs. The median time for any developer to act on triaged bugs is 2 days