tokamak-network / tokamak-thanos

MIT License
7 stars 3 forks source link

(Suggestion) Add an event for remaining NativeToken #269

Closed Zena-park closed 3 days ago

Zena-park commented 5 days ago

How about adding an event to detect when funds are locked? If _value != 0 && _target != address(0) and after the call is finished, then add an event if allowance is not 0, so that you can detect that funds are locked in this contract.

https://github.com/tokamak-network/tokamak-thanos/blob/c3a2bd6f768f0719a63fa1e0231eaae1d42f9e24/packages/tokamak/contracts-bedrock/src/L1/L1CrossDomainMessenger.sol#L305-L307

   if (_value != 0 && _target != address(0)) {
       uint256 allowanceAmount = IERC20(_nativeTokenAddress).allowance(address(this), _target);
       if (allowanceAmount != 0) {
           emit RemainedAllowanceNativeToken(target, _value, allowanceAmount);
           IERC20(_nativeTokenAddress).approve(_target, 0);
       } 
   }
theo-learner commented 5 days ago

Thanks for your suggestion. The allowance is set to 0 for security reasons regardless of message relay failure.