DAO Treasurer / Token Cleanup Plan

in #sps20 days ago

Tomorrow, the Splinterlands website will be updated to pull the SPS supply numbers from the in-game database rather than from BSC. The BSC numbers are close, but not 100% accurate to match the in-game numbers. This is part of the eventual transition to the SPS validator software, at which point this information will be pulled from the validator software and will be able to be obtained and independently verified by anyone running the software.

Once that is done, the plan is to mint all 3B SPS tokens on BSC (and on other blockchains on which SPS is available in the future) to be held in a reserve wallet controlled by the DAO treasurers (note this wallet will also hold DEC reserves). The only time these tokens will need to be touched is if a lot of SPS or DEC is bridged to BSC and Terablock runs out of bridge liquidity. Terablock is only given access to a relatively small amount of tokens for the bridge for security reasons, so if they run low, they will notify the group and the treasurers will provide a relatively small amount more from the reserve wallet.

This means that on all chains on which SPS is used there will be two wallets controlled by the treasurers - one wallet that holds the DAO funds on that chain, and one reserve wallet with the extra tokens available for the bridge if needed. The same is true on the Hive blockchain, where currently the sl-cold wallet acts as the reserve wallet, and holds all of the SPS and DEC tokens that are held on ETH or BSC (and any other chains in the future).

The DAO funds and reserve wallets that the treasurers will control for each chain are listed below:

ChainPurposeWallet Address
ETHDAO Funds0xb4a84042F9Da14A4C46d704203f808A0B9FC93FA
---
ETHReserves0xC5465A401c8722fFcC0706EA0001a16DC9Da94f3
---
BSCDAO Funds0xdf5Fd6B21E0E7aC559B41Cf2597126B3714f432C
---
BSCReserves0xec93875c65476437Bd56E3eaAA0b799A5c69e5F6
---
HIVEDAO Fundssps.dao
---
HIVEReservessps.dao.reserves

We are in the process of setting up each of those wallets and once a test transaction has been made from each of them signed by 6+ DAO treasurers, all of the funds and reserve tokens will be transferred to them, at which point the treasurers will have full control of the DAO funds and reserves on all chains.

Sort:  

This post has been supported by @Splinterboost with a 12% upvote! Delagate HP to Splinterboost to Earn Daily HIVE rewards for supporting the @Splinterlands community!

Delegate HP | Join Discord

SplinterLands is moving forward indeed 🤔🔥🔥🔥💯

Thanks for sharing these updates. I have a few questions to ensure I fully understand the new system:

  • Validator Nodes: Once the validator nodes go live, will these same wallets continue to be used, or is there another update or cleanup planned for that transition?

  • From which wallets do tracking sites like CoinGecko or CoinMarketCap pull their data? Is it the reserve wallets, the DAO funds wallets, or another source?

  • It's a bit confusing regarding the total token supply. If 3 billion tokens are minted on BSC and there are already 200 million on ETH, doesn't this exceed the total of 3 billion? How do we ensure that no more than the total 3 billion SPS tokens are in circulation, considering some tokens are locked but not necessarily tracked by external parties?

  • Could you explain a bit more about the Terablock bridge agreement? I was under the impression that Terablock managed its own liquidity. When tokens are transferred from the reserve wallets to Terablock, does this not mean new SPS tokens are issued into circulation? If Terablock runs low on, for example, SPS on ETH, should they not be buying SPS on BNB to transfer to ETH themselves? Why does the DAO need to be involved in replenishing their liquidity?

I appreciate your time in clarifying these points!

In regards to validator nodes, they'll basically be like an L2 on HIVE and my understanding is they'll reconcile whatever tokens are not actively in use on HIVE to the reserve wallet which will then essentially escrow tokens that are not in circulation on HIVE but on other chains.

Part of the problem with coin tracking sites is they were set up a long time ago and the information isn't accurate. Part of updating them is giving them correct reserve wallets to correct circulating supply information. Essentially they'll be reconciling circulating supply on all chains to get an actual circulating supply. Have to finish clean up to submit correct info.

