Changelog

Todas las actualizaciones de Vericto.

Octubre 2026

SQL no parseable por base de datos y cuerpos de triggers analizados (vericto-engine 4.1.0)

  • Nuevo Cada base de datos puede tener su propia política para SQL no parseable: Heredar del workspace (por defecto), Marcar o Bloquear, en Dashboard → Bases de datos. Llega al proxy TCP, a la Runtime API y a las verificaciones del CLI, la Validation API y MCP que indican la base de datos, y cada cambio queda en el registro de auditoría. Recomendado: Bloquear en las bases a las que acceden agentes de IA.
  • Mejora El valor por defecto sigue siendo Marcar en todos los dialectos. Una base de datos con una allowlist de agentes en enforce (VERICTO-087) o una columna sensible en block o mask (VERICTO-085) sigue bloqueando el SQL no parseable automáticamente, y el dashboard lo muestra como «Bloquear (forzado: …)».
  • Mejora vericto-engine 4.1.0 analiza el cuerpo de los triggers en SQLite: un CREATE TRIGGER … BEGIN … END cuyo cuerpo contiene un DELETE o un UPDATE sin WHERE (o cualquier otra sentencia que viole una regla) dispara ahora la regla correspondiente, por ejemplo VERICTO-001, porque esas sentencias se ejecutan en cada escritura que activa el trigger. En los demás dialectos los veredictos no cambian.
  • Nuevo Snowflake y SQLite, disponibles (vericto-eval 2.6.0, vericto-engine 4.1.0): sus dialectos y las reglas VERICTO-091 a VERICTO-101 se aplican en la Runtime API, la Validation API, la CLI y MCP. Ninguno de los dos tiene proxy TCP. Los SDK de Python y Node, próximamente. Ver SQLite y la referencia de reglas.
Octubre 2026

Simulador de reglas: un dry-run en producción antes de aplicar

  • Nuevo El simulador de reglas reproduce reglas custom nuevas o editadas, y cambios en las reglas estándar, contra el historial real de queries del workspace antes de aplicarlas, en la ventana que elijas: hasta 30 días en Builder, 90 en Team y según contrato (hasta 180) en Enterprise. Agrupa las queries por flujo y compara con tus reglas de hoy.
  • Nuevo Un reporte con veredicto (PASS, WARN, FAIL o INCONCLUSIVE): nuevos bloqueos, separando los flujos legítimos que se romperían, nuevas alertas, reglas que dejan de bloquear y muestras enmascaradas. La deriva del motor se reporta aparte y nunca se atribuye a tu cambio.
  • Nuevo Desde el dashboard (Reglas → Simulaciones, y «Simular contra producción» en el editor de reglas) y desde CI con POST /api/v1/ci/rules/simulate y una API key con el nuevo scope rules:simulate. Planes Builder, Team y Enterprise.
  • Mejora La previsualización de una regla custom descifra los eventos antes de evaluarlos, filtra por dialecto y por base de datos, enmascara la query de ejemplo y cuenta aparte los eventos que no se pueden reproducir.
Octubre 2026

Acceso de agentes: nombres según el dialecto y esquema por defecto (vericto-engine 3.8.1, en despliegue)

  • Mejora Una entrada sin esquema significa el esquema por defecto (public en Postgres, o el que configures), calificado o no en la query, y ya no la tabla de cualquier esquema. Una tabla de otro esquema necesita una entrada con ese esquema.
  • Mejora Los nombres se comparan como en tu base de datos: en Postgres User (creada con comillas) y user son dos tablas; en MySQL los nombres de tabla y de base de datos se comparan exactamente. El esquema observado muestra los nombres como los ve el tráfico.
  • Mejora Con una política, las sentencias SQL PREPARE, EXECUTE y DEALLOCATE se deniegan: la allowlist no ve la sentencia que ejecutan. Los prepared statements de los drivers y ORMs no cambian.
  • Nuevo Esquema/base de datos por defecto, por base de datos, en Acceso de agentes. En MySQL, la base de datos a la que se conecta tu aplicación: con ella, las queries `db`.`Tabla` de Prisma coinciden con entradas sin esquema. En las sesiones del proxy TCP sobre MySQL manda la base de datos de la conexión.
  • Nuevo Requiere vericto-engine 3.8.1, vericto-proxy 4.8.1 y vericto-eval 2.4.1, que se están desplegando; hasta entonces se aplican las reglas de nombres de 3.8.0.
