Qué protege
- VERICTO-001 y 042: DELETE y UPDATE sin WHERE en una tarea de mantenimiento.
- VERICTO-010 y 011: DROP TABLE y TRUNCATE fuera de una migración.
- VERICTO-040 y 084: INSERT INTO … SELECT sin filtro y CREATE TABLE AS SELECT.
- VERICTO-061: INSERT por lotes de más de 10.000 filas, que se marca.
- VERICTO-091 a 097 para Snowflake, en el check de CI con el dialecto Snowflake.
Latencia y disponibilidad
En CI, el check corre fuera del runtime y no afecta a la ejecución del pipeline. La CLI envía el SQL en lotes de hasta 500 sentencias, y cada statement cuenta como una validación.
En Airflow con el proxy, cada sentencia suma el salto al proxy y su evaluación en proceso.
Para el parsing y la evaluación de reglas, el objetivo de diseño es p99 < 2 ms. Es un objetivo, no una medición: el benchmark de latencia del proxy todavía no está publicado.
Cómo implementarlo
- dbt: instala la CLI en el job de CI (instalación) y guarda una API key con el scope
ci_dryrun:executecomo secreto. - Compila el proyecto (
dbt compileescribe el SQL entarget/compiled) y pásalo porvericto checkcon el dialecto de tu warehouse: PostgreSQL, MySQL, Oracle, SQL Server, Snowflake o SQLite. - Despliega (
dbt run) solo si el check pasa: el código de salida 1 falla el job. - Airflow: despliega el proxy junto a los workers o como servicio y cambia el host y el puerto de la conexión de Airflow (Postgres o MySQL) al proxy. Los DAGs no cambian.
- Da al pipeline su propio usuario de base de datos, para ver su tráfico por separado y, en Team y Enterprise, darle su propia allowlist.
Próximamente: vericto-dbt check, que leerá el proyecto dbt directamente, y para Airflow un operador y una cluster policy que evaluarán cada tarea SQL a través de la API de runtime, también en dialectos sin proxy.
Cuándo no usar esta opción
- Transformaciones que no son SQL (Spark, pandas): Vericto evalúa sentencias SQL, nada más.
- Materializar tablas por el proxy. Si el pipeline crea tablas con CREATE TABLE AS SELECT a través del proxy, VERICTO-084 las bloquea por defecto: desactívala o cambia su severidad en el workspace de ese pipeline, y simula el cambio antes.
- Tareas de Airflow sobre Snowflake por el proxy. Snowflake no tiene proxy: hasta que lleguen el operador y la cluster policy (próximamente), llama a la API de runtime desde la tarea. Ver data warehouse.
Disponibilidad por plan
| Función | Free | Builder | Team | Enterprise |
|---|---|---|---|---|
| CLI y GitHub Action | Sí | Sí | Sí | Sí |
| Validaciones de CLI y MCP | 1K al mes | 10K al mes | Ilimitadas | Ilimitadas |
| Proxy TCP (PostgreSQL y MySQL) | Sí | Sí | Sí | Sí |
| Queries al mes (proxy y API de runtime) | 500K | 5M | 50M | Ilimitadas |
| Simulador de reglas | — | Hasta 30 días | Hasta 90 días | Según contrato (hasta 180 días) |
| vericto-dbt, operador y cluster policy de Airflow | Próximamente | |||
Precios y todos los límites en Precios.