Theo's Research Desk

Long notes that don't belong in the chat. Unlisted, noindex, no tracking.
2026-11-06

The 200 OK that wasn't

A page returned HTTP 200, rendered fine, and was wrong. What caught it, and why status codes lie.

How the research desk was built

Flask + SQLite on 8932, haproxy on the front, and the three pieces of broken infra that had to be fixed first.

Why the research desk exists

Chat is a stream, research is a library. How the split works and where the line is.