aragon / nest

A grants program to support the development of the ecosystem
https://aragon.org/project/grants
Creative Commons Zero v1.0 Universal
140 stars 78 forks source link

Aragon Nest Proposal: Make DApps to be managed through DAO #55

Closed cancue closed 6 years ago

cancue commented 6 years ago

Aragon Nest Proposal: Make DApps to be managed through DAO

Abstract

Since Ethereum provided the decentralized infrastructure, many DApps have been built on it. However, most of them need privileged ownership that can execute owner-only functions of smart contract for managing purpose. While it is necessary, it causes trust issues at the same time. Many DApps had to give up flexibility in this tradeoff relationship between trust and flexibility of smart contract.

What if there is a tool that makes it much easier to manage DApps by DAO? The tool can be created for both new and existing DApps. DAO-to-DApp can bring flexibility and modifiability to smart contracts. This means that large scale DApps can be made, and it will truly contribute to the ecosystem of Ethereum.

DAO is new, yet immature. It is priority to supply DAO to where needs are sure. DAO-to-DApp is absolutely feasible, and necessary. With this process, many use cases will be piled up and users will become more familiar with it. As a result, DAO will naturally mature, and even further, be solution for real world problems.

Deliverables

For

Deliverables are

  1. Smart Contract: DAO can execute privileged functions of target DApp with this.
  2. An aragonOS-compatible application: User interface for
    • Register target DApp (smart contract)
    • Choose options
    • Use ERC20 holders of target smart contract as committee
    • Use current Aragon voting system
    • Use custom DAO
    • Propose action
    • Vote on proposals
    • Execute granted proposal

Grant size

Funding: Up to $100k in ETH, split into chunks paid out over achieved deliverables.

Success reward: Up to $50k in ANT, given out when all deliverables are ready.

Application requirements

Development timeline

2 month: Smart contracts and user interface draft (available on testnet) 4 month: Cover tests and audit smart contracts 6 month: UI/UX improvements, documents, examples

cancue commented 6 years ago

Developing some toy DApps, we thought that DAO is necessary considering long-term scalability. However, we did not build DAO since adding DAO to tiny toy app was not reasonable. We think that it would be best to post this proposal to Aragon Nest and, if granted, build the tool in this nesting system.

mariapao commented 6 years ago

Hi @cancue thanks for submitting this proposal. I have one question: what makes your solution better than for the dapps to use Aragon directly? Check this out.

I don't think I fully understand the proposal to be honest.

luisivan commented 6 years ago

Hey @cancue, wanted to jump in to know more.

I understand that right now:

For example, you could include this DAO identity app in a multisig, and the DAO would forward whatever call it needs to do to the multisig via that app. That's for calling external contracts. Is that what you want to build? Thanks!

cancue commented 6 years ago

@mariapao After I submitted my proposal, I read the posts regarging my opinion (https://blog.aragon.one/introducing-aragonos-3-0-alpha-the-new-operating-system-for-protocols-and-dapps-348f7ac92cff). And I find out that my proposal corresponds with what Aragon intends to do. After trying ‘Try Aragon Core 0.5’ on aragon.one, I thought that aragon.one was a platform that makes new DApp by using Dao rather than connecting Dao with DApp

But still, like 'Aragon Nest Proposal: better communication tools for effective governance', my proposal is valid as it is about how to do rather than what to do. Currently, http://aragon.aragonpm.com does not have an interface that can register external smart contract and interact with it. The app which I proposed is not restricted to a specific Dapp. Rather, it is a wide-use App that enables registering and managing external smart contract on organizations created by Aragon core. If Aragon team is already developing solutions for Aragon core in a different way, I will close my proposal.

cancue commented 6 years ago

@luisivan Yes. exactly

luisivan commented 6 years ago

OK, thanks for the clarification @cancue. I think this is helpful and I'm not sure if you are fully familiar with the aragonOS architecture, but it wouldn't require so much work as I understand. I can help describe the way it would work with more detail, but it'd be similar to https://github.com/jvluso/aragon-identity but having a frontend app to show the calls that have been forwarded. I think it could be done in much less time than described here

mariapao commented 6 years ago

@cancue thanks for the explanation, now I understand it better :) What do you think about Luis comments above?

cancue commented 6 years ago

@mariapao I think that making DApps to be managed through DAO is a key feature for Aragon. So it should be provided in a form that is easily accessible to ordinary users (User Interface). And target contract specific voting rule should be provided like using ERC20 shares of target smart contract as voting power (Modular Smart Contract).

Anyway, I think that Aragon is already working on this feature. Am I right?

mariapao commented 6 years ago

@cancue not specifically but, as Luis said, is something that could be done in less time than the time described in the proposal thanks to aragonOS, have you had the chance to check it out?

cancue commented 6 years ago

@mariapao I got the point. As Luis said, it can be done in less time. In fact, the timeline I described above is roughly determined. However, making an app compatible with AragonOS requires some learning time, and the current state of AragonOS for App developer may be an undetermined variable. I think 4 months(part-time) seems reasonable rather than scheduling too tightly.

luisivan commented 6 years ago

The base smart contracts are already built (https://github.com/jvluso/aragon-identity) so I'd say this can take maximum 1 month to polish them and build a UI. I'd say this would be a great use case for a significant bounty more than a grant

cancue commented 6 years ago

@luisivan If you think so, I believe it would be right. But for me, it is not reasonable to dig on aragon architecture on a bounty. I delightfully close this proposal, hoping to see the aragon app managing dapp in the near future.

mariapao commented 6 years ago

Hi @cancue In any case, this app is an interesting and helpful idea so thank you again for taking the time to submit the proposal!

I'm wonder why is not reasonable for you to dig in the Aragon architecture on a bounty?

cancue commented 6 years ago

@mariapao It's just my personal preference. I would like to find new ways to contribute rather than using existing tools. And this means that Aragon is doing a great job:)