LRT Issuance

LRT Issuer

Proposals made through the RioDAO ("DAO") are responsible for deploying a new Rio LRT. The DAO will interact with the LRT Issuer factory contract (RioLRTIssuer) when deploying new LRTs. The first Rio LRT, reETH, will be deployed by this contract, and all subsequent products will also be deployed using this method.

Specifically, the issueLRT function is used to generate the LRT asset and deploy its supporting contracts. Each LRT issuance requires the name of the token, token symbol, token decimals, and an LRTConfig defining the underlying assets, price feed decimals, Oracle price feed, operator reward pool address, and treasury address.

The following protocol components are also deployed in support of an LRT issuance:

These are all upgradeable proxy contracts as EigenLayer's definitions and ecosystem are subject to change.

Coordinator

Once a Rio LRT has been issued, the LRT Coordinator (RioLRTCoordinator) contract is the main point of control and interacts with many of the other contracts that were initially deployed by the Issuer contract.

Specifically, this contract is responsible for processing deposits, withdrawals, and downstream deposits into EigenLayer. In addition, there are a number of functions that assist in calculations such as TVL for the LRT, TVL per asset, and total balance for an asset (both in Rio and EigenLayer).

There is also an entry point on the Coordinator to rebalance a given asset which will process all pending deposits and withdrawals. This method is automatically called daily and will interact with all pending work to be done with the Deposit Pool and the Withdrawal Queue.

Last updated