Agentes LLM: una cola de evidencia para email
Описание и применение
Внедрение очереди доказательств позволяет отделить решение LLM от фактического выполнения действия по отправке письма, обеспечивая идемпотентность, отслеживаемость и возможность безопасных повторных попыток.
Задача
Los agentes LLM que envían correos pueden dejar incertidumbre sobre si la acción se completó, ya que fallos en la herramienta, el proveedor o la red pueden ocurrir después de la decisión del modelo.
Результат
La implementación de una cola de evidencia permite distinguir entre acciones pendientes y completadas, evita duplicados por reintentos y mejora la trazabilidad y la observabilidad del flujo de correo.
Рабочий процесс
- 1. El agente recibe la instrucción y decide la acción.
- 2. Se genera una intención y una acción normalizada con un idempotency_key estable.
- 3. Se envía la acción al adaptador de email y se registra en la tabla email_steps con estado "pending".
- 4. El worker procesa la fila, incrementa attempts y llama al adaptador.
- 5. Al recibir la respuesta, se actualiza el estado a "accepted", "rejected" o "unknown" y se guarda provider_message_id.
- 6. Si el estado es "accepted", no se reintenta; si es "retryable" se programa otro intento con backoff; si es "unknown" se marca para revisión manual.
Доказательства
Un agente LLM que puede leer una bandeja y enviar un correo parece un flujo sencillo: recibe una instrucción, llama una herramienta y responde.
Si solo guardamos el texto final del agente, no podemos distinguir una acción pendiente de una acción ya aplicada.
La solución que estoy usando como referencia es una cola de evidencia: cada paso produce una intención, una acción y un recibo verificable.
El worker reclama una fila, incrementa attempts y llama al adaptador. Solo marca accepted cuando recibe un resultado que pueda guardar.
Los estados pending, retryable, accepted, rejected y unknown son más útiles que un booleano: muestran el camino que aún necesita resolución.
- Дата записи: 2026-11-01T16:14:04.110Z