Commit Graph

407 Commits

Author SHA1 Message Date
Gav 8d84ca8b48 Initial council vote logic. 2018-03-04 21:52:11 +01:00
Gav f056dea47e Ensure council always sorted by expiry. 2018-03-04 20:55:14 +01:00
Gav f7af45f95b remove string constants <-- @rphmeier 2018-03-04 19:36:26 +01:00
Gav 650e30d39c Tests for public referenda. 2018-03-04 13:47:36 +01:00
Gav 311337f5dc Tests for public referenda. 2018-03-04 13:17:53 +01:00
Gav 6476f26815 Introduce minimum deposit 2018-03-03 19:30:07 +01:00
Gav e8d38add64 cleanups. 2018-03-03 19:04:42 +01:00
Gav cf81e1dbb6 Deposits, not fees. 2018-03-03 19:01:39 +01:00
Gav e07aef7766 Introduce logic for deposits. 2018-03-03 14:36:37 +01:00
Gav 6cf236fb02 Simultaneous referendums and multiple voting variants. 2018-03-03 11:26:56 +01:00
Gav f5515ff673 Update docs 2018-03-02 20:11:16 +01:00
Gav c298331c3d test: against double presentations. 2018-03-02 19:18:54 +01:00
Gav f0699b9c8d Avoid allowing same accounts to be doubly-elected. 2018-03-02 19:14:35 +01:00
Gav b611881e8f Add one vote worth of time for voters to unregister before they become "inactive". 2018-03-02 18:43:15 +01:00
Gav 36bd7f0608 Additional docs & test. 2018-03-02 18:11:03 +01:00
Gav 60697d4402 tests: Retract inactive voter 2018-03-02 18:02:20 +01:00
Gav a633a257ef Merge branch 'master' into gav-demo 2018-03-02 14:59:32 +01:00
Gav d034f647f7 cleanups. 2018-03-02 14:41:20 +01:00
Gav d247a2e2b3 tests: presenting losers 2018-03-02 14:40:36 +01:00
Gav 826a06fc23 Tests: various error cases with present. 2018-03-02 14:33:03 +01:00
Gav 011a975363 test: second tally uses runners-up. 2018-03-02 14:19:44 +01:00
Gav d82e0fb6fa More tests, for runners-up. 2018-03-02 14:00:23 +01:00
Gav 9066313d18 Test for tally 2018-03-02 13:39:49 +01:00
Gav 4e19dc6ef1 More tests for voting. 2018-03-02 11:34:06 +01:00
Gav 4435d65206 More candidate tests. 2018-03-02 10:09:27 +01:00
Gav 9cd65e3372 Candidacy tests 2018-03-02 09:54:21 +01:00
Robert Habermeier 10546845d4 Integrate transaction pool to the proposal logic (#80)
* reshuffle consensus libraries

* polkadot-useful type definitions for statement table

* begin BftService

* primary selection logic

* bft service implementation without I/O

* extract out `BlockImport` trait

* allow bft primitives to compile on wasm

* Block builder (substrate)

* take polkadot-consensus down to the core.

* test for preemption

* fix test build

* Fix wasm build

* Bulid on any block

* Test for block builder.

* Block import tests for client.

* Tidy ups

* clean up block builder instantiation

* justification verification logic

* JustifiedHeader and import

* Propert block generation for tests

* network and tablerouter trait

* use statement import to drive creation of further statements

* Fixed rpc tests

* custom error type for consensus

* create proposer

* asynchronous proposal evaluation

* inherent transactions in polkadot runtime

* fix tests to match real polkadot block constraints

* implicitly generate inherent functions

* add inherent transaction functionality to block body

* block builder logic for polkadot

* some tests for the polkadot API

* avoid redundancy in native code compatibility check

* helper for extracting nonce

* transaction pool implementation

* transaction pool

* integrate transaction pool with proposer

* indentation

* kill storage keys module

* accept new transactions to replace old
2018-03-02 09:38:58 +01:00
Gav 209988a939 Space out votes by a minimum period. 2018-03-01 15:19:41 +01:00
Gav ced6eedead remove inactive voter. 2018-03-01 15:08:29 +01:00
Gav 6ee089b4be Final bit of core logic for the council. 2018-03-01 13:49:45 +01:00
Gav 83f0dc9923 presenting a winner. 2018-03-01 11:14:23 +01:00
Gav 5d6f253459 Submit candidacy. 2018-03-01 09:18:15 +01:00
Gav aa675add28 More work on governance. 2018-02-28 21:01:35 +01:00
Gav 93ac92dfb2 Implement next_tally. 2018-02-28 15:32:28 +01:00
Gav 6956c612b8 Design of the approval voting module for council election. 2018-02-27 23:31:27 +01:00
Gav 20d81cd1b7 Tests for referenda. 2018-02-26 19:06:48 +01:00
Gav 2ffcf8ff26 Initial draft of stakeholder democracy. 2018-02-25 18:37:07 +01:00
Gav c43d49084f Use BTreeMap rather than HashMap in demo runtime. 2018-02-25 16:58:07 +01:00
Gav 9067e0179f Remove unneeded call depth. 2018-02-25 16:37:14 +01:00
Robert Habermeier 1f2d01566e Proposal creation and evaluation to plug into BFT (#77)
* reshuffle consensus libraries

* polkadot-useful type definitions for statement table

* begin BftService

* primary selection logic

* bft service implementation without I/O

* extract out `BlockImport` trait

* allow bft primitives to compile on wasm

* Block builder (substrate)

* take polkadot-consensus down to the core.

* test for preemption

* fix test build

* Fix wasm build

* Bulid on any block

* Test for block builder.

* Block import tests for client.

* Tidy ups

* clean up block builder instantiation

* justification verification logic

* JustifiedHeader and import

* Propert block generation for tests

* network and tablerouter trait

* use statement import to drive creation of further statements

* Fixed rpc tests

* custom error type for consensus

* create proposer

* asynchronous proposal evaluation

* inherent transactions in polkadot runtime

* fix tests to match real polkadot block constraints

* implicitly generate inherent functions

* add inherent transaction functionality to block body

* block builder logic for polkadot

* some tests for the polkadot API
2018-02-25 10:58:17 +01:00
Gav 0502c939cf comment 2018-02-23 11:49:15 +01:00
Gav 0a3d406236 Fix logic 2018-02-23 11:48:55 +01:00
Gav d70491f093 More work on Ext & calls. 2018-02-22 18:38:33 +01:00
Gav 38e9d80555 Initial staging ground for interior wasm smart-contracts. 2018-02-20 19:02:27 +01:00
Gav 892dbc1eba Add needed file. 2018-02-20 16:28:49 +01:00
Gav b69b55017d Tidy up unneeded code. 2018-02-20 16:20:07 +01:00
Gav b93860467f Remove bad files. 2018-02-20 16:18:34 +01:00
Gav a5042dd9ae Introduce substrate-demo 2018-02-20 15:53:55 +01:00
Gav 990bd1480b Fix up wasm build. 2018-02-20 12:20:15 +01:00
Gav 8eaa694411 More mssing doc. 2018-02-20 11:27:21 +01:00