Grace
Référence

Validation

grace_validate : checks structurels typés des talents enforceable, en live et en CI.

grace_validate vérifie que le code respecte les règles structurelles des talents enforceable activés. Source de vérité : structure/constraints.yml + conventions/<langage>.yml.

Deux familles de règles

Chaque règle porte une sévérité (blocking | warning | info) :

  • Imports externes interdits par couche (forbidden_imports) — ex. @prisma/* interdit en domain, autorisé en infrastructureseverity: blocking.
  • Dépendances inter-couches dirigées (dependency_rule) — ex. domain → infrastructure interdit (blocking), interface → domain (warning). Les couches (layers) sont lues du fichier, jamais codées en dur.

Sortie

{
  ok: boolean,        // aucune violation bloquante
  blocking: number,
  warnings: number,
  violations: Array<{
    file: string,
    layer: string,
    module: string,
    targetLayer?: string,
    rule: string,
    severity: "blocking" | "warning" | "info"
  }>
}

Sortie B — config CI

GET /web/projects/:id/validator-config génère un .dependency-cruiser.js depuis le même constraints.yml / conventions. Une seule source alimente donc le validate live (agent) et la CI. La config est aussi disponible dans le dashboard, section « Validation CI ».

C'est le cœur de la distinction Builder vs Validator : le validator-en-CI est objectivement mesurable.

On this page