Sankey de revisión de pull requests: del tamaño a la fusión

Mira cómo avanzan los pull requests desde su tamaño hasta el resultado de la primera revisión y la fusión, el retrabajo o el abandono. Usa los datos de tu repositorio para hallar dónde se atasca la revisión.

Un Sankey de pull requests muestra qué ocurre con los cambios tras abrirlos: aprobados a la primera, devueltos para retrabajo o cerrados. Agrupado por tamaño, enseña si los cambios grandes son lo que frena la revisión.

El ejemplo tiene 250 pull requests: 120 pequeños, 90 medianos y 40 grandes. Tras la primera revisión, 130 están aprobados, 90 tienen cambios solicitados y 30 se cierran sin revisión. Al final, 198 se fusionan, 12 se abandonan y 10 siguen abiertos.

Los anchos hacen visible el coste del tamaño: 90 de los 120 cambios pequeños se aprueban a la primera, pero solo 5 de los 40 grandes. Aquí el retrabajo es un solo flujo, no un bucle, así que una solicitud devuelta dos veces cuenta una vez, por su resultado final. Consulta /es/sankey/ci-pipeline-outcomes para ver qué pasa con las compilaciones que disparan esos cambios.

Cómo leer este diagrama

  • 198 de 250 pull requests (79 %) acaban fusionados; el 12 % se cierra sin revisión.
  • El 75 % de los cambios pequeños (90 de 120) se aprueba a la primera, frente al 13 % de los grandes (5 de 40).
  • 70 de los 90 cambios devueltos (78 %) se fusionan tras el retrabajo; 12 se abandonan.
  • 10 solicitudes siguen abiertas, 8 de ellas esperando tras pedir cambios.

Los datos detrás del diagrama

Cifras inventadas con fines ilustrativos. No son datos de ninguna empresa, equipo o sistema reales.

Sankey de revisión de pull requests: del tamaño a la fusión (pull requests)
DesdeHaciaCantidad (pull requests)
Pequeño (menos de 100 líneas)Aprobado a la primera90
Pequeño (menos de 100 líneas)Cambios solicitados22
Pequeño (menos de 100 líneas)Cerrado sin revisión8
MedianoAprobado a la primera35
MedianoCambios solicitados45
MedianoCerrado sin revisión10
Grande (más de 500 líneas)Aprobado a la primera5
Grande (más de 500 líneas)Cambios solicitados23
Grande (más de 500 líneas)Cerrado sin revisión12
Aprobado a la primeraFusionado128
Aprobado a la primeraSigue abierto2
Cambios solicitadosFusionado70
Cambios solicitadosAbandonado12
Cambios solicitadosSigue abierto8

Los mismos datos en CSV

source,target,value
Pequeño (menos de 100 líneas),Aprobado a la primera,90
Pequeño (menos de 100 líneas),Cambios solicitados,22
Pequeño (menos de 100 líneas),Cerrado sin revisión,8
Mediano,Aprobado a la primera,35
Mediano,Cambios solicitados,45
Mediano,Cerrado sin revisión,10
Grande (más de 500 líneas),Aprobado a la primera,5
Grande (más de 500 líneas),Cambios solicitados,23
Grande (más de 500 líneas),Cerrado sin revisión,12
Aprobado a la primera,Fusionado,128
Aprobado a la primera,Sigue abierto,2
Cambios solicitados,Fusionado,70
Cambios solicitados,Abandonado,12
Cambios solicitados,Sigue abierto,8

Cómo funciona

  1. Exporta los pull requests de un periodo

    Incluye las líneas modificadas, el resultado de la primera revisión y el estado final. Toma un trimestre o una release.

  2. Agrupa por tamaño

    Elige dos o tres rangos de tamaño e indica cómo los cortas. Cuenta cada solicitud una vez.

  3. Cuenta la primera revisión y el resultado final

    Usa el resultado de la primera revisión para la columna central y el estado final para la última.

  4. Comprueba el balance

    Cada nodo central debe sacar tantas solicitudes como entraron. Cerrado sin revisión termina ahí.

Preguntas frecuentes

¿Por qué no dibujar las rondas de revisión como un bucle?

Porque los anchos muestran recuentos y un bucle haría contar dos veces la misma solicitud. Si importan las rondas, haz un segundo gráfico con el número de rondas como columna central.

¿Se muestra la velocidad de revisión?

No. Los anchos son recuentos. Pon el tiempo hasta la primera revisión en una tabla junto al gráfico o en un diagrama aparte de los tramos de tiempo.

Edita este Sankey de pull requests

Abre el ejemplo como gráfico propio e introduce los recuentos de tu repositorio.

Edita este Sankey de pull requests

Más en Diagramas de Sankey