funded

DAO Treasury Building Blocks

$32,143.00 Received
$75,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
Solution

Un module réutilisable et un SDK pour les courbes de collage permettent aux développeurs de DApp de mettre en œuvre la gestion de la trésorerie des DAO et des décaissements équitables.

Problem:

La collecte et la gestion des fonds de la DAO d'une manière responsable sont mieux réalisées avec des contrats intelligents, mais cela nécessite une expertise en ingénierie de Plutus.

Yes Votes:
₳ 87,176,814
No Votes:
₳ 4,146,999
Votes Cast:
413

This proposal was approved and funded by the Cardano Community via Project F7: DAOs ❤ Cardano Catalyst funding round.

  • yumi-logo-abstract-88c975-87378d-cea767
  • yumi-logo-abstract-88c975-87378d-cea767
  • yumi-logo-abstract-88c975-87378d-cea767

Detailed Plan

DApp developers working on DAO tools need to move fast and test their market, iterating quickly on designs and approaches. These DAO DApps often require market mechanisms that help fund the DAO, manage the funds, and incentivise community activity. The best, most transparent, and accountable way of doing this is to use smart contracts to manage our collective funds (treasuries).

However, developing robust, scalable, modular and composable Plutus Smart Contracts requires formal analysis, design and engineering across many disciplines, including software engineering, finance, economics, and complexity science. Many DAO Tooling and DApp development teams lack these skills. Those that do have the skills are forced to direct resources away from working on their core projects.

The Smart Contracts will carry significant value and are the basis for building communities of trust. Communities need to know that the protocols managing their collective capital (financial, human, and social) are well-engineered and of high assurance. A single software bug can mean a community may lose wealth and trust.

Co-organising the Catalyst Eastern Townhall, an early Catalyst Community DAO prototype, we are painfully aware of the need to manage our funds in a transparent and accountable manner. Ideally, as engineers, we'd like smart-contract based management. At the moment however, there are no primitives we can use to build the tools we need.

Team & Experience

The team has experience in financial markets software engineering, cryptocurrency payments, tech start-ups, Data & Govtech, impact investing. We are also organising a legal-tech community and the Catalyst Eastern Townhall.

Robert O'Brien: Distributed Systems Software Engineer (Financial Systems) and Entrepreneur. Co-Founded three start-ups in Financial Data Analytics, International Trade Payments, and Impact Investing. Co-organises LegalHackers New Zealand and advises a Social Entrepreneurship Incubator. Co-Initiator of the Eastern Town Hall.

Andrew Walker: Distributed Systems Software Engineer, mainly in the financial sector in the City of London. Worked at Barclays Capital (credit risk) and LIFFE (derivatives exchange). Working on cryptocurrency payments infrastructure and also experienced with the hospitality sector.

Jack O'Brien: Developer Relation, Haskell Developer, Sound Engineer, Videographer. A graduate of Massey University CoCA in Commercial Music & Technology; Developing software and training material on applying blockchains, NFTs, DeFi in the creative sector.

Plutus (Cohort 1) and Atala Prism Pioneers (Cohort 1). Over the last thirty years, we've worked on highly concurrent distributed systems using C/C++ and functional languages OCaml, Erlang, Scala, and Haskell. The team (and our extended network) has experience in User Experience design, used formal methods, and developed high-performance systems in financial settings. We have experience in Blockchains and cryptocurrency projects.

Our Solution

A Bonding Curve Plutus Software Development Kit (SDK). We will design and engineer a module of baseline Smart Contracts for implementing Automated Market Makers (AMM) and more.

We will build an open-source, reusable module in Plutus utilising the Extended Unspent Transaction Output (EUTxO) architecture. It will be general enough for use in many applications and reliable enough to incorporate into complex Plutus designs. Layered over that will be a Software Developers Kit (SDK) to enable easy integration with DApps.

Bonding Curves[1] are one of the most useful and widely used components in DeFi and DAO Treasury Management. They are used in AMMs that underpin many of the Decentralised Exchanges (DEX), Loan, and Insurance protocols popular in DeFi. Their applicability extends beyond the limited scope of DeFi, including many different scenarios for Decentralised Autonomous Organization (DAO) governance, project funding, fractional ownership of NFTs etc.

A EUTXO Specific Architecture

The module and Smart Contract design will be engineered specifically for the EUTXO architecture of the Cardano Blockchain. The core design will utilise a batch auction mechanism to maximise throughput and prevent resource contention on the underlying reserve (liquidity pools). The design is based on the Treynor Dealer model[13]: A design that combines an order book (Dealer) as a periodic combinatorial auction with an AMM liquidity pool.

