Popcorn-Limited / vaultcraft-sdk

0 stars 2 forks source link

feat(protocols): add balancer and fix aura pool data issues #23

Closed 0xruhum closed 11 months ago

0xruhum commented 11 months ago

There was the possibility of the aura subgraph returning pool data with no data in the apr breakdown. I've added checks to handle those cases gracefully.

Also added Balancer support. We use the subgraph to get gauge data instead of on-chain contracts because it allows us to filter between gauges on the different networks. The on-chain controller also provided gauges that were located on polygon and arbitrum. It's a lot cleaner than the old implementation: https://github.com/Popcorn-Limited/vaultcraft-sdk/blob/97841f78e045c9141d09cc9157e826784406789d/src/lib/resolver/protocolAssets/resolver/balancer.ts#L7-L56

Also fixed a bug where the balancer APY resolver didn't filter the APR breakdown properly: https://github.com/Popcorn-Limited/vaultcraft-sdk/blob/97841f78e045c9141d09cc9157e826784406789d/src/lib/resolver/adapterApy/resolver/balancer.ts#L14-L16

It only includes BAL & Swap fees but there are other type of rewards as well, e.g. rETH, wstETH rewards, etc.