-
Notifications
You must be signed in to change notification settings - Fork 2
feat: ✨ Add strETH (StrategyETH Flexible Vaults) Asset Adapter
#126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: ✨ Add strETH (StrategyETH Flexible Vaults) Asset Adapter
#126
Conversation
…tq-oracle into feat/streth-asset-adapter-sher
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds support for strETH (StrategyETH Flexible Vaults) to the oracle pipeline by introducing a new asset adapter and updating the report structure to include TVL in the base asset.
Key changes:
- Added
tvl_in_base_assetfield toOracleReportdata structure - Implemented
StrETHAdapterfor fetching strETH positions via on-chain multicalls - Integrated ABIs for Multicall and CoreVaultsCollector contracts
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/tq_oracle/report/generator.py | Added tvl_in_base_asset parameter and field to report generation |
| src/tq_oracle/adapters/asset_adapters/streth.py | New adapter implementing strETH position fetching with multicall |
| src/tq_oracle/adapters/asset_adapters/init.py | Registered StrETHAdapter in adapter registry |
| src/tq_oracle/pipeline/assets.py | Integrated strETH adapter into asset fetching pipeline |
| src/tq_oracle/pipeline/report.py | Updated report builder to pass TVL parameter |
| src/tq_oracle/constants.py | Added strETH, multicall, and collector contract addresses |
| src/tq_oracle/settings.py | Added configuration properties for strETH components |
| src/tq_oracle/abi.py | Added loader functions for new contract ABIs |
| src/tq_oracle/abis/Multicall.json | Multicall3 contract ABI definition |
| src/tq_oracle/abis/CoreVaultsCollector.json | CoreVaultsCollector contract ABI definition |
| tests/report/test_generator.py | Updated tests to include tvl_in_base_asset parameter |
| tests/report/test_encoder.py | Updated test fixtures with tvl_in_base_asset field |
| tests/report/test_publisher.py | Updated test fixture with tvl_in_base_asset field |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
superseded by #130 |
This pull request introduces support for the strETH asset in the oracle pipeline, including a new asset adapter, ABI integration, and configuration updates. It also updates the report structure to include the total value locked (TVL) in the base asset, and adds comprehensive tests for these changes.