# Tâches — Konstitisyon Frontend ## Améliorations critiques (P1) - [x] **Rate limiting** — `lib/rate-limit.js` + `middleware.js` - Routes protégées : `/api/auth/register` (5/15min) et `/api/auth/callback/credentials` (10/5min) - Logique vérifiée : comptage, blocage 429 + Retry-After, expiration fenêtre ✓ - [x] **CORS whitelist** — restreindre `CORS_ORIGIN=true` dans l'env Directus - [x] **Sanitisation Markdown** — DOMPurify sur la sortie `marked` dans export-pdf et print-button ## Améliorations hautes (P2) - [x] **Headers CSP** — `next.config.mjs` (renommé depuis .js) avec CSP + 4 headers sécurité - [x] **Tests unitaires** — Vitest sur `lib/format.js`, `lib/version-utils.js`, `lib/rate-limit.js` - [ ] **Tests extensions Directus** — mocks VersionsService - [ ] **Refresh token explicite** — callback `jwt` dans NextAuth options - [ ] **Pipeline CI** — GitHub Actions (lint + test + build) - [ ] **Sentry** — tracking erreurs frontend + API routes ## Améliorations moyennes (P3) - [ ] ISR page d'accueil (`revalidate`) - [ ] Dockerisation frontend (`output: standalone`) - [ ] Audit accessibilité WCAG 2.1 - [ ] Responsive mobile dashboard - [ ] Lazy loading jsPDF + md-editor - [ ] Migration NextAuth v5 stable