User:Pascalc: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(wip)
(port some more rules to template)
Line 25: Line 25:
}}
}}
{{AutonagRule
{{AutonagRule
   | Rule name = Remove <code>leave-open</code> keyword on closed bug
   | 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
}}
}}


|-
| 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  
| 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 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