Según la configuración, los resultados de code scanning pueden aparecer como resultados de comprobación y anotaciones en las solicitudes de incorporación de cambios. Para más información, consulta Acerca de las alertas de análisis de código.
Visualización de los resultados de la comprobación de code scanning
En todas las configuraciones de code scanning, la comprobación que contiene los resultados del code scanning es: resultados de Code scanning . Los resultados para cada herramienta de análisis se muestran por separado. Cualquier alerta nueva en las líneas de código cambiadas en la solicitud de cambios se muestran como anotaciones.
Para ver el conjunto de alertas completo de la rama analizada, haz clic en Ver todas las alertas de rama. Se abre la vista completa de alertas en donde puede filtrar todas las de una rama por tipo, gravedad, etiqueta, etc. Para más información, consulte Evaluación de alertas de análisis de código para el repositorio.

Administración de niveles de gravedad para errores de comprobación
Si en la comprobación de resultados de code scanning se detecta algún problema con una gravedad de error, critical o high, se produce un error en la comprobación y el error se notifica en los resultados. Si todos los resultados que encontró el code scanning tienen gravedades menores, las alertas se tratarán como advertencias o notas y la verificación tendrá éxito.

Puedes invalidar el comportamiento predeterminado en la configuración del repositorio. Para ello, especifica los niveles de gravedad y la gravedad de seguridad que causarán un error en la comprobación de la solicitud de incorporación de cambios. Para más información, consulta Opciones de configuración de flujo de trabajo para el examen de código.
Diagnóstico de problemas con la configuración de code scanning
Dependiendo de tu configuración, podrías ver verificaciones adicionales ejecutándose en las solicitudes de cambios con el code scanning configurado. A menudo, estos son flujos de trabajo que analizan el código o que cargan resultados del code scanning. Estas verificaciones son útiles para solucionar problemas cuando el análisis los presenta.
Por ejemplo, si el repositorio utiliza Flujo de trabajo de análisis de CodeQL, se ejecutará una verificación de CodeQL/Analyze (LANGUAGE) para cada lenguaje antes de que se ejecute la comprobación de resultados. La verificación del análisis podría fallar si existieran problemas de configuración o si la solicitud de cambios impide la compilación para un lenguaje que el análisis compila (por ejemplo, C/C++, C#, Go, Java, Kotlin, Rust, y Swift).
Al igual que con otras comprobaciones de solicitudes de cambios, puede ver detalles completos del error de comprobación en la pestaña Comprobaciones. Para más información sobre la configuración y la solución de problemas, consulte Opciones de configuración de flujo de trabajo para el examen de código o Solución de problemas de análisis de código.
Visualizar una alerta en tu solicitud de cambios
Puede ver cualquier alerta code scanning que están dentro de la diferencia de los cambios introducidos en una solicitud de cambios, en la pestaña Conversación. Code scanning publica una revisión de solicitud de cambios en la que cada alerta se muestra como una anotación en las líneas de código que activaron la alerta. Puedes comentar las alertas, descartarlas y ver sus rutas de acceso directamente en las anotaciones. Para ver los detalles completos de una alerta, haz clic en el vínculo "Mostrar más detalles", lo que te llevará a la página de detalles de la alerta.

También puede ver todas las alertas de code scanning que están dentro de la diferencia de los cambios introducidos en la solicitud de cambios en la pestaña Archivos modificados.
Si agrega una nueva configuración de análisis de código en la solicitud de cambios, verá un comentario en la solicitud de cambios que le dirige a la pestaña Seguridad del repositorio para que pueda ver todas las alertas en la rama de solicitud de cambios. Para obtener más información sobre cómo ver las alertas de un repositorio, consulte Evaluación de alertas de análisis de código para el repositorio.
Si tienes permisos de escritura para el repositorio, algunas anotaciones contendrán enlaces con un contexto adicional de la alerta. En el ejemplo anterior del análisis de CodeQL, puede hacer clic en user-provided value para ver dónde se introducen los datos no fiables en el flujo de datos (a esto se le conoce como el origen). En este caso, también puede ver la ruta completa desde el origren hasta el código que utiliza los datos (el receptor) haciendo clic en Show paths. Esto facilita la revisión, ya sea que los datos no sean confiables o que el análisis falle en reconocer un paso de sanitización de datos entre la fuente y el consumidor de datos. Para obtener información sobre cómo analizar el flujo de datos mediante CodeQL, consulte Acerca del análisis de flujo de datos.
Para ver más información sobre una alerta, los usuarios con permisos de escritura pueden hacer clic en el vínculo Show more details que se muestra en la anotación. Esto te permite ver todo el contexto y los metadatos que proporciona la herramienta en una vista de alertas. En el siguiente ejemplo, puedes ver que las etiquetas muestran la severidad, tipo y las enumeraciones de los puntos débiles comunes (los CWE) del problema. La vista también muestra qué confirmación introdujo el problema.
El estado y los detalles de la página de alertas solo reflejan el estado de la alerta en la rama predeterminada del repositorio, incluso si la alerta existe en otras ramas. Puede ver el estado de la alerta en ramas no predeterminadas en la sección Ramas afectadas del lado derecho de la página de alertas. Si una alerta no existe en la rama predeterminada, el estado de la alerta se mostrará como "en la solicitud de incorporación de cambios" o "en la rama", y tendrá un color gris. En la sección Desarrollo se muestran ramas vinculadas y solicitudes de incorporación de cambios que corregirán la alerta.
En la vista detallada de una alerta, algunas herramientas de code scanning, como el análisis de CodeQL, también incluyen una descripción del problema y un enlace de Show more para ayudarle a saber cómo corregir el código.

Realización de comentarios sobre una alerta en una solicitud de incorporación de cambios
Puede comentar cualquier alerta de code scanning que aparezca en una solicitud de cambios. Las alertas aparecen como anotaciones en la pestaña Conversación de una solicitud de cambios, como parte de una revisión de la solicitud de cambios, y también se muestran en la pestaña Archivos modificados.
Puedes optar por establecer que, para que se pueda combinar una solicitud de incorporación de cambios, primero deban resolverse todas las conversaciones de una solicitud de incorporación de cambios, incluidas las conversaciones de las alertas de code scanning. Para más información, consulta Acerca de las ramas protegidas.
Arreglar una alerta en tu solicitud de cambios
Cualquiera con acceso de subida a una solicitud de cambios puede arreglar una alerta del code scanning, la cual se identifique en dicha solicitud. Si confirmas cambios en la solicitud de extracción, esto activará una ejecución nueva de las verificaciones de dicha solicitud. Si tus cambios arreglan el problema, la alerta se cierra y la anotación se elimina.
Trabajar con sugerencias Autofijo de Copilot para alertas en una solicitud de cambios
GitHub Copilot Corrección automática es una expansión de code scanning que le proporciona recomendaciones específicas para ayudarle a corregir las alertas de code scanning (incluyendo las alertas de CodeQL) en las solicitudes de cambios. Los modelos de lenguaje grandes (LLM) generan automáticamente las posibles correcciones mediante datos del código base, la solicitud de cambios y del análisis de code scanning.
Nota:
No necesitas una suscripción a GitHub Copilot para usar GitHub Copilot Corrección automática. Autofijo de Copilot está disponible para todos los repositorios públicos en GitHub.com, así como repositorios internos o privados que pertenecen a organizaciones y empresas que tienen una licencia para GitHub Code Security.

Generación de sugerencias Autofijo de Copilot y publicación en una solicitud de cambios
Cuando Autofijo de Copilot está habilitada para un repositorio, las alertas se muestran en las solicitudes de cambios como normales y la información de las alertas encontradas por code scanning se envía automáticamente al LLM para su procesamiento. Una vez completado el análisis del LLM, los resultados se publican como comentarios sobre las alertas pertinentes. Para más información, consulta Uso responsable de Copilot Autofix para el análisis de código.
Nota:
- Autofijo de Copilot admite un subconjunto de consultas de datos CodeQL. Para obtener información sobre la disponibilidad de Autofijo de Copilot, consulte las tablas de consulta vinculadas desde Consultas para el análisis de CodeQL.
- Una vez completado el análisis, todos los resultados pertinentes se publican a la vez en la solicitud de incorporación de cambios. Si al menos una alerta de la solicitud de cambios tiene una sugerencia Autofijo de Copilot, debe suponer que el LLM ha terminado de identificar posibles correcciones para el código.
- En las alertas generadas a partir de consultas que no son compatibles con Autofijo de Copilot, verá una nota que indica que no se admite la consulta. Si no se puede generar una sugerencia para una consulta admitida, verá una nota en la alerta que le pide que intente insertar otra confirmación o ponerse en contacto con el soporte técnico.
- Autofijo de Copilot para alertas de code scanning no podrá generar una corrección para todas las alertas en todas las situaciones. La característica funciona según el mejor esfuerzo y no se garantiza que se realice correctamente el 100 % del tiempo. Para obtener información sobre las limitaciones de las correcciones generadas automáticamente, consulta Limitaciones de las sugerencias.
Normalmente, cuando sugieres cambios en una solicitud de incorporación de cambios, tu comentario se refiere a un único archivo que se cambiará en la solicitud de incorporación de cambios. En la captura de pantalla siguiente se muestra un comentario Autofijo de Copilot que sugiere cambios en el archivo index.js en el que se muestra la alerta. Dado que la posible corrección requiere una nueva dependencia en escape-html, el comentario también sugiere agregar esta dependencia al archivo package.json, aunque la solicitud de incorporación de cambios original no haga ningún cambio en este archivo.

Evaluación y confirmación de una sugerencia de Autofijo de Copilot
Cada sugerencia Autofijo de Copilot muestra una posible solución para una alerta de code scanning en el código base. Debes evaluar los cambios sugeridos para determinar si son una buena solución para el código base y asegurarte de que mantienen el comportamiento previsto. Para obtener información sobre las limitaciones de las sugerencias Autofijo de Copilot, consulte Limitaciones de sugerencias y Mitigación de las limitaciones de sugerencias en "Uso responsable de Autofijo de Copilot para el code scanning".
- Haz clic en Editar para mostrar las opciones de edición y selecciona tu método preferido.
- En Editar con GitHub CLI, siga las instrucciones para restaurar la solicitud de cambios localmente y aplicar la corrección sugerida.
- Seleccione Editar NOMBRE DE ARCHIVO para editar el archivo directamente en GitHub con la corrección sugerida aplicada.
- Opcionalmente, si prefieres aplicar la corrección en un repositorio o rama local, selecciona el menú desplegable en la sugerencia.
- Seleccione Ver revisión de autocorrección para mostrar instrucciones a fin de aplicar la corrección sugerida a cualquier repositorio o rama local.
- Seleccione Copiar línea modificada LINE_NUMBER para copiar una línea específica de la sugerencia.
- Prueba y modifica la corrección sugerida según sea necesario.
- Cuando hayas terminado de probar los cambios, confírmalos e insértalos en la rama.
- Al insertar los cambios en la rama, se desencadenarán todas las pruebas habituales para la solicitud de incorporación de cambios. Confirma que las pruebas unitarias se siguen aprobándo y que la alerta code scanning ya está corregida.
Descartar una sugerencia de Autofijo de Copilot
Si decide rechazar una sugerencia de Autofijo de Copilot, haga clic en Descartar sugerencia en el comentario para descartar la corrección sugerida.
Descartar una alerta en tu solicitud de cambios
Una forma alterna de cerrar una alerta es descartarla. Puedes descartar una alerta si no crees que necesite arreglarse. Por ejemplo, un error en el código que se utiliza únicamente para hacer pruebas, o cuando el esfuerzo de areglar el error es mayor que el beneficio potencial de mejorar el código. Si tienes permisos de escritura en el repositorio, el botón Descartar alerta aparece en las anotaciones de código y en el resumen de alertas. Al hacer clic en Descartar alerta, se te pedirá que elijas un motivo para cerrar la alerta.

Es importante elegir la razón adecuada del menú desplegable, ya que esto puede afectar si la consulta continuará incluyéndose en los análisis futuros. Opcionalmente, puede comentar un descarte para registrar el contexto del descarte de una alerta. El comentario de descarte se agrega a la escala de tiempo de la alerta y se puede usar como justificación durante el proceso de auditoría y creación de informes. Puedes recuperar o establecer un comentario mediante la API REST de examen de código. El comentario se incluye en dismissed_comment para el punto de conexión alerts/{alert_number}. Para más información, consulta Puntos de conexión de la API de REST para el análisis de código.
Si descartas una alerta de CodeQL como consecuencia de un resultado de falso positivo, por ejemplo, porque el código utiliza una biblioteca de sanitización que no es compatible, considera contribuir con el repositorio de CodeQL y mejorar el análisis. Para más información sobre CodeQL, consulta Contribución a CodeQL.
Para obtener más información sobre cómo descartar alertas, consulta Resolución de alertas de análisis de código.