near-daos / sputnik-dao-contract

Smart contracts for https://app.astrodao.com
https://astrodao.com/
MIT License
108 stars 76 forks source link

Nested Groups #101

Closed agileurbanite closed 2 years ago

agileurbanite commented 2 years ago

Do we plan to support nested groups with different weights inside of a group?

For example, if I have a group called Engineering and I have 2 child groups: [Senior, Junior] of the weight I'd allocate to the parent group, I'd like to re-allocate new weights to children [Senior: 70%, Junior 30%], instead of creating a bunch of sibling groups.

Not sure if this is something we should support in the contract itself or use the existing primitives but use Astro UI to created nested groups.

TrevorJTClarke commented 2 years ago

@agileurbanite I can see what you are trying to accomplish, there's likely a way to do this already without getting complex with nesting. Here's some thoughts for you to consider:

  1. It sounds like you potentially need token weighting, so for Senior you could distribute more DAO tokens that could be used to weight votes. This requires your DAO to maintain accurate token proportions across the council or councils
  2. Create multiple councils, see an example: https://app.astrodao.com/dao/community.sputnik-dao.near/groups/all, where each council has policy specific to their responsibilities, which it sounds like you're starting to do.
  3. [More advanced] Create sub-DAOs for each group, and allocate tokens/policy as needed, using the framework here: https://github.com/Multi-DAO/ambassadaos
agileurbanite commented 2 years ago
[More advanced] Create sub-DAOs for each group, and allocate tokens/policy as needed, using the framework here: https://github.com/Multi-DAO/ambassadaos

This sounds like the best option for example, let's say I have a proposal that is a function that determines if a particular release candidate for a DApp gets moved from testnet to mainnet, then I can use this approach. However, as a parent DAO admin I might not have the visibility I'd like on what's going on within a sub DAO. Option 2 works as well but the list becomes noisy and harder to manage as the org grows. I'll need to think about this some more but this is really helpful!

Thanks for the guidance, @TrevorJTClarke:!

TrevorJTClarke commented 2 years ago

@agileurbanite closing as you were able to do a work-around. If there is more requirements for similar approach in future, lets do new issue. Thanks!