fix.
CodeWarden nunca dice que un issue está arreglado. Solo volver a ejecutar el caso que falla puede demostrarlo. Lo que la revisión sí afirma, como un dato que calcula por sí misma, es cuántos archivos del stack trace toca el cambio:
Requisitos
- Sentry SaaS (
sentry.io, región de EE. UU. o UE). Sentry autoalojado no es compatible. - Permiso en Sentry para crear una integración interna en tu organización.
- Un propietario de la organización en la consola de CodeWarden, para conectarlo.
Configúralo
1
Crea una integración interna en Sentry
En Sentry, ve a Settings → Developer Settings → Custom Integrations y crea una Internal Integration para CodeWarden. Dale exactamente estos permisos:
- Issue & Event: Read
- Organization: Read
2
Pégalo en la consola
En la página de inicio de la consola, abre la instalación y, bajo Integraciones, abre Conectar Sentry. Escribe el slug de la organización de Sentry (el
acme de acme.sentry.io) y el token de la integración interna, y luego haz clic en Conectar.CodeWarden verifica el token una vez contra tu organización antes de guardarlo, y averigua qué región de Sentry usar a partir de la respuesta.3
Permite los proyectos en .codewarden.yml
Agrega los slugs de los proyectos de Sentry desde los que un pull request puede enlazar issues, y haz merge del cambio en la base branch:Sin esta lista no se lee ningún issue. En un repositorio público, no se lee nada a menos que
.codewarden.yml
public_repositories sea true.4
Enlaza el issue en el pull request
Pon la URL del issue en el título o la descripción del pull request:La forma anterior
https://sentry.io/organizations/acme/issues/4507112233/ también funciona. La URL debe usar el id numérico del issue; un id corto como WIDGETS-1 no coincide.Cuándo se lee un issue
Deben cumplirse todas. Si no, la revisión se ejecuta sin el issue, y la consola muestra por qué en la página de la revisión.- La URL está en el título o la descripción del pull request.
- La organización de la URL es la conectada a la instalación. Un enlace a cualquier otra organización nunca se lee.
- El repositorio es privado, o
sentry.public_repositoriesestrue. - La conexión funciona.
- El proyecto del issue, según lo informa Sentry, está listado en
sentry.projects.
Qué se lee
Dos solicitudes de solo lectura por revisión:- El issue: su título, culprit, id corto, estado, nivel, cantidad de eventos, primera y última vez visto, y su proyecto.
- El stack trace de su evento más reciente. CodeWarden conserva los cinco frames más internos que Sentry marca como código de tu aplicación, y compara sus nombres de archivo con rutas de tu repositorio.
Qué se guarda
- El token, cifrado en reposo. CodeWarden lo verifica una vez al día; si Sentry responde que no está permitido (un 401 o 403), la conexión se marca como requiere reconexión.
- En el registro de la revisión: qué issue se enlazó, el resultado de la lectura, los frames, qué archivos se leyeron y cuáles tocó el cambio.
- El prompt enviado al modelo, que incluye los detalles del issue y el stack trace. Se guarda con la revisión para que cada comentario se pueda explicar, como se describe en la política de privacidad.
Estados de la conexión
Desconectar y revocar
- En la consola: un propietario hace clic en Desconectar en el cuadro de Sentry de la instalación. El token guardado se elimina.
- En Sentry: revoca el token, o elimina la integración interna, en Settings → Developer Settings. Los tokens de integraciones internas no expiran por sí solos, así que revoca el token cuando dejes de usar CodeWarden.