Dein Compiler prüft die Syntax. Deine Tests sollten die Architektur prüfen.
Die meisten Teams dokumentieren Architektur-Regeln in Wikis. So schreibst du sie als ausführbare Tests, die den CI-Build fehlschlagen lassen, wenn dein Dependency-Graph abdriftet.