You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Security hardening, mobile responsiveness, and deployment improvements
- Account lockout (5 failed logins → 30min lock) with Prisma migration
- Rate limiting on auth endpoints (register, login, forgot/reset/change password)
- POST /auth/logout endpoint to invalidate refresh tokens
- Password strength validation (uppercase + lowercase + digit) on all DTOs and frontend forms
- Auth audit logging (login success/failure, password change, account deletion, logout)
- DOMPurify XSS sanitization for HTML imports, markdown rendering, and template preview
- Input length validation (@maxlength) on document titles, space names, search queries, etc.
- Mobile responsive fixes: AI panels, version history, permission dialog, notification dropdown, editor toolbar
- Table horizontal scroll for members and AI subscriptions pages
- Graceful shutdown with app.enableShutdownHooks()
- Production Nginx config (nginx/nginx.conf + proxy.conf) with API/WebSocket/static proxy
- Updated deployment docs in DEVELOPMENT.md and .env.example
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments