Vote kind should be a enum. Not a string. We are here forcing type-safety, only for you, wigga, to break it with your strings. wigga.
there is exists() function in diesel, which returns true / false if record exist
expires_at already implied when the proposal expires, so remove expired from a list of possible values, wigga
extract this signature concatenation into either a separate function, or better into crypto submodule.
ProposalManager should focus on one thing, and one thing only, the vote coordination: not the outcome execution.
Explain what is the UpdateShamirParameters. Do you want to edit the quorum after committee has already formed??? wigga
signature check is quite complex, so separate it into several helpers and put them into crypto submodule
why the fuck do you store binary data inside relational database. declare tables, wigga
why the fuck do you store binary data inside relational database. declare tables, wigga
there should be no default and salt should always be supplied by our daemon, wigga
Wigga, please. Remove homebrew protocol, instead, make those as protobuf entities. And convert to them using already established traits, wigga