daostack / daostack/arc

Universal schemes can be better defined

Open
#436 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
50
Forks
21
PR merge metrics
No merged PRs in 30d

Description

Non-universal schemes modules should not be located in the universalSchemes folder. I believe DaoCreator is currently the only one.

I'm not clear why OrganizationRegister should be defined as universal. It doesn't call any controller methods that require it to be.

I think this begs a better definition in the Arc documentation of what "Universal Scheme" really means. I'm not sure the [existing docs](https://daostack.github.io/arc/contracts/universalSchemes/README/) are clear enough on this. Just saying that a universal scheme implements a particular interface (that itself seems meaningless, doesn't include `getParametersFromController` as an explanation for what the interface means) does not say enough about such an important concept as a universal scheme.

I think the definition of "Universal" tends to be that the code can be used in the context of any Arc-style DAO (ie, a DAO that has an Arc-style controller).

Indeed the only distinguishing feature I can find of universal schemes is that they are allowed to call certain methods on an Arc controller. This may be their defining quality, I suggest we document it more clearly, and describe why that capability is important to a DAO in the DAOstack ecosystem, and why that makes them "Universal".

So following that, I suggest we be clear about the other "schemes" that don't have this capability, and don't need it, yet are still called "universal schemes".

Contributor guide

Open the contributing guide

Research direction

Start with the existing universalSchemes README, then compare the DaoCreator and OrganizationRegister modules in the universalSchemes folder. Document what makes a scheme universal, including the relevant controller capability, and clarify which modules belong in that folder.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.