Autopilot
Deja un pull request en manos de HeyDeer. Autopilot corrige lo pendiente, sube los cambios a la rama del PR y revisa cada cambio hasta que el PR esté listo para fusionar o te necesite.
Requisitos
- El pull request está abierto y su rama está en el mismo repositorio, no en un fork.
- Tienes acceso de escritura al repositorio y la opción Quién puede solicitar revisiones te incluye.
- El espacio de trabajo tiene un plan de pago. Consulta Planes.
- HeyDeer tiene acceso de lectura y escritura a Contents y Pull requests. Consulta GitHub App y permisos.
Iniciar y detener Autopilot
Para iniciar Autopilot, usa cualquiera de estas opciones:
- Selecciona Autopilot en la página de la revisión en HeyDeer y luego Iniciar Autopilot.
- Selecciona el botón Autopilot en el comentario de revisión de HeyDeer en GitHub y luego Iniciar Autopilot en HeyDeer.
- Comenta
@heydeer autopiloten el PR.
Para detenerlo, selecciona Detener Autopilot en su página de HeyDeer o comenta @heydeer autopilot stop. Al iniciar Autopilot de nuevo, el recuento de rondas vuelve a empezar y se tienen en cuenta las nuevas respuestas y comentarios.
Mientras Autopilot se ejecuta, no puedes iniciar una corrección ni solicitar una revisión en el PR; detén Autopilot primero. Autopilot no puede iniciarse mientras hay una corrección en curso.
Qué corrige Autopilot
| Elemento | Qué incluye |
|---|---|
| Hallazgos | Hallazgos dentro del alcance de los comentarios del repositorio y problemas anteriores de HeyDeer que siguen abiertos, tal como los cuenta la comprobación HeyDeer Review. |
| Solicitudes | Conversaciones de revisión sin resolver que inició una persona y en las que lo último lo escribió alguien con acceso de escritura, y los comentarios y textos de revisión que esas personas publicaron en el PR después de la revisión con la que empezó Autopilot. Mientras Autopilot está en marcha, mencionar a @heydeer en el PR, también en las conversaciones de revisión de HeyDeer, se lo pide a Autopilot en lugar de iniciar una solicitud aparte. |
| Comprobaciones fallidas | Las comprobaciones obligatorias si tus reglas de rama las indican; si no, todas las comprobaciones excepto HeyDeer Review. |
| Conflictos de fusión | HeyDeer fusiona la rama base y resuelve los conflictos. Nunca hace rebase ni force push, y no actualiza una rama solo porque esté desactualizada. |
Autopilot ignora los comentarios de bots y de personas sin acceso de escritura. HeyDeer responde en cada conversación que atendió y pregunta ahí cuando una solicitud necesita que una persona decida.
HeyDeer lee el título, el resumen y las anotaciones de cada comprobación fallida y, en un trabajo de GitHub Actions, el registro del paso que falló. Reproduce el fallo en un entorno aislado, donde edita código y ejecuta tus pruebas. Los fallos que no puede reproducir quedan en la lista de lo pendiente. Leer los registros requiere el permiso Actions; sin él, HeyDeer trabaja con el resto. Consulta Seguridad para saber cómo se aísla la ejecución de código.
Los commits de Autopilot no pueden cambiar archivos de .github/workflows/. Un flujo de trabajo modificado se ejecutaría con los secretos de tu repositorio antes de que nadie lo leyera.
Cuándo se detiene Autopilot
| Motivo | Qué pasó |
|---|---|
| Listo | No queda nada por corregir. |
| Necesita tu respuesta | HeyDeer hizo una pregunta en una conversación o en su revisión, o necesita que confirmes si un problema anterior está resuelto, y corrigió todo lo demás. Responde ahí y luego inicia Autopilot de nuevo. |
| Otra persona subió cambios | Cualquier push que no sea de HeyDeer, incluido el botón Update branch de GitHub. HeyDeer descarta la ronda en curso y las revisiones que tenía retenidas. |
| Límite de rondas | Autopilot completó 5 rondas. |
| Sin avances | Una ronda no cambió nada y siguen pendientes los mismos elementos, dos rondas seguidas no resolvieron nada, o todo lo pendiente es algo que una ronda dijo que necesita a una persona. Su comentario indica qué debe hacer una persona con cada elemento, como añadir un secreto o cambiar un flujo de trabajo. |
| Las comprobaciones no terminaron | Las comprobaciones seguían en curso después de una hora. |
| Cola de fusión | El PR está en la cola de fusión y un push lo sacaría de ella. |
| Push rechazado | GitHub rechazó el push de HeyDeer, por ejemplo porque una regla de rama limita quién puede subir cambios a la rama. |
| Créditos o plan | El espacio de trabajo se quedó sin créditos o ya no tiene un plan de pago. |
| Alguien lo detuvo | Cualquiera con acceso de escritura al repositorio puede detenerlo. |
| Acceso retirado | La persona que inició Autopilot ya no puede solicitar revisiones en el repositorio. |
| GitHub denegó el acceso | GitHub impidió que HeyDeer leyera o actualizara el PR, por ejemplo después de que HeyDeer perdiera el acceso al repositorio. |
| El PR cambió | Se cerró o se fusionó el PR, o cambió su rama base. |
| Incompleto | HeyDeer no pudo completar una ronda o la revisión del commit más reciente. |
Qué publica HeyDeer en GitHub
- Un comentario de Autopilot en el PR, que se actualiza a medida que avanza: qué está haciendo y qué está corrigiendo, con los commits de cada ronda terminada y en qué trabajó en Historial. HeyDeer oculta sus comentarios anteriores de Autopilot como obsoletos.
- Commits en la rama del PR y respuestas en las conversaciones que atendió.
- La comprobación HeyDeer Review, que sigue en curso mientras Autopilot se ejecuta.
- Cuando Autopilot se detiene, su revisión del último commit, salvo que otra persona haya subido cambios o el PR haya cambiado, y el resultado en su comentario: por qué se detuvo y qué sigue necesitándote. Cuando te necesita, para una respuesta o un problema que no pudo resolver, publica un comentario nuevo que menciona a quien inició Autopilot.
Los pushes de Autopilot no inician revisiones automáticas, y HeyDeer no solicita revisiones a nadie. Mientras Autopilot se ejecuta, los comentarios de revisión de HeyDeer no muestran los botones Corregir con HeyDeer ni Autopilot.
La aprobación automática funciona como siempre en la revisión que publica HeyDeer. Para exigir la aprobación de una persona después de que HeyDeer suba cambios, activa Require approval of the most recent reviewable push en tus reglas de rama. Consulta Aprobación automática.
Autopilot en HeyDeer muestra todas las ejecuciones en los repositorios que puedes ver. La página de cada ejecución muestra su estado, lo que sigue pendiente y los créditos usados, y cada ronda con lo que trató, sus commits y respuestas, y el resumen del agente.
Créditos
La corrección y la revisión de cada ronda usan créditos del espacio de trabajo como cualquier otra corrección y revisión. Autopilot no tiene un cargo aparte. Consulta Cómo funcionan los créditos.