Last Man Standing

First Flight #45
Beginner FriendlyFoundrySolidity
100 EXP
View results
Submission Details
Impact: low
Likelihood: low
Invalid

Unindexed Timestamp in Event Reduces dApp Query Efficiency

Root + Impact

Description

  • Normally, dApps and indexers rely on event logs to reconstruct contract state and activity. Events with indexed parameters can be easily filtered and queried off-chain.

  • In this case, the timestamp field in the ThroneClaimed event is not indexed, which makes it harder for frontend interfaces or indexers to efficiently retrieve claims based on time.

event ThroneClaimed(
address indexed newKing,
uint256 claimAmount,
uint256 newClaimFee,
uint256 newPot,
uint256 timestamp //@> Not indexed
);

Risk

Likelihood:

  • Happens anytime ThroneClaimed is emitted

Impact:

  • dApps or indexers may have performance issues when filtering claims by time

  • May lead to a poor user experience in dApp interfaces displaying throne history

Proof of Concept

Recommended Mitigation

Index the timestamp field in the event:

event ThroneClaimed(
address indexed newKing,
uint256 claimAmount,
uint256 newClaimFee,
uint256 newPot,
- uint256 timestamp
+ uint256 indexed timestamp
);
Updates

Appeal created

inallhonesty Lead Judge about 2 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.