Octubre 2026

Acceso de agentes (VERICTO-087): allowlists por identidad, aplicadas en vericto-proxy 4.8.0 / vericto-eval 2.4.0

  • Nuevo Acceso de agentes, en Bases de datos → Acceso a datos → Acceso de agentes: da a cada agente una allowlist en una base de datos, con las tablas y columnas que puede usar en solo lectura o lectura y escritura. Todo lo demás se deniega para esa identidad. La identidad es la API key que llama (API de runtime, CLI, API de validación y MCP) o el usuario de base de datos de la sesión (proxy TCP); una identidad sin política se comporta como antes. Planes Team y Enterprise.
  • Nuevo Se aplica: vericto-proxy 4.8.0 y vericto-eval 2.4.0 (vericto-engine 3.8.0) están desplegados. Una política en enforce bloquea en el proxy TCP, y la API de runtime, el CLI, la API de validación y MCP devuelven la decisión.
  • Nuevo Observar → Aplicar: en observe lo que queda fuera de la allowlist se marca y nunca se bloquea; en enforce se bloquea con VERICTO-087.
  • Nuevo Simulación: antes de guardar o aplicar, reproduce las queries de esa identidad de los últimos 7 días con el borrador y muestra cuántas habría bloqueado, con enlaces a cada evento. No envía nada a tu base de datos ni registra nada.
  • Mejora Precedencia con las columnas sensibles: una columna bloqueada o enmascarada sigue bloqueada o enmascarada aunque esté permitida.
Octubre 2026

Enmascaramiento en MySQL, VERICTO-086 publicado y proxy 4.7.1

  • Nuevo Enmascaramiento en MySQL (VERICTO-085): con una etiqueta mask, el proxy TCP (vericto-proxy 4.7.0 o posterior, vericto-engine 3.7.0) envía la query reescrita y MySQL, MariaDB o Aurora MySQL devuelven el valor ya enmascarado. La API de runtime, el CLI y MCP reciben la query enmascarada de vericto-eval 2.3.0.
  • Mejora Las máscaras usan solo funciones que existen en MySQL 5.7, 8.0, Aurora MySQL y MariaDB, y devuelven lo mismo que en Postgres.
  • Mejora SELECT *, las referencias a la fila completa y las copias a otra tabla siguen bloqueándose bajo mask: lista las columnas.
  • Fix vericto-proxy 4.7.1: el ruleset integrado, el que el proxy aplica al arrancar y sin control plane, vuelve a ser el catálogo completo de 30 reglas (faltaban VERICTO-085 y VERICTO-086).
  • Fix Seguridad: el 9 de octubre de 2026 publicamos el aviso GHSA-64jm-544q-7f5j sobre la corrección en vericto-engine 3.7.0 de la evasión de reglas en MySQL (VERICTO-086; afecta a las versiones anteriores a 3.7.0). Si usas Vericto con MySQL, actualiza a vericto-proxy 4.7.1 y vericto-eval 2.3.0.
Octubre 2026

