No checks for total supply limits when minting new reSDL tokens. This could lead to inflation.
Stems from the SDLPoolPrimary.handleIncomingUpdate() and SDLPoolSecondary._queueNewLock() functions which mint new reSDL tokens without imposing any limits.
Specifically, in SDLPoolPrimary.handleIncomingUpdate(), the contract mints _numNewRESDLTokens by simply incrementing the lastLockId counter. There are no checks to prevent minting an excessive number of tokens: SDLPoolPrimary.handleIncomingUpdate
Similarly, in SDLPoolSecondary._queueNewLock(), new locks are queued without any limit besides the per-account queuedNewLockLimit. But even this limit does not restrict the total number of new tokens created. SDLPoolSecondary._queueNewLock()
The impact of this is that new reSDL tokens can be arbitrarily minted without any maximum cap. This could lead to unbounded inflation as the total supply keeps increasing.
Vs
I recommend adding a totalRESDLSupplyLimit variable and modifying the minting logic to check. This would prevent exceeding a defined maximum supply and mitigate the risk of unbounded inflation.
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.