91% de tasa de aprobación. Gate en verde. Lanzado. La peor regresión de la historia.

Alcanzamos una tasa de aprobación del 91% en una prueba de clasificación de intenciones. El umbral era del 90%. Superamos la meta. Lanzamos el código.

Fue nuestra peor regresión del trimestre.

El problema fue nuestra matemática. Nuestra puntuación de evaluación se mantuvo en un 96% o 97% durante semanas. Luego, un cambio rompió un segmento específico: solicitudes de reembolso ambiguas. Ese segmento cayó del 98% al 74%.

Ese segmento representa el 4% de nuestro tráfico total. Como nos fijamos en el promedio, la puntuación total solo bajó al 91%. El gate se mantuvo en verde.

Los agregados ocultan fallos dentro del ruido.

Los usuarios de ese segmento no vieron un 91%. Vieron un 74%. Un umbral estático te indica si todo el sistema se cae por un precipicio. No te indica si una parte de tu sistema está muriendo. Si 96 segmentos están bien y uno falla, un promedio alto oculta el fallo. Encuentras el error a través de tickets de soporte en lugar de tus herramientas de prueba.

Cambiamos nuestra estrategia. Dejamos de usar umbrales basados en números absolutos. Ahora validamos contra la última ejecución exitosa.

Usamos dos reglas. Ambas deben cumplirse:

  • Ningún segmento individual cae más de 3 puntos respecto a la línea base.
  • El agregado total no cae más de 1,5 puntos respecto a la línea base.

En nuestro fallo reciente, el segmento de reembolsos cayó 24 puntos. La primera regla lo habría detectado de inmediato.

Cuidado con las trampas de validación por delta (delta gating). Si tu línea base se actualiza en cada ejecución, puedes derivar hacia el fallo. Una caída de 0,5 puntos cada día pasa todas las pruebas. Te deslizas lentamente hacia un mal producto.

Sigue estos pasos para arreglar tus pruebas:

  • Actualiza tu línea base solo cuando tu rama principal esté en verde.
  • Requiere que un humano apruebe cualquier caída intencionada en las puntuaciones.
  • Tu línea base debe ser un registro de lo que funciona, no solo de lo que ocurrió la última vez.
  • Comprueba la varianza de tus últimas 5 ejecuciones exitosas. Si un segmento fluctúa más que tu umbral, tu umbral es ruido.
  • Prueba tu segmento más pequeño. Pregúntate cuánto puede caer antes de que el agregado lo note. Si la respuesta es un número grande, tu agregado está ocultando errores.

Fuente: https://dev.to/ethanwritesai/91-pass-rate-gate-green-shipped-worst-regression-we-had-all-quarter-4dfn

Comunidad de aprendizaje opcional: https://t.me/GyaanSetuAi