#!/usr/bin/env bash set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" cd "$ROOT_DIR" POSTGRES_USER="${POSTGRES_USER:-projectx}" POSTGRES_DB="${POSTGRES_DB:-projectx}" echo "Ensuring PostgreSQL is running..." docker compose up -d --wait postgres echo "Resetting database schema..." docker compose exec -T postgres psql -U "$POSTGRES_USER" -d "$POSTGRES_DB" -c "DROP SCHEMA public CASCADE; CREATE SCHEMA public;" docker compose exec -T postgres psql -U "$POSTGRES_USER" -d "$POSTGRES_DB" -c "CREATE SCHEMA IF NOT EXISTS drizzle;" docker compose exec -T postgres psql -U "$POSTGRES_USER" -d "$POSTGRES_DB" -c "CREATE TABLE IF NOT EXISTS drizzle.__drizzle_migrations (id serial PRIMARY KEY, hash text NOT NULL, created_at bigint);" docker compose exec -T postgres psql -U "$POSTGRES_USER" -d "$POSTGRES_DB" -c "DELETE FROM drizzle.__drizzle_migrations;" echo "Re-applying migrations..." pnpm run db:migrate echo "Re-seeding baseline data..." pnpm run db:seed echo "Cleaning generated local covers..." rm -rf local/data/covers local/data/staging/covers echo "Database reset complete."