fix(plantillas): "Leer con IA" fallaba con la config de IA que ya está en producción
Escribí una segunda implementación de "llamar al proveedor" en vez de usar la que ya existe (callAI, la del bot de Telegram). Esa copia no hablaba Anthropic —se lo mandaba todo al endpoint de OpenAI— y, si la config tenía la URL base vacía (lo normal: la vista dice que es opcional), armaba una URL relativa que ni siquiera es una petición válida. Cualquiera de las dos cosas terminaba en el 502. Ahora usa callAI, que despacha por proveedor y completa la URL base. El error del proveedor queda en el log del servidor y el mensaje llega entero a la vista; si la respuesta no trae mensaje, la vista muestra el status para distinguir un fallo de la app de uno del proxy. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
c4b0305112
commit
ac47769c27
@@ -2,6 +2,7 @@ package controllers
|
||||
|
||||
import (
|
||||
"io"
|
||||
"log"
|
||||
"math"
|
||||
"strconv"
|
||||
"text/template"
|
||||
@@ -135,7 +136,10 @@ func ImportarPlantillaDocumento(c *fiber.Ctx) error {
|
||||
tipo := c.FormValue("tipo", "cotizacion")
|
||||
html, err := services.ConvertirEnPlantilla(tipo, texto)
|
||||
if err != nil {
|
||||
return c.Status(502).JSON(fiber.Map{"error": err.Error()})
|
||||
// Al log también: el mensaje del proveedor es lo único que dice por qué
|
||||
// falló, y desde el navegador se ve recortado.
|
||||
log.Printf("[PLANTILLAS] importar (%s, %s): %v", tipo, archivo.Filename, err)
|
||||
return c.Status(422).JSON(fiber.Map{"error": err.Error()})
|
||||
}
|
||||
// Si la IA devolvió algo que no compila, es mejor decirlo acá que al guardar.
|
||||
if _, err := template.New("validate").Parse(html); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user