Replies: 4 comments 4 replies
-
Very good point! Would definitely understand how some users wouldn't be OK with the flash-loan ability the protocol has regarding their token. IMO, it would be unfortunate to completely remove it as it's a clear revenue stream, and no one will complain about it (on the contrary) if we do it for stablecoins only. Problem is we can't just tell people "trust us, we will only ever allow flash loans for stablecoins", so we will have to hard code it in the contracts as you said, I guess. |
Beta Was this translation helpful? Give feedback.
-
Interesting case but I don't see it as a reason to remove loans entirely.
Possible solution for these "trust assumptions" A time-lock contract can be designated the "manager" for the flash-loan mapping. This contract will lock the ability to change the list to anything other than USDC/DAI/3CRV for a period of 2-3 years. This gives us time to properly understand the economic risks while also earning fees on stables. |
Beta Was this translation helpful? Give feedback.
-
Same here I don't see why we would completely remove flash loans because of some potentials "knee-jerk reaction", we should focus on the "The rational answer".
I like this idea, but 2-3 years would be a little too much IMO, 1 year should be fine. Random ideaGoing to say at first that is quite complex. In the actual implementation of the |
Beta Was this translation helpful? Give feedback.
-
Locking since we have landed on a soft agreement to keep flash loans. |
Beta Was this translation helpful? Give feedback.
-
During my work on adding support for ERC-3156 flash loans in the
SablierV2Lockup
contracts (see #277), I thought about the following scenario.Imagine you have just launched your token and you have a governance system in place, which allows token holders to vote on proposals. Imagine that you hear about Sablier and you are interested to set up streams for your team and your investors.
Now, someone tells you that the Sablier V2 contract admin has the ability to turn on flash loans for any token being streamed via the Sablier V2 protocol.
How would you react to this?
The rational answer should be that you don't care - your governance system is presumably flash-loan resistant, lest the system is guaranteed to break in the future, e.g. when creating a lending market on Aave for your token.
However, people can sometimes be irrational, and their knee-jerk reaction might be to eschew using Sablier just because of the possibility of flash loans being turned on. One doesn't have to assume that the contract admin is malicious - assuming that the admin key can be compromised suffices in this context.
Therefore, I wish to re-consider the flash loanability idea and/ or implementation. As much as I am on board with the revenue-generating benefits of flash loans, I wonder if this will not end up losing us users, and thus earning less broker and protocol fees in the long-term.
One potential workaround is to limit the flash loans to a stablecoin allowlist - we would hard-code the addresses of USDC, DAI, etc., in the contract constructor. This is not obviously not great, since it would add additional complexity in contracts that are otherwise already complex, and it would also limit the protocol to a few asset addresses that might change in the future, but the idea makes sense.
I would be very curious to hear your thoughts on this concern - @razgraf, @maxdesalle, and @andreivladbrg.
Beta Was this translation helpful? Give feedback.
All reactions