GOSH Smart Contract Upgrade
Introducing Version 3.0
GOSH is proud to announce a new upgrade release. The new Version 3.0 of GOSH Smart Contracts adds a variety of new features. This includes a lot of optimization and improvement to Tasks, allowing DAOs to create, organize, and reward users better. It also includes the feature we will discuss today: the ability for a DAO to become a member of another DAO. The changelog is included at the end of the text.
Part I, Introduction:
We know that “a DAO is an organization constructed by rules encoded as a computer program that is often transparent, controlled by the organization's members, and not influenced by a central government.”
We’ve spoken quite a bit about DAOs on GOSH. They are, after all, the cornerstone of our efforts to solve the problem of funding, security, and most of all, governance in open source. Indeed, the governance solution applies to the whole of Open Source Software, not just one project. And this leads us to the point we would like to discuss today: DAOs on GOSH govern not only themselves, but each other as well.
Let’s first establish some basics:
A DAO is created automatically with every repository on GOSH, even a personal one. This is because we believe that once you start writing open source code it, sooner or later, becomes part of the collective effort (developers of the world unite) and as such is suited to the DAO governance model. Sooner or later, that is.
In previous releases we provided advanced DAO tools that allow for a governance model as an extension of a Git model. For that we imagined a “Task” object that would be interconnected, on one end, with a Git Commit, and to DAO Governance Token voting weight (which we call “Karma”) on the other end. This allows DAOs on GOSH to allocate Karma to future commits, authors, reviewers, and facilitators once the Pull Request is approved by DAO voting. To put it another way, voting tokens of a DAO can be earned through contributing, giving a member the ability to make his voice heard.
We have optimized Voting itself to allow for low member participation (you can read about Soft Majority Voting here). We have offered developers a way to easily claim their GitHub repositories on GOSH. And now, with this in mind, let us examine our latest inveterately extreme offering. Save the date, Monday, March 27th; for the first time GOSH allows DAOs to own tokens of another DAO.
One Decentralized Organization can hold governance tokens and vote for decisions in another Decentralized Organization. Let that sink in.
Part II, Features and Outcomes
Here is an example of the dashboard showing a DAO holding tokens of another DAO (we are still working on the interface):
You can see that now this includes voting on decisions in other DAOs through an internal vote within your DAO. This feature has two main outcomes: First, the ontology of open source objects we built in GOSH has now a worthy governance model. (We will be speaking more about ontology on GOSH in the future.) And second, this allows for a multilevel hierarchy of decentralized decision-making across many organizations.
Why, you ask, is this so important? Well, let us offer for your consideration, dear reader, some examples:
Without doubt, the fundamental issue with direct democracy is levels of expertise not being accounted for properly. A direct-democratic vote on, say, a budget would struggle to find the optimal allocation to all departments seeing as those making the decisions may not understand every implication of every decision they make.
Now let us imagine this paradigm in the context of cross-organizational decentralized hierarchies.
If this budget were being created on GOSH, a theoretical Environmental Agency DAO would vote using its allocated Karma for only the parts of the budget that are within their expertise. So if a budget allocates money to environmental causes, the Environment DAO will be able to reach decisions on that aspect, being within its purview, in a direct democratic way without hampering the whole system.
While this may sound like a far-off theoretical example, the principle applies to any decentralized decision making. Any open source project is made up of different sets of expertise, let alone the requirements of businesses using open source software.
If DAO X holds Karma of the other DAO Y and if X’s voting power in Y can only be used through voting of its own members (X’s karma of X), and if the same applies for Z, A, B, and C, this abstracts the decision making in a trustless environment so much it makes for heterogeneous structures interacting in a uniform system. In other words, it becomes a complex system. Because the decentralization process takes on a hierarchy, it thereby does not allow power to get concentrated in individuals at all.
This is something which has never been tried before in open source. Effectively all open source today is managed through single individuals. The introduction of hierarchies turns this on its head and allows software to be more secure (fewer points of failure), more trustworthy (seeing as the trustless collective efforts of multiple organizations eradicates faults in code and processes over time), and less affected by the individual limitations of a single author, or even group (this is the principle behind all consensus but in this case an extra layer is added).
We can now have representation of any minority group (be it ethnic, professional, or anything else) via a trustless consensus governance without a need to delegate power and suffer from unbridled lobbying. The problem therefore is brought down to decomposition of a big decision into proper smaller ones.
We cannot in good mind assume any goal other than the governance of all Open Source Software through DAOs on GOSH. This new feature is, therefore, an essential step to making this a feasible proposal.
We regularly mention the meritocracy problem because fixing it is essential to properly governing any open system. GOSH has, in recent times, become focused on providing sound hierarchies for decentralized decision making in DAOs, in order that Karmatic remuneration for contributions to a DAO are sustainably meritocratic, mimicking the structures present in traditional business, but improving on them with trustless execution.
Part III, Conclusion
We can look at DAOs governing other DAOs as both an abstraction of decision making, but also through a lens of the further interconnectivity between different open source projects.
Currently any open source project is shared and reproduced both in business and also in other open source projects, in a sort of endless proliferation. What we are doing is adding a quantitative measure to this process, as well as offering direct tools that will allow open source collaboration to work not only through individuals, but to organizations as well.
I suppose we could now say “all for one and one for all!” Or we could just ask you to:
Added possibility of a DAO to be a member of another DAO
Added possibility of DAO to be a Task performer. A DAO itself can now be a signer, reviewer, and manager of a Task in another DAO — Tasks now have the same functionality for DAOs as for individuals
Improve native token management in contracts. This is mainly bug fixes for the back-end blockchain tokens that guarantee the operations of a smart contract
Added possibility of task upgrade. Upgrades from Smart Contract version 2.0 to 3.0 required a redeployment of all Tasks. From now on all future upgrades will not affect previously created Tasks
Task rewards do not increase karma. From now on Tasks will only serve to remunerate contributors with DAO Tokens but without increasing their Voting Karma
Added a possibility to create index contracts. Version 3.0 now includes indexes that improve the performance of GOSH when used in a web browser
DAOs can become members of other DAOs. DAOs have equal interface user flows for this operation
A DAO can be set as a Task assignee, reviewer, and manager (DAO review, receive task bounty is not implemented yet). Web browsers now also fully support Task functionality
DAO can create proposals and vote for proposals in parent DAO (not implemented yet)
Task rewards do not increase karma
If a DAO owns tokens of another DAOs “DAO supply” block will contain a button with details. The GOSH interface now has a block to allow DAO members to see which tokens the DAO holds
The GOSH Remote now supports all functionality of Smart Contract Version 3.0
Notice: after DAO upgrade tokens should be transferred manually from previous DAO version by click on “Transfer from previous version” button in user wallet side block