Owner-controlled helper contract for batching whitelist removals across the Cork protocol, supporting global, market-specific, or combined removal modes.
function removeFromWhitelist(
WhitelistType whitelistType,
address[] calldata addressToRemoveFromWhitelist,
MarketId[] calldata marketIds
) external onlyOwnerWhitelistType:
Global— Remove from global whitelist onlyMarket— Remove from market-specific whitelists onlyGlobalAndMarket— Remove from both
forge install
forge build
FOUNDRY_PROFILE=optimized forge build # For productionforge test- Install deps:
npm install - Copy
.env.exampleto.envand fill:PRIVATE_KEY,ALCHEMY_SEPOLIA_URL,ETHERSCAN_API_KEY,WHITELIST_REMOVER_OWNER,CORK_CONTROLLER_ADDRESS - Compile (Hardhat):
npx hardhat compile - Deploy:
npm run deploy:sepolia(prints contract address and constructor args) - Verify:
npx hardhat verify --network sepolia <DEPLOYED_ADDRESS> $WHITELIST_REMOVER_OWNER $CORK_CONTROLLER_ADDRESS
- Owner-only access via
onlyOwnermodifier - Immutable references to
OWNERandCONTROLLERprevent modifications