dashhive / crowdnode-cli

Earn ~6% Interest on Dash via CrowdNode - CLI for Mac, Linux, and Windows
https://github.com/dashhive/crowdnode-cli
MIT License
4 stars 1 forks source link

Crownode Trustless on Testnet QA report #27

Open BFWookie opened 1 year ago

BFWookie commented 1 year ago

Here is a report on my experience testing the Crowdnode Trustless Staking Service.

I was able to perform most of the steps without issue, all the way from depositing 100 tDash, pledging it, signing the appropriate messages and confirmation that the shared masternode has been spun up. I did this again with 800 tĐ on another pooled masternode as well.

  1. The first minor issue I encountered was before I had deposited my Dash and pledged it. The progress bar indicating the number of pledged Dash in operation was fully green but stated that 1100/1000 was already pledged. It was strange to me that it was 1100/1000 as I would have thought a new masternode should have been spun up at 1000/1000. Is this some backend bug or process that fell behind on testnet?

  2. Then once I had deposited my 100 tĐ, and pledged it, the bar stayed on 1100/1000, but at the end of the progress bar it had expanded with a blue section with some text in it. I could not clearly read the text but highlighting and copying it showed that it said "Missing Signature". I have attached a GIF of this in action showing a pulsing blue bar with "Missing Signature" wrapped on top of each other so that they were not fitting into the bar. Minior UI bug here. Missing Signature

  3. Once I had gone through the rest of the steps of signing the required messages the progress bar updated to show all green again but with 1200/1000 pledged. I waited some time to see if this changed but after about an hour it did not. At this point I posted this result in the Crowdnode discord channel, and although I didn't get a response something happened and the process continued. The site now stated that the final signing steps must be performed by all parties. I'm not sure what is going on in the background at this point. Are there some manual steps to be performed by Crowdnode admins? Was this just testnet bug? After I was done there was still 200/1000 dash available.

  4. During the several singing steps I noticed that while some parts of the site would auto-refresh the signing verification process only showed: "Your approval signing status is: Pending backend validation" while a new refreshed window would show that validation has already passed. Since this step only takes a minute I would suggest having the status auto update so that the user doesn't have to refresh the whole page.

  5. While the "step by step process" links placed by Crowdnode are very detailed I still got caught by the "Unable to sign input, invalid stack size (possibly missing key)" error from the transaction signing steps. Maybe add that alert in the "Sign refund transaction" window as well as in the docs? Also what is the reason for this error from the core wallet? Can we share some more depth to why this error comes from the transaction signing process and why it can be ignored? This could be added to the docs.

  6. A day later I received an email alert that the process has completed and the new shared masternode has been spun up. Success! Mostly very straight forward process if you know how to use the core wallet, the steps are really detailed which, for someone who has never done this before, was easy to perform.

  7. Since there was still 200/1000 tĐ pledged, I now tried to pledge more and deposit 800 tĐ. I noticed that more of the pledge amount buttons are available now (100/200/300/400 etc) but I don't really know what my balance is on this screen. I would suggest adding a box to show the user's balance so they can make an informed pledging decision.

  8. After pledging 800tĐ I now see that the progress bar more clearly displays "Missing signature" in blue as there is more space.

  9. After I entered the pubkey, the screen refreshed and instead showed the 1st pledge tab which confused me until I realised I had to click the "2" tab. In fact each time I performed another step, like submit a signed message, it again refreshed back to tab 1.

  10. It now stated 1000/1000 tĐ pledged and status is "Waiting on pledges from other members". And after one night it changed to "Create masternode funding transaction" which was in the same box as the previous message, which kind of hides some of the steps going on in the background. Is that intentional?

  11. I also broadcasted the emergency refund transaction for the first pledge and INSTANTANEOUSLY received my 100 tĐ minus the penalty back in my custodial wallet. Wow it was fast. However there was no indication on the site that anything changed. After about 5 minutes the 1st pledged tab disappears and I'm left with just my 2nd pledge screen and in the TXs list I see my refund. Have not received any email notifications yet though. Perhaps adding some more automated communications and notices here would help?

At this point my 2nd pledge moved along and waiting on other users to sign their transactions, I will leave this pledge to run it's course.

I'm quite impressed with this setup, though it is complicated and you need to know what you are doing. The average user won't do this (which is what the trusted crowdnode service is for) but the above average blockchain enthusiast will without an issue. Some minor UI issues and processes that can be cleaned up but overall great work from Crowdnode. More work can be done to make the overall process smoother but I believe this would entail work from both Core Wallet Team and Crowdnode to achieve.