The combinatorial auction is not your typical English Auction! It is an off-chain optimisation algorithm designed to maximise welfare (a fair price for all participants). A single Plutus-Backend node can execute it or run as an Oracle Pool when more complex higher-throughput matching requirements are needed.

Bonding Curve parameters adjust the behaviour to suit specific periodic settlement windows (per-slot, epoch, or other), throughput requirements, shared reserve pool, and transaction matching using metadata. Future extensions include a simple bidding language for more complex matching scenarios found in DAO-2-DAO treasury management; Allowing a form of token-based if-then-that logic.

Please refer to our Catalyst Fund 2 Proposal for more details about Combinatorial Auctions and Oracle Pools[2], and our Catalyst Fund 5 proposal[3] for more details on Bonding Curves and their use.

To design and build the Bonding Curve module and SDK, we are using as a reference the Comos Bond Module[4]; leveraging the economic and system dynamics work already done by Blockscience[5], the Token Engineering[6] community, and Shruti Appiah[7]. As the project gets underway, we will welcome other interested contributors from the community to help build and maintain the project.

Impact on Challenge Metrics

Bonding Curve building blocks make DAO treasury management, governance, and financing tools easier to construct. Many aspects of project funding, team accounting and compensation systems will also benefit. There is no need to keep reinventing the same components. Bonding curves underlie our work with Risk-Adjusted Bonding Curves [14], a novel governance mechanism matching many DAO operational needs.

The bonding-curve module aims to be an essential toolkit for software developers that don't want to dive into learning Haskell, EUTXO, PlutusTx or the Plutus Application Backend. An essential toolkit for technology start-ups that don't have the skills in complexity-science and engineering talent to develop excellent economic protocols.

By focusing on baseline primitives and engineering for reuse across the Cardano Ecosystem, we can make it faster to deploy reliable DAO-focused DApps. DApp developers can easily integrate and interoperate modular Smart Contract mechanisms that we develop, giving customers confidence that their wealth is secure and value streams are fair.

Key Performance Indicators

Key Metric: Project Velocity[8], defined as a combination of base activity metrics of commits pulled from Github.

Activity Metrics: captured as project activity in Github and cadence of deliverables and engineering milestones achieved.

Community Metrics: engagement behaviours are broken down into four categories [9] to measure how our work spreads and is used in the Cardano ecosystem. These metrics derive mostly from Github.

What Success Looks Like

Our proposal will contribute to Cardano's developer ecosystem a module of bonding curve primitives explicitly designed for the EUTXO architecture. They are intended for integration into other higher-level protocols and DApps.

After One Month:

  • Initial specifications and scope for bonding curve module completed.
  • Nix-based Jupyter notes infrastructure established integrating Nix, Python, and OCaml into a reproducible data science/simulation pipeline.
  • Engagement with individuals interested in contributing to the work via a DAO.

After Three Months:

  • Developed simulations for the system dynamics of the combinatorial auction design.
  • A draft formal specification and tested using Bigrapher[10], a Bigraphical Reactive System (BRS) simulator.
  • Pre-Alpha implementation of the core protocols running on testnets.

After Six Months:

  • Completed design for the module(s) and implemented the core protocols running on testnets.
  • Documentation published explains the design and use of the bonding curve primitives.
  • DAO trusted seed is established, and plans to hatch the DAO using Bonding Curves for future funding are developed. The primary purpose of the DAO is to ensure long-term, cost-effective support of the module and continued development.

After Twelve Months:

  • Formal specification published
  • Production-ready core protocols fully engineered, tested and audited.
  • An SDK for one development environment developed (most likely Haskell, with PAB).
  • Five projects use the bonding-curve module in their implementation; A mix of DeFi, SoFi protocols, DApps, and DAO.

The project will evolve with the extension of bonding curves to bonding surfaces (see Balancer[11]) and incorporate a bidding language. We are committing to ensuring long-term support that will be managed and funded by a DAO (using bonding curves to fund and govern it!).

Licensing

All our source code will be licensed under a free and open-source (OSI) licence, e.g. MIT, and contributions must be contributed patent-free. Contributors will be required to agree to a Contributor Covenant[12].

Published content will be licensed under the Creative Attribution-Noncommercial-ShareAlike International (CC BY-NC-SA) Licence v4.0. The specification will be published under a Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0) licence.

Code, documentation, project activity and Jupyter notebooks will be made available on Github or similar service.

Budget Breakdown

