Blog

Notes on debugging, incident response, and building DevAudit.

Sep 15, 2026

How we group errors by cause instead of by timestamp

The trick isn't smarter matching — it's tracing every error back to the commit that introduced it, then diffing from there.

Aug 28, 2026

What a good post-mortem actually needs to say

Most post-mortems answer 'what happened.' The useful ones answer 'what would have caught this sooner,' every time.

Aug 6, 2026

Watching every language the same way

Why DevAudit doesn't have a JS mode and a Python mode — and what that constraint forced us to get right early.