La traducción por IA falla en silencio ante errores 503 del LLM: sin lógica de reintento
Error: Cuando cualquier proveedor de LLM (Mistral, OpenAI) devuelve un 503, DiscourseAi::Translation omite silenciosamente la traducción sin reintentar.
Ejemplo de registro:
DiscourseAi::Completions::Endpoints::Mistral: estado: 503
{“type”:“unreachable_backend”,“code”:“1100”}
DiscourseAi::Translation: No se pudo traducir el tema X al ru
Causa raíz: DiscourseAi::Completions::Endpoints carece de lógica de reintento para errores transitorios del servidor. Esto no es específico de un proveedor; se observó el mismo comportamiento anteriormente con OpenAI.
Comportamiento esperado: Reintentar con retroceso exponencial ante respuestas 503/504 antes de marcar la traducción como fallida.
Solución propuesta: Agregar lógica de reintento en DiscourseAi::Completions::Endpoints para todos los proveedores de manera uniforme.
Esto afecta a cualquier instancia de Discourse que utilice traducción por IA con múltiples idiomas.