How DeHive Deals with Bugs in Clusters: Interview with Our CTO, Pavel Horbonos
The team is the heart of any project. And we believe that you can only fully understand the project if you get to know the team behind it. That’s why we decided to share interviews with the DeHive team from time to time, answering your most frequent questions.
Today, we’re posting an interview with Pavel Horbonos, CTO at DeHive. Pavel is a Blockchain Solutions Architect with 5+ years of experience in C++, Solidity, and Rust. Except for occupying the role of our CTO, he is a current lead of DeFi analytics and blockchain security teams at Blaize and a blockchain solution architect at Zokyo.
Hey Pavel, good to see you. As a CTO, you have to deal not only with the pleasant part of developing new products but also with the ugly side of fixing bugs, looking for breaches, and so on. That’s why we decided to talk about various problems with DeHive Clusters that our team and users had to face in the past and how these issues are generally fixed.
Happy to see you too. Let’s do it!
First, can you please share the overall picture of such issues at DeHive?
Sure. When it comes to dealing with bugs and potential threats, we prefer to deal with them before releasing the product. For this reason, we run extensive tests before the launch and conduct various security checks on different stages of product development.
Such meticulous work allows us to eliminate all possible issues before even deploying a product. So on our part, any problems with smart contracts are very unlikely.
On our part? Do you mean there might be some issues due to other factors?
Yes, exactly. 99% of the problems that our users encounter come from the projects whose tokens we add to Clusters.
As you know, our Clusters (yield-generating crypto indexes created by DeHive) contain several different tokens from one chain. This means that if anything happens with one of them, the whole Cluster will stop working properly. So, for instance, if there is something wrong with the protocol or even if one of the tokens in the Cluster changes its address, our users will face issues.
And how long does it usually take to find the origin of the problem and fix it?
It depends on the situation. Some of the problems get fixed within one day, while others might take up to a week if they depend on other protocols. We hardly ever have issues that would take over ten days to resolve because we always have available developers who are ready to prioritize fixing bugs.
Sounds great! Can you tell us more about the most common issues you need to solve? You said something about tokens changing their addresses…
Right. There are three most common problems that we face when it comes to DeHive Clusters: issues with the protocol, the cases when a farming protocol does not update rewards, and when the token gets updated and changes its address.
- Issues with the protocol are probably the most frequent problem we face. For instance, when we were developing Impulses, QuickSwap suddenly changed their reward tokens (from QUICK to dQUICK + MATIC). So we had to migrate our Impulses to the new scheme as well.
- The situation when the farming protocol does not update rewards happened twice to our Clusters. The first time we faced it was with the Poly Cluster, where some tokens were redirected to the Aave protocol for farming. There were issues with replenishing the reward pool on that protocol, so we had to contact them every time and wait for them to top it up because we have no direct influence on such errors.
The second time such a situation happened with one of our Stables (stable instruments that enable automatic compound interest on stablecoins) based on Curve. That time, we could update the reward logic to be less dependent on Curve and its reward pools.
We believe that such a problem might occur again, so we are currently developing migration mechanisms that would make us fully independent on whether there are any reward tokens on the target protocol for farming.
3. Token updates and a new token address are the most serious issues we’ve faced during the whole time of Clusters’ existence. At first, we encountered it on Poly Gaming Cluster when the DG token by Decentralized Games migrated to a new address. To be precise, the whole protocol simply migrated to a different token. Since Poly Gaming Cluster was the first-generation V1 Cluster, we didn’t have an option to change one of the tokens in its structure at that time. So we had to create a mechanism for the Cluster structure optimization and fully extract this token.
Currently, we are facing a similar problem with BSC-deCluster, where one of the tokens, EPS, has migrated to a new address. In this case, the situation is a bit more complicated since the migration process was not so clear, and we had to contact the Ellipsis team to clarify the details. Now, our team is working on the solution to optimize BSC-deCluster as well.
Besides, the same problem could appear on de-Gnosis Cluster, which contains ELK token from our partners, Elk Finance. Being a good partner, the Elk Finance team has warned us in advance about the migration, which made it much easier for us. Besides, our Clusters on the Gnosis chain belong to the second-generation V2 Clusters, which means that they are more advanced and allow changing Cluster components. We’ve already developed the full procedure, and the team will change tokens soon.
That’s incredible! So you are saying all the problems that DeHive users might face are caused by other protocols?
Most of them. I would say 99%. There are still some issues that might occur through our fault, such as visualization and UI bugs. Yet, we are continuously improving our QA processes based on the feedback we receive from our users, so there will be minimum bugs like that in the near future.
So what should users do if they encounter some errors or major issues on the DeHive platform?
We’ve got incredible community managers on Telegram and Discord, which reply to all messages from our users and supporters. Discord also allows you to create support tickets if you have found an error in our dApp. Besides, there is an Intercom chat on our website, where you can find answers to all your questions and get any issue resolved.
Thanks a lot for sharing all the stories and answering our questions!
My pleasure. I’m sure our readers can find even more answers on our official Telegram channel. And get all the updates there, too. Have a good one!