So every chain will have 3 billion tokens basically. Whatever isn't in use/circulation on the chain will be in a reserve wallet. Having all the tokens minted and properly managed and accounted for is better optics for the contract. Essentially there will be no further token minting.

I'm not super familiar with the Terablock setup. They have contracts and funds on the 3 chains we're currently operating on. They escrow funds on one side and release on the other. The amount of tokens they have isn't really very much, in the single digit millions iirc off the top of my head. Theoretically they could get way too one sided, like say 5 million on BSC and 100k on their BSC counter wallet on HIVE and could have to request more funds to provide liquidity. That's my best ELI5 understanding, but I haven't personally spoken to Terablock as that was all setup before my time.

It's a bit confusing regarding the total token supply. If 3 billion tokens are minted on BSC and there are already 200 million on ETH, doesn't this exceed the total of 3 billion? How do we ensure that no more than the total 3 billion SPS tokens are in circulation, considering some tokens are locked but not necessarily tracked by external parties?

Think about wrapped bitcoin as an example. Users send bitcoin to a "reserve wallet" on chain and receive an equivalent token on Ethereum or other chains. If you add up all the bitcoin on the bitcoin blockchain chain and all the wrapped bitcoin you can get > 21M because any wrapped bitcoin is also still on the bitcoin blockchain. Users trust the different bitcoin wrapper projects not to print more wrapped bitcoin than they have real bitcoin held on the bitcoin blockchain.

The same thing happens here. The in-game system is the source of truth for the total amount of SPS in circulation, and any wrapped SPS on other chains is held in the reserve wallet in-game. It will be necessary to trust the DAO treasurers to only send out tokens from the reserve wallet on external chains when they receive the same amount of tokens in the reserve wallet in-game and vice versa.

Regarding Terablock - it is not possible for them to "manage their own liquidity". There is a reserve account on Hive (in-game) that holds all tokens held on external chains, and there is a reserve account on external chains that holds tokens held in-game.

This is the only place that bridge liquidity can come from. A player transfers some tokens to the reserve account in-game, and then receives tokens from the reserve account on the other chain (or vice versa).

That only works, however, when the controller of the reserve accounts is running the bridge. In this case, a third party is running the bridge. So since we do not want to give them access to the entire reserve wallets, we give them a smaller amount from the reserve wallets on all chains they are bridging.

Typically, the amount of bridging in each direction is somewhat equal, so the amounts provided to them are enough and stay balanced. Sometimes, however, if many more tokens are bridged in one direction than the other, the bridge wallet on one side gets a lot of tokens and the other side can run out.

In this case the only way to resolve the situation is that Terablock sends tokens to the reserve wallet on the side that has a lot of tokens, and they are sent more tokens from the reserve wallet on the side that is low. This is how the bridge liquidity remains balanced.

Thanks Matt for the clarification 👍

I think it would be really interesting if, instead of a single sps.reserves account, it would be really interesting to see a distinct account for each of the major buckets in the SPS whitepaper and how much was left to distribute...

so you have a number of accounts to easily view the total balances:

sps.dao = all unrestricted funds from various activities, like pack sales, validator sales, etc
sps.dao.reserves.ranked = tokens to issue for ranked
sps.dao.reserves.staking = tokens to issue for staking rewards
sps.dao.reserves.lps = tokens to issue to various LPs - could break out further if useful)

sps.dao.bridge.eth = mirror the tokens that are actively issued and available on eth chain
sps.dao.bridge.bnb = mirror the tokens that are actively issued and available on bsc chain
(etc...)

Personally, I think that would make a nice clear picture of the state of active distribution of SPS...

Admittedly its a few more wallets to manage though.
(Maybe that's just me trying to think like an accountant)

More wallets requires more APIs and tracking by the coin sites. I don't think it's a bad idea but not positive what's feasible at this point until Validators go live.

Totally get it - always a balancing act between more operational complexity vs more granularity of information. Appreciate the reply and everything you do Clay!

The in-game reserves account will only hold the tokens that have been bridged to external blockchains. The validator software should allow you to see the type of information you're asking for without having to set up a whole bunch of different accounts for the treasurers to manage, as that information will be tracked by the software internally.

Sounds cool - it will be great to see these things live