v4-core icon indicating copy to clipboard operation
v4-core copied to clipboard

Treat WETH/ETH Interchangeably

Open ewilz opened this issue 1 year ago β€’ 3 comments

Component

No response

Describe the suggested feature and problem it solves.

In the take() and settle() (as well as any ETH pools) WETH/ETH become interchangeable and users may withdraw or deposit either token. Pros

  • Shared liquidity for pools with eth/weth.
  • Integrations don’t need to worry about wrap/unwrap

Con:

  • Must always check balance before withdrawal for solvency, must unwrap/wrap when balance is too low for desired currency.
  • Core becomes opinionated about the canonical WETH.
  • Muddying core with more logic that could be dealt with elsewhere
  • Griefing poolManager is trivial (griefer can set poolManager to have only ETH)
  • Solving liquidity fragmentation seems futile since it's already running rampant in v4 anyway

Describe the desired implementation.

No response

Describe alternatives.

No response

Additional context.

No response

ewilz avatar Jul 03 '23 15:07 ewilz

It could indeed simplify the user experience, particularly for newcomers who might not be familiar with the concept of WETH and I don't think deciding on a "canonical" WETH could be seen as favoritism.

EphemerisNetwork avatar Jul 05 '23 21:07 EphemerisNetwork

consider adding a 3rd custom WETH that is also interchangeable, and includes improvements like permit

haydenadams avatar Jul 06 '23 15:07 haydenadams

fwiw I think the team is pretty split on this, without anyone being a diehard must-have, but we have some pretty strong no's. cons seem to outweigh the pros.

ewilz avatar Jul 07 '23 15:07 ewilz