Description
Develop the LendingPool implementation contract that will serve as the template for all lending pools created by the PoolFactory.
Acceptance Criteria
Technical Requirements
- Use OpenZeppelin upgradeable patterns (Initializable, UUPSUpgradeable)
- Support both POL and ERC20 token pools
- Implement proper state management
- Include emergency pause functionality
- Follow EIP standards where applicable
Core Functions (Sprint 1 Scope)
- initialize() - Initialize pool with parameters
- getPoolInfo() - Return pool metadata
- pause()/unpause() - Emergency controls
- Basic getter functions for pool state
Data Structures
- Pool metadata (name, description, terms)
- Member management structures
- Loan tracking structures (for future sprints)
- Liquidity tracking structures (for future sprints)
Definition of Done
- LendingPool implementation is complete
- Successfully deployable as proxy
- Unit test coverage > 90%
- Integration tests with PoolFactory
- Gas optimized and security reviewed
Description
Develop the LendingPool implementation contract that will serve as the template for all lending pools created by the PoolFactory.
Acceptance Criteria
Technical Requirements
Core Functions (Sprint 1 Scope)
Data Structures
Definition of Done