Skip to content

Commit

Permalink
Add pallet-control (#13)
Browse files Browse the repository at this point in the history
Add pallet-control

Co-authored-by: Volodymyr Brazhnyk <[email protected]>
Co-authored-by: 2075 <[email protected]>
Co-authored-by: vasylenko-yevhen <[email protected]>
  • Loading branch information
4 people authored Mar 13, 2022
1 parent 818b321 commit b77fdbb
Show file tree
Hide file tree
Showing 6 changed files with 1,268 additions and 0 deletions.
71 changes: 71 additions & 0 deletions control/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
[package]
name = "pallet-control"
version = "1.0.1-dev"
authors = ["zero.io","gamedao.co"]
repository = "https://github.com/gamedaoco/gamedao-protocol"
edition = "2018"
license = "GPL-3.0-or-later"
description = "DAO Factory"

[features]
default = ["std"]
std = [
"codec/std",
"serde/std",
"scale-info/std",
"num_enum/std",

# "pallet-assets/std",
# "pallet-balances/std",
"frame-support/std",
"frame-system/std",
"frame-benchmarking/std",

"sp-core/std",
"sp-std/std",
"sp-runtime/std",
# "sp-storage/std",

# "tangram/std",
"orml-traits/std",
"orml-tokens/std",
"orml-currencies/std",

"gamedao-protocol-support/std",

]

[dependencies]
hex-literal = "0.3.1"
num_enum = { version = "0.5.1", default-features = false }

serde = { version = "1.0.124", optional = true }
codec = { package = "parity-scale-codec", version = "2.3.1", default-features = false }
scale-info = { version = "1.0", default-features = false, features = ["derive"] }

sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
sp-storage = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }

frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13", default-features = false, optional = true }

pallet-assets = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }

orml-traits = { path = "../../orml/traits", default-features = false }
primitives = { package = "zero-primitives", path = "../../primitives", default-features = false }
gamedao-protocol-support = { package = "gamedao-protocol-support", path = "../support", default-features = false }

# tangram = { package = "module-tangram", path = "../../zero/tangram", default-features = false }

[dev-dependencies]
sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
sp-io = { git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.13" }
frame-support-test = { git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.13" }
pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.13" }
orml-tokens = { path = "../../orml/tokens", default-features = false }
orml-currencies = { path = "../../orml/currencies", default-features = false }
40 changes: 40 additions & 0 deletions control/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# ZERO CONTROL

- CONTROL is a wrapper for organisational bodies in zero.
- its controllers can e.g. initiate motions
- motions can e.g. initiate coordinated fundraising
- motions can release funds from the treasury
- control is rated like any actor through SENSE.
- controllers / actors should feature a reasonable Identity.

## methods

### create body

v0.1.0

- name
- creator
- controller
- treasurer

- tx fees paid by OS

- creation requires reserve or payment to OS of n credits
1. when body consumes fees from members,
creation and TX fee will be collected by OS
2. when membership requires reserve only,
full amount gets repaid on exit

- initial treasury balance -> filled by creator

### destroy body

### add member
when body takes fees
### remove member


## Status

[X] proposal
Loading

0 comments on commit b77fdbb

Please sign in to comment.