RAACMinter::tick corrupts reward minting logicThe RAACMinter::mintRewards function improperly relies on the excessTokens value that's inflated by tick operations. While tokens are minted to StabilityPool, the Minter's tracking of excessTokens creates a phantom balance that enables double-counting and incorrect minting decisions:
mintRewards uses excessTokens to determine if new minting is needed
Actual tokens exist in StabilityPool while excessTokens suggests available balance in Minter
Results in either:
Under-minting: If excessTokens > real Minter balance, transfers fail from empty contract
Over-minting: If excessTokens < real needed amount, incorrect mint amount is calculated
Add this test case to RAACMinter.test.js:
High Severity - This mismatch between virtual and real balances can lead to:
Failed reward distributions breaking core protocol functionality
Unintended token inflation when minting to cover non-existent deficits
Accounting errors that compound over time making reconciliation impossible
Primary Fix: Remove excessTokens tracking for StabilityPool-minted amounts
Add balance validation in mintRewards
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.