I’ve created a new PR with a simpler set of constitutional edits that focuses only on essential CREDS changes. My general philosophy when approaching this edit was:
- only remove/reword clauses if they directly contradict new clauses, no matter what other issues they may have (e.g. referencing obsolete tech)
- when introducing new clauses, insert them as close as possible to the clauses they replace or relate to, to make for an easier comparison in the diff view
- make no unnecessary changes to structure, so that the diff view shows only additions/subtractions, not areas that have simply been relocated
I recommend looking at the rich diff for easiest readability. CREDS Upgrade Focused by JackALaing · Pull Request #10 · pokt-network/governance · GitHub
Guide to the diff:
- Red line beside clause: deleted
- Green line beside clause: added
- Brown line: modified. Note: most of these are just incrementing the number. The only exceptions are 4.18, the sub-header before 4.21, “6. Proposals & Voting”, and the Definitions list.
As a testament to this being a simpler set of edits, I believe a separate document explaining the edits would be overkill (and risks being lost for future reference). Instead, I’ve outlined the edits below in three groups:
1) Creds upgrade functionality
- Replace 4.1-4.3 with the new voting power mechanisms
- Introduce a new set of governance parameters, which will help the DAO calibrate the voting power mechanisms moving forward – HouseWeights (4.1.2), MinimumHumanityScore (4.2.1), CitizenCredentials (4.3.1), BuilderCredentials (4.1.4), BuilderPowerCap (4.4.1), StakerCredentials (4.1.4), StakerWeights (4.5.1)
2) Modular governance architecture
- Reinforce the above governance parmaeters by creating a more robust modular architecture
- A Parameters section is added near the end (8.15-8.32), introducing the concept of a Parameter Delegate. Note: PNF is already effectively a Parameter Delegate for the following parameters: MaxApplications, RelaysToTokensMultiplier, ServicerStakeWeightMultiplier, SupportedBlockchains. As well as granting us more flexibility for how we calibrate this new governance system, this also provides clarity to an existing practice that has emerged organically in our DAO.
- Old references to delegated parameters (6.5-6.7) have been removed in favor of the new Parameter Delegates section. Note that 6.5 has not been replaced in the Parameter Delegates section because this was supplanted by the GatewayFeePerRelay parameter that was introduced by the DAO last year.
- More governance parameters are introduced relating to the proposal/voting process – VoteQuorum, VoteStartDelay, VoteSuccessThreshold, ConstitutionAmendmentThreshold – further empowering the DAO to calibrate this new governance system moving forward
- The Governance Transaction clauses under “Access Control List (ACL)” are updated to reference the constraints on PNF as a Parameter Delegate.
3) Misc definitions/wording
- New Definitions have been added where they are introduced by new clauses
- Vote/Voting definitions have been replaced, corresponding with replacement of 4.1-4.3 referenced above
- Citizens section (4.27) has been renamed to Validators, to avoid confusion with the new Citizens concept this upgrade introduces
- One stray instance of “Voting Tokens” (which references the old system) in 4.18 was reworded to “Voting Power” to retain the meaning but maintain consistency with the new system.
Note: there is one pending change that I will need to add to the PR when there is consensus on the final set of changes to be made. 8.8 specifies a versioning system that determines the version number of each constitutional upgrade, which is a function of how many minor/major changes there are in the constitution. Before putting this proposal up for a vote, I will amend the PR to add a version number for this upgrade as well as any previous upgrades for which this versioning method was missed.