Creating a dedicated thread to continue discussions around this idea raised by @DataNexus:
Problem: The way the bonding curve currently works means that the person who signals first to a subgraph has the highest reward with the lowest risk - irrespective to legitimacy of the subgraph. This has results in bots jumping in while skipping the process of verification.
Solution: Subgraphs are deployed to the mainnet in 2 stages.
Stage 1 - Show Room:
For 2 days a subgraph is listed in the show room for curators to inspect and verify. DApps are informed of this stage and have incentive to confirm to the community that they are the legitimate source of the deployment. After 2 days, a subgraph will calculate the total signal and each curator who signaled during the show period will receive the a common value and shares proportional to the GRT they signal.
Stage 2 - Production:
Now that everyone Show Room participant has a proportional seat in position 1. From there we move on the bonding curve. Later signal is rewarded less but has greater confirmation of query traffic.
Initial feedback provided by @chris:
@DataNexus, thanks for posting this idea! I came to a similar conclusion. Essentially all deposits within some initial period go into a bootstrapping pool, and this pool is then used to make the first buy into the curation bonding curve. All pool depositors get an equal price for curation shares.
One issue is that this potentially creates a much larger initial buy size, which slightly heightens an economic attack vector (which exists anyway): if initial pool depositors can add their funds to the pool, and then withdraw those funds immediately after the pool bootstraps the bonding curve (at 1:1, since immediately after the conversion, the bonding curve is at the 1:1 redemption floor), then that creates an opportunity for initial pool depositors to influence the subgraph’s curation economics (i.e. the point at which the bonding curve kicks in) with minimal cost outside of the curation tax. It’s a griefing attack of sorts. This may not be a big issue though given the curation tax.
In terms of the wider protocol, even while the subgraph curation is in bootstrapping pool phase, both signalled tokens and signal shares (key datapoints) can still be reported and relied upon, they’d just imply an equal share price for all depositors, rather than the typical bonding curve dynamics which would only kick in after conversion to the curve. So even in the initial period (e.g. 2 days), indexers can rely on reported signal to begin indexing the subgraph and serving queries.
Definitely not an expert on these things though, so looking forward to other folks weighing in.