A step-by-step method for hard bugs and performance regressions - reproduce the bug with an automated check, shrink the reproduction, list possible causes, test them one at a time, fix, and add a regression test. Use when user says "diagnose this" / "debug this", reports a bug, says something is broken/throwing/failing, or describes a performance regression.