``The first step is admitting you have a problem.''
If you think you've found a bug in Sage, you should first search
through the Google groups sage-devel and sage-support
for postings related to your possible bug: maybe it has already been
discussed. You should also search the trac server to see if anyone
else has opened a ticket about your bug.
If you don't find anything, and you're not sure that you've found a
bug, ask about it on sage-devel.
If you don't find anything, and if you're positive you've found a bug, open a new ticket on the trac server. As mentioned above, you need an account to do this. To report a bug: log in and click on the ``New ticket'' button. Type a meaningful one-liner in the ``Short summary'' box, with more information in the larger box below. You should include an explicit, reproducible example illustrating your bug (and/or the steps required to reproduce the buggy behavior). You should also include the version of Sage (and any relevant packages) you are using, and operating system information, being precise as possible (32-bit, 64-bit, ...).
Between the ``Summary'' and ``Full description'' boxes, there is a place to choose the ``Type'' of the ticket: ``Defect'', ``Enhancement'', or ``Task''. Use your best judgment here; a bug should probably be reported as a ``Defect''.
Choose a priority for your bug, keeping in mind that the ``blocker'' label should be used very sparingly. Also pick a component for your bug; this is sometimes straightforward - if your bug deals with Sage's calculus implementation, choose ``calculus''. If it is not obvious, do your best. Choose a milestone; if you're not sure what to choose, just choose the numbered version of sage from the menu (``sage-3.1.4'', for example). Type in some helpful keywords. In the box labeled ``Assign to'', type ``somebody'' if you're not sure what else to do.
Hit the ``Preview'' button to make sure everything looks okay, and then hit ``Submit ticket''.
See About this document... for information on suggesting changes.