🚨 Saneamiento y Manejo Global de Errores
Para mantener el código de los controladores limpio de bloquestry-catch, la aplicación utiliza un patrón de diseño centralizado mediante @ControllerAdvice.
El GlobalExceptionHandler intercepta automáticamente cualquier fallo de validación HTTP o excepción de negocio (IllegalArgumentException, IllegalStateException), y los transforma en una respuesta JSON estandarizada con soporte para idioma (EN).
📑 Contratos de Validación de Datos (DTO Records)
Para asegurar que las restricciones de negocio se cumplan desde el primer instante en que los datos ingresan a la API, el perímetro HTTP utilizarecord de Java enriquecidos con anotaciones de Jakarta Validation (@NotNull, @Positive).
Esto actúa como un escudo que previene que valores nulos, vacíos o montos financieros negativos alcancen la capa de servicios o la base de datos.