BugBot: Difference between revisions
Jump to navigation
Jump to search
(now with an autofix) |
(Minor cleanups of the styles and nits) |
||
Line 1: | Line 1: | ||
{{ DISPLAYTITLE:Autonag, our bugzilla automatic triage bot and alerting system }} | |||
https://github.com/mozilla/relman-auto-nag/tree/master/auto_nag/scripts | <p style="font-size: larger; font-weight:bold;"> | ||
This page lists all the actions done by the [https://github.com/mozilla/relman-auto-nag/tree/master/auto_nag/scripts Autonag bot].</p> | |||
Autofix checkers are executed every hour at *:15. Checkers without autofix are run every day. 14:00 Paris time. | == Introduction == | ||
For now, security bugs aren't touched. | Autofix checkers are executed every hour at *:15. Checkers without autofix are run every day. 14:00 Paris time. ''For now, security bugs aren't touched.'' | ||
== With autofix == | == With autofix == | ||
{| | {| class="wikitable" | ||
|- | |- | ||
! File | |||
! Rules | |||
! Why | |||
! Example | |||
|- | |||
| assignee_but_unconfirmed.py | |||
| Change the status from unconfirmed to assigned if there is an assignee | |||
| Mitigate an issue in bugzilla (bugs reported by new bugzilla users are not tagged as NEW) | |||
| {{Bug|1495908}} | |||
|- | |||
| has_regression_range_no_keyword.py | |||
| Regression range = yes has been set but missing keyword | |||
| Regression keyword is important to differentiate actual defect | |||
| {{Bug|1461034}} | |||
|- | |||
| leave_open.py | |||
| Remove the leave-open keyword on bug closed | |||
| Mismatch in metadata | |||
| {{Bug|1382185}} | |||
|- | |||
| meta_summary_missing.py | |||
| Has [meta] in the description but not the keyword | |||
| Keyword helps a lot in search | |||
| {{Bug|1435799}} | |||
|- | |||
| nightly_reopened.py | |||
| If a bug is reopened in nightly, the status flags aren’t automatically updated | |||
| Avoids some potential issues for sheriff and release managers | |||
| {{bug|1495962}} | |||
|- | |||
| no_assignee.py | |||
| no assignees and a patch which landed in m-c | |||
| Bugs without assignee is making our life harder | |||
| {{bug|1514338}} | |||
|- | |||
| no_crashes.py | |||
| Crash bugs without any crash reports for more than 12 weeks | |||
| Mitigate the backlog | |||
| {{bug|1470864}} | |||
|- | |||
| stalled.py | |||
| But closed but has the stalled keyword | |||
| If the bug is closed, it isn't stalled anymore | |||
| {{bug|1491624}} | |||
|- | |||
| summary_meta_missing.py | |||
| Has the meta keyword but [meta] is missing in the description | |||
| Having [meta] in the summary help with search of bugs | |||
| {{bug|1257692}} | |||
|- | |||
| missing_beta_status.py | |||
| Status flags are set for nightly and release but not for beta | |||
| Inconsistency in status flags | |||
| {{bug|1500273}} | |||
|- | |||
| mismatch-priority-tracking-*.py | |||
| If a bug is tracked by a release manager, update the priority (P2 for nightly, P1 for the rest) | |||
| Show that it is important | |||
| {{bug|1515946}} <br> {{bug|1508277}} <br> {{bug|1512493}} | |||
|- | |||
| regression.py | |||
| Bug without the regression keyword | |||
| Regression keyword is important to differentiate actual defect. Uses machine learning | |||
| {{bug|1529139}} | |||
|- | |||
| component.py | |||
| Bug in untriaged | |||
| Move the bug into the right component. Uses machine learning | |||
| {{bug|1530316}} | |||
|- | |||
| copy_duplicate_info.py | |||
| Bug resolved as duplicate | |||
| Copy crash signatures from dup bug to original bug and copy product/component from original t dup. | |||
| {{bug|1517205}} | |||
|- | |||
| tracked_bad_severity.py | |||
| Bug tracked by release managers but small severity | |||
| Inconsistency in metadata | |||
| {{bug|1538966}} | |||
|- | |||
| workflow/no_priority.py | |||
| Bug with no priority set. | |||
| Needinfo or nag triage owner to set priority. | |||
| {{bug|1527818}} | |||
|} | |} | ||
== Without autofix == | == Without autofix == | ||
{| | {| class="wikitable" | ||
|- | |- | ||
! File | |||
! Rules | |||
! Why | |||
! Action | |||
! Example | |||
|- | |- | ||
| feature_regression.py | |||
| the bug with both feature and regression keywords | |||
| Mismatch in metadata | |||
| | | Not yet | ||
| | |||
|- | |- | ||
| leave_open_no_activity.py | |||
| Has the leave-open keyword but no activity for a while | |||
| Help identify dead/inactive bugs | |||
| Needinfo to triage owner | |||
| {{Bug|1367072}} | |||
|- | |- | ||
| meta_no_deps_no_activity.py | |||
| Meta bug without open dependencies and no activity | |||
| Help identify dead/inactive bugs | |||
| Needinfo to triage owner | |||
| | |||
|- | |- | ||
| mismatch-priority-tracking.py | |||
| A bug is tracked by release management but the severity is small (<normal) | |||
| Mismatch in metadata | |||
| | | Not yet | ||
| | |||
|- | |- | ||
| ni_from_manager.py | |||
| Bugs with a ni from a director or a release manager and no activity | |||
| We need to have fast turn around on bugs | |||
| Mail | |||
| | |||
|- | |- | ||
| ni_triage_owner.py | |||
| Bugs with no priority and no activity | |||
| Triage owners need to process the backlog | |||
| Needinfo to triage owner (only Andrew for now) | |||
| {{bug|1503461}} | |||
|- | |- | ||
| one_two_word_summary.py | |||
| Bugs with only one or two words in the summary | |||
| usually a sign of an useless bug | |||
| | | Not yet | ||
| {{bug|1512823}} | |||
|- | |- | ||
| query_creator.py | |||
| Send reminders to developer with assigned tracked bugs | |||
| Make sure that bugs for the next release are addressed | |||
| | | Not yet | ||
| | |||
|- | |- | ||
| reporter_with_ni.py | |||
| Identify bugs with needinfo on the reporter without activity | |||
| Usually a sign of a reporter not answering to more requests | |||
| | | Not yet | ||
| | |||
|- | |- | ||
| topcrash_bad_severity.py | |||
| Topcrash bugs with normal severity | |||
| Consistency and help getting traction on bugs | |||
| | | Not yet | ||
| {{bug|1471692}} | |||
|- | |- | ||
| tracked_needinfo.py | |||
| Tracked or Nominated for Tracking with Need-Info? | |||
| Make sure that bugs for the next release are addressed | |||
| Email | |||
| | |||
|- | |- | ||
| tracking.py | |||
| Get the tracked bugs in a release and untouched this week | |||
| Identify inactive bugs | |||
| Email | |||
| | |||
|- | |- | ||
| unaffected_affected_no_reg.py | |||
| List bugs marked as non affecting a release but affecting the next one | |||
| Sign of a regression | |||
| Email | |||
| | |||
|- | |- | ||
| unlanded.py | |||
| Patches which didn’t land on beta and esr | |||
| Make sure that we ship with the bugs that we need | |||
| Email | |||
| {{bug|1509394}} | |||
|- | |- | ||
| untriage_important_sev.py | |||
| Firfox/untriaged with an important severity | |||
| Identify potential important issues in untriage | |||
| | | Not yet | ||
| | |||
|- | |- | ||
| version_affected.py | |||
| Bug with version set but not status_firefox | |||
| Version is set automatically by bugzilla but status_firefox isn’t | |||
| Email | |||
| | |||
|- | |- | ||
| ../next_release.py | |||
| Check if the release dates are consistent on the Wiki pages | |||
| We use these dates in automation | |||
| Email | |||
| | |||
|- | |- | ||
| code_freeze_week.py | |||
| Fixed bug with patches which landed in mozilla-central during the soft freeze week | |||
| Give some information like number of patches, number of changed lines, ... | |||
| Email | |||
| | |||
|- | |- | ||
| missed_uplifts.py | |||
| Fixed bug in nightly with patches and beta or release affected. | |||
| Give some information about priority, severity, ... | |||
| Email | |||
| | |||
|- | |- | ||
| newbie_with_ni.py | |||
| Bug where the reporter has a needinfo and with no activity | |||
| Help to identify probably unactionnable bugs because of lack of information | |||
| Email | |||
| | |||
|- | |- | ||
| not_landed.py | |||
| Bug with a r+ patch but the patch didn't land. | |||
| Maybe a checkin-needed is required or the patch is obsolete | |||
|| | | Email | ||
|| | | | ||
|} | |||
[[category:Release_Management|Autonag]] |
Revision as of 13:16, 12 April 2019
This page lists all the actions done by the Autonag bot.
Introduction
Autofix checkers are executed every hour at *:15. Checkers without autofix are run every day. 14:00 Paris time. For now, security bugs aren't touched.
With autofix
File | Rules | Why | Example |
---|---|---|---|
assignee_but_unconfirmed.py | Change the status from unconfirmed to assigned if there is an assignee | Mitigate an issue in bugzilla (bugs reported by new bugzilla users are not tagged as NEW) | bug 1495908 |
has_regression_range_no_keyword.py | Regression range = yes has been set but missing keyword | Regression keyword is important to differentiate actual defect | bug 1461034 |
leave_open.py | Remove the leave-open keyword on bug closed | Mismatch in metadata | bug 1382185 |
meta_summary_missing.py | Has [meta] in the description but not the keyword | Keyword helps a lot in search | bug 1435799 |
nightly_reopened.py | If a bug is reopened in nightly, the status flags aren’t automatically updated | Avoids some potential issues for sheriff and release managers | bug 1495962 |
no_assignee.py | no assignees and a patch which landed in m-c | Bugs without assignee is making our life harder | bug 1514338 |
no_crashes.py | Crash bugs without any crash reports for more than 12 weeks | Mitigate the backlog | bug 1470864 |
stalled.py | But closed but has the stalled keyword | If the bug is closed, it isn't stalled anymore | bug 1491624 |
summary_meta_missing.py | Has the meta keyword but [meta] is missing in the description | Having [meta] in the summary help with search of bugs | bug 1257692 |
missing_beta_status.py | Status flags are set for nightly and release but not for beta | Inconsistency in status flags | bug 1500273 |
mismatch-priority-tracking-*.py | If a bug is tracked by a release manager, update the priority (P2 for nightly, P1 for the rest) | Show that it is important | bug 1515946 bug 1508277 bug 1512493 |
regression.py | Bug without the regression keyword | Regression keyword is important to differentiate actual defect. Uses machine learning | bug 1529139 |
component.py | Bug in untriaged | Move the bug into the right component. Uses machine learning | bug 1530316 |
copy_duplicate_info.py | Bug resolved as duplicate | Copy crash signatures from dup bug to original bug and copy product/component from original t dup. | bug 1517205 |
tracked_bad_severity.py | Bug tracked by release managers but small severity | Inconsistency in metadata | bug 1538966 |
workflow/no_priority.py | Bug with no priority set. | Needinfo or nag triage owner to set priority. | bug 1527818 |
Without autofix
File | Rules | Why | Action | Example |
---|---|---|---|---|
feature_regression.py | the bug with both feature and regression keywords | Mismatch in metadata | Not yet | |
leave_open_no_activity.py | Has the leave-open keyword but no activity for a while | Help identify dead/inactive bugs | Needinfo to triage owner | bug 1367072 |
meta_no_deps_no_activity.py | Meta bug without open dependencies and no activity | Help identify dead/inactive bugs | Needinfo to triage owner | |
mismatch-priority-tracking.py | A bug is tracked by release management but the severity is small (<normal) | Mismatch in metadata | Not yet | |
ni_from_manager.py | Bugs with a ni from a director or a release manager and no activity | We need to have fast turn around on bugs | ||
ni_triage_owner.py | Bugs with no priority and no activity | Triage owners need to process the backlog | Needinfo to triage owner (only Andrew for now) | bug 1503461 |
one_two_word_summary.py | Bugs with only one or two words in the summary | usually a sign of an useless bug | Not yet | bug 1512823 |
query_creator.py | Send reminders to developer with assigned tracked bugs | Make sure that bugs for the next release are addressed | Not yet | |
reporter_with_ni.py | Identify bugs with needinfo on the reporter without activity | Usually a sign of a reporter not answering to more requests | Not yet | |
topcrash_bad_severity.py | Topcrash bugs with normal severity | Consistency and help getting traction on bugs | Not yet | bug 1471692 |
tracked_needinfo.py | Tracked or Nominated for Tracking with Need-Info? | Make sure that bugs for the next release are addressed | ||
tracking.py | Get the tracked bugs in a release and untouched this week | Identify inactive bugs | ||
unaffected_affected_no_reg.py | List bugs marked as non affecting a release but affecting the next one | Sign of a regression | ||
unlanded.py | Patches which didn’t land on beta and esr | Make sure that we ship with the bugs that we need | bug 1509394 | |
untriage_important_sev.py | Firfox/untriaged with an important severity | Identify potential important issues in untriage | Not yet | |
version_affected.py | Bug with version set but not status_firefox | Version is set automatically by bugzilla but status_firefox isn’t | ||
../next_release.py | Check if the release dates are consistent on the Wiki pages | We use these dates in automation | ||
code_freeze_week.py | Fixed bug with patches which landed in mozilla-central during the soft freeze week | Give some information like number of patches, number of changed lines, ... | ||
missed_uplifts.py | Fixed bug in nightly with patches and beta or release affected. | Give some information about priority, severity, ... | ||
newbie_with_ni.py | Bug where the reporter has a needinfo and with no activity | Help to identify probably unactionnable bugs because of lack of information | ||
not_landed.py | Bug with a r+ patch but the patch didn't land. | Maybe a checkin-needed is required or the patch is obsolete |