Open lkngtn opened 4 years ago
I'm feeling like I like the idea of staking against docstrings, but not loving that doing so requires a special token. Even if it is easy to acquire, people who are staking would probably prefer to use dai, cdai, or eth.
Instead of requiring the staking to be done in a special token, we can simply include a flat fee associated with adding an entry to the registry which is sent to the radspec organization and redeemable by Spec
holders. Spec
holders could be granted permission to collectively seed the registry with initial docstrings without fees, and also be rewarded with additional spec tokens for participating in votes.
To minimize efforts, I think we should use the dandelion template for the organization.
We can use the airdrop app to give spec tokens to people who participate in votes or submit registry entries and we can fork the address book app (or start from scratch) to create a the radspec registry application which allows for staking and aragon court disputes.
For the registry to be successful we want the following things to be true:
Initial idea:
Spec
tokens using a bonding curve (eg Aragon Fundraising)Spec
tokens against registry entries in order to add an entry. The entry with the mostSpec
staked to it is considered the "canonical" dosctring for that function.Spec
(in DAI/Dollars based on bonding curve exchange rate) staked to it along with the description. If they execute the function (or simply notice the docstring is inaccurate) they can create a dispute using the Aragon Court and if successful claim the Spec tokens.Spec
they may avoid interacting with contracts which are not on the registry, or which are on the registry but which are backed by too little stake relative to the consequences of the interaction, similar to how users interact with yelp.This idea provides reasonably strong guarantees for users to believe the registry is accurate and that it is safe to interact with the contracts. If a docstring is not accurate they have recourse up to the staked amount. When a user seeks recourse successfully they are also helping curate the registry for future users by reducing stake of the offending docstring to 0 and removing it from the registry.
Early contributors benefit if the registry gains traction by holding
spec
early on. As the registry becomes popular, gets integrated into wallets, and becomes an expected best practice for dapp/protocol developers to participate the number of registry entries and therefore the demand forspec
tokens will increase.Its possible that staking against registry entries could be done in a standard store of value asset like DAI or ETH and such a decision might make adoption among wallet providers and the Ethereum community easier, however, the benefit of using
Spec
is that it allows early contributors to benefit from bootstrapping the registry and growing its network effect, the bonding curve makes acquiringSpec
or exchanging it for the users preferred asset relatively painless.