portal-bff
1. Rôle et responsabilités
Backend for frontend du portail : agrégation des lectures multi-services pour composer les écrans usagers, orchestration des parcours (compte, demandes, suivi, réclamations, support), gestion de session, parcours d'authentification headless côté serveur (Keycloak, MFA).
2. Modèle de domaine (agrégats)
3. API exposée
API REST versionnée, contrat OpenAPI généré et versionné avec le service. Authentification par jeton Keycloak (JWT RS256) validé par le service (Quarkus OIDC).
4. Événements publiés
Aucun
5. Événements consommés
Topics sigfga.<service>.<aggregate> · enveloppe CloudEvents 1.0 · publication via outbox pattern · consommateurs idempotents (déduplication par event id).
6. Dépendances synchrones
7. Flux principal
8. Backlog Jira rattaché
142 tickets du backlog Jira se rattachent à ce service, via 7 épics :
| Épic | Intitulé | Enfants |
|---|---|---|
| FSD-954 | [PORT] Gestion des utilisateurs et authentification | 18 |
| FSD-970 | [PORT] Gestion du profil utilisateur | 20 |
| FSD-991 | [PORT] Gestion des demandes de services | 20 |
| FSD-1033 | [PORT] Tableau de bord utilisateur | 20 |
| FSD-1096 | [PORT] Gestion des réclamations | 20 |
| FSD-1117 | [PORT] Assistance et support aux utilisateurs | 20 |
| FSD-1138 | [PORT] Administration du portail | 20 |
9. Implémentation
Structure hexagonale standard : domain (modèle, événements, services purs, sans dépendance framework), application (use cases, ports in/out, transactions), adapter (in/rest, in/messaging, out/persistence, out/messaging, out/client). Dépendances verrouillées par test ArchUnit. Base de données dédiée (schéma PostgreSQL propre), migrations Liquibase (changesets exclusivement en SQL formaté — ADR-0002). Code intégralement en anglais ; textes utilisateur en fichiers i18n français.