Hi, wanted to update everyone on the progress we are making with this proposal.
I’ve been building a proof of concept for the initialization phase proposal and after several discussions with @ari here are our findings:
Pros
- Bots can no longer front run when subgraph is first published
- Provides time for curators to research the subgraph
Cons
- GNS and Curation functionality become intertwined
- Increases likelihood of edge cases/attack vectors
How is it intertwined?
Whenever the Subgraph owner upgrades, all the signal is moved to a new deployment and that resets the initialization period. To avoid that, the GNS contract needs to pass data to the Curation contract.
Conclusions
GNS was designed to be independent from the Curation contract. If this change is implemented, it would move away from the original implementation and would require engineering time and auditor time to avoid unforeseen side effects.
How to avoid this complexity
If we flatten the curve in Curation and steepen it in the GNS(outlined in this proposal), we could implement this change without the added complexity on the GNS contract.
It lowers complexity for these reasons:
- GNS solely handles the shape of the bonding curve
- Curation contract no longer depends on GNS-specific data
Next steps
Get input from the community on our findings and also provide feedback on flattening curation bonding curve proposal.
Thanks!