Manejo de errores
- Dominant language
- Shell
- Stars
- 1
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Qué es esta tarea
Implementar el manejo de los tres errores principales del cliente LLM: timeouts, rate limits y respuestas vacías o malformadas.
## Qué se debe hacer
- **Timeout**: si la respuesta tarda más de 30 segundos, abortar la petición
- **Rate limit**: detectar respuesta HTTP 429, esperar el tiempo indicado en `Retry-After` o aplicar backoff
- **Respuesta vacía/malformada**: si el body no contiene el campo esperado (`choices[0].message.content`), tratar como error recuperable
- En todos los casos, registrar el error en log con detalles suficientes para diagnosticar
## Por qué importa
El agente corre 24/7 sin supervisión (sección 4 del documento de proyecto). Una petición que se queda colgada, un rate limit no manejado o un JSON inesperado no pueden crashear el proceso. El manejo de errores es lo que separa un script de prueba de un servicio de producción.
## Criterio de avance
El cliente sobrevive a un timeout (no se queda colgado), a un rate limit (espera y reintenta), y a una respuesta vacía (registra y pasa al fallback). Probado con mocks o provocando cada escenario.
Contributor guide
Assessment
This issue has not been assessed yet.