Aller au contenu

Read Services

Statut

Document de design cible.

Ce document décrit l'architecture attendue des Read Services dans CMonChoix Platform V2.

Il ne décrit pas nécessairement l'état actuel du code.

Les écarts avec l'implémentation actuelle sont suivis dans migration/.


Mission

Les Read Services exposent des vues de lecture de la Platform.

Ils permettent d'inspecter, auditer, prévisualiser, comparer et diagnostiquer les données sans modifier l'état du système.


Pourquoi ce composant existe

La Platform doit pouvoir être observée sans risque.

Les Read Services existent pour séparer clairement :

  • la lecture
  • l'audit
  • la simulation
  • le diagnostic
  • la prévisualisation

des écritures, migrations, rebuilds et synchronisations.


Responsabilités

Les Read Services sont responsables de :

  • previews
  • audits
  • rapports
  • diagnostics
  • dumps
  • simulations
  • comparaisons
  • explications de décision
  • états de santé métier
  • visualisation de données préparées

Ce qui leur appartient

Appartiennent aux Read Services :

  • Identity Preview
  • Module Loader Preview
  • Vertical Registry Preview
  • Promotion Preview
  • Identity Report
  • Candidate Health Report
  • Identity Health Report
  • Conflict Audit
  • Simulation
  • Dump contrôlé
  • Diagnostics métier

Ce qui leur est interdit

Les Read Services ne doivent jamais :

  • écrire en base
  • modifier une projection
  • modifier une identité
  • lancer une sync
  • lancer un rebuild
  • corriger une donnée
  • appliquer un override
  • modifier une décision de gouvernance
  • déclencher un effet de bord runtime

Dépendances autorisées

Les Read Services peuvent dépendre de :

  • contracts/
  • domain-core/
  • vertical-modules/
  • repositories de lecture
  • infrastructure de lecture contrôlée
  • données déjà persistées

Dépendances interdites

Les Read Services ne doivent pas dépendre de :

  • Write Services
  • queue runtime
  • batch persister
  • endpoints HTTP de mutation
  • formulaires admin de sauvegarde
  • logique frontend de rendu
  • commandes CLI de modification
  • SQL d'écriture

Entrées

Un Read Service peut recevoir :

  • identifiant produit
  • vertical_id
  • source_feed
  • run_id
  • filtres d'audit
  • critères de simulation
  • contexte de lecture
  • paramètres de diagnostic

Sorties

Un Read Service peut produire :

  • rapport
  • tableau de résultats
  • preview
  • dump
  • diagnostic
  • explication
  • comparaison
  • état de santé
  • métriques de lecture

Contrats utilisés

Les Read Services peuvent utiliser :

  • Identity Resolver
  • Projection Builder
  • Quality Scorer
  • Registry
  • Conflict Policy
  • Vertical Descriptor
  • Module Contract

Ils ne doivent pas modifier les contrats ni les contourner.


Composants internes

Organisation cible :

read-services/

previews/
  identity-preview
  module-loader-preview
  vertical-registry-preview
  promotion-preview

audit/
  identity-report
  identity-conflicts
  identity-explanation
  vertical-audits

health/
  candidate-health-report
  identity-health-report
  health-status

simulations/
  identity-simulation
  vertical-comparisons

dumps/
  identity-dump
  projection-dump