La complejidad en la cadena de suministro de software representa un riesgo significativo, y lo hemos cubierto de forma amplia, por ejemplo, en nuestros escritos en SBOM y SLSA. El talón de Aquiles para la mayoría de los equipos, sigue siendo la presencia de vulnerabilidades en las dependencias, usualmente dependencias indirectas que existen en varios niveles inferiores. Herramientas como Dependabot ayudan mediante la creación de pull requests (PRs) para actualizar dependencias. La pronta gestión de los PRs, especialmente cuando se trata de aplicaciones o servicios que no están en un proceso activo de desarrollo, demanda un alto nivel de disciplina en el ámbito de ingeniería.
Bajo las circunstancias adecuadas, ahora recomendamos la incorporación automática de PRs con actualización de dependencias. Para esto, el sistema necesita tener una cobertura de pruebas exhaustivas – no solo pruebas unitarias, sino que también pruebas funcionales y de performance. La etapa de construcción del pipeline debe ejecutar todos estos test, incluyendo escaneo de seguridad. En pocas palabras, el equipo debe tener total confianza que cuando el pipeline se ejecuta correctamente, entonces el software está listo para llegar a producción. En estos casos, la actualización de los PRs con dependencias, deberían poder ser incorporados automáticamente, aún cuando incluyan actualizaciones mayores de versión en dependencias indirectas.