User:Pascalc: Difference between revisions
(wip) |
(port some more rules to template) |
||
| Line 25: | Line 25: | ||
}} | }} | ||
{{AutonagRule | {{AutonagRule | ||
| Rule name = | | Rule name = Remove <code>leave-open</code> keyword on closed bug | ||
| Purpose = Clean up a mismatch in metadata | | Purpose = Clean up a mismatch in metadata | ||
| Action = If a bug is closed but the <code>leave-open</code> keyword is still set, remove it | | Action = If a bug is closed but the <code>leave-open</code> keyword is still set, remove it | ||
| Example = 1382185 | | Example = 1382185 | ||
| Source = leave_open.py | | Source = leave_open.py | ||
}} | |||
{{AutonagRule | |||
| Rule name = [meta] in title but not in keywords | |||
| Purpose = Improve metedata quality | |||
| Action = Adds the <code>meta</code> keyword if the bug title starts by [META] | |||
| Example = 1435799 | |||
| Source = meta_summary_missing.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Update Firefox Status flags for bugs reopened during Nightly cycle | |||
| Purpose = Avoids potential issues for sheriffs and release managers | |||
| Action = Set <code>firefox-status</code> flag back from ''fixed'' to ''affected'' | |||
| Example = 1495962 | |||
| Source = nightly_reopened.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Bug with no assignee but a patch landed | |||
| Purpose = Attribute unassigned bug to the developer that fixed it | |||
| Action = The ASSIGNEE field on the bug is changed from nobody@mozilla.org to the author of the patch that landed in mozilla-central | |||
| Example = 1514338 | |||
| Source = no_assignee.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Close crash bugs with no crashes over 12 weeks | |||
| Purpose = Reduce the backlog of bugs to check for Release Managers | |||
| Action = Crash bugs without any crash reports for more than 12 weeks | |||
| Example = 1470864 | |||
| Source = no_crashes.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Remove <code>stalled</code> keyword on closed bugs | |||
| Purpose = Fix inconsistency between metadata and bug status | |||
| Action = If a bug is marked as <code>FIXED</code> and also has a <code>stalled</code keyword set, the keyword is removed | |||
| Example = 1491624 | |||
| Source = stalled.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Has meta keyword but not [meta] in the bug title | |||
| Purpose = Having [meta] in the bug title helps with quick search results | |||
| Action = If a bug has the meta keyword set, [meta] is added to the bug title | |||
| Example = 1257692 | |||
| Source = summary_meta_missing.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Set a Firefox status flag for beta if there is one for nightly and release | |||
| Purpose = Fix inconsistency in Firefox status flags that can lead to a bug going undetected by Release Managers during the beta cycle | |||
| Action = If a status exist for Firefox N-1 and for Firefox N+1, guess a value for Firefox N | |||
| Example = 1500273 | |||
| Source = missing_beta_status.py | |||
}} | |||
{{AutonagRule | |||
| Rule name = Increase priority of bugs tracked y Release Managers | |||
| Purpose = Priotitizes bugs needing an action for shipping quality software | |||
| Action = If a bug is tracked by a Release Manager, update the priority (P2 for nightly, P1 for the rest) | |||
| Example = 1515946,1508277,1512493 | |||
| Source = mismatch_priority_tracking_release.py | |||
| Note = There are multiple files mismatch-priority-tracking-*.py, one per channel | |||
}} | }} | ||
| regression.py | | regression.py | ||
| Bug without the regression keyword | | Bug without the regression keyword | ||
Revision as of 16:23, 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.
Rules
With autofix
Bug assigned but marked as UNCONFIRMED
| Purpose | Mitigate an issue in Bugzilla (bugs reported by new users are not tagged as NEW |
|---|---|
| Action | Change the status from UNCONFIRMED to ASSIGNED if there is an assignee |
| Example | Bug 1495908 |
| Code | assignee_but_unconfirmed.py |
Regression keyword is missing
| Purpose | Regression keyword is important to differentiate an actual defect |
|---|---|
| Action | Sets the regression keyword on bugs with the regression-range-wanted keyword is set |
| Example | Bug 1461034 |
| Code | has_regression_range_no_keyword.py |
Remove leave-open keyword on closed bug
| Purpose | Clean up a mismatch in metadata |
|---|---|
| Action | If a bug is closed but the leave-open keyword is still set, remove it |
| Example | Bug 1382185 |
| Code | leave_open.py |
[meta] in title but not in keywords
| Purpose | Improve metedata quality |
|---|---|
| Action | Adds the meta keyword if the bug title starts by [META] |
| Example | Bug 1435799 |
| Code | meta_summary_missing.py |
Update Firefox Status flags for bugs reopened during Nightly cycle
| Purpose | Avoids potential issues for sheriffs and release managers |
|---|---|
| Action | Set firefox-status flag back from fixed to affected |
| Example | Bug 1495962 |
| Code | nightly_reopened.py |
Bug with no assignee but a patch landed
| Purpose | Attribute unassigned bug to the developer that fixed it |
|---|---|
| Action | The ASSIGNEE field on the bug is changed from nobody@mozilla.org to the author of the patch that landed in mozilla-central |
| Example | Bug 1514338 |
| Code | no_assignee.py |
Close crash bugs with no crashes over 12 weeks
| Purpose | Reduce the backlog of bugs to check for Release Managers |
|---|---|
| Action | Crash bugs without any crash reports for more than 12 weeks |
| Example | Bug 1470864 |
| Code | no_crashes.py |
Remove stalled keyword on closed bugs
| Purpose | Fix inconsistency between metadata and bug status |
|---|---|
| Action | If a bug is marked as FIXED and also has a stalled</code keyword set, the keyword is removed |
| Example | Bug 1491624 |
| Code | stalled.py |
Has meta keyword but not [meta] in the bug title
| Purpose | Having [meta] in the bug title helps with quick search results |
|---|---|
| Action | If a bug has the meta keyword set, [meta] is added to the bug title |
| Example | Bug 1257692 |
| Code | summary_meta_missing.py |
Set a Firefox status flag for beta if there is one for nightly and release
| Purpose | Fix inconsistency in Firefox status flags that can lead to a bug going undetected by Release Managers during the beta cycle |
|---|---|
| Action | If a status exist for Firefox N-1 and for Firefox N+1, guess a value for Firefox N |
| Example | Bug 1500273 |
| Code | missing_beta_status.py |
Increase priority of bugs tracked y Release Managers
| Purpose | Priotitizes bugs needing an action for shipping quality software |
|---|---|
| Action | If a bug is tracked by a Release Manager, update the priority (P2 for nightly, P1 for the rest) |
| Example | Bug 1515946,1508277,1512493 |
| Code | mismatch_priority_tracking_release.py |
| Note | There are multiple files mismatch-priority-tracking-*.py, one per channel |
| 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 |