10 governance flow

Overview

The governance flow enables decentralized control over project approvals, issuance caps, platform policies, and critical platform parameters. This ensures no unilateral decisions and maintains trust through transparent, auditable voting.

Goal

Control onboarding, issuance, and policy changes through decentralized governance.

Governance Participants

  • DAO Voters: Holders of governance tokens or voting rights

  • Proposers: Any eligible participant can create proposals

  • Executors: System or designated executors implement passed proposals

Proposal Types

1

OnboardProject

Purpose: Approve a new project for credit issuance

Parameters:

  • Project ID

  • PoAI proof hashes

  • Proposed issuance cap

  • Transfer policy recommendation

Workflow:

  • Project completes PoAI approval

  • Proposal automatically created (or manually by proposer)

  • Voters review project details and PoAI status

  • Voting window opens

  • Voters cast votes

  • If passed → ProjectRecord minted, credits activated

2

IssueUnits

Purpose: Approve credit issuance for an approved project

Parameters:

  • Project token ID

  • Amount to issue

  • Recipient address (treasury or allocation)

Workflow:

  • Issuer requests issuance

  • Proposal created

  • Voters review issuance request

  • Voting window opens

  • Voters cast votes

  • If passed → Credits minted

Note: May be automated if issuance is within existing cap.

3

SuspendProject

Purpose: Temporarily suspend a project (halt issuance and transfers)

Parameters:

  • Project token ID

  • Reason for suspension

  • Duration (if temporary)

Workflow:

  • Suspension proposal created (e.g., due to compliance issue)

  • Voters review suspension reason

  • Voting window opens

  • Voters cast votes

  • If passed → Project suspended on-chain

4

ParameterUpdate

Purpose: Update platform parameters

Parameters:

  • Parameter name (fees, limits, voting thresholds, etc.)

  • New value

  • Effective date

Examples:

  • Update platform fee percentage

  • Update minimum purchase amount

  • Update voting quorum threshold

  • Update proposal execution delay

Workflow:

  • Parameter update proposal created

  • Voters review proposed changes

  • Voting window opens

  • Voters cast votes

  • If passed → Parameters updated


Complete Governance Flow

Proposal Created

Proposal Published

Voting Window Opens

Voters Cast Votes

Voting Window Closes

Results Calculated

Proposal Passed / Failed

If Passed: Execution

On-Chain Record

Step-by-Step Flow

1

Proposal Creation

Actor: System (automatic) or Proposer (manual)

Actions:

  • Proposal Submitted:

    • Proposer fills proposal form

    • Selects proposal type

    • Enters parameters

    • Adds description and rationale

    • Submits proposal

  • Proposal Validation:

    • System validates proposal format

    • Checks proposer eligibility (if required)

    • Validates parameters (e.g., cap > 0)

    • Creates proposal record

  • Proposal Published:

    • Proposal appears in governance interface

    • Status: Open

    • Voting window scheduled

Proposal Record Created:

  • Proposal ID

  • Proposal type

  • Parameters

  • Created by

  • Created at

  • Voting start time

  • Voting end time

2

Voting Window

Actor: DAO Voters

Actions:

  • Voting Window Opens:

    • Proposal becomes votable

    • Voters notified (if subscribed)

    • Voting interface accessible

  • Voters Review Proposal:

    • Read proposal details

    • Review associated data (project details, PoAI status, etc.)

    • Access supporting documents

    • Discuss in governance forum (optional)

  • Voters Cast Votes:

    • Voters select: FOR, AGAINST, or ABSTAIN

    • Votes weighted by governance token balance (if applicable)

    • Votes recorded on-chain or off-chain (depending on implementation)

    • Voters can change votes before window closes (if allowed)

  • Voting Window Closes:

    • No more votes accepted

    • Voting period ends

Voting Data:

  • Total votes cast

  • Votes for

  • Votes against

  • Abstentions

  • Voting power distribution

3

Results Calculation

Actor: System

Actions:

  • Calculate Results:

    • Count votes (weighted if applicable)

    • Check quorum threshold:

      • Minimum voting participation required

      • Example: 10% of total voting power

    • Check majority threshold:

      • Minimum support required

      • Example: 51% of votes cast must be FOR

  • Determine Outcome:

    • Passed: Quorum met AND majority FOR

    • Failed: Quorum not met OR majority AGAINST

  • Update Proposal Status:

    • Status → Passed or Failed

    • Results recorded

    • Voters notified