Columnas sensibles, VERICTO-086 y nuevas versiones del proxy, el evaluador y el CLI

  • Nuevo Protección de columnas sensibles (VERICTO-085): marca columnas por base de datos con la política block, flag o mask. Con mask, el proxy TCP envía una query reescrita y la base de datos devuelve el valor ya enmascarado: primero en Postgres (vericto-proxy 4.6.0, vericto-eval 2.2.0) y después en MySQL, MariaDB y Aurora MySQL (vericto-proxy 4.7.0, vericto-eval 2.3.0). Planes Team y Enterprise.
  • Fix Seguridad: en MySQL, la evaluación de reglas sigue ahora la lectura que hace MySQL de los comentarios y de los escapes en strings. El texto SQL que MySQL y el motor leerían distinto se bloquea con la nueva regla CRITICAL VERICTO-086, que no se puede desactivar y cuyo mensaje no incluye el texto de la query. Si usas Vericto con MySQL, actualiza a vericto-proxy 4.7.0 y vericto-eval 2.3.0.
  • Mejora Con al menos una columna en block o mask, una query que no se puede parsear se bloquea, sea cual sea la acción del workspace para queries no parseables: no se puede demostrar que no lea una columna marcada.
  • Fix vericto-proxy 4.6.0: con PROXY_TLS_MODE=require, un cliente PostgreSQL que se conecta en texto plano recibe un error (SQLSTATE 28000) y la conexión se cierra antes de abrir ninguna hacia la base de datos. Los eventos PARSE_ERROR llegan con el mensaje del parser.
  • Mejora vericto-proxy 4.7.0: en modo sanitizado, la telemetría normaliza las queries MySQL con el lexer de MySQL, así que un valor entre comillas dobles ya no se reporta en claro. Desde vericto-proxy 4.5.0, el último ruleset válido se conserva tras un reinicio durante una caída del control plane.
  • Nuevo CLI 1.6.0: si no puede leer la configuración del workspace, el CLI no envía SQL y sale con código 4 (--allow-unsanitized para optar por lo contrario). Una cuota mensual agotada sale con código 3. El hook pre-commit valida el contenido staged (git show :path) y admite rutas con espacios. El sanitizador entiende los escapes con barra invertida de MySQL y de los strings E'...' de Postgres.
  • Nuevo vericto-eval 2.2.0 y 2.3.0: POST /evaluate acepta sensitive_columns y responde con rewritten_query y las columnas marcadas que lee la query. Una petición sin sensitive_columns se evalúa exactamente igual que antes.
Octubre 2026

Registro de auditoría, reportes de cumplimiento firmados y queries no parseables

  • Nuevo Registro de auditoría del workspace, en Configuración → Registro de auditoría, para el owner y los admins: quién cambió qué en reglas, API keys, miembros e invitaciones, SSO y OIDC, bases de datos, configuración del workspace, política de enforcement, destinos de alertas y facturación, con filtros y el diff de los campos cambiados. El registro es append-only.
  • Mejora El historial de queries es append-only: un evento no se puede modificar ni borrar, salvo por la retención de tu plan o una eliminación solicitada. Borrar una base de datos ya no borra sus eventos: se conservan con el nombre de la base.
  • Nuevo Reporte de cumplimiento en PDF firmado con cada export del audit trail (Team y Enterprise): resumen del período, reglas más activadas, mapeo de controles SOC 2 e ISO/IEC 27001:2022 con la evidencia del propio workspace, y la configuración al inicio y al final del período. En Enterprise, además, un reporte mensual firmado automático, guardado 400 días o lo que fije el contrato.
  • Mejora GET /api/v1/meta/export-signing-key publica la clave de firma activa de Vericto y las retiradas, y ?key_id= devuelve la de un reporte concreto, así que una rotación de la clave no impide verificar los reportes firmados antes.
  • Nuevo Configuración → Queries no parseables: elige fail-open (por defecto: la query se reenvía y se registra como PARSE_ERROR) o fail-closed (se bloquea). Pueden cambiarlo el owner y los admins, en todos los planes. Aplica al proxy TCP y a la API de runtime, y cada cambio de la política de enforcement queda en el registro de auditoría.
  • Mejora Cada sentencia SQL cuenta como una validación de la cuota mensual, en el CLI, la API de validación y MCP. Si una petición necesita más validaciones de las que quedan, se rechaza entera antes de evaluar nada y el error dice cuántas pide y cuántas quedan. Desde el CLI 1.5.0, cada sentencia de un archivo se reporta por separado, con su línea real.
  • Nuevo Página Integraciones en el dashboard, con los cinco modos (proxy TCP, API de runtime, CLI, API de validación y MCP) y su actividad. El servidor MCP remoto está en https://mcp.vericto.com/mcp.
