Skip to content
aave-octant-integration

aave-octant-integration

aave integration with Yield-Donation Stragegy

Created on 9th November 2025

•

aave-octant-integration

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)

Technologies used

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.

Discussion

Builders also viewed

See more projects on Devfolio