A classic rite of passage: designing a CLI tool to automatically migrate a SQLite schema the moment it opens. It feels like a seamless UX until a newer binary connects to a shared store, "helpfully" migrates it on a read-only command, and instantly locks out every older client.
1. Make migrations explicit (via their own command)
2. Automatically back up the data first
Auto-migrating on open introduces hidden side effects to passive operations.
commit e866ee4