Skip to content

feat(iip-59): SetCommissionRate action + CandidateV2 commission fields#168

Open
raullenchai wants to merge 1 commit into
iotexproject:masterfrom
raullenchai:feat/iip-59-commission-rate
Open

feat(iip-59): SetCommissionRate action + CandidateV2 commission fields#168
raullenchai wants to merge 1 commit into
iotexproject:masterfrom
raullenchai:feat/iip-59-commission-rate

Conversation

@raullenchai

Copy link
Copy Markdown
Member

Summary

Proto changes for IIP-59: protocol-native voter reward distribution.

Changes

action.proto:

  • New SetCommissionRate message: rate (uint64, basis points 0-10000)
  • Field 54 in ActionCore oneof: setCommissionRate

state_data.proto:

  • CandidateV2.commissionRate (field 10): delegate's voter reward commission rate
  • CandidateV2.commissionRateLastEpoch (field 11): cooldown enforcement

Usage

// Delegate sets 10% commission
SetCommissionRate { rate: 1000 }

// Query shows commission in candidate info
CandidateV2 { ..., commissionRate: 1000, commissionRateLastEpoch: 60240 }

Companion PR: iotexproject/iotex-core#4811

🤖 Generated with Claude Code

…ields

Proto changes for IIP-59 (protocol-native voter reward distribution):

action.proto:
  - Add SetCommissionRate message (rate: uint64 basis points 0-10000)
  - Add setCommissionRate field 54 to ActionCore oneof

state_data.proto:
  - Add commissionRate (field 10) to CandidateV2
  - Add commissionRateLastEpoch (field 11) to CandidateV2

These fields enable:
  1. Delegates to opt-in to automatic voter reward distribution
  2. RPC/API to expose commission rate in candidate queries
  3. Cooldown enforcement (last epoch tracking)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant