Saltar al contenido principal

Resumen

Una Compuerta (Gate) es un punto de control de verificación en un nodo de Pipeline. Le dice a Dexter que realice un conjunto específico de comprobaciones, luego se detenga y te pida tu visto bueno antes de que se ejecute cualquier nodo aguas abajo. Las Compuertas son la forma en que la plataforma hace auditable la derivación: cada valor que sale de un Pipeline ha pasado por uno o más puntos de control confirmados por el usuario.

Dónde viven las Compuertas

Las Compuertas se definen en la Plantilla (Template) del Pipeline, en nodos individuales:
  • Nodos Fuente (Source) — las Compuertas son obligatorias. Dexter coloca una Compuerta en cada nodo Fuente automáticamente. La Compuerta verifica la forma de la entrada: columnas requeridas presentes, valores en rangos válidos, códigos de receta que coinciden con el conjunto conocido, etc.
  • Nodos de transformación — las Compuertas son opcionales, recomendadas cuando la salida de la transformación impulse un valor aguas abajo de alto impacto. Una “verificación de cordura sobre tiempos de ciclo promedio calculados” es una Compuerta de transformación típica.
  • Nodos de salida — las Compuertas no están permitidas. Para cuando un valor llega a una salida, la palanca correctiva está siempre aguas arriba.
Un nodo puede llevar como máximo una Compuerta: la verificación es un único punto de control por nodo, no una pila de ellos. Cada Compuerta tiene los siguientes campos:
  • gate_id (requerido) — identificador estable
  • name (requerido) — etiqueta corta que los usuarios ven en el aviso de chat y en el panel Run Information
  • description (opcional) — contexto mostrado junto al aviso; útil para explicar por qué existe esta comprobación y qué buscar
  • instructions (opcional) — directiva orientada al agente que lista las comprobaciones específicas que Dexter debe realizar. Mejor escrita como una lista con viñetas en Markdown para que las comprobaciones se rendericen con claridad. Este campo lo consume Dexter en tiempo de ejecución para decidir qué inspeccionar, no se muestra al usuario textualmente; description es el campo orientado al usuario

Estados de la Compuerta

El estado de la Compuerta vive en la ejecución, no en la Plantilla. Cada registro de Compuerta en una ejecución lleva un estado:
  • pending — Dexter ha recopilado evidencia y está esperando tu decisión
  • confirmed — Aprobaste. Los nodos aguas abajo se desbloquean
  • rejected — Señalaste un problema. Los nodos aguas abajo permanecen bloqueados hasta que la Compuerta se reabra o se corrija lo de aguas arriba
El estado puede cambiar. Una Compuerta rechazada puede volver a confirmarse si cambias de opinión, y una Compuerta confirmada puede reabrirse.
Reabrir una Compuerta confirmada no revierte los resultados que ya aterrizaron aguas abajo. El registro de ejecución es solo de adición: los valores producidos antes de la reapertura permanecen en la ejecución. El nuevo trabajo aguas abajo se bloquea hasta que la Compuerta se confirme de nuevo.

Cómo confirmar una Compuerta

Cuando una ejecución llega a una Compuerta, Dexter plantea una pregunta estructurada en el panel de chat. El mensaje incluye:
  • La evidencia que Dexter recopiló — recuentos de columnas, muestras de filas, rangos de valores, las comprobaciones específicas que las instrucciones de la Compuerta requerían
  • Un nivel de confianzahigh / medium / low — que refleja la lectura de Dexter sobre si la entrada pasó limpiamente
  • Botones Confirm y Reject
Un aviso de Compuerta típico se ve así: “Source: weekly_throughput.csv. Required columns [‘station’, ‘cycle_time’, ‘shift’] all present. 487 rows, 0 nulls in cycle_time. Cycle times range 12s–94s — within expected bounds. Confidence: high.” Haz clic en Confirm para continuar, o en Reject para bloquear el trabajo aguas abajo. Por defecto Dexter solicita una Compuerta a la vez. Para Compuertas trivialmente limpias, Dexter puede agrupar un número pequeño en un solo aviso, solo cuando cada una sea independientemente de bajo riesgo y la evidencia sea directa. Múltiples Compuertas pueden quedar pendientes al mismo tiempo cuando ramas independientes del DAG llegan a sus puntos de control simultáneamente: cada una sigue necesitando su propia confirmación.

Cómo aparecen las Compuertas en el lienzo

Los nodos Fuente y de transformación llevan un pequeño icono de escudo cuando tienen una Compuerta configurada. En una ejecución, una Compuerta confirmada se marca con una palomita junto al escudo. El panel lateral Run Information resume el progreso general con una etiqueta como Gates resolved: 2 / 3.

Cuando una derivación está mal

Si una derivación sale mal, la corrección correcta depende de lo que pasó:
  1. La Compuerta se confirmó por error (o la inquietud que causó el rechazo se resolvió sin cambios) — vuelve a confirmar o reabre la Compuerta en la misma ejecución. Los resultados existentes permanecen; el ciclo de vida de la Compuerta refleja tu decisión final.
  2. Los datos fuente estaban mal — corrige la entrada, luego vuelve a ejecutar el Pipeline con la fuente corregida. La nueva ejecución produce resultados nuevos; las ejecuciones antiguas se preservan para comparación.
  3. La lógica del Pipeline estaba mal — edita la Plantilla (código de transformación, instrucciones, definición de Compuerta), luego inicia una nueva ejecución.
No hay una “anulación manual” en línea sobre valores de resultado individuales. Cada corrección fluye a través de la confirmación de Compuerta o de una nueva ejecución: el rastro de auditoría se mantiene intacto por diseño. Si te encuentras queriendo “solo arreglar este número”, es señal de que la Compuerta o la transformación aguas arriba necesita ajustarse.