diff --git a/foundry/src/TychoRouter.sol b/foundry/src/TychoRouter.sol index f26fa7c..bfdcdd3 100644 --- a/foundry/src/TychoRouter.sol +++ b/foundry/src/TychoRouter.sol @@ -14,7 +14,6 @@ import "@permit2/src/interfaces/IAllowanceTransfer.sol"; import "./Dispatcher.sol"; import {LibSwap} from "../lib/LibSwap.sol"; import {IPoolManager} from "@uniswap/v4-core/src/interfaces/IPoolManager.sol"; -import {SafeCallback} from "@uniswap/v4-periphery/src/base/SafeCallback.sol"; error TychoRouter__WithdrawalFailed(); error TychoRouter__AddressZero(); @@ -23,13 +22,7 @@ error TychoRouter__NegativeSlippage(uint256 amount, uint256 minAmount); error TychoRouter__AmountInNotFullySpent(uint256 leftoverAmount); error TychoRouter__MessageValueMismatch(uint256 value, uint256 amount); -contract TychoRouter is - AccessControl, - Dispatcher, - Pausable, - ReentrancyGuard, - SafeCallback -{ +contract TychoRouter is AccessControl, Dispatcher, Pausable, ReentrancyGuard { IAllowanceTransfer public immutable permit2; IWETH private immutable _weth; @@ -63,9 +56,7 @@ contract TychoRouter is ); event FeeSet(uint256 indexed oldFee, uint256 indexed newFee); - constructor(IPoolManager _poolManager, address _permit2, address weth) - SafeCallback(_poolManager) - { + constructor(address _permit2, address weth) { if (_permit2 == address(0) || weth == address(0)) { revert TychoRouter__AddressZero(); } @@ -380,9 +371,8 @@ contract TychoRouter is ); } - function _unlockCallback(bytes calldata data) - internal - override + function unlockCallback(bytes calldata data) + external returns (bytes memory) { require(data.length >= 20, "Invalid data length"); diff --git a/foundry/test/TychoRouter.t.sol b/foundry/test/TychoRouter.t.sol index 4ad7dd9..3116b7b 100644 --- a/foundry/test/TychoRouter.t.sol +++ b/foundry/test/TychoRouter.t.sol @@ -821,7 +821,7 @@ contract TychoRouterTest is TychoRouterTestSetup { // add executor and selector for callback bytes memory protocolDataWithCallBack = abi.encodePacked( protocolData, - SafeCallback.unlockCallback.selector, + TychoRouter.unlockCallback.selector, address(usv4Executor) ); diff --git a/foundry/test/TychoRouterTestSetup.sol b/foundry/test/TychoRouterTestSetup.sol index 6c99be8..9fb1f44 100644 --- a/foundry/test/TychoRouterTestSetup.sol +++ b/foundry/test/TychoRouterTestSetup.sol @@ -12,9 +12,7 @@ import {WETH} from "../lib/permit2/lib/solmate/src/tokens/WETH.sol"; import {PoolManager} from "@uniswap/v4-core/src/PoolManager.sol"; contract TychoRouterExposed is TychoRouter { - constructor(IPoolManager _poolManager, address _permit2, address weth) - TychoRouter(_poolManager, _permit2, weth) - {} + constructor(address _permit2, address weth) TychoRouter(_permit2, weth) {} function wrapETH(uint256 amount) external payable { return _wrapETH(amount); @@ -50,8 +48,7 @@ contract TychoRouterTestSetup is Test, Constants { address factoryV3 = USV3_FACTORY; address poolManagerAddress = 0x000000000004444c5dc75cB358380D2e3dE08A90; IPoolManager poolManager = IPoolManager(poolManagerAddress); - tychoRouter = - new TychoRouterExposed(poolManager, permit2Address, WETH_ADDR); + tychoRouter = new TychoRouterExposed(permit2Address, WETH_ADDR); tychoRouterAddr = address(tychoRouter); tychoRouter.grantRole(keccak256("FUND_RESCUER_ROLE"), FUND_RESCUER); tychoRouter.grantRole(keccak256("FEE_SETTER_ROLE"), FEE_SETTER);