Especialmente en una conexión muy lenta (y limitándola a edge en devtools), este efecto es dolorosamente visible donde está lleno al 90% pero la página no se ha cargado. Esto es principalmente un mal diseño, ¿no debería mostrar un progreso real para ser de alguna utilidad y no solo una nueva versión del spinner?
Ese nunca fue el objetivo, y mostrar el progreso real de un recurso dinámico de tamaño desconocido a través de un medio de rendimiento variable no es una hazaña trivial.
Actualmente, parametriza la animación basándose en el promedio de las últimas transiciones y se detendrá al 90% cuando esta transición específica tarde más que el promedio.
Las barras de progreso son útiles principalmente como una herramienta psicológica tranquilizadora para el usuario, más que como un indicador de la cantidad precisa de progreso que algo ha completado.