Debug Decision Worksheet (Printable)

A fill-in, printable worksheet that turns a vague “it’s broken” into a reproducible bug report. Fill the fields, then print or save as PDF to attach to your issue tracker.

1. Reproduce

Exact command / URL
Minimal steps to reproduce
Environment (OS / runtime / version)
First red error line

2. Go / No-Go before you dig

  • ☐ Did it work before on this machine? (regression vs always-broken)
  • ☐ Is it reproducible on a clean checkout / different machine?
  • ☐ Does the first error point to your code or a dependency?
  • ☐ Is there a known fix in the open dataset? common-dev-errors-2026.json

3. Notes

How to use this worksheet

Work top to bottom and do not skip the first block. The value of a bug report comes almost entirely from whether someone else can reproduce the failure, and reproduction depends on facts that are easy to leave out because they feel obvious while you are staring at the screen: the exact command, the exact versions, and the exact first error. Fill those in while the terminal is still open rather than reconstructing them from memory an hour later.

Why the first error line, not the last

Stack traces and build logs wrap the original failure in layers of context that were added while unwinding. The top-most error is usually the closest thing to the cause, while the bottom of the output is often a generic message emitted by whichever component gave up last. Copying only the last line is the single most common reason a report cannot be actioned, because it describes a symptom rather than the fault.

Reduce the case before you file it

A minimal reproduction is worth more than a long description. Remove code, config, and dependencies one at a time until the failure disappears, then add the last removed piece back. What remains is the smallest case that still fails, and in practice it frequently reveals the cause on its own before the report is even written.

Then write the go / no-go decision down

The second block exists to stop you from digging into a problem that should be triaged first. If the failure never worked on any machine, it is a setup or compatibility issue rather than a regression. If it reproduces on a clean checkout, the difference is in your environment or your uncommitted changes. Answering those two questions before you start reading source code saves the most time of anything on this page.

Free to use. Pair with the dependency upgrade go/no-go checklist.

← All guides

Related tools from our network

A focused set of free calculators and guides across related topics — no account required.