snipe/app/db
pyr0ball 59f728cba0 fix: make ALTER TABLE migrations idempotent with IF NOT EXISTS
SQLite's executescript() auto-commits each DDL statement, so a partial
migration failure leaves columns in the DB without marking the migration
done. On the next startup the runner retries and hits duplicate column errors.

Use ADD COLUMN IF NOT EXISTS (SQLite 3.35+, shipped in Python 3.11+)
so migrations 004 and 005 are safe to re-run in any partial state.
2026-04-05 22:18:25 -07:00
..
migrations fix: make ALTER TABLE migrations idempotent with IF NOT EXISTS 2026-04-05 22:18:25 -07:00
__init__.py feat: add data models, migrations, and store 2026-03-25 13:08:55 -07:00
models.py feat: scammer blocklist, search/listing UI overhaul, tier refactor 2026-04-03 19:08:54 -07:00
store.py fix(tasks): address code review — cloud DB path, migration number, connection handling, enqueue site 2026-03-31 17:00:01 -07:00