Only the latest minor release receives security patches. Older versions will not be patched; please upgrade.
| Version | Supported |
|---|---|
main (development) |
✅ |
| Latest tagged release | ✅ |
| Older releases | ❌ |
Please do not file a public GitHub issue for security problems.
Send a private report to the maintainers via GitHub Security Advisories for this repository. Include:
- A clear description of the issue and its impact.
- Steps to reproduce, or a proof-of-concept if you have one.
- The affected component (backend router, frontend route, deployment configuration, etc.) and version.
- Any known mitigations.
We will acknowledge receipt within 3 business days and aim to ship a fix or mitigation within 30 days for high-severity issues. We coordinate disclosure timing with the reporter.
- Authentication / authorization bypasses
- Server-side request forgery in the AI / LLM adapters
- Path traversal in file storage
- Cross-site scripting (XSS) in the Next.js app
- SQL injection or unsafe SQLModel usage
- Sensitive data exposure (logs, error pages, response bodies)
- Insecure defaults that ship out of the box
- The fact that the platform has no built-in authentication — that is a known and documented limitation. Add your own auth layer (reverse proxy, OIDC, …) before exposing the API publicly.
- The per-process rate limiter not being safe for multi-replica deployments — also documented. For multi-replica, swap the storage to Redis.
- Bugs in the LLM copilot's free-text responses. The copilot is a research aid; treat its output as untrusted user-generated text.
See the Hardening checklist in the README for the full list. Highlights:
- Security headers on every response (CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy)
- Request size limit (default 2 GiB, configurable, returns 413)
- Per-client rate limit (returns 429 with
Retry-After) - CORS validator rejects
*in production - Production startup validator fails fast on missing API keys
- Non-root container user, tini PID-1, gunicorn + uvicorn workers
/docsand OpenAPI disabled whenENVIRONMENT=production- JSON access logs (no PHI by default — see disclaimer below)
This project is not a medical device and is not designed to handle Protected Health Information (PHI). It is the operator's responsibility to:
- Run the platform only on networks they control and trust
- Comply with local regulations (HIPAA, GDPR, etc.) when handling any data that may contain PHI
- Remove or anonymize data before sharing bug reports — never paste a request body, URL, or log line containing patient data into a public issue