Écrire des règles d'architecture (arch.yaml)
Vous définissez votre architecture dans un fichier arch.yaml à la racine de votre dépôt. AppArch applique ces règles à chaque PR/MR.
Structure de base
Section intitulée « Structure de base »version: 2style: hexagonal # clean | hexagonal | layered | custom
layers: - { name: presentation, paths: ["src/ui/**", "apps/mobile/**"] } - { name: application, paths: ["src/use-cases/**"] } - { name: domain, paths: ["src/domain/**"] } - { name: infrastructure, paths: ["src/infra/**"] }
rules: - id: RULE-014 forbid: "presentation → infrastructure" - id: RULE-002 forbid: "domain → *" except: ["std", "shared/types"] - id: RULE-031 max_module_loc: 2000- layers - les noms des couches et les chemins qui appartiennent à chaque couche.
- rules - chaque règle possède un
id;forbiddéfinit une dépendance directionnelle,max_module_locdéfinit un seuil de taille.
Partir de modèles
Section intitulée « Partir de modèles »Plutôt que de tout écrire de zéro, vous pouvez choisir un modèle prêt à l’emploi : Clean Architecture, Hexagonale, En couches, DDD, Feature-Sliced Design, et bien d’autres. Dans le panneau, utilisez Règles → Partir d’un modèle pour générer un brouillon arch.yaml et l’ajouter à votre dépôt.
Gérer les faux positifs
Section intitulée « Gérer les faux positifs »Chaque règle dispose de deux mécanismes d’échappement :
except- exempte des chemins/paquets spécifiques dans la définition de la règle.ignore- fait taire des constats individuels.
Vous pouvez cliquer sur « Accepter » d’un seul geste depuis le commentaire de la PR ; ArchPilot retient le contexte de la règle lors de la prochaine revue.
Surcharge projet/espace de travail
Section intitulée « Surcharge projet/espace de travail »Vous pouvez activer ou désactiver des règles par projet ou par espace de travail dans le panneau. Une règle que vous désactivez dans le panneau n’est jamais envoyée au collecteur - elle ne produit aucun constat inutile. Détails : Activer ArchPilot.