A serious issue, recently raised with the Lightning Network Daemon (LND) client, has caused Lightning network developers to question current bug-proofing methodologies.
At the launch of LND, on November 23, a compatibility problem was detected, as reported by CriptoNoticias, causing it to be unable to open channels with other network nodes that use the c-lightning client.
Regarding the failure, the user under the pseudonym X Raid, commented last week, on the Lightning-Dev mailing list, the development of a solution known as rBOX. This type of protocol would allow a client, soon to go out, to verify their compatibility with the rest of the clients of the network.
For X Raid, each client, currently running on the Lightning network, should develop their own rBOX, which would allow to run the necessary tests to verify compatibility.
“This is to ensure that the critical nature of LN is well tested before any becomes a public release” X Raid, developer of the Lightning Network.
Another developer, in this case Christian Decker, considers that interoperability tests are “unlikely to detect any problems” if they are not “very serious”. In this case, it recommends that all users, whether they are Lightning Network developers, or only have technical knowledge of the area and interest, do the technical tests of the possible candidates to leave. The greater the amount of testing, the lower the error percentage may be.
Good practices at the development level
At the production level, taking a software development company as an example, the life cycle goes through two important stages, code programming and code testing. In large companies, these two stages are separated into developers and testers (test or test anglicism). The testers are in charge of the verification and control so that a software, soon to go into production, meet quality standards.
Now, the previous example is given in established companies. In the Bitcoin field, mostly independent programmers work. While there are companies that develop technologies for Bitcoin, quality tests are audited by the developers themselves.
In the case of what happened with LND, which is a software developed by Lightning Labs, a company within the Bitcoin sector, the community could not detect the error. To prevent these kinds of problems from happening again, and as Decker himself advised, the Bitcoin Optech newsletter has compiled Some of the top Lightning Network customers that stakeholders can test accordingly to help quality improvements.