The withdrawTokens function emits TokensWithdrawn(to, token, amount) but the event is declared as TokensWithdrawn(address indexed token, address indexed to, uint256 amount). Emitting the arguments in the wrong order places the recipient address into the token topic and the token address into the to topic. Off‑chain indexers, explorers, and automated tooling that filter or decode events by the indexed token field will therefore receive incorrect data and misattribute withdrawals.
Likelihood:
Any call to withdrawTokens(...) will produce the swapped topics and thus trigger the mislabelling.
Impact:
dashboards, alerts, and automated workflows will see the wrong token/recipient mapping; important withdrawals may not be detected.
This demonstrates how an indexer expecting the token as the first indexed topic would be fed the recipient address instead:
Fix the event emission argument order to match the declaration. Replace:
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.