REN Darknode Pool

I’ve been putting together some design ideas for a REN Darknode Pool, similar to a Yearn VAULT and managed via a DAO. Trying to make this as much trustless, non-custodial as possible

Below are some of my thoughts on how to make this happen. Please feel free to comments, suggest ideas and mark areas of concern.

GNOSIS Multisig

  • Owns the Operator Wallet with all the darknodes / REN
  • Multisig has 3-5 community members & 2-3 operators/dev
  • Operators/dev manage daily operations, pay for node costs, improvements etc.

Snapshot.page (or Aragon) to manage decisions (DAO)

  • Increasing / decreasing fees
  • Changing paramaters
  • Changing Multisig people
  • Governance of REN DAO (when available)

Node Operations

  • First Node/Operation starts with min 130000 REN: 100000 for Node, 1000 for ETH Gas, 29000 allows for people that want to exit.
  • For each extra node 110000 is needed: 100000 for Node, 1000 for ETH Gas, 9000 allows for people that want to exit.
  • Monthly Fees: 10% node rewards (8% back to the operators to pay for HW & general operation & 2% to a SAFU fund managed by the multisig)

LP Smart Contract

  • Multisig is owner of the LP contract
  • Contract has function for people to provide / lockup liquidity, (returns a token representing their proportion that can be traded MAYBE)
  • Contract has function to claim rewards (monthly) proportional to the liquidity provided
  • Contract has functions to withdraw money to the multisig to setup new nodes
  • Contract has functions to receive money from the multisig when a node is disbanned
  • If no spare REN in Contract, withdrawals have a 2 month delay in case we need to stop a node (MAKE THIS CLEAR IN THE T&C)
6 Likes

@calavera - thanks for posting this! I like the general framework you’ve laid out. We’ve had discussions here and there publicly/privately, but never this formally and openly, so I respect the initiative!

My immediate thoughts off top of mind:

  • I believe ETH gas won’t be a variable in the next iteration
  • Initial breakdown of the economics looks like a solid first pass
    a) something that we can definitely further flesh out with discussions/survey of potential users. I personally think we might want a larger cushion for people that would like to unstake, but doing so would decrease the % utilization of AUM
    b) we’ll need to model out the projected returns for this to determine how we can make it profitable for operators and sustainable long term

I look forward to hearing more thoughts from the community - thanks again for posting this up!

Just to my understanding, is this proposal seeking to deviate the purpose of Ren project into something different to specialising into being the interop protocol of choice in Defi?

Hi @Maggie, no, this would be a separate idea/project to what REN is developing, definitely in the interest of REN as a whole that would allow smaller players be able to be a LP in Darknodes without having to bond the full amount of REN needed.

1 Like

Thanks for submitting this idea.

How do we decentralize the ownership and management of the servers used for the REN nodes?

As far as I know a person/entity needs to be tied to a AWS, DO or GC account.

How can this be made trustless?

Hi @KDogg, good question and I don’t have a good answer. The whole purpose of putting this up is to try to get ideas from the community… So far it would be tied to one of the Operators…

1 Like

Hi @calavera thank you for clarifying. Could you also please clarify if this darkpool is to be designed, developed, run and maintained by the Ren community and/or whether there is any expectation of team participation?

Thanks for starting this conversation!

I think the best solution for holding additional capital and people wanting to remove their tokens from the nodes is to offer different pooling options.

Some Pools could have fixed terms to them - say 1, 2, 3 Year fixed term pools. These could be offered with higher reward distributions since there would be less admin involved as don’t need to worry about registering / deregistering nodes each month, and also it’s more capital efficient as you don’t need to hold additional tokens for deregistrations.

You could then also offer a pool where people can release their tokens at any time but receive a lower portion of the rewards compared to the fixed term pools.

3 Likes

I would like to this to be community run as much as possible. ATM, all I want to create visibility of this idea, gather feedback on the design and economics and see who are willing to work on this.

1 Like

Thank you. Those are good ideas, will add them to my draft. However Initially I would like to keep things as simple as possible. Maybe start with a min 3 month lockup on any new entry, but yes, we could offer different options with different yield in the end.

I would be tempted to say that if you want to make it as simple as possible, then just start by offering 1 year fixed term pools. Once pools are filled the darknode is set up and deregistered after 13 epochs of revenue (so they get it back after 15 epochs).

This way you don’t need to worry about deregistrations and holding spare capital during the period, which should make the setting up of the pool far simpler. Just my two cents…

3 Likes

Very cool to see others are thinking of this as well.

I have done a lot of the development already on this exact idea.

Would love to get some testers once its deployed on the testnet!

2 Likes

@Brosky
Hello Brosky,

I’m happy that my post brought some attention to this. If you are already building this idea, then I’m happy if you want to collaborate somehow. Happy to do some testing and share further on some of my ideas.

Let m know how would you like to comunicate. I’ll share my telegram via PM

Best regards

Seems there is no PM functionality here… hope not to get too scammed…lol

Under Node Operations I was thinking to have your Ren Locked for certain durations: ie 3 epochs, 6, or 12. Each deposit duration has different fee’s; perhaps lower for longer durations to incentivize lockups. From my research into “Liquid Staking” RocketPool is tackling this in regards to eth2 staking with amounts lower than 32 whilst allowing for withdrawals. It may be advantageous to see how their approach is.
Looking forward to see how REN finds a solution to this.

1 Like

OP Why do you feel that 10,000 nodes is not enough?

I think when income stabilizes, RenVM will find some equilibrium between circulating Ren staked in DEFI protocols and trading in the open market, and REN locked in Dark Nodes and some speculators/traders that hold tokens looking for price movements.

50% locked producing @ 15% APY
30% staked producing @ 12% APY
20% traded / held

There must be some diminishing marginal returns of security at some point when it comes to decentralization, after X the additional value of more nodes becomes less relevant, perhaps that number is 10,000, maybe it is even less.

Maybe I’ve misunderstood but I believe the gasless element in the next iteration is with regards to having to claim fees, withdrawing them I believe would still involve gas but maybe one of the team can confirm?

Yeah withdrawing will always involve gas, since it’s a transfer of tokens from one address to another.

I second that idea. 1 year long term to join a shared darknode would offer the best ROI and stability. Otherwise it could become a little too crazy. If that pilot shows promise, then additional terms 3- 6- 24-months for example could be added.

Always there are who wants to deregister and who wants to register, just merge the requests and keep the nodes running as it is.
This will minimize the process of node deregistration and registration to a minimum and will give benefits to all parties including the node operators.

No need to wait for a lock period to withdraw
No need to wait for node activation to start earning.
less work for node operator.
withdraw/deposit fee applied by the operator.