The requested Fund 6 budget is for wages and expenses for six months of the project. We will deliver the initial bonding curve module code and related documentation. Further funds will be requested to continue the work beyond this period, either through Catalyst or direct funding of the yümi DAO.

  • Software Specification & Engineering: $53,250 USD (71%)
  • Technical Writing: $7,500USD (10%)
  • Community Engagement: $3,750USD (5%)
  • Project Management: $7,500USD (10%)
  • Software Services & Server Fees: $500 x 6 months = $3,000 (%4)

Budget based on a pro-rata hourly rate spread over up to three team members. FTE hourly rate of USD$100 includes all overheads; Adjusted for experience, nature of work, and short term intermittent nature of project funding.

Affiliated proposals

The Bonding Curve module is informed by the bonding curve work used for the Retroactive Project Funding SDK (Fund6) [14]. The Risk-Adjusted Bonding curve consists of four or more bonding curves and demonstrates reuse and composition. The bonding curve module generalises the RABC work to make it more useful in other contexts.

The technology will also help build tools needed to implement the Distributed Autonomous Accelerator[16] and potentially enable rapid funding mechanisms[15] in Catalyst itself.

References

[1] Bonding Curves: <https://medium.com/giveth/deep-dive-augmented-bonding-curves-3f1f7c1fa751>

[2] A Smart Market Toolkit for Cardano. <https://cardano.ideascale.com/a/dtd/A-Smart-Market-prototype-for-NFTs/323408-48088>

[3] AMM for Continuous Financing: <https://cardano.ideascale.com/a/dtd/AMM-for-Continuous-Financing/350654-48088>

[4] Comos Bond Module: <https://github.com/ixoworld/bonds>

[5] Blockscience cadCAD: <https://cadcad.org/>

[6] Token Engineering Community: <https://tecommons.org/>

[7] Shruti Appiah: <https://iohk.io/en/team/shruti-appiah>

[8] Project Velocity: <https://chaoss.community/metric-project-velocity/>

[9] Community Metrics: <https://communityroundtable.com/best-practices/thecrs-work-out-loud-framework/>

[10] Bigrapher: <http://www.dcs.gla.ac.uk/~michele/bigrapher.html>

[11] Bonding Surfaces: <https://medium.com/balancer-protocol/bonding-surfaces-balancer-protocol-ff6d3d05d577>

[12] Contributor Covernant: <https://www.contributor-covenant.org/>

[13] Treynor Dealer model: https://en.wikipedia.org/wiki/Treynor_dealer_model

[14] Retroactive Project Funding SDK: <https://cardano.ideascale.com/a/dtd/Retroactive-Project-Funding-SDK/369011-48088>

[15] Catalyst Rapid Funding Mechanism Challenge: <https://cardano.ideascale.com/a/campaign-home/26236>

[16] Distributed Autonomous Accelerator: <https://cardano.ideascale.com/a/dtd/Distributed-Autonomous-Accelerator/382562-48088>

Avis des conseillers communautaires (1)

Comments

Monthly Reports

We getting to start work on this proposal in April. After being funded for a number of proposals in Fund 7, we a building out a team and going to be seeking additional funding to do this. Scaling the project team is occupying a lot of time and attention at the moment. This proposal is a critical building block to a lot of our efforts so is being prioritised over the others.

Disbursed to Date
$32,143
Status
Still in progress
Completion Target
8/31/2022
Comments 0

Login or Register to leave a comment!

Conceptual models and specification work using BPMN, PetriNets, and BigraphER progressed. We are setting up a documentation site which will host the specification work. We have workflows incorporating Github, Nix, Nix Flakes, Teraform, AWS. Key aspects of Plutus transaction metadata has been worked on which incorporate a stance on SSI/DIDs and will be applied to a number of other proposal projects building up toward a Retroactive Funding system for DAOs.

A flint-stone experiment using Bonding Curves for a compensation process is being worked on with the Eastern Townhall core team. The aim is to help inform the specification and UX design work by using a real-world example in a controlled manner.

This proposal is a critical building block to a lot of our efforts so is being prioritised over the others until we scale the team. We've done some outreach to local universities and we had an extended meeting with a senior Cloud Native Foundation (Kubernetes) member, initiating a potential collaboration as part of our larger effort.

Disbursed to Date
$32,143
Status
Still in progress
Completion Target
8/31/2022
Attachment(s)
Comments 0

Login or Register to leave a comment!

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3 min 24 s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4 min 3 s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3 min 48 s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2 min 16 s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3 min 14 s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3 min 19 s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4 min 59 s
    Darlington Kofa
0:00
/
~0:00