Reverse-Time Debugger — Reconstruct the 60 Seconds Before a Crash
Don't fix the bug. Replay it. From a stack trace alone, reconstruct what the user was doing, what data was in flight, and what the developer was thinking.
What this is
A full-screen forensic cinema for one fictional checkout crash. It opens on the exception, rewinds the final sixty seconds, then replays the same deterministic timeline across the customer surface, the service topology, and the executing stack. Scrub anywhere to inspect the saved cart, the US-to-CA change, the incomplete quote response, the order click, and the exact dereference that failed.
Why this is mind-blowing
Time is not faked with a pile of forward-only animations. Every pixel comes from the same pure stateAt(t) reconstruction, so dragging backward literally un-clicks Place Order, pulls packets upstream, rolls CA back to US, and restores the schema field whose absence caused the crash. The system stays green while the missing data glows as negative space.
Prompt
Here's a stack trace from production. Don't fix it.
Reconstruct the last 60 seconds before it crashed — what the user was
doing, what data was in flight, what the developer was probably
thinking when they wrote the buggy line. Then write the postmortem
from three perspectives: the user, the on-call engineer, and the
original author. Each in their own voice.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- Most debugging energy goes into the fix. The fix is the cheap part. The story of how the system arrived at the failure is the expensive part, and almost nobody writes it down.
- Reconstructing intent is harder and more useful than reproducing the bug. A repro tells you the system is broken. An intent reconstruction tells you why a competent engineer wrote a line that would eventually break.
- Stack traces are forensic evidence, not error messages. Treated as evidence, they yield a timeline, a mental model, and a human moment — all of which survive the patch that closes the ticket.