Tuesday January 18th at 11am EST the Space Marmots project officially when live with a sale of SM1 tokens on OfferBin.io. You can read about the utility of the tokens and the project here. Full disclosure, I am a technical consultant for the Space Marmots project. We believe the sale was the first wide market launch sale using offer files and OfferBin and it was mostly successful. However, there were a few hiccups that the Space Marmots team will need to consider for the next release, and possibly some issues for Chia Network to resolve in the offer acceptance process.
First the good. From our side, the seller’s side, the process was very smooth. We generated the offer files using the CLI (code below, apologies to dark mode readers) and used curl to upload the to OfferBin. They all went up very well and people started accepting them right away. Too many people. And this is where our first issue came from. The dreaded “pending confirm” bug. Check out Digital Spaceport’s stream of trying to buy a token to see the frustration this caused.
$i=1
for(;$i -le 100;$i++)
{
$filename = "SM1offer$($i)"
Write-Host $filename
echo y | ./chia.exe wallet make_offer -f <walletfingerprint> -o 2:1 -r 1:2.3 -p "c:\offers\$($filename).offer"
start-sleep -seconds 30
}
So what was the problem? Basically if two people grabbed an offer file at the same time and tried to accept it inside the same block (or close enough that sync hadn’t caught up) the person who submitted the “accept offer transaction” second, as in submitted to the mempool, would end up locked in a situation where the client wouldn’t know what to do but would leave them Pending Confirm with their coins locked up.
This bug caused a number of the first people in line to get stuck in a state where they could not execute on the trade they tried to accept, and for a number of them without additional coins in their wallet to accept another. To the Space Marmots team and I this was unacceptable and we worked with those users affected to get them an extra offer.
There was an additional minor issue in the morning as well. We had run a small batch release to our mailing list as a test of the system, and sent 25 private OfferBin links. That did not work well so I attempted to send out the offers via attachments to an email – which worked great. The only hitch is that the last 25 created offers in the GUI did not match the last 25 created by file system timestamps so we ended up releasing extras there as well. All in all we ended up releasing 37 additional offers beyond our plan in order to avoid punishing the people who supported us immediately.
Because of this we have had a few takeaways, and will be doing our next releases differently. Details about that will follow shortly. But overall, we are very happy with the process. Considering we had to build no payment rails, and paid no fees to sell direct to our customers and the only unexpected outcome was we sold more than we planned we are considering it a great success. It has definitely re-affirmed our decision to use the decentralized tools available as much as possible, and convinced us that falling back on centralized infrastructure is not our backup plan – helping develop out the decentralized tools is.
Another advantage we have is accounting and auditability. All of the payment information is available to us in our client, and on-chain if we lose that. We are in a position to radically limit access to our funds even inside the team while allowing everyone to audit the entire business without access to confidential records. We have practiced good key management and wallet security, although there a lot of improvements that can be made here from a technology standpoint, and so are fairly confident in the financial management side of the business. Taking parts off-chain, like expenses paid in fiat, will be the most complicating piece.
For a small business launching a pre-release product the tools available to us here, while immature (we were the first, after all) were incredibly powerful. With a little skull sweat we can already see ways to scale this beyond what we thought was possible initially. There are some improvements that Chia Network and OfferBin could make to smooth this out, and I believe they are looking into those where possible. But all in all we think it was a largely positive experience for the Space Marmots community and we are excited for more.