Uniswap V4 hooks must have their address match specific bit flags indicating which hook callbacks they implement. The HookMiner is used to find a salt that produces an address with the correct flags.
The deploy script mines for an address with BEFORE_INITIALIZE_FLAG, but the contract actually implements afterInitialize (setting afterInitialize: true in permissions). This mismatch will cause deployment validation to fail.
Likelihood:
This will occur on every deployment attempt using the provided script
The address mined will have incorrect flag bits
Impact:
Uniswap V4 PoolManager will reject the hook during pool initialization due to flag mismatch
Protocol cannot be deployed using the provided deployment script
Developers must manually fix the script before any deployment
Compare flag values - script uses BEFORE_INITIALIZE_FLAG, hook requires AFTER_INITIALIZE_FLAG.
Change flag from BEFORE_INITIALIZE_FLAG to AFTER_INITIALIZE_FLAG.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.
The contest is complete and the rewards are being distributed.