Septiembre 2026

Edición y borrado de reglas custom

  • Nuevo Las reglas custom se pueden editar y borrar desde el dashboard. Una regla borrada deja de aplicarse y de contar en el límite del plan, y los bloqueos pasados conservan su código. La descripción de la regla ahora se guarda.
  • Mejora Una regla custom con un predicado desconocido se rechaza al crearla o editarla, con un mensaje concreto.
  • Fix VERICTO-019 detecta DISABLE ROW LEVEL SECURITY en PostgreSQL (vericto-engine 3.5.2).
  • Mejora vericto-proxy 4.4.0: PROXY_TLS_CERT y PROXY_TLS_KEY aceptan el PEM inline, además de una ruta.
Agosto 2026

Todas las violaciones de cada query y CLI 1.1 a 1.4

  • Nuevo Cada evento guarda todas las reglas que violó la query, no solo la que decidió el resultado (vericto-engine 3.5.0).
  • Mejora En las validaciones (CLI, dry-run del dashboard y MCP), el DDL de esquema (DROP, ALTER, TRUNCATE) se reporta en lugar de bloquearse, porque las migraciones lo contienen de forma legítima. Un DELETE sin WHERE y los hallazgos de seguridad siguen bloqueando. El proxy TCP no cambia.
  • Nuevo CLI 1.1 a 1.4: login desde el navegador (vericto login), vericto rules list y rules show, SQL inline con --sql, vericto keys list, vericto docs, vericto feedback, un resumen legible cuando el check falla y anotaciones inline en GitHub Actions.
  • Mejora Detección más precisa de condiciones siempre verdaderas: IN, BETWEEN y LIKE '%' con solo constantes (vericto-engine 3.3.0). Corregidos los falsos positivos de VERICTO-010 en DROP de objetos que no son tablas (vistas, funciones, triggers, políticas) y de VERICTO-040 en un INSERT … SELECT filtrado.
  • Fix Seguridad: una sola sentencia con un anidamiento extremo ya no puede detener el evaluador ni el proxy. El motor la rechaza antes de parsearla (vericto-engine 3.5.1).
  • Nuevo Las políticas de confianza OIDC se pueden atar a claims inmutables del token de CI, como los IDs numéricos de GitHub, que sobreviven a un cambio de nombre de la organización o del repositorio. En el dashboard, un widget de latencia por canal de evaluación (TCP, API, CLI y MCP).
Julio 2026

CLI 1.0, federación OIDC, servidor MCP y 8 reglas nuevas

  • Nuevo 8 reglas estándar nuevas (vericto-engine 2.1.0, 27 de junio): VERICTO-017 a 019 (DROP CONSTRAINT, cambio de tipo de columna, DISABLE TRIGGER / ROW LEVEL SECURITY), VERICTO-080 y 081 (COPY … PROGRAM y bloques DO, CRITICAL, en Postgres) y VERICTO-082 a 084 (GRANT / REVOKE, MERGE y CREATE TABLE … AS SELECT).
  • Nuevo Primera versión pública del CLI (1.0.0): vericto check, salidas SARIF y GitLab, doctor, init y verify-receipt, con binarios precompilados y el paquete npm @vericto/vericto-cli.
  • Nuevo Federación OIDC para CI: el pipeline cambia su token OIDC por una key de corta duración, según las políticas de confianza del workspace, sin guardar API keys de larga duración. Recibos de ejecución firmados, verificables offline con vericto verify-receipt, e historial de ejecuciones de CI en el dashboard.
  • Nuevo Servidor MCP remoto: un agente de código valida su SQL con check_sql contra las reglas del workspace.
  • Mejora Los códigos de regla pasan de VETRO-NNN a VERICTO-NNN y las variables de entorno del proxy de VETRO_* a VERICTO_* (vericto-proxy 4.0.0).
  • Mejora Reglas custom: los predicados van bajo un bloque condition: y un nodo FuncCall detecta llamadas a funciones (vericto-engine 3.1.0).
