API
Trois NestJS indépendants. Les conventions sont issues de
inspire-v2/CONVENTIONS.mdet s'appliquent aux trois.
Chantier : Versioning et structure des routes
Statut : stable Périmètre : transverse
- A1Connect : tous les endpoints sous
/v1/ - Dema1n et Inspire-v2 : pas de versioning URI explicite constaté
- Les routes admin ont leurs propres contrôleurs (
AdminXxxController) et services (AdminXxxService) mais partagent les repositories
Chantier : RabbitMQ inter-plateformes
Statut : stable Périmètre : transverse
- Chaque plateforme a son propre exchange
direct - A1Connect
eventsapp = consommateur uniquement (écouteuser___logged,user___deleted) - Les plateformes publient des events, A1Connect est le seul à orchestrer les suppressions
- Inspire-v2 a une deuxième queue
InspireV2_mvlspour les events MVLS spécifiques
Chantier : Guards et authentification
Statut : stable Périmètre : transverse
JwtAuthGuard= vérification de token,UserRolesGuard+@Roles()= RBAC- Dans inspire-v2, les guards sont dans
src/core/auth/guards/ - Les routes sans guard sont explicitement publiques (décorateur
@Public()ou absence volontaire)
Chantier : Modules inspire-v2 — core vs general
Statut : stable Périmètre : inspire-v2
core/: modules métier lourds (users, articles, elasticsearch, medias, chats, notifications, mvls, etudes, listes, message-queuing, multicontact...)general/: utilitaires légers (auth-jwt, cms, sitemap)- Cette distinction n'est pas une règle stricte, c'est un héritage du template "Glutamat"