Les APIs changent. Les consommateurs cassent. Les contrats dérivent. diffray maintient l'ordre dans votre système distribué en détectant les breaking changes au niveau PR.
Plus de services, plus de façons de casser
Changez une réponse API dans un service, cassez 5 consommateurs. Personne ne savait qu'ils dépendaient de ce champ.
Les services contournent les APIs et accèdent directement aux bases de données des autres. 'C'était plus rapide' devient dette technique.
La documentation API dit une chose. Le code fait autre chose. Les consommateurs dépendent de comportements non documentés.
Gestion d'erreurs manquante, pas de circuit breakers, tempêtes de retry. Un service en panne, tous en panne.
L'IA applique vos décisions d'architecture sur chaque PR
L'IA analyse les specs OpenAPI, schémas GraphQL et protobufs. Détecte suppressions, changements de type et modifications cassantes.
"Supprimer 'email' de UserResponse cassera OrderService et NotificationService."
Définissez quels services peuvent communiquer et comment. Signalez l'accès direct à la base et le couplage inapproprié.
"PaymentService ne devrait pas importer depuis les internes de UserService. Utilisez l'API publique."
Assurez une gestion d'erreurs appropriée, timeouts, retries et circuit breakers dans les appels inter-services.
"Cet appel HTTP n'a pas de timeout. Ajoutez un timeout pour éviter les défaillances en cascade."
Appliquez votre stratégie de versionnage API. Assurez que les changements respectent les règles de rétrocompatibilité.
"Breaking change détecté. Incrémentez la version API ou rendez ce changement additif."
Sachez avant de livrer