Versiones y publicación
Un protocolo tiene versiones, con un ciclo de vida:draft → in_review → active → superseded/discarded. Solo una versión está activa a la vez, y es la única que se usa con pacientes: las versiones en draft o in_review sirven únicamente para pruebas internas en el panel. Cada llamada usa la versión que estaba activa cuando se creó; al activar una nueva versión, se aplica a las llamadas posteriores de todos los pacientes, y las llamadas ya programadas que aún no han empezado pueden pasarse a ella en ese momento. Antes de activarse, cada versión pasa por una validación de publicación que comprueba la coherencia del flujo (destinos existentes, sin ciclos, ramas de decisión con salida garantizada, bandas de score válidas, etc.).
Una versión contiene: preguntas, frases de flujo, webhooks de flujo y nodos de decisión, más catálogos a nivel de versión (variables personalizadas, bandas de score, reglas de alerta, guardrails, frases de sistema y configuración de programación).
El flujo como grafo de nodos

El recorrido se gobierna por el orden de los nodos y por reglas condicionales que deciden, en cada paso, qué sigue.