mirror of
https://github.com/ipnet-mesh/meshcore-hub.git
synced 2026-10-30 19:52:03 +01:00
Dialect-neutral fixes that keep SQLite behaviour unchanged: - event_observer: choose INSERT construct by bind dialect so the on_conflict upsert works on both SQLite and Postgres - database: map postgresql:// -> postgresql+asyncpg:// for async sessions (was sqlite-only), via a _to_async_url helper - models: import JSON from sqlalchemy (generic) not the sqlite dialect - alembic/env: render_as_batch only for SQLite (its ALTER TABLE workaround) Full SQLite test suite green (1045 passed) and fresh db upgrade builds all tables; black/flake8/mypy clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>