Result Criteria:

4

Execution (If Passed)

Actor: System / Executor

Actions:

  • Execution Trigger:

    • If proposal passed, execution triggered

    • Execution delay may apply (time-lock for security)

  • Execute Proposal:

    • OnboardProject: Call mintProjectRecord() and setProjectConfig()

    • IssueUnits: Call mintCredits()

    • SuspendProject: Call suspendProject() or update project status

    • ParameterUpdate: Update platform parameters

  • On-Chain Execution:

    • Transaction submitted

    • Transaction confirmed

    • Proposal status → Executed

    • Execution transaction hash recorded

  • Post-Execution:

    • Changes take effect

    • Affected systems updated

    • Stakeholders notified

Execution Record:

  • Execution timestamp

  • Execution transaction hash

  • Executor address

  • Execution result (success/failure)

5

Audit Trail

Actor: System

On-Chain Record:

  • Proposal creation event

  • Vote events (if on-chain)

  • Execution event

  • All transactions auditable

Off-Chain Record:

  • Proposal details

  • Vote breakdown

  • Execution details

  • Full audit log


Governance Interface Features

For Voters

Proposal List:

  • Active proposals

  • Upcoming proposals

  • Past proposals (with results)

  • Filters by type, status, date

Proposal Detail Page:

  • Full proposal text

  • Associated data (project details, etc.)

  • Current vote count

  • Time remaining

  • Vote button

  • Discussion forum link

Voting History:

  • Voter's past votes

  • Proposal outcomes

  • Impact tracking

For Proposers

Proposal Creation Form:

  • Proposal type selection

  • Parameter inputs

  • Description/rationale

  • Supporting documents upload

  • Submit button

Proposal Status Tracking:

  • Proposal status

  • Vote count

  • Time remaining

  • Execution status


Governance Parameters

Voting Parameters

  • Voting Duration: How long voting window stays open (e.g., 7 days)

  • Quorum Threshold: Minimum participation required (e.g., 10% of voting power)

  • Majority Threshold: Minimum support required (e.g., 51% of votes)

  • Execution Delay: Time between vote passing and execution (e.g., 24 hours)

Proposal Limits

  • Minimum Proposal Amount: Minimum value for certain proposals

  • Proposal Fee: Cost to create proposal (prevents spam)

  • Cooldown Period: Time between proposals from same proposer

Voting Power

  • Token-Based: Voting power = governance token balance

  • Delegation: Voters can delegate voting power

  • Snapshot: Voting power snapshot at proposal creation


Security Considerations

Proposal Validation

  • Parameters validated before creation

  • Malicious proposals rejected

  • Parameter bounds enforced

Execution Security

  • Time-lock delays for critical proposals

  • Multi-sig execution (if required)

  • Execution can be cancelled before delay expires

Vote Manipulation Prevention

  • Snapshot voting power at proposal creation

  • No double voting

  • Vote buying prevention (if applicable)


Example Scenarios

Scenario 1: Approve New Project

  1. Project "Solar Rajasthan 2024" completes PoAI

  2. Proposal created: OnboardProject

    • Project ID: PJT-101

    • Cap: 10,000 tons

  3. Voting window: 7 days

  4. Voters review project and PoAI status

  5. Votes: 65% FOR, 20% AGAINST, 15% ABSTAIN

  6. Quorum met, majority FOR → Passed

  7. Execution: ProjectRecord minted, credits activated

Scenario 2: Suspend Non-Compliant Project

  1. Compliance issue detected with Project B

  2. Proposal created: SuspendProject

    • Project token ID: 102

    • Reason: Verifier report discrepancy

  3. Voting window: 3 days (urgent)

  4. Votes: 80% FOR, 10% AGAINST → Passed

  5. Execution: Project suspended, issuance halted

Scenario 3: Update Platform Fee

  1. Proposal created: ParameterUpdate

    • Parameter: platform_fee_percentage

    • New value: 2.5% (from 3%)

  2. Voting window: 7 days

  3. Votes: 55% FOR, 30% AGAINST → Passed

  4. Execution delay: 48 hours

  5. Execution: Fee updated, takes effect after delay


Acceptance Criteria

  • ✅ Proposals cannot be executed without passing vote

  • ✅ Quorum and majority thresholds enforced

  • ✅ Execution is auditable on-chain

  • ✅ Proposal parameters validated

  • ✅ Voting power accurately calculated

  • ✅ Execution delays enforced for security

Last updated