Issue Tracker Workflow
The workflow in the issue tracker is handled in the following way:
- A bug is reported and is automatically placed in the Triage status.
The Bug Marshall team should go through bugs in the Triage status to determine whether the report is valid (not a duplicate, hasn't already been fixed, not a tech support issue, etc.). Invalid reports should be set to 'Closed' with the appropriate resolution set. Categories and descriptions should be corrected at this point.
Issues should also have enough information for a developer to either reproduce the issue or determine where an issue exists (or both). If this is not the case then the issue should be moved to 'Waiting for Feedback' with the appropriate information requested. See Asterisk Issue Guidelines for more information on what an issue should have before it is accepted.
- If a patch has been created for the issue, it is acceptable to modify the summary with the text "[Code Review on Gerrit. ]" to indicate that a patch is available for the issue. If a patch has been included with the issue, it should be submitted for
- The next step is to determine whether the report is about a bug or a submission of a new feature:
- BUG: A bug should be moved into the Open status by clicking Acknowledge if enough information has been provided by the reporter to either reproduce the issue or clearly see where an issue may lie. The bug may also be assigned to a developer for the creation of the initial patch, or review of the issue.
- FEATURE: New features must be filed with a patch. As such, the issues can be immediately moved into the Open status by clicking Acknowledge. For more information on submitting new features to the Asterisk project, see the New Feature Guidelines guidelines. Note that new features that are not put up for code review by the author are likely to be closed as "Suspended."
- If at any point in the workflow, an issue requires feedback from the original poster of the issue, the status should be changed to Waiting for Feedback. Once the required information has been provided, it should be placed back in the appropriate point of the workflow by using the Send Back button.
- If at any point in the workflow, a developer or bug marshal would like to take responsibility for doing the work that is necessary to progress an issue, the issue can be assigned to that developer and the issue moved into the In Progress state. At that point the developer assigned to the issue will be responsible for moving the issue to completion.
The following is a list of valid statuses and what they mean to the work flow.
This issue is awaiting review or in review by bug marshals. Categorization of the issue, summary, description, version, and other related information should be fixed as appropriate. See the Asterisk Issue Guidelines for more information.
Waiting for Feedback
This issue requires feedback from the poster of the issue before any additional progress in the workflow can be made. This may include providing additional debugging information, or a backtrace with
DONT_OPTIMIZE enabled, for example.
This is a submitted bug or new feature (with patch!) which has yet to be worked either by an Asterisk developer, but appears to be a valid bug or new feature based on the description and provided debugging information.
An issue can also be in the Reopen state, indicating that it was closed but reopened for some reason. This state is semantically the same as Open.
This is an issue which is currently being actively worked by an assigned developer. At this stage, it would be appropriate to have a patch being developed or attached to the issue for review.
The issue has been resolved, and a patch has either been committed or the issue has been rejected for some reason.
Severity levels can be selected for an issue and may be viewed by bug marshals as a way to categorize issues for priority; however, a high priority does not necessarily entail that any bug marshal will treat that issue with any greater urgency.
The Blocker severity may be used by bug marshals as a way to indicate that the Asterisk developer community has decided that an issue is of such critical importance that it should prevent release of a new version of Asterisk in the affected branches. In general, this status should be used sparingly and may warrant discussion on the issue tracker if assigned to an issue. Issue reporters should not select the Blocker severity.
- Using the filters in Jira - such as the Triage (Supported) filter is - useful for finding issues that need attention quickly.
- The issue tracker now has the ability to monitor the commits list, and if the commit message contains the appropriate tag, e.g., "ASTERISK-9999 #close99999", the bug will automatically be closed.