85da309740
- Add health check endpoint at GET /api/diagnostic/health - Auth-protected via @require_login (no-op when AUTH_ENABLED=False) - Checks database (SELECT 1) and Redis (ping) with 2s timeouts - Returns healthy/degraded/unhealthy with per-check detail - Returns HTTP 503 when database is down, 200 otherwise - 7 new unit tests covering all status scenarios - Update docs/API.md with Grafana/monitoring integration notes - Fixes test_cors_headers_absent_when_disabled CI timeout Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>