aave-octant-integration
aave integration with Yield-Donation Stragegy
Created on 9th November 2025
•
aave-octant-integration
aave integration with Yield-Donation Stragegy
The problem aave-octant-integration solves
This project solve the sustainable public goods funding problem in web3 by creating DeFi primitive where users can deposit idle USDC into Aave v3 and automatically donate 100% of yield to public goods while maintaining full principal protection.
Key innovations:
- Zero-cost giving: Users lose nothing - they get back exactly what they deposited
- Passive funding: Generates continuous funding for Ethereum public goods without active donations
- Principal protection: Users maintain 1:1 share-to-asset ratio through innovative share minting mechanics
- Production-ready: Complete Aave v3 ERC-4626 integration with 5 safety mechanisms (supply caps, liquidity limits, emergency shutdown, loss protection, reentrancy guards)
Real impact: On just 1,500 USDC, the strategy generated 6 USDC in donations over 30 days - imagine scaling this to millions of dollars in idle treasury assets across DAOs and protocols.
Challenges I ran into
Challenge 1: ERC-4626 Vault Allowance Bug
- Problem: Withdrawals failed with "insufficient allowance" - the WETH ATokenVault had a deployment bug where it didn't properly initialize approvals to Aave Pool
- Solution: Switched test configuration from WETH vault to USDC vault (0x73edD...bC9E6) which was properly deployed, achieving 83% test pass rate (10/12 tests passing)
Challenge 2: 3-Layer Architecture Complexity
- Problem: Understanding how profit minting maintains 1:1 user PPS across User → Strategy → ATokenVault → Aave Pool layers
- Solution: Created detailed accounting documentation showing that minting NEW shares to dragonRouter increases both totalAssets AND totalSupply proportionally, preserving existing holders' share value
Challenge 3: Interface Casting in TokenizedStrategy
- Problem: Functions like keeper(), dragonRouter() exist in base TokenizedStrategy contract, not directly accessible from YieldDonatingStrategy due to delegatecall architecture
- Solution: Cast strategy address to appropriate interfaces (ITokenizedStrategy, IERC4626) when accessing inherited functions, maintaining clean separation of concerns
Tracks Applied (2)
Best public goods projects
Best use of Aave v3 (Aave Vaults)
Cheer Project
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.
