The RAACMinter contract uses hardcoded block time assumptions (12 seconds per block) for calculating daily emission rates and update intervals. This makes the contract incompatible with L2 networks like Arbitrum (0.26s), Optimism (2s), or Polygon zkEVM (7s), potentially breaking the token emission economics when deployed on these chains.
The contract uses block-based calculations with hardcoded assumptions:
These assumptions affect critical functions:
tick() - Uses block numbers to calculate emission amounts
updateEmissionRate() - Uses block-based intervals for rate updates
Emergency controls - Use block-based timing for safety measures
When deployed on L2 networks, the contract will experience:
Incorrect Emission Rates:
Arbitrum: ~46x faster emissions (0.26s vs 12s blocks)
Optimism: ~6x faster emissions (2s vs 12s blocks)
Polygon zkEVM: ~1.7x faster emissions (7s vs 12s blocks)
Broken Time Controls:
Update intervals will be drastically shorter than intended
Economic Implications:
Token supply inflation will be much faster than designed
Market stability could be compromised
Cross-chain deployments will have inconsistent behavior
Manual code review
Replace block-based calculations with time-based ones:
Known issue LightChaser M12
Known issue LightChaser M12
Known issue LightChaser M12
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.