The placeBid() function should emit BidPlaced events for regular bids and AuctionSettled events only when auctions are finalized.
The function incorrectly emits AuctionSettled event for every regular bid, before the actual bid logic executes, causing confusion in event monitoring systems.
Likelihood:
Occurs on every regular bid that isn't a buy-now purchase
Happens whenever the bidding continues past the initial checks
Impact:
Off-chain systems receive false settlement notifications
Analytics and monitoring tools show incorrect auction states
Users may think auctions are settled when they're still active
This test shows how the incorrect event emission confuses off-chain monitoring systems. The AuctionSettled event is emitted for regular bids, making it appear as if the auction has ended when it's actually still ongoing.
Remove the incorrect AuctionSettled event emission from the regular bidding flow. This event should only be emitted in _executeSale() when the auction actually settles. The BidPlaced event at line 176 correctly indicates a new bid has been placed.
placeBid emits AuctionSettled even though the auction hasn’t ended, causing misleading event logs.
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.