Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal System: Final Major iteration #1200

Closed
bedeho opened this issue Aug 31, 2020 · 0 comments
Closed

Proposal System: Final Major iteration #1200

bedeho opened this issue Aug 31, 2020 · 0 comments
Assignees

Comments

@bedeho
Copy link
Member

bedeho commented Aug 31, 2020

Overview

We should refactor the proposal system, meaning the engine, the codex and discussion modules, to be in line with the functional description currently live in the Handbook: https://joystream.gitbook.io/joystream-handbook/governance/proposals

It's important to bear in mind that this is an integrated functional description that crosses many layers of abstraction, not only the multiple modules but even into what would be found in a query node. So it must be extracted from this how the modules should be organized to facilitate this. Some of the key points that pertain specifically to how to reorganize the runtime modules are therefore

Update Handbook

The current state of the handbook is quite complete, but the details of each proposal is not filled in, and as many proposals will change with this change, filling in the details has been postponed.

After completing this work, please update the signature and information for each active proposal, and update any incorrect claims about business logic and state management in general. There is no need to fill in all the missing constant values, this can be done by someone else

Implementation Path

Starting Point

Should build on a new council & election system & working group system that should be ready to go into production. Only work on the codex directly needs these most recent versions, hence work on the engine and discussion modules can still commence if these dependencies are still not fully completed.

Process

This is a complex set of changes, here are some ideas for how I think we can minimize confusion and false starts:

  1. It should be bottom-up in terms of dependency graph:
    a. Engine module
    b. Discussion module
    c. Codex module
  2. There should be a plan for how to tackle each module on its own, before we start.
  3. Its worth having meetings that the plan for the module does not capture too much, as the handbook can easily mislead a spec, which it isn't.
  4. Multiple early reviews on each module, avoiding one PR per module.

Anything else?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants