Akamon Bridge
Last updated
Last updated
To learn more about how rewards are distributed across users, read
Yield boost + MELD Banker support
The Cardano part of the bridge will automatically do native staking of the ADA stored on the lock contract. This rewards will be claimed every epoch and sent to a treasury address.
For EVM networks, where native liquid staking is not common, we use a set of smart contracts and tools
The following architecture applies to each individual network.
There is a main entry smart contract where users and admins connect for bridging-related actions and configurations
Start bridge from X to MELD
complete bridge from MELD to X
Configure yielding systems
The Main contract then connects to the different yielding protocols using adapters that allow for a common interface to be used.
Each Adapter will hold information on:
Amount currently staked on the Yielding protocol
Last timestamp of the rewards claimed
Available amount to withdraw instantly
0 for protocols that require unlocks to be requested
amount
for protocols that are fully liquid 1:1
something in between if there are limitations to the protocol, such as in the case of connecting to a lending and borrowing protocol that there is a limit on the amount of assets that can be withdrawn based on current liquidity
Other metadata
The requirements we should follow in order to validate the viability of an integration are:
Direct access to all operations from solidity. Code must be public and there needs to be a clear way of interacting with the contracts.
No direct fee neither to deposit or withdraw assets
Needs to be fully liquid, minimising the connections with time-locked protocols
All user deposits will go into the liquid pool of the contract. No automatic deposit into any yielding protocol will happen to minimise the gas cost of bridging into the MELD network for users.
Withdraws will first take the money from the liquid assets held in the contract. If more liquidity is needed, the protocol will automatically withdraw as many assets as needed from the Yielding protocols that allow for instant withdraws.
Each protocol will have a different mechanism to understand how many rewards were generated in the protocol. Due to the wide variety of ways that the ecosystem have invented to get rewards, it’s very difficult to cover the specific flow on each adapter. For the detailed implementation, please refer to the updated in the github repos
In general, each adapter needs to implement a way to calculate and withdraw rewards since last claim. This assets will be sent to a treasury address that then will bridge them to the MELD network and distribute across users.
The treasury takes a fixed fee of 15% of all rewards generated by the systems.
The distribution of assets among the different pools will be set using an admin function that has as inputs a set of instructions containing the following data.
Yield protocol to apply the action on top of
Amount
Deposit/withdraw action type
All withdrawn amounts will be held in the liquid pool unless instructed to be deposited in another protocol.
Protocols that do not have instant withdraw, also do not allow for instant rebalancing where money needs to be taken out of them. The adapters need to implement the capacity to request for a withdraw and potential claim actions needed in those protocols.
Rebalancing can be either automated with some thresholds, or manual on an admin portal. The system for rebalancing calculation is detailed in