There is lack of event emission for Critical Functions such as:
BidBeastsNFTMarket::_payout(), whenever the transfer is failed its amounts is transfered into failedTransferCredits mapping without emitting an event.
BidBeastNFTMarket::withdrawAllFailedCredits(), so the failed transfered amounts from BidBeastsNFTMarket::_payout() can be withdrawn by calling this function. Unfortunately, this function also not emitting an event whenever someone withdraw.
In BidBeastsNFTMarket::_payout() function :
In BidBeastNFTMarket::withdrawAllFailedCredits() function :
Likelihood:
When User/Bidder is a contract and the contract does not implement receive()/fallback() function its amounts is transfered into failedTransferCredits mapping
Impact:
It will confuse user/bidder, espeacially when _payout failed
create new events for _payout and withdrawAllFailedCredits
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.