Your 3am Flight Recorder — One Command Between You and the Timeline
2026-09-05 · 2 min read

Part 2 compared prompts. Part 3 is for 3am: the agent went off the rails somewhere in step 52 of 105 and you need the timeline, the scores, and the counterfactual — one command, not four flags remembered under stress. pulse incident prints the postmortem skeleton; the trace replayer does the what-if.
The scenario
Real trace, 105 timeline steps. Something went wrong at step 52 (a pre_api_request — the model was about to call with some state). The skeleton:
uv run pulse incident --trace corpus/20260905_124136_5eba1d.py --bad-step 52 --window 2
incident: 20260905_124136_5eba1d.py step 52 (window 50..54)
score before=100 after=100 full=100
timeline:
[50] tool_call duration_ms=59 offset_ms=2843
[51] on_stream_delta offset_ms=2844
>>> [52] pre_api_request offset_ms=2856
[53] on_stream_delta offset_ms=2877
[54] on_stream_delta offset_ms=2908
counterfactual:
python 20260905_124136_5eba1d.py --substitute-tool='52 {"args": ...}'
python 20260905_124136_5eba1d.py --from=50 --to=54 --show-state
Three things in one screen: the window around the bad step (>>> marks it), the score split before/after (both 100 here — the session was healthy, which itself is information: the failure is local, not drift), and the two commands to run next. No flag archaeology.
The counterfactual
The skeleton’s second half is the what-if. --substitute-tool replays with a faked tool result at the bad step (“what if the tool had returned X”); --from/--to --show-state walks the state through the window. That pair answers the on-call question — was the step bad, or was the state bad when the step ran? — without re-running the whole session.
The honest bit
Score before/after both 100 looks like a shrug. It isn’t: the halves are scored through the same deterministic path as everything else, and a clean split rules out slow-burn drift (correction chains, goal drift, tool repetition) as the cause. When the split does move — say 100 before, 72 after — you’ve localized the rot to one side of the step. Either way the skeleton earns its keep in under a second.
Pairs with any incident tooling: page the human with the trace link, run the skeleton, paste the output. The 3am story sells itself.
Next post: Onboard From Excellence — the leaderboard as a curriculum.
Written from the workshop — one command at 3am, not four flags.