How to triage bugs
==================
:toc:
Cyril Brulebois <kibi@debian.org>


Packaging bugs or upstream bugs?
--------------------------------

It’d be nice to get all upstream bugs tagged as such (`upstream` tag),
forwarded upstream (which means the bugzilla instance on
http://bugs.freedesktop.org/ for most packages), and marked as such.

A mail to `control@bugs.debian.org` would look like:

----
tag X upstream
forwarded X https://bugs.freedesktop.org/show_bug.cgi?id=Y
thanks
----

Then http://bts-link.alioth.debian.org/[`bts-link`] comes into play
and helps us tracking upstream status, which is pretty nice to have.


<<<
Usertags
--------

Another feature of the BTS is usertagging. That lets people keep track
of additional tags, “attached” to a given mail address. For XSF,
that’s `debian-x@lists.debian.org`.

The list of all usertagged bugs can be seen on the following page; the
list of all used usertags is at the bottom, in the form. +
→ http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-x%40lists.debian.org

Let’s give some examples:

 * `i810`, `i915`: helps triaging `-video-intel` bugs depending on the
   chipset.
 * `r200`, `r300`: ditto for `-video-ati`.
 * `xset`, `xrandr`: helps triaging `x11-xserver-utils` bugs depending
   on the affected tool (like other `x11-*` packages, that’s a bundle
   of teeny tiny apps).
 * `squeeze-candidate`: helps keeping a list of bugs we’d like to get
   fixed in a point release (through a stable update).
 * `needs-forwarding`: of course, it’d be nice to have all upstream
   bugs reported upstream, but some might need special attention
   (_e.g._ security bugs).

Here’s an example of URL, for the last tags: +
→ http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-x%40lists.debian.org&tag=squeeze-candidate +
→ http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-x%40lists.debian.org&tag=needs-forwarding

By the way one should keep an eye on the list of found/fixed
versions since those bugs are likely marked as resolved (in `unstable`
or `experimental`), but might still affect a stable release.

To list the bugs marked `squeeze-candidate` but not
`squeeze-accepted`: +
→ http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-x%40lists.debian.org&tag=squeeze-candidate&exclude=tag:squeeze-accepted


<<<
Categories
----------

The BTS has yet another feature which can help, categories. That’s
based on usertags as well, but one has to use the package address
(`$package@packages.debian.org`), so that’s package-specific rather
than team-specific.

Categories are
http://wiki.debian.org/bugs.debian.org/usertags[documented on the wiki],
and they would probably be welcome in the `intel` and `ati` cases
above, as well as in the “multiple tools in a single bundle”
cases… An example of what we could achieve is the
http://bugs.debian.org/devscripts[devscripts bug page] (it takes
some time to load, plenty of bugs).

Needed steps for that to happen:

 * create usercategories.
 * move usertags from `debian-x@lists.debian.org` to
   `$package@packages.debian.org`, probably using the `bts select`
   command to get the list over which to iterate.
 * profit!

To move the usertags, something like that should do the job:
----
# Adding usertags:
user $package1@packages.debian.org
usertag X xset
usertag Y xrandr
user $package2@packages.debian.org
usertag Z i810

# Removing tags which are no longer needed:
user debian-x@lists.debian.org
usertag X - xset
usertag Y - xrandr
usertag Z - i810
----
