prototyping for new consent system

This commit is contained in:
Luke Miller 2021-09-28 19:01:59 -04:00
parent 0d384da48c
commit 7163480581
2 changed files with 58 additions and 0 deletions

55
modpol/orgs/process.lua Normal file
View File

@ -0,0 +1,55 @@
old_request_format = {
user=user, -- requesting user
type="add_member", -- action
params={user} -- action params
}
old_process_format = {
type = "consent", -- delete
id = nil,
org_id = nil,
request_id = nil, -- delete
-- consent config
majority_to_pass = 0.51, -- voting threshold
votes_needed = nil,
-- consent data
total_votes = 0,
votes_yes = {},
votes_no = {}
}
new_process_format = {
initiator = "user",
org_id = 12314,
module = "create_child_org", -- policy table lookup
process_id = 8347,
-- used to freeze voter eligibility
timestamp = 1632850133, -- look into supporting other formats, overrides (turn based, etc.)
data = {
child_org_name = "oligarchy"
}
}
--[[
voting configuration:
<quorum>
minimum voters (ratio or const)
maximum voters (ratio or const)
<temporal quorum>
minimum duration
maximum duration
--]]
policy_table_format = {
"create_child_org": {
consent_threshold = 0.51,
max_duration = 89324, -- seconds until vote closes if threshold not reached, or nil for no limit
defer = nil, -- org id to defer to, or nil
}
}

View File

@ -1,3 +1,6 @@
-- THIS IS NOW DEPRECATED, TO MERGE INTO PROCESS
-- REQUESTS
-- Provides request functionality to org