Lian Ai v2.10.5-r40
Automation Builder v2 + Interactive Messaging
- Node Registry y executors desacoplados, manteniendo los nodos legacy mediante adapter.
WorkflowValidator,ConditionEvaluator,VariableResolveryLegacyAutomationAdaptercentralizados.- Snapshot/version del workflow por ejecución para que una edición posterior no altere ejecuciones ya iniciadas.
- Persistent wait state para respuestas interactivas; ningún request HTTP queda abierto esperando al usuario.
InteractiveResponsenormalizada e idempotente, con correlación tenant/conversación/provider message/option ID.- Timeout y consumo de respuesta atómicos para resolver carreras respuesta-vs-timeout.
- Políticas de respuesta tardía: ignorar, continuar como inbound normal, iniciar flujo nuevo o Human Takeover.
- Builder con nodo Mensaje interactivo, ramas por
option_idinmutable, timeout/error y aliases textuales. - Fallback automático a lista o texto numerado cuando el canal/proveedor no soporta la interacción solicitada.
- WebChat interactivo y contrato común para Gateway/Meta/WebChat.
- Gateway companion 1.3.9 con contrato interactivo normalizado y fallback textual seguro.
- Capability de plan
automation.interactive.enabled; no se utilizan.envpor negocio como feature flag. - Historial/debugger de ejecuciones con estados y pasos.
- Simulador seguro side-effect-free: no envía WhatsApp/email, no crea citas/leads ni llama webhooks/IA.
- Undo/redo, zoom y fit-to-screen en el Builder sin estilos inline, compatible con CSP estricta.
- Operadores de condición ampliados: starts/ends with, empty/not empty, comparaciones numéricas e
in. - Plantillas editables iniciales: Encuesta NPS 1–10 y Transferencia a asesor.
- Nuevo nodo versionado
nps.record@1, con registro idempotente de puntuación y segmentación Promotor/Pasivo/Detractor. - Tabla
automation_nps_responsestenant-scoped para analítica NPS sin hardcodear ramas en el motor. - Compatibilidad con automatizaciones legacy sin migración destructiva.
- Corrección CSP acumulativa en Kommo y Automation Builder detectada durante regresión r40.
Seguridad y resiliencia
- CSRF en mutaciones y simulación.
- Tenant scope en waits, receipts, executions e interacciones.
- Unique receipt por tenant/provider/event para callbacks duplicados.
- Step limit para protección contra loops infinitos.
- Ningún secreto de proveedor se almacena dentro del JSON del workflow.
- Los mensajes outbound de Automation conservan metadata/origen para no tratarse como inbound del cliente.