Aller au contenu

Domain Engine

À quoi sert cette page ?

Le Domain Engine regroupe les mécanismes qui portent ou coordonnent la logique métier indépendante de WordPress, de SQL, de Docker, de la CLI et des feeds marchands.

Pour une personne qui reprend le projet, l'idée importante est la suivante :

Le Domain Engine raisonne sur le métier. Il ne doit pas décider comment démarrer un conteneur, lire une requête HTTP ou écrire une ligne SQL.

Position dans CMonChoix

On peut le situer ainsi :

Données marchands
      ↓
Pipeline
      ↓
Domain Core / Domain Engine
      ↓
Décisions métier
      ↓
Projections / services d'écriture
      ↓
Frontend et autres consommateurs

Le Domain Core contient les concepts génériques fondamentaux. Le Domain Engine est une vue plus large des mécanismes métier qui utilisent ces concepts pour produire des décisions cohérentes.

Ce qu'il ne doit pas connaître

Le Domain Engine ne doit pas dépendre directement de :

  • WordPress ;
  • SQL ou d'un schéma de base concret ;
  • Docker ;
  • WP-CLI ;
  • une structure de feed marchand ;
  • un renderer frontend ;
  • un plugin historique pris comme source de vérité.

Ces dépendances rendraient la logique métier difficile à tester et impossible à réutiliser hors de son environnement technique actuel.

Comment raisonner en cas de bug

Si une donnée affichée est fausse, ne conclue pas immédiatement que le Domain Engine est responsable.

Commence par demander :

  1. la donnée source était-elle correcte ?
  2. le Pipeline l'a-t-il correctement normalisée ?
  3. le moteur métier a-t-il pris une mauvaise décision ?
  4. la projection a-t-elle été construite à partir du bon résultat ?
  5. le frontend affiche-t-il correctement la projection ?

Cette méthode permet de corriger la couche responsable plutôt que de masquer le symptôme.

À lire ensuite