@levi Thanks for implementing this. This is a really clever solution to the problem of how to change parameters in the ledger, even though ledger doesn’t expose an API directly.
We (DFINITY engineers) are discussing this, but I wanted to give a quick thought.
The risk in making these changes is not so much internal to the ledger or SNS as it is the ecosystems outside of the SNS. Token symbols, decimals, and names are often widely distributed. What happens everywhere else in the ecosystem when those values are changed? There are liquidity pools, exchanges, and a variety of other dependencies on those values. And what exactly does it mean to change the decimals after a ledger has started collecting transactions? This is uncharted territory at this point.
So there are some relatively big risks there, and not just to the SNS that makes those changes, but to the broader IC and even crypto ecosystems.
What are the use cases that you’re targeting with this change? I’m wondering if we can find a way to accomplish those things that requires less risk analysis.