Reseed contracts are responsible for setting storage variables during migration. Problem is that it forgets to initialize s.sys.silo.unripeSettings
, i.e. address and balanceOfUnderlying of Unripe tokens. It has several consequences on different modules of Beanstalk
s.sys.silo.unripeSettings
are not initialized after migration. All the contracts with migration logic are located in folder protocol/contracts/beanstalk/init/**
Values s.sys.silo.unripeSettings
are used throughout a codebase. It has a lot of different impacts:
Invariable.sol underestimates Bean entitlement
EnrootFacet.enrootDeposit()
doesn't work
Chop logic doesn't work, it means users can't convert Unripe tokens into Ripe tokens
And so on, I don’t see the point in listing everything. However I will add if necessary during post-judging period.
Manual Review
Initialize those values.
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.