Bug Status Workflow

This document describes best practices for setting Bugzilla status for bugs and feature requests. For Change proposal trackers, use the Bugzilla status described in the Changes policy.

Statuses

The image below presents a general flow chart for bugs in the typical case. The flow is bi-directional: a bug can revert to a previous status if, for example, a proposed fix is incomplete.

fedora bug lifecycle

The table below summarizes the statuses. More details, including additional keywords, flags, and resolutions are given in the following sections.

Table 1. Bugzilla statuses
Status Meaning

NEW

The default state. Generally indicates bug has not been actively investigated by the assignee.

ASSIGNED

Can be used by maintainers to indicate that the bug has been vetted and is assigned for work.

ON_DEV

Can be used by maintainers to indicate that work is actively in progress. This is especially useful if there exists a team of maintainers for a package.

POST

Indicates a fix is ready, but not applied. This is often used when a pull request is open upstream.

MODIFIED

Indicates a fix has been built in an update. Bodhi will set this status automatically when an update is created if the bug is associated with the update.

ON_QA

Indicates an update with a fix is in the testing repo. Bodhi will set this status automatically when an update reaches updates-testing if the bug is associated with the update.

VERIFIED

Indicates a bug has a confirmed fix in an update.

RELEASE_PENDING

(Generally unused in Fedora. Used for Red Hat Enterprise Linux workflows.)

CLOSED

Indicates the bug has been fixed or will not be fixed. The CLOSED status has different resolutions to indicate why the bug was closed. Bodhi will set this status automatically when an update reaches the updates repo if the bug is associated with the update.

Resolutions

The table below describes the resolutions that can apply to the CLOSED status.

Table 2. Bugzilla resolutions
Resolution Meaning

CANTFIX

Used by maintainers to indicate a bug that cannot be fixed.

CURRENTRELEASE

Indicates a bug reported in Branched prior to release and the fix is fixed for the final release.

DEFERRED

(Generally unused in Fedora. Used for Red Hat Enterprise Linux workflows.)

DUPLICATE

Indicates a bug is a duplicate of another.

EOL

Indicates a bug that was filed against a version that has reached End of Life.

ERRATA

Indicates a bug is fixed in a stable release.

FAILS_QA

(Generally unused in Fedora. Used for Red Hat Enterprise Linux workflows.)

INSUFFICIENT_DATA

Indicates that the bug reporter is unwilling or unable to provide sufficient information to diagnose or fix the bug.

NEXTRELEASE

Used by maintainers to indicate a bug that will only be fixed for later releases, not on the release reported.

NOTABUG

Indicates that the report is not a bug (e.g. is a hardware failure or a support question).

RAWHIDE

Indicates a bug is fixed in a Rawhide update.

RELEASE_PENDING

(Generally unused in Fedora. Used for Red Hat Enterprise Linux workflows.)

UPSTREAM

Used by maintainers to indicate that a bug is expected to be fixed upstream and naturally rolled into Fedora Linux in a subsequent update.

WONTFIX

Used by maintainers to indicate a bug that will not be fixed.

WORKSFORME

Used by maintainers to indicate a bug that cannot be reproduced.

Priority and Severity

Severity

The Severity field is used to indicate the bug’s importance. The values for the severity field should be assigned with reference to the following guidance:

  • Urgent: the bug makes whole system unusable (or it is a security bug, which is per definition urgent)

  • High: the bug makes the program in question unusable, or a major packaging guideline violation (license problem, bundled library, etc)

  • Medium: a real bug which makes program more difficult to use, at least part of the program is available; possibly workarounds are available

  • Low: anything else - cosmetic issues, corner cases with unusual (non-default) configurations, etc.

The Urgent setting should not usually be used for hardware-specific bugs: a bug which causes the entire distribution to be affected but is restricted to a single specific type of hardware should usually be set to High. For instance, if a bug prevents X.org working correctly on a single particular graphics chipset, use the High severity, not Urgent.

For most packages, most issues are likely to be of Medium severity. These are not hard and fast rules. Use your best judgement in setting the severity field appropriately. There are obvious cases which require the exercise of judgement—for instance, a bug which affects more than just the program in which it occurs, but less than the 'whole system'.

Priority

The Priority field may be used, at their choice, by maintainers to keep track of the order in which they wish to address bugs in their package(s). This may be done with relation to the severity setting, or by any other method the maintainer chooses, at the maintainer’s sole discretion. It may also be entirely ignored, if the maintainer in question does not wish to use it No-one other than the maintainer or team responsible for a particular bug should change this setting.