Las APIs cambian. Los consumidores se rompen. Los contratos se desvían. diffray mantiene el orden en tu sistema distribuido, detectando breaking changes en la etapa de PR.
Más servicios — más formas de romper
Cambiaste la respuesta de una API en un servicio — rompiste 5 consumidores. Nadie sabía que dependían de ese campo.
Los servicios evitan la API y acceden directamente a las bases de datos de otros. 'Era más rápido así' se convierte en deuda técnica.
La documentación de la API dice una cosa. El código hace otra. Los consumidores dependen de comportamiento no documentado.
Sin manejo de errores, sin circuit breakers, tormentas de reintentos. Un servicio cae — todos caen.
La IA aplica tus decisiones arquitectónicas en cada PR
La IA analiza specs OpenAPI, esquemas GraphQL y protobufs. Detecta eliminaciones, cambios de tipo y modificaciones breaking.
"Eliminar 'email' de UserResponse romperá OrderService y NotificationService."
Define qué servicios pueden comunicarse y cómo. Marca el acceso directo a BD y acoplamientos inapropiados.
"PaymentService no debe importar de las interioridades de UserService. Usa la API pública."
Asegura el manejo correcto de errores, timeouts, reintentos y circuit breakers en llamadas entre servicios.
"Esta llamada HTTP no tiene timeout. Agrega un timeout para prevenir fallos en cascada."
Aplica tu estrategia de versionado de API. Asegura que los cambios respeten las reglas de compatibilidad hacia atrás.
"Detectado breaking change. Incrementa la versión de API o haz el cambio aditivo."
Saber antes del release