D008-governance.component.cspec
1 # D008-governance.component.cspec 2 3 metadata: 4 id: D008 5 name: governance 6 version: 1.3.0 7 domain: delta 8 stability: high_change 9 updated: 2026-01-19 10 cascade_priority: 30 11 roles: 12 primary: [Arch, Dev] 13 review: [Security] 14 expertise: 15 required: [governance, voting] 16 helpful: [smart_contracts, tokenomics] 17 context_tags: [governance, voting, proposals, timelock, emergency] 18 19 dependencies: 20 upstream: [] 21 downstream: [] 22 23 interface: 24 types_ref: _registry/types.cspec 25 types: 26 DX: delta_governance, decimals:0, supply:1B_fixed, mint:genesis_only, privacy:zk_holdings, state:shielded_record, dividend:yes 27 DELTA_GOV: proposer, voter, dx_stake:10k 28 VOTE: 1_staked_wallet=1_vote, min_stake:10k_DX, propose_min:1M_DX, quorum:100%, non_vote:slashed 29 EMPHATIC_VOTE: stake:100_DX, slots:50_per_side, bonus:10%, proposer_slash:conditional 30 STANDARD: approval:>67%, timelock:48h # Delta config changes; 100% quorum, non-voters slashed 31 CRITICAL: approval:>67%, timelock:7d, scope:[gov_add_remove,emergency,pe_change] 32 GID: governor_identity, privileged_contract, mint_burn_authority 33 functions: 34 submit_proposal: title, description, execution_payload, type -> proposal_id 35 vote: proposal_id, vote_for|vote_against # No abstain - non-voters auto-against and slashed 36 execute_proposal: proposal_id -> execution_result 37 emergency_veto: proposal_id, requires:80%_against 38 stake_dx: amount -> voting_eligibility 39 unstake_dx: amount -> transferable 40 events: 41 - proposal_submitted 42 - vote_cast 43 - proposal_passed 44 - proposal_failed 45 - proposal_executed 46 - emergency_veto_triggered 47 48 spec: 49 # === D008: GOVERNANCE MODULE === 50 # Delta chain governance - COMPLETELY SEPARATE from Alpha governance 51 52 # === GOVERNANCE SEPARATION PRINCIPLE === 53 separation: 54 principle: alpha_and_delta_governance_are_independent 55 alpha_scope: alpha_config, alpha_software (governed by governors) 56 delta_scope: delta_config, delta_software (governed by DX stakers) 57 joint_scope: platform_wide_software_changes (requires both chains) 58 59 governance: 60 scope: 61 delta_only: 62 adjustable: [fee_tiers, leverage_limits, oracle_providers, oracle_staleness_threshold, insurance_fund_target] 63 vote_required: [new_markets, oracle_provider_changes] 64 increase_only: [pe_ratio] 65 joint_with_alpha: 66 requires_both: [platform_wide_software_upgrades, core_protocol_changes] 67 68 proposal_lifecycle: 69 draft: offchain_discussion 70 submitted: onchain, min_1M_DX_to_propose 71 voting: 7_day_period 72 passed_or_failed: threshold_check 73 execution: timelock_then_execute 74 75 voting: 76 power: 1_staked_wallet = 1_vote # Not token-weighted; wallet-based voting 77 min_stake_to_vote: 10k_DX 78 min_stake_to_propose: 1M_DX 79 actions: [vote_for, vote_against, emphatic_yes, emphatic_no] 80 quorum: 100% # All eligible DX stakers expected to vote 81 non_participation: 82 treatment: auto_cast_against 83 consequence: slashed # DX slashing for non-voters 84 slashing_schedule: 85 first_miss: free (warning only) 86 subsequent_misses: 1%_of_staked_DX 87 slashing_rate_change_threshold: 90% # Changing slashing rate requires 90% approval 88 slashed_destination: reward_pool 89 90 # === EMPHATIC VOTING === 91 emphatic_voting: 92 purpose: signal_strong_conviction_with_skin_in_game 93 stake_required: 100_DX 94 slots_per_side: 50 # Max 50 emphatic_yes, 50 emphatic_no per proposal 95 96 mechanics: 97 emphatic_yes: 98 weight: +1 # Same as regular yes 99 stake: 100_DX_locked_until_vote_concludes 100 emphatic_no: 101 weight: -1 # Same as regular no 102 stake: 100_DX_locked_until_vote_concludes 103 104 outcomes: 105 proposal_passes: 106 emphatic_yes_voters: stake_returned_plus_10_percent_bonus 107 emphatic_no_voters: stake_forfeited_to_reward_pool 108 bonus_source: reward_pool 109 proposal_fails_no_slash: 110 emphatic_yes_voters: stake_forfeited_to_reward_pool 111 emphatic_no_voters: stake_returned_plus_10_percent_bonus 112 proposal_fails_with_slash: 113 emphatic_yes_voters: stake_forfeited_to_reward_pool 114 emphatic_no_voters: stake_returned_plus_10_percent_bonus 115 proposer: slashed_10_percent_of_staked_DX 116 117 proposer_slashing: 118 trigger_formula: emphatic_no_count >= min(total_no_votes * 0.10, 50) 119 condition: proposal_must_also_fail 120 penalty: 10_percent_of_each_proposer_stake # 2000 DX per signer 121 total_penalty: 10000_DX # 5 signers × 2000 DX 122 destination: reward_pool 123 124 thresholds: 125 delta_config_changes: 126 approval: >67% 127 timelock: 48h 128 examples: [fee_changes, new_markets, oracle_updates, pe_ratio] 129 delta_software_updates: 130 approval: >67% 131 timelock: 7d 132 slashing_rate_change: 133 approval: >90% 134 timelock: 7d 135 note: changing_slashing_threshold_for_non_voters 136 joint_approval: 137 approval: >51% 138 note: delta_side_of_joint_vote_for_platform_changes 139 140 emergency_veto: 141 during_timelock: yes 142 requires: 80%_against 143 effect: proposal_cancelled 144 145 # === DX STAKING FOR GOVERNANCE === 146 staking_model: 147 default: staked (opt_out) 148 149 to_transfer: 150 requirement: unstake_first 151 cooldown: none (instant_unstake) 152 153 voting_eligibility: 154 minimum: 10k_DX_staked 155 156 dividend_eligibility: 157 staked: yes 158 unstaked: no 159 160 # === GOVERNOR REGISTRATION === 161 governor_registration: 162 process: 163 1: applicant_submits_registration_proposal 164 2: includes: [identity_proof, validator_commitment, stake_source] 165 3: critical_vote (67%_approval, 20%_quorum) 166 4: 7d_timelock 167 5: if_passed: added_to_GID 168 169 removal_process: 170 trigger: [governance_proposal, severe_violation] 171 vote: critical_threshold 172 effect: status_set_removed_in_GID 173 174 # === EMERGENCY POWERS === 175 emergency_actions: 176 scope: 177 - trading_halt 178 - withdrawal_pause 179 - oracle_override 180 - bridge_suspension 181 182 activation: 183 method: critical_proposal (expedited) 184 approval: 67% 185 quorum: 20% 186 timelock: 24h (reduced_for_emergencies) 187 188 deactivation: 189 automatic: after_specified_duration 190 manual: governance_vote 191 192 # === ACTION TYPES === 193 action_types: 194 # Standard actions (67% approval, 10% quorum, 48h timelock) 195 type_0: UpdateParameter 196 type_5: UpdateMintingRate 197 type_6: UpdateFees 198 type_7: TransferTreasury 199 type_9: AddOracleSource 200 type_11: DeactivateSource 201 type_12: ReactivateSource 202 type_13: UpdateOracleConfig 203 204 # Critical actions (67% approval, 20% quorum, 7d timelock) 205 type_1: AddGovernor 206 type_2: RemoveGovernor 207 type_3: EmergencyPauseMinting 208 type_4: EmergencyResumeMinting 209 type_8: UpgradeContract 210 type_10: RemoveOracleSource (can_break_ax_pricing) 211 212 # === ORACLE GOVERNANCE === 213 oracle_source_management: 214 add_source: 215 action: type_9 216 params: [pair_id, source_name, endpoint_hash, weight_bps] 217 vote_type: standard 218 effect: new_source_added_to_registry 219 220 remove_source: 221 action: type_10 222 params: [source_id] 223 vote_type: critical 224 warning: removing_all_sources_for_pair_breaks_ax_pricing 225 effect: source_removed_from_registry 226 227 deactivate_source: 228 action: type_11 229 params: [source_id] 230 vote_type: standard 231 reversible: yes 232 effect: source_skipped_in_aggregation 233 234 reactivate_source: 235 action: type_12 236 params: [source_id] 237 vote_type: standard 238 effect: source_restored_to_aggregation 239 240 # === GOVERNANCE CONTRACTS === 241 contracts: 242 on_delta: 243 governance.delta: 244 - proposal_storage 245 - vote_tallying 246 - execution_queue 247 - timelock_management 248 - oracle_source_actions 249 250 joint_governance: 251 trigger: platform_wide_software_changes 252 process: 253 - proposal_submitted_to_both_chains_simultaneously 254 - alpha_governance_votes (67% governors required) 255 - delta_governance_votes (51% DX stakers required) 256 - both_must_pass_for_execution 257 attestation: cross_chain_confirmation_of_both_results 258 finality: max(alpha_finality, delta_finality) + timelock 259 260 changelog: 261 - version: 1.3.0 262 date: 2026-01-19 263 type: feature 264 description: "Add emphatic voting: 100 DX stake, 50 slots/side, bonus/penalty, proposer slashing" 265 breaking: false 266 267 - version: 1.2.0 268 date: 2026-01-15 269 type: breaking 270 description: "100% quorum model: all DX stakers must vote, non-voters auto-against and slashed" 271 breaking: true 272 273 - version: 1.1.0 274 date: 2026-01-15 275 type: fix 276 description: "Fixed voting power: 1 staked wallet = 1 vote (not token-weighted)" 277 breaking: false 278 279 - version: 1.0.0 280 date: 2026-01-07 281 type: initial 282 description: "Migrated from delta_chain.cspec and governance.cspec (merged)" 283 breaking: false