Alembic in Practice: Structure, Revisions, and the Traps SQLite Sets

What those hex filenames mean, why migrations silently applied to the wrong database for two months, and how to widen a CHECK constraint…