v1.4.0

Reglas custom en YAML y hot-reload

  • Nuevo Reglas custom definidas en YAML para patrones de queries propios de tu dominio. Disponible en planes Builder y superiores.
  • Nuevo Hot-reload de reglas custom: los cambios se propagan al proxy en menos de 5 segundos sin reiniciar.
  • Nuevo Gestión de reglas custom desde el dashboard del workspace, e inspección del catálogo efectivo desde el CLI con vericto rules list y vericto rules show <CÓDIGO>.
  • Mejora Preview de reglas custom sobre el historial de queries antes de activarlas en producción.
v1.3.0

Modo dry-run para CI/CD y SDK de línea de comandos

  • Nuevo CLI vericto check queries.sql --dialect postgres para validar queries en CI antes del deploy. Exit code 1 si detecta queries destructivas.
  • Nuevo Integración nativa con GitHub Actions: anotaciones inline en el PR con el código de regla y la sugerencia de fix.
  • Nuevo Soporte para validar varios archivos de migración a la vez: vericto check migrations/*.sql --dialect postgres.
  • Mejora El CLI valida contra las reglas vigentes del workspace en cada ejecución, así que un cambio de reglas aplica en el siguiente check. Necesita acceso a la API de Vericto: no hay modo offline.
v1.2.0

Audit trail exportable con firma Ed25519

  • Nuevo Exportación del audit trail en CSV y JSON con firma Ed25519 del archivo completo, verificable offline.
  • Nuevo Exportación del audit trail desde el dashboard y la API, con filtros por rango de fechas, base de datos y decisión.
  • Nuevo Clave pública de firma de Vericto, publicada en GET /api/v1/meta/export-signing-key, para que los auditores confirmen la integridad de los exports.
  • Mejora Cifrado del texto de queries en reposo actualizado a AES-256-GCM con claves derivadas por workspace.
v1.1.0

Soporte Oracle / SQL Server y alertas en tiempo real

  • Nuevo Soporte de los dialectos Oracle y SQL Server (T-SQL) vía API y CLI, con reglas semánticas específicas por dialecto.
  • Nuevo Alertas en tiempo real via Slack y webhooks para bloqueos de severidad CRITICAL.
  • Nuevo Rate limiting inteligente de notificaciones: máximo 10/min con digest automático.
  • Mejora Detección de DELETE con LIMIT diferenciada por dialecto: válida en MySQL, bloqueada en Postgres.
  • Fix Corregido falso positivo en queries con CTEs recursivos que contenían SELECT anidados.
v1.0.0

Lanzamiento público de Vericto

  • Nuevo Proxy TCP transparente para PostgreSQL y MySQL: onboarding en menos de 5 minutos cambiando solo el connection string.
  • Nuevo AST parsing determinístico con pg_query y sqlparser-rs. Latencia <2ms en p99.
  • Nuevo Ruleset de queries destructivas Nivel 1: DELETE sin WHERE (VERICTO-001), UPDATE sin WHERE (VERICTO-042), DROP (VERICTO-010), TRUNCATE (VERICTO-011).
  • Nuevo Dashboard de queries con explicación accionable: nodo AST infractor, regla activada y query segura sugerida.
  • Nuevo Configuración de reglas por workspace y por base de datos (producción, staging, desarrollo).
v0.9.0

Beta cerrada

  • Nuevo Beta cerrada con 30 equipos de ingeniería construyendo con LangChain y LlamaIndex sobre Postgres.
  • Nuevo Primera versión del AST parser y el ruleset de las 4 reglas CRITICAL.
  • Mejora Iteración del dashboard de explicaciones basada en feedback de los equipos beta.

¿No quieres perderte ningún release?

Síguenos en GitHub para recibir notificaciones de cada nueva versión, o suscríbete al blog técnico para los deep-dives.