- CorrelationId VO pour le tracing inter-BC
- IdempotencyStore (interface + InMemory) pour garde d'idempotence
- correlationId ajouté aux contrats Published Language (retro-compatible par défaut)
- Consumers Invoicing et LegacyFulfillment idempotents avec logging
- MessengerSalesEventPublisher propage les correlationIds
- Tests unitaires idempotence + tests d'intégration consommateurs idempotents
- Extraction des DTOs publics dans contracts/sales/v1/ :
OrderPlaced, OrderConfirmed, OrderCancelled, OrderView
- NaiveSalesEventPublisher traduit les événements domaine en contrats v1
- Tests de contrat (schéma, sérialisation JSON) pour stabilité du langage publié