First of all, congratulations for this post which clearly and simply explains how to use the parameters of the SMTs.
The first is the risk that the smart contracts will have a bug... we believe the idiom "All code is buggy"... With SMTs you get the reliability and security of Steem...
I would like to temper your enthusiasm.
Indeed, if your code is well written, everything will go smooth.
But if there is a bug in the SMTP protocol, which seems likely given the beliefs you express, all the SMTs will be affected, not just those with a buggy contract.
In this case, how can this be mitigated?
There are a few mitigations in place already.
We are repurposing existing code as much as possible. We are taking functions that were created to work only with STEEM and making them generic to work with SMTs without changing the functionality. This gives us a greater confidence in a large percentage of the behavior of SMTs as these functions have been battle tested over the last three and a half years. It is not a guarantee, but a high degree of confidence.
We are reserving more of our time for testing SMTs than we have with previous releases.
If there is a bug in SMTs, it will cause a chain halt for everyone. This will allow us to not only fix to first buggy token, but also fix every other SMT at the same time. It will also avoid situations like Ethereum Classic. Because the entire chain will halt, a bug with one token won't require rolling back the entire network and will keep everyone's coins safe.
The whole Steem chain will halt? Oof, we've had a lot of that. Please test in larger environments than before.
Posted using Partiko Android
While blockchain halts suck, the other options are much worse. I will take a temporary halt any day of the week if they don’t happen often. Plus, state files will be a big improvement for getting the chain up and running again if I understand them correctly.
This is what I would call "outsourcing of testing and debug onto a public chain".
Not to think of any other reasons one could use this against Stem itself..
Well, were there any bugs in the testnet?
Has the testnet even been tested?
That's a creative solution for handling bugs that could create a situation where the chain would otherwise have to be rolled back. Definitely the lesser of two evils.
Is there a quick way to mitigate such an occurrence while the problem with the code is diagnosed and corrected?
https://steemit.com/bitcoin/@janar115/easy-way-to-earn-crypto