Cross-Contract Liquidity Lock
Cross-contract liquidity lock is a failure where liquidity becomes trapped between an old and a new contract because the transfer mechanism fails to execute correctly. This often happens during a migration if the new contract cannot properly receive the assets or if the old contract refuses to release them.
This locks up liquidity, preventing users from withdrawing or trading their assets, which can cause panic and further instability. This risk is particularly high in protocols with complex liquidity pools or derivative positions.
To mitigate this, developers must ensure that the migration process is thoroughly tested, including edge cases where liquidity might be temporarily unavailable, and provide clear paths for liquidity recovery if a lock occurs.