GivingThanks

First Flight #28
Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: medium
Invalid

Lack of Event Emissions in `CharityRegistry.sol`

Description: The contract does not emit events for important state changes, making it difficult to track changes off-chain and limiting transparency.

Impact:

  • Difficult to track contract state changes

  • Limited transparency for users and front-end applications

  • Challenging to build meaningful monitoring systems

  • Poor auditability of contract usage

Recommended Mitigation: Add events for registration, verification, and admin changes such as given below:

// Define events
event CharityRegistered(address indexed charity);
event CharityVerified(address indexed charity);
event AdminChanged(address indexed newAdmin);
// Implement in functions
function registerCharity(address charity) public onlyAdmin nonZeroAddress(charity) {
registeredCharities[charity] = true;
emit CharityRegistered(charity);
}
Updates

Lead Judging Commences

n0kto Lead Judge 12 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.