Summary
We are continuing to build SQL-based transformations with the goal of migrating/deploying them as Substreams:SQL packages. We’ve finished building a couple more protocols and learned a lot along the way. Specifically, one important thing missing is contract states, which are readily available in subgraphs but not in the data warehouse. There are specific protocols like Compound v3, that purposely chose to not emit events to save gas, are now very difficult to implement. We hope Substreams:SQL will provide the additional data we need for metrics integration.
We’ve started migrating Balancer to Substreams:SQL, focusing a specific pool so we don’t have to rely on dynamic data sources. We should have an initial PR on this in the next few days.
After having implemented an initial set of protocols, we feel confident to start thinking about abstractions. We are working on something similar to the Subgraph SDK we built to create patterns to maximize code reuse.
Looking back (what was delivered)
- Subgraphs
- Deployed 20 Optimism subgraphs to Arbitrum
- Bug Fixes
- Abracadabra: various optimizations on large array storage
- Portal: add
BFL
toBLACKLIST_TOKENS
list to fix price issues - Trader Joe: fix div by zero indexing error
- Uniswap v2: fix issue when token has unverified ABI
- Hop Protocol: add missing
WMATIC_XDAI
address to resolve indexing error
- SQL-based protocol transformations
- Compound v2
- Compound v3
- Balancer
Looking ahead (upcoming priorities)
- Subgraph maintenance
- SQL-based protocol transformations
- Curve
- MakerDAO
- Uniswap v3
- Aave v3
- Migrate completed SQL transformations to Substreams:SQL