The LendingPool contract imports and relies on the IRAACHousePrices interface to interact with the RAACHousePrices oracle contract. However, RAACHousePrices does not explicitly inherit IRAACHousePrices. This creates a dangerous disconnect:
The compiler does not enforce that RAACHousePrices implements the interface's functions correctly (e.g., matching parameters, return types).
The LendingPool blindly assumes RAACHousePrices adheres to IRAACHousePrices, but there is no technical guarantee.
->
The core issue is lack of explicit interface inheritance:
Developers assumed RAACHousePrices matches IRAACHousePrices by naming convention alone.
Solidity does not perform interface compliance checks unless a contract explicitly inherits the interface.
Lending pool contract is totally relying upon the interface compatibility for critical feature of the protocol getting price from oracle.
Modify RAACHousePrices to explicitly inherit IRAACHousePrices
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.