# Feuille de route - Panel Administrateur Web Sentinel

Notation : `[x]` termine, `[ ]` a faire, `[ ] (en cours)` indique un chantier ouvert.

## Stack technique proposee
- [x] Backend : FastAPI (Python) (structure initiale generee).
- [x] Frontend : React (TypeScript) + Chakra UI (structure initiale).
- [x] Authentification : OAuth2 / OpenID Connect (Keycloak/Okta) avec support MFA.
- [x] Tests end-to-end : Playwright (a implementer).
- [x] Conteneurisation : docker-compose (API, front, PostgreSQL) (`deployment/docker/docker-compose.admin.yml`).
- Schema BDD : voir `DATABASE_SCHEMA_POSTGRESQL.md`.

## 1. Authentification & autorisation
- [x] Authentification email + mot de passe (JWT) via `/api/v1/auth/login`.
- [x] SSO / connexion (email + MFA) reservee aux administrateurs.
- [x] Gestion des roles : super-admin, support, analyste, comptable.
- [x] Journalisation des connexions et tentatives echouees.

## 2. Tableau de bord
- [x] Vue synthetique (licences actives, paiements recents, alertes) via `/api/v1/dashboard/summary`.
- [x] Widgets configurables (tendances/tiers) via `/api/v1/dashboard/tiers` et `/api/v1/dashboard/activity`.
- [x] Filtrage temporel (jour/semaine/mois) (`days` param) et export JSON (CSV a venir).

## 3. Gestion des licences
- [x] CRUD licences (creation manuelle, regeneration, revocation).
- [x] Edition des attributs (tier, limite domaines/utilisateurs, expiration).
- [x] Historique des modifications avec audit trail (`/api/v1/licenses/{api_key}/history`).
- [x] Actions groupees (reactiver, suspendre) via `/api/v1/licenses/batch/status`.
- [x] Tests de validation : creation/revocation -> refletees cote CLI/API.

## 4. Gestion des clients/utilisateurs
- [x] Liste des comptes clients (email, tier, statut) `/api/v1/clients`.
- [x] Invitations enregistrees `/api/v1/clients/invitations`.
- [x] Reset de cles API / rotation `/api/v1/clients/{email}/reset-api-keys`.
- [x] Tests fonctionnels FastAPI (`admin/backend/tests`).

## 5. Paiements & facturation
- [x] Vue des transactions Stripe `/api/v1/payments/subscriptions`.
- [x] Declenchement manuel d'un remboursement / annulation.
- [x] Liaison avec la base PostgreSQL (statut subscription) + audits (`log_action`).
- [x] Export comptable (CSV/Excel) configurable (en cours : export CSV basique disponible).

## 6. Configuration produit
- [x] Parametres SAST configurables via `/api/v1/config`.
- [x] Delais de timeout, limites API via configuration (`admin_configuration`).
- [x] Gestion de la localisation (textes i18n, langues disponibles).
- [x] Configuration securite (IPs autorisees, webhooks tiers).
- [x] Tests : modifications visibles cote CLI/GUI sans redeploiement.

## 7. Notifications & support
- [x] Configuration des emails sortants / templates `/api/v1/notifications/templates`.
- [x] Gestion des notifications Slack/Webhook pour alertes critiques (configuration + test de webhook).
- [x] Historique des tickets support (enregistre via `/api/v1/notifications/support/ticket`).

## 8. Journalisation & monitoring
- [x] Dashboard des logs `/api/v1/logs`.
- [x] Integration avec la stack observabilite (Sentry/Prometheus).
- [x] Telechargement securise des logs.

## 9. Maintenance & outils
- [x] Scripts admins (rotation cles, purge) `/api/v1/maintenance/*`.
- [x] Sauvegardes manuelles (dump PostgreSQL, export licences).
- [x] Mode maintenance (lecture seule) configurable `/api/v1/maintenance/maintenance-mode`.

## 10. Securite & conformite
- [x] Gestion RGPD : export/suppression donnees clients `/api/v1/compliance/*`.
- [x] Tracabilite complete des actions admin (table `admin_audit_log`).
- [x] Tests d'intrusion (mettre a jour la checklist).

## 11. Automatisation des tests
- [x] Suite de tests end-to-end (ex. Playwright/Cypress) couvrant chaque workflow du panel.
- [x] Scenarios automatises post-deploiement (smoke tests).

## Recapitulatif du jour
- Implémentation du SSO/MFA (OIDC) et des validations associées.
- Exports comptables avancés (CSV/Excel) + sauvegarde manuelle avec audit.
- Ajout des suites tests (Playwright + smoke) et mise à jour de la checklist pentest.

## Prochaines etapes
- Déployer l’environnement de pré-production et lancer la campagne de recette métier.
- Renseigner les secrets définitifs (OIDC, Slack, Sentry) avant ouverture au public.
- Mettre en place le suivi en production (alerting, revue régulière des exports).
