-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Conversation
…ed-id # Conflicts: # frame/identity/src/lib.rs
…ed-id # Conflicts: # frame/identity/src/lib.rs
gavofyork
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some work needed, but added logic seems broadly correct.
If no one at all votes, or the vote is tied, the user will be suspended from society. This means, that the user simply needs to vote for themselves to stay in society assuming no one else participates.
| //! #### Rate of Growth | ||
| //! | ||
| //! The membership society can grow at a rate of 10 accepted candidates per rotation period up | ||
| //! to the max membership threshold. Once this threshold is met, candidate selections | ||
| //! are stalled until there is space for new members to join. This can be resolved by | ||
| //! voting out existing members through the random challenges or by using governance | ||
| //! to increase the maximum membership count. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note the behavior when max membership is reached.
It is possible that we have max_membership + 10 total users in the member list. This is because the approved candidates have no clean way to "fail" when being added to the membership list.
The scenario can happen as so:
- There are 90 active members in society
- There are at least 10 suspended members in society
- There are 10 approved candidates that will make it in during the next rotation period
- The suspension judgement origin adds 10 suspended members back to the society, reaching the limit of 100
- Then the rotation period occurs and 10 candidates are added on top
As mentioned with inline comments, this has no consensus critical issue or side effects. Being over the max or being at the max is exactly the same behavior.
shawntabrizi
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it is ready to be played with :)
|
A few blank lines in there, I'll take a more in-depth look at the changed logic tomorrow. |
|
CI failure unrelated. |
Society is basically a membership provider where member-candidates are voted in by existing members. Candidacy/entrance requirements can be put in place, as well as ongoing random verification requirements. A suspension & appeals process exists for when candidates/members fail to make or retain the approval of the membership.
TODO: