Aave Portals #939
Replies: 5 comments 9 replies
-
The process of getting whitelisted for portals to begin with relies on going through governance. So not only would they have to plead their case to Aave's community, their reputation is definitely on the line there. I don't think we need to worry too much about this until very long term if we want to start adding all our routers. |
Beta Was this translation helpful? Give feedback.
-
I think it could be helpful to provide fast liquidity to our bridge holders if Aave gets this done even if there are some more complex cases that we have to consider. I can see this proposal only on the governance page if I am not mistaken. but In case we assume that its already done and works well across several EVM networks, I think it would be better to have the feature to be accessible to only trusted routers in the beginning because of the security. Anyway, it can have more problems than we expect here. so could be ok to have just an interface for now if we MUST get this feature for fast liquidity. |
Beta Was this translation helpful? Give feedback.
-
Simplest implementation w/o trusted routers (that i can think of):
Problem here I guess is why stake on HQ chain just to supply liq on domain B? Why not just move that same liq to domain B? I mean, this would be great if we could stake on HQ and borrow on any chain, but then ofc we have the async problem enabling routers to under-collateralize. Some other thoughts for how to crush trust requirement:
I might type up a spec for this |
Beta Was this translation helpful? Give feedback.
-
Here are some useful links:
After reviewing all, here are some comments/questions:
|
Beta Was this translation helpful? Give feedback.
-
I realized my comment is a little confusing. So to clarify, my comment about "completely new feature that can be built on top" was related to the new functionality I mentioned about aTokens to aTokens for Aave markets for users. Regarding this described proposal for increasing liquidity when no fast-liquidity is available I think it looks good. Of course, it would be great if this is something that can be built on top too, but given the requirements, security concerns and how |
Beta Was this translation helpful? Give feedback.
-
Summary
Using Aave v3 portals when there is no fast-liquidity available to facilitate a transaction increases the capital efficiency of Amarok as a liquidity layer on top of the nomad message passing infrastructure. The functionality should be restricted to a trusted set of routers, and those routers should only use the unbacked positions if there is no liquidity available. The fee they charge should be sufficient to cover the position + any interest when the full amount comes through
Motivation
Aave v3 opens up a unique design space for bridges with their portal feature. Using the portals, bridges have access to large amounts of collateral by taking on unbacked positions for the duration of the bridging. It would be incredible to be able to utilize this feature when providing fast liquidity across nomad.
Design Requirements
Connext.sol
contract should be whitelisted as aBRIDGE
on AaveProposed Solution
The changes should be isolated to the
execute
andreconcile
function calls.In
execute
if there is no fast liquidity available, the function should check a registry to see if (1) there is a correspondingaToken
available on the chain and (2) if the given router has permissions to use Aave collateral. If both of these are true, then the router can callmintUnbacked
to get an uncollateralized credit line and deliver the adopted asset to the user. Otherwise, the function reverts.Once the mad assets are delivered by nomad, the contract should swap into the correct adopted asset and repay the loan + interest.
A step-by-step breakdown of this proposal is:
execute
aToken
for the desired adopted asset. If there is not, revertmintUnbacked
for an amount equal toprincipal - liquidity fee
. Note here that there is not an additional fee because liquidity is being provided by Aave. Instead, the default liquidity fee should be high enough to pay the interest back on the positionaToken
for the adopted assetexecute
flow (either execute the calldata or send the funds to the user)reconcile
reconcile
flowmadAsset
. If this is not enough, then additional liquidity should be withdrawn to close out the position.repay
with the underlying assetreconcile
flowDomain Requirements
Connext
listed as an approvedBRIDGE
on deployed AaveTest Cases
Open Questions
repay
without ever backing the unbacked loan?TokenRegistry
implementations (a singular token registry for cross domain representations, adopted versions, and aTokens)?Tasks
ConnextTokenRegistry
onlyOwner
functions to maintain whitelist for portal approved routers (approveRouterForPortal()
,disapproveRouterForPortal()
)execute
reconcile
Beta Was this translation helpful? Give feedback.
All reactions