Governance

How votes are counted

Draft — pending legal review. Published totals are enough to re-check the result.

  1. Turnout = (yes + no + abstain) ÷ members eligible when the vote opened. Quorum is 10%.
  2. Majority = yes ÷ (yes + no). Abstentions count toward quorum, not toward the majority.
  3. Ordinary proposal: more than 50% (internal threshold 5001 basis points). Major proposal or confirmation vote: 60%.
  4. Delegation (at close): for each eligible member, take a direct ballot; else follow the council chain (depth 5, no cycles) to a yes/no; else the global chain; else uncounted. A frozen, ineligible, or non-voting delegate breaks the chain. A delegate’s held weight is not capped; it is published. Funding disclosure is required above 0.5%.
  5. Published totals are anonymized. Delegates’ ballots (as representatives) are public, with the weight they held. Direct voters’ choices are never named.
  6. Double majority (rights/electoral/constitutional proposals): 60% nationally, then a majority in at least 7 of 10 provinces whose members are 50% of provincial members (7/50 approximation). Territories do not count toward the 7. Cells under 10 members are hidden when published.
  7. Stage 1, bills already before the House: for each eligible member in a riding, take a direct ballot, else that bill’s delegation, else the council, else the delegation of all votes. The riding majority, yes/(yes+no), is the instruction for that riding’s We Vote On It MP. The vote sits outside the binding-vote cap. Published totals hide cells under 10 members. The all-member total is not the instruction.
  8. Opinion clustering: agree/disagree matrix, 2-D PCA, k-means (2–4). Consensus statements are those every group majority-agrees (or majority-disagrees) on.

Thresholds live in one config file (lib/governance.ts) so the math and the UI cannot drift.