fix: correct migration test required_tables, clean alembic.ini, add drift detection
- Replace incorrect required_tables list with actual 48 table names extracted
from migration a79329c23b20_initial_complete_schema.py
- Remove tables that don't exist: citations, subscription_plans, agent_executions,
analytics_events, client_brands
- Add missing tables: agent_registry, api_keys, optimization_insights, etc.
- Clean hardcoded database password from alembic.ini (env.py uses settings.DATABASE_URL)
- Add test_alembic_check_detects_drift with CI-only skipif
- Add DB-unavailable skip conditions to subprocess-based alembic tests