Under the documented protocol behavior, a non-whitelisted wallet is not allowed to mint, but it is still allowed to participate in the secondary market. The docs explicitly state that a non-whitelisted user can:
buy
update price
cancel listing
list NFT
collect USDC after selling
That means whitelist status is intended to gate minting, not ownership rights on already-held NFTs.
However, the implementation adds onlyWhitelisted to list(), which prevents a non-whitelisted holder from listing an NFT for secondary sale:
Likelihood:
The issue occurs whenever a non-whitelisted NFT holder attempts to list their NFT on the secondary market.
Impact:
Legitimate NFT holders can be blocked from accessing the documented resale flow.
Paste this inside NFTDealersTest.t.sol:
If the documentation is the intended behavior, remove the whitelist restriction from list() and keep whitelist gating only on minting.
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.