fix: DeployLocal.sol feeDest 0xf6a3... may have code on Base Sepolia fork (#760)

This commit is contained in:
openhands 2026-03-14 20:21:32 +00:00
parent 99d6da7032
commit 89580171b7
2 changed files with 8 additions and 2 deletions

View file

@ -154,8 +154,10 @@ main() {
# as a contract and locks permanently. Strip code so they behave as EOAs. # as a contract and locks permanently. Strip code so they behave as EOAs.
bootstrap_log "Clearing code from deployer + feeDest (fork safety)" bootstrap_log "Clearing code from deployer + feeDest (fork safety)"
cast rpc --rpc-url "$ANVIL_RPC" anvil_setCode "$DEPLOYER_ADDR" "0x" 2>/dev/null || true cast rpc --rpc-url "$ANVIL_RPC" anvil_setCode "$DEPLOYER_ADDR" "0x" 2>/dev/null || true
# feeDest = address(uint160(uint256(keccak256("harb.local.feeDest")))) # 0xf6a3... carries 171 bytes of code on Base mainnet and may also carry code on Base
cast rpc --rpc-url "$ANVIL_RPC" anvil_setCode "0x8A9145E1Ea4C4d7FB08cF1011c8ac1F0e10F9383" "0x" 2>/dev/null || true # Sepolia. Clear it before setFeeDestination is called so LiquidityManager does not
# permanently lock feeDestinationLocked (#760).
cast rpc --rpc-url "$ANVIL_RPC" anvil_setCode "$FEE_DEST" "0x" 2>/dev/null || true
derive_txnbot_wallet derive_txnbot_wallet
run_forge_script run_forge_script

View file

@ -23,6 +23,10 @@ contract DeployLocal is Script {
uint24 internal constant FEE = uint24(10_000); uint24 internal constant FEE = uint24(10_000);
// Configuration // Configuration
// NOTE: 0xf6a3... carries 171 bytes of code on Base mainnet and has been confirmed to
// also carry code on Base Sepolia. bootstrap.sh erases it via anvil_setCode before
// setFeeDestination is called so the fork-local LiquidityManager does not permanently
// lock feeDestinationLocked. See issue #760.
address internal constant feeDest = 0xf6a3eef9088A255c32b6aD2025f83E57291D9011; address internal constant feeDest = 0xf6a3eef9088A255c32b6aD2025f83E57291D9011;
address internal constant weth = 0x4200000000000000000000000000000000000006; address internal constant weth = 0x4200000000000000000000000000000000000006;
address internal constant v3Factory = 0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24; address internal constant v3Factory = 0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24;