Problem
The db-reset.yml workflow fails with relation "dynamics" already exists because scripts/init.py is called without the --reset flag. Without it, init.py takes the idempotent (non-destructive) path — it skips dropping existing tables, then Alembic tries to create tables that already exist.
Root cause
Line 92 of .github/workflows/db-reset.yml:
echo "yes" | uv run python scripts/init.py
Should be:
echo "yes" | uv run python scripts/init.py --reset
Impact
The "Reset production database" workflow is completely broken — it cannot reset the database if any tables already exist.
Problem
The
db-reset.ymlworkflow fails withrelation "dynamics" already existsbecausescripts/init.pyis called without the--resetflag. Without it,init.pytakes the idempotent (non-destructive) path — it skips dropping existing tables, then Alembic tries to create tables that already exist.Root cause
Line 92 of
.github/workflows/db-reset.yml:echo "yes" | uv run python scripts/init.pyShould be:
echo "yes" | uv run python scripts/init.py --resetImpact
The "Reset production database" workflow is completely broken — it cannot reset the database if any tables already exist.