Description
When we eventually launch V2 of the TradeFlow smart contracts, we cannot force users to migrate, but we need to signal that V1 is deprecated.
We need an Admin-only set_deprecated() flag on the pool contracts.
When deprecated is true, swaps should be permanently disabled, but liquidity withdrawals must remain permanently active.
This ensures a safe, non-custodial sunsetting process for older liquidity pairs.
Requirements
Description
When we eventually launch V2 of the TradeFlow smart contracts, we cannot force users to migrate, but we need to signal that V1 is deprecated.
We need an Admin-only
set_deprecated()flag on the pool contracts.When deprecated is true, swaps should be permanently disabled, but liquidity withdrawals must remain permanently active.
This ensures a safe, non-custodial sunsetting process for older liquidity pairs.
Requirements
is_deprecated: boolflag to the pool's instance storage.require(!is_deprecated)assertion to theswapandprovide_liquidityfunctions.remove_liquidityfunction intentionally bypasses this check so users can always exit.