# SuperNounou – SSS-001  
## Spécification technique & opérationnelle unifiée  
_Version 0.3 – 27 janvier 2026_

---

## 1. Objet  
Centraliser tous les aspects **techniques et opérationnels** de la plateforme SuperNounou :  
- Sauvegarde & Plan de Reprise d’Activité (PRA)  
- Spécifications des API & intégrations  
- Directives de déploiement, d’observabilité, de CI/CD

## 2. Portée  
Instances de production, pré-production et recette (Frontend, Backend, PostgreSQL, stockage objets), scripts d’installation, pipelines CI/CD, journaux et métriques.

## 3. Références  
- CDC SuperNounou V1.1  
- ISO 27001 / ISO 22301 bonnes pratiques  
- Politique sécurité DSI Enedis #SEC-POL-2024  
- RGPD (2016/679)

---

# A – Sauvegarde & Plan de Reprise d’Activité

### A.1 Architecture de sauvegarde  
Schéma bloc, chiffrement AES-256 (KMS), réplication hors-site « Object Storage B ».

### A.2 Stratégie de sauvegarde  

| Type              | Fréquence   | Rétention | Support            |
|-------------------|-------------|-----------|--------------------|
| Incrémentale      | Quotidienne | 30 j      | Object Storage A   |
| Complète          | Hebdomadaire| 6 mois    | Object Storage B   |
| Export logique DB | Mensuelle   | 5 ans     | Stockage Glacier   |

### A.3 PRA  
RPO 24 h / RTO 4 h – scénarios : panne VM, corruption DB, sinistre DC – procédure détaillée + escalade.

### A.4 Tests de restauration  
Intégrale semestrielle, partielle trimestrielle – rapport d’audit et actions correctives.

### A.5 Monitoring & alertes  
Endpoint Prometheus `/metrics`, tableau Grafana « Backup status », alerte > 26 h sans backup.

### A.6 Rôles  
DevOps Lead (implémentation), DBA (tests restore), RSSI (audit).

---

# B – API & Intégrations

### B.1 Conventions  
OpenAPI 3 livré (`openapi.yaml`), version URL `/api/v1`, ISO 8601 dates.

### B.2 Sécurité API  
JWT Bearer (ou OAuth 2), TLS 1.3, rate-limit 100 req/min/IP, signature HMAC pour webhooks.

### B.3 Exemples  
Collection Postman, scripts cURL, guide « Appeler l’API ».

### B.4 Intégrations futures  
SSO LDAP/SAML, webhook `contract.validated`, export statistiques CSV.

### B.5 Contrat de gestion des comptes d'administration
- Création d'un administrateur avec un contrat minimal stable : `nom`, `prenom`, `email`, `password`, `telephone`.
- Le rôle n'est jamais fourni par le frontend pour ce flux ; le backend impose `ADMINISTRATEUR`.
- Les champs hors périmètre (adresse complète, photo, métadonnées métier non nécessaires) ne sont pas requis.
- Les protections d'autorisation restent actives : un `SUPER_ADMIN` n'est pas supprimable et son identité (`nom`, `prenom`) est non modifiable.
- Côté interface d'administration, les actions d'édition sont conditionnées aux droits ; les entrées non éditables restent consultables en lecture seule.

---

# C – Déploiement, CI/CD et Observabilité  *(nouveau)*

### C.1 Déploiement communal (on-premise)  
- **Objectif** : installation complète sur un serveur Linux ou VM en moins d’1 h.  
- **Livrable** : solution de packaging **au choix** (Docker Compose, image VM, paquet .deb/.rpm).  
- **Script update / rollback** : `update.sh` ou équivalent (backup ➜ pull ➜ migrate ➜ vérif ; rollback ≤ 5 min).  
- **Config** : fichier `.env.sample` décrivant toutes les variables.

### C.2 Environnements  
- Developpement local (Docker Compose).  
- Recette & Production (serveur communal).  
- Les étudiants doivent décrire la procédure de bascule Recette → Prod.

### C.3 Pipeline CI/CD  
- Pipeline automatisé (tests unitaires + build image + scan CVE) déclenché à chaque merge.  
- L’école fournit son propre dépôt Git/runner.  
- Artifacts : images taguées, notes de version (`CHANGELOG.md`).

### C.4 Observabilité & logs  
- Journaux applicatifs JSON (timestamp UTC, level, traceId).  
- Rotation/retention : 7 jours sur disque, 30 jours sur archive compressée.  
- Export métriques Prometheus (`/metrics`) : latence API, nombre de sessions, files d’attente hors-ligne.  
- Tableaux Grafana d’exemple inclus (`grafana_dashboard.json`).

### C.5 SLA et performances (indicatifs)  
- Disponibilité mensuelle cible : **≥ 98 %**.  
- Temps de réponse P95 des opérations courantes : **< 500 ms**.  
- Capacité test : **≈ 50 sessions simultanées** sans dégradation (> 1 s).

---

# D – Glossaire  
AES-256, JWT, KMS, OpenAPI, RPO, RTO, rate-limit, HMAC, Compose, CI/CD…

---

# E – Historique des versions  

| Version | Date       | Auteur           | Commentaire                     |
|---------|------------|------------------|---------------------------------|
| 0.1-draft | 2025-04-24 | Équipe projet    | Création du SSS unifié          |
| 0.2       | 2025-04-24 | ChatGPT & Julien | Ajout déploiement / CI/CD / logs |
| 0.3       | 2026-01-27 | Équipe projet    | Contrat admin harmonisé et règles d'autorisation |
