syvita / daoos

A group of tools for anyone to be able to create their own decentralised organisation on Bitcoin. 🟩
https://syvita.org/projects/daoos
MIT License
27 stars 10 forks source link

Create Vault contract #17

Open LNow opened 3 years ago

LNow commented 3 years ago

Create initial version of Vault contract that will let us:

Nice to have:

friedger commented 3 years ago

What permission should we use for transfer?

LNow commented 3 years ago

My main idea was to keep permissions as simple as possible. Same as it has been done with Linux file permissions: Read - lets you read file Write - lets you write to a file Execute - lets you execute file

By following this principle if we need a permission that will let users call transfer function - we name the permission transfer.

Zk2u commented 3 years ago

It should be an internal method that's only callable after a majority vote (for transferring funds).

friedger commented 3 years ago

Do you want to include the voting logic into the vault?

LNow commented 3 years ago

No. By keeping them separate we'll be able to implement multiple voting possibilities (with plugins);

And vault has nothing to do with voting and the other way around.

cryptopanter commented 3 years ago

Create initial version of Vault contract that will let us:

  • deposit STX
  • transfer STX to different address
  • check total balance

Nice to have:

  • deposit any fungible token compliant with SIP-10-FT
  • transfer any fungible token to different address
  • check total balance of every single type of FT available in Vault

I think we can assume RBAC and Vault contracts as components of DAO container in c4model, right?. Also any other plugins will be released later

LNow commented 3 years ago

After recent discussion I think we won't have RBAC at all. And I don't know if Vault should be build as separate contract or not. Thus I'm waiting for detailed design.