Tag
#debugging
Instrument first, theorize second — logging with a stated plan for capturing the failure.
Walk the history between a known-good commit and main to find the culprit diff.
Find the N+1s, blocking calls, and hot loops, ranked by impact-per-effort.
Find every affected code path and the same bug elsewhere before landing the minimal fix.
Rank the likely causes of a flaky bug and get a deterministic way to reproduce the top one.
Force a failing test that captures the bug before any fix is allowed to land.
Follow a value through every function that touches it, with side effects and an ASCII flow diagram.
Explain your code out loud and let the AI catch where your logic and the code disagree.
Get a clear root-cause explanation and the smallest fix for an error.