One of the enticing aspects of Popsicle (henceforth referred to as its token ICE) is how the Sorbetto system can reduce the supply of ICE via perpetual buybacks and staking it, claimable proportionately by the ICE holders who have staked ICE and received a receipt called nICE. nICE itself being a bearer share.
Out of all of the supply of ICE:
X% is staked already as nICE, and is unavailable for sell or purchase while staked.
Y% is available for purchase within liquidity pools
Z% is on exchanges or just within people’s own wallets
Sorbetto only purchases from Y, from liquidity pools, therefore Y = Total Supply - X - Z.
As of time of writing, 85% of the supply is staked as nICE already. X = 85%
Without knowing the other values, it is clear that a very small single digit percentage is available as Y to purchase by Sorbetto, and this can be further constrained, as long as nICE stakers do not unstake and sell after any buyback. There would naturally be some market participants content with trying to arbitrage, who are already staking and wait for a Sorbetto buyback and stake, and unstake to collect the small amount of additional ICE they received and sell that, which could offset the supply constraints benefits that Sorbetto accomplished.
We can mitigate this by randomizing Sorbetto’s buyback and stake behavior.
Right now, Sorbetto buybacks are a centralized process, someone on the team controls the address that collects all the fees earned by Sorbetto and arbitrarily market purchases ICE. So far this has been in differing intervals (weekly, biweekly) etc. The purchases are called “Valhalla Candles” as they are relatively large market buy orders compared to other market participants in this community. They make large upwards candles on trading charts.
In this proposal, Sorbetto buybacks remain a centralized process, but masking which address buys and altering when they stake. It is more beneficial to make Sorbetto look like a normal market participant. So the new process would be to collect Sorbetto funds in a single address, and deposit the funds into Tornado.cash multiple times, in exchange for multiple Tornado.cash notes. Days later the notes can be withdrawn separately to never before seen addresses. Days after that some of the addresses buy ICE. Days after that some of the addresses stake the ICE for the nICE stakers. At the end of the quarter, a third party can audit the Sorbetto fees and Tornado.cash notes to provide the community with a report on the accounting to give assurances that it matches up and that there were no improprieties. Most privacy technologies in crypto provide optional transparency for auditors and we can use this here. It also ensures that there is a completely benign and legitimate use of privacy technology in a professional context, which comes with the additional benefit of making it easier for the rest of us to use privacy technologies.
The goal is to make Sorbetto indistinguishable from a normal buyer. To that end, a stretch goal could be for the new addresses to initially interact with a variety of other tokens and DeFi projects who eventually buys ICE. At the value amounts we are expecting, this will have a negligible and mostly fixed cost to do (in funds used and network gas) and will not materially impact the earnings from Sorbetto or the amounts of ICE bought back.
On the implementation front, this can be made seamless using the “master publickey” technology available in the Ethereum concept, available on all EVMs (Ethereum Virtual Machines, like Ethereum, Fantom, Binance Smart Chain etc), and is also core to the Hierarchical Deterministic Path concept behind the “seed phrase” or “wallet recovery phrase” which is completely chain agnostic. Behind every seed phrase there are infinite addresses on infinite branches. (For ease of use, wallets typically reveal the first address on a predetermined branch, but any wallet, such as metamask, allows for infinite additional addresses to be made under their “create account” option, but even metamask is only sticking to one predetermined branch out of infinite possible branches). The Master PublicKey allows for generating the public keys without showing the private keys. This is useful for oracles and servers and auditors and communities to see and use, without needing the seed phrase that the signer actually uses to access the private keys.
This follows a variety of the best practices in the crypto space around privacy and never re-using addresses. We can don’t have to NEVER reuse addresses, but there is no reason not to either.
Goal: make Sorbetto look like indistinguishable from a normal purchaser, reveal which ones were Sorbetto quarterly or at least show an audit that ensures the funds are distributed properly