Async bugs are tricky because code doesn't run linearly. Tips:
- Add breakpoints inside
.then()andasyncfunctions - Use
console.trace()to see where async code was triggered - Look at the call stack when paused to see the full async chain (modern DevTools show this by default)
- Watch for unhandled promise rejections in console