Update summary.md for Phase 17

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-24 19:02:01 -05:00
parent f055b361aa
commit c3b05046b7
+2 -1
View File
@@ -12,7 +12,7 @@
> Include file-level details in the commit body when the change is non-trivial.
## Last Updated
2026-02-22 — Phase 16: Dashboard redesign (chat-first, two-column task/notes grid)
2026-02-24 — Phase 17: Connection pool hardening (pool_pre_ping, pool_recycle)
## Project Overview
Fabled Assistant is a self-hosted note-taking and task-tracking application with
@@ -680,6 +680,7 @@ When adding a new migration, follow these conventions:
- Quart serves Vue SPA from static + REST API under `/api/`; 404 handler for SPA routing
- Security headers applied in `after_request`: `X-Content-Type-Options`, `X-Frame-Options: DENY`, `Referrer-Policy`, `Content-Security-Policy`
- In-memory sliding-window rate limiter on all auth endpoints (login, register, forgot/reset password); proxy-aware client IP with `TRUST_PROXY_HEADERS`
- SQLAlchemy async engine configured with `pool_pre_ping=True` (tests connections before use, discards stale ones after Postgres restart) and `pool_recycle=1800` (recycles idle connections every 30 min to prevent TCP/firewall staleness)
- Alembic migrations: 13 migrations, all raw SQL with idempotency guards (IF NOT EXISTS, DO $$ BEGIN...EXCEPTION)
- Config from env vars + Docker secrets file support (`_read_secret`)