The RamNFT contract currently lacks event emissions for critical state changes and doesn't utilize the immutable
keyword for variables set in the constructor. Addressing these issues can improve transparency and gas efficiency.
Lack of event emission
Impact: The contract does not emit events for minting NFTs and updating characteristics, which reduces transparency and makes it difficult to track these actions off-chain. Events are crucial for monitoring contract activity and debugging.
Tools Used: Manual code review.
Recommendation: Add event emissions for the mintRamNFT
and updateCharacteristics
functions.
Immutable Optimization
Impact: The organiser
variable, which is set in the constructor and never changed, should be marked as immutable
to save gas and enhance efficiency.
Tools Used: Manual code review.
Recommendation: Update the organiser declaration to use the immutable
keyword.
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.