-
Antes de lanzar una actualizaciรณn esta debe pasar por un riguroso sistema de pruebas.
-
Los desarrolladores invitan al resto de usuarios a realizar pruebas antes de actualizar.
Un problema grave, suscitado recientemente con el cliente Lightning Network Daemon (LND), ha causado que los desarrolladores de la red Lightning se cuestionen sobre las actuales metodologรญas de pruebas contra errores.
En el lanzamiento de LND, el pasado 23 de noviembre, se detectรณ un problema de compatibilidad, segรบn lo reportรณ CriptoNoticias, causando que este no pudiese abrir canales con otros nodos de la red que usaran el cliente c-lightning.
A propรณsito de la falla, el usuario bajo el pseudรณnimo X Raid, comentรณ la semana pasada, en la lista de correos Lightning-Dev, el desarrollo de una soluciรณn conocida como rBOX. Este tipo de protocolo permitirรญa que un cliente, prรณximo a salir, verifique su compatibilidad con el resto de clientes de la red.
Para X Raid, cada cliente, que actualmente se ejecuta en la red Lightning, deberรญa desarrollar su propio rBOX, el cual permitirรญa ejecutar las pruebas necesarias para verificar la compatibilidad.
ยซEsto para asegurar que la naturaleza crรญtica de LN estรก bien probada antes de que cualquier se convierta en un lanzamiento pรบblicoยป X Raid, desarrollador de Lightning Network.
Otro de los desarrolladores, en este caso Christian Decker, considera que, las pruebas de interoperabilidad, es ยซpoco probable que detecten cualquier problemaยป en caso de que no sean ยซmuy seriosยป. En este caso, recomienda a todos los usuarios, bien sean desarrolladores de Lightning Network, o solo tengan conocimientos tรฉcnicos del รกrea e interรฉs, hacer las pruebas tรฉcnicas de los posibles candidatos a salir. A mayor cantidad de prueba, menor podrรก ser el porcentaje de error.
Buenas prรกcticas a nivel de desarrollo
A nivel de producciรณn, tomando como ejemplo una empresa de desarrollo de software, el ciclo de vida pasa por dos etapas importantes, la programaciรณn del cรณdigo y la prueba del mismo. En empresas grandes, estas dos etapas se separan en desarrolladores y testers (anglicismo de test o prueba). Los testers se encargan de la verificaciรณn y control para que un software, pronto a salir a producciรณn, cumpla con los estรกndares de calidad.
Ahora bien, el ejemplo anterior se da en empresas establecidas. En el รกmbito Bitcoin trabajan, mayormente, programadores independientes. Si bien hay empresas que desarrollan tecnologรญas para Bitcoin, las pruebas de calidad son auditadas por los mismos desarrolladores.
En el caso de lo ocurrido con LND, el cual es un software desarrollado por Lightning Labs, una empresa dentro del rubro Bitcoin, la comunidad no pudo detectar el error. Para evitar que este tipo de problemas ocurra de nuevo, y como lo aconsejรณ el propio Decker, el boletรญn informativo Bitcoin Optech ha recopilado algunos de los principales clientes de Lightning Network en los que los interesados pueden hacer las pruebas correspondientes para ayudar a las mejoras de calidad.