A connection pooler that corrupted data
pgBouncer transaction pooling reuses one connection across client sessions, so a leftover search_path made queries read and write against the wrong Postgres schema. No error, wrong data.
It could not have worked
A race, an ordering, one column holding two things. The shape ruled it out before the code ran.
This one bothered me. pgBouncer went in because per-request Postgres connections weren't going to hold up under load, but transaction pooling reuses the same underlying connection across client sessions. If one session sets search_path and the next inherits that connection without resetting it, queries read and write against the wrong schema. No error, no crash, just wrong data.
It got some seed data before I understood what was happening. Fixed the data, then added a CI job that runs the whole stack through Docker and specifically hammers queries through pgBouncer, because I don't want to rediscover silent data corruption by accident.