Vercel
Ejecuta QA automáticamente contra cada despliegue de previsualización de Vercel e informa el resultado como un check de despliegue.
La integración de Vercel supervisa los despliegues de previsualización y producción mediante webhook. Cuando un despliegue alcanza el estado ready, Autonomy ejecuta el caso de prueba o plan de pruebas configurado contra la URL de previsualización e informa un check de aprobado/fallido directamente en el despliegue de Vercel usando la API Checks v2.
Qué hace
- Recibe un webhook en cada cambio de estado del despliegue.
- Filtra por contexto de despliegue (preview, production o branch) y nombre de rama.
- Ejecuta el caso de prueba o plan de pruebas configurado contra la URL de previsualización.
- Informa el resultado como un check de despliegue de Vercel Checks v2 visible en el panel de Vercel y en la pull request de GitHub.
- Opcionalmente bloquea la promoción del despliegue hasta que el check concluya (
blocks: deployment-promotion). - Admite re-solicitud de check: hacer clic en "Volver a ejecutar" en un check en el panel de Vercel activa una nueva ejecución de Autonomy mediante el webhook
deployment.check-rerequested. - Cuando también hay un repositorio de GitHub vinculado, los resultados se publican tanto en el check de Vercel como en un check run de GitHub en el commit.
Configuración
Antes de empezar
- Una cuenta o equipo de Vercel con al menos un proyecto que produzca despliegues de previsualización.
- Al menos un caso de prueba de Autonomy que pase contra un objetivo web.
- Un entorno de Autonomy con un objetivo web (la URL base será reemplazada por la URL de previsualización).
- La integración de Vercel debe tener el alcance deployment-check para crear y actualizar checks.
- Para Autonomy autoalojado: VERCEL_CLIENT_ID y VERCEL_CLIENT_SECRET configurados en el backend de Convex.
- Abre Ajustes → Integraciones en el panel de Autonomy.
- Haz clic en Conectar en la tarjeta de Vercel. Serás redirigido a Vercel para autorizar la integración.
- Selecciona el equipo o cuenta personal de Vercel y concede los permisos solicitados. La integración requiere el alcance
deployment-check. - De vuelta en Autonomy, haz clic en Vincular proyecto. Autonomy lista los proyectos de Vercel visibles para tu cuenta conectada — elige el que quieras probar. Se crea automáticamente una definición de check a nivel de proyecto al vincularlo.
- Elige un Caso de prueba o Plan de pruebas como objetivo de ejecución predeterminado.
- Elige el Entorno cuya configuración (navegador, viewport, valores de ejecución) debe aplicarse.
- En Contextos de activación, selecciona qué tipos de despliegue inician una ejecución — normalmente
preview. Añade Filtros de rama si quieres limitar las ejecuciones a ciertas ramas (patrones glob comomain,release/*). - Si quieres que los resultados se reporten a Vercel, activa Reportar checks. Activa Bloquear la promoción del despliegue hasta que el check se complete para retener la promoción del despliegue hasta que el check concluya.
- Abre una pull request con un cambio de código y confirma que una ejecución comienza cuando la previsualización de Vercel está lista.
Cómo se activa una ejecución
Cuando Vercel envía un webhook deployment.ready:
- Autonomy busca el proyecto vinculado por el ID del proyecto de Vercel.
- El contexto del despliegue (
preview,productionobranch) se verifica contra los contextos de activación del proyecto. - La rama del despliegue se verifica contra los filtros de rama del proyecto.
- Si hay un caso de prueba o plan de pruebas predeterminado configurado, Autonomy crea una ejecución contra la URL de previsualización.
- La ejecución usa la configuración del entorno vinculado para el navegador, viewport y valores de ejecución.
Previsualizaciones protegidas
Si la protección de despliegue de Vercel está activada, el runner no puede acceder a la URL de previsualización sin un bypass. Para configurarlo:
- En el panel de Vercel, abre Ajustes → Protección de despliegue para tu proyecto.
- Copia el secreto de Bypass de protección para automatización (un valor UUID-v4).
- En Autonomy, abre los ajustes del proyecto vinculado y pega el secreto en Secreto de acceso a previsualización.
Autonomy envía el secreto como una cabecera x-vercel-protection-bypass y una cabecera x-vercel-set-bypass-cookie en cada petición a la URL de previsualización de ese proyecto. El secreto nunca sale del backend — el runner lo recibe como una inyección opaca de cabecera.
Reporte de estado
Vercel es el único proveedor de despliegue con una superficie nativa de checks. Cuando Reportar checks está activado:
- Se crea una definición de check a nivel de proyecto cuando se vincula el proyecto. Esta definición incluye la política de bloqueo y se aplica a todos los despliegues.
- Cuando un despliegue alcanza el estado
ready, se crea un check run contra la definición, visible en el panel de Vercel bajo la pestaña Checks del despliegue. - Cuando todas las ejecuciones completan, el check se actualiza a
succeeded,failed,canceled,neutralotimeout. - El check enlaza al espacio de evidencia de Autonomy para que los revisores puedan inspeccionar capturas, trazas y resultados por paso.
- Si la GitHub App también está instalada en el repositorio, el mismo resultado aparece como un check run de GitHub en el commit.
Cuando Bloquear la promoción del despliegue está activado, Vercel retiene la promoción del despliegue a producción hasta que el check de Autonomy concluya. El check tiene un tiempo de espera agotado (timeout) de 15 minutos — si la ejecución no se completa dentro de esa ventana, Vercel marca el check como tiempo de espera agotado.
Re-solicitud de check
Hacer clic en "Volver a ejecutar" en un check en el panel de Vercel envía un webhook deployment.check-rerequested. Autonomy crea una nueva ejecución contra el mismo despliegue, usando la configuración actual del proyecto. Esto es útil para reintentar una prueba con fallos intermitentes o volver a ejecutar tras un cambio de configuración.
Monorepo y múltiples proyectos
Un solo repositorio de GitHub puede estar vinculado a múltiples proyectos de Vercel. Autonomy vincula cada proyecto de Vercel de forma independiente — cada uno tiene su propio objetivo de prueba, entorno, contextos de activación y filtros de rama.
Cuando Vercel envía un webhook para un despliegue de monorepo, Autonomy lo asocia al proyecto vinculado correcto por el ID del proyecto de Vercel, no por el repositorio. Si tienes tres proyectos de Vercel (app web, sitio de documentación, panel de administración) en un repositorio, puedes vincular los tres con planes de pruebas diferentes.
Variables de entorno (autoalojado)
| Variable | Required | Description |
|---|---|---|
| VERCEL_CLIENT_ID | Yes | ID de cliente OAuth de los ajustes de la integración de Vercel. |
| VERCEL_CLIENT_SECRET | Yes | Secreto de cliente OAuth. También se usa como secreto de firma del webhook para eventos del ciclo de vida de la integración. |
| NEXT_PUBLIC_VERCEL_INTEGRATION_SLUG | Yes | El slug de la integración, usado para construir la URL de instalación del Marketplace de Vercel. |
Solución de problemas
No se inicia ninguna ejecución cuando se despliega una previsualización
El despliegue debe alcanzar el estado ready. Verifica lo siguiente:
- La cuenta de Vercel está conectada y muestra Activa en Autonomy.
- El proyecto de Vercel está vinculado. Autonomy solo supervisa proyectos vinculados.
- El proyecto está habilitado — un proyecto deshabilitado registra el evento pero omite la ejecución (
project disabled). - El contexto del despliegue (preview/production) está en los contextos de activación del proyecto. Si no, el evento se omite con
context <x> not enabled. - La rama coincide con los filtros de rama del proyecto. Una discrepancia omite con
branch <x> filtered. - Un caso de prueba o plan de pruebas predeterminado está seleccionado. Sin uno, el evento se omite con
no default test target. - La URL de previsualización está presente en la carga útil del webhook. Una URL faltante se omite con
no preview URL.
La ejecución no puede acceder a la previsualización
La URL de previsualización está bloqueada por la protección de despliegue de Vercel. La ejecución falla con una página de protección si el secreto de bypass falta o ha expirado. Añade o actualiza el Secreto de acceso a previsualización en los ajustes del proyecto vinculado.
El check de Vercel muestra "neutral"
Una conclusión neutral significa que la ejecución fue omitida — normalmente por un límite de capacidad o cuota. Verifica el detalle del evento en Autonomy para ver la razón de la omisión.
El check de Vercel muestra "timeout"
El check tiene un tiempo de espera de 15 minutos. Si la ejecución de Autonomy tarda más de 15 minutos en completarse, Vercel marca el check como tiempo de espera agotado. La ejecución aún puede completarse en Autonomy, pero el check de Vercel no se actualizará.
Ejecuciones duplicadas para el mismo despliegue
Autonomy deduplica por una clave que incluye el ID del despliegue de Vercel y el estado. Un webhook reenviado no produce una segunda ejecución. Si ves duplicados, confirma que dos proyectos de Vercel separados no están vinculados al mismo objetivo de prueba de Autonomy.