Skip to main content

Staking & Governance

$ARENA holders participate in TradeArena governance by delegating tokens to validators. Validators earn staking rewards proportional to their delegated stake, and delegators earn a share of those rewards. Governance proposals are executed on-chain after a timelock period.

Two Validator Types​

Staking operates across two stakeholder categories:

TypeWhoStake PurposeMinimum Stake
System Validator (technical_node)Platform-operated technical nodesValidate protocol-level assertions, oracle consistency, contract complianceSet by governance
Inventory Validator (inventory_holder)Verified companies with physical inventoryAttest to physical-inventory existence; back commodity ordersSet per category in inventory_validators.staked_arena_amount

Both types are registered in inventory_validators. Delegators in arena_staking can choose either type as their delegation target.

Token Delegation Mechanics​

flowchart LR
D[Delegator] -->|delegate $ARENA| V[Validator]
V -->|validate inventory / protocol| P[Protocol]
P -->|staking rewards| V
V -->|proportional share| D
  1. Delegate: A user calls the staking endpoint with their chosen validator and $ARENA amount. The tokens are locked; a record is created in arena_staking with status = 'active'.
  2. Earn: Validators earn rewards on each validated order. Rewards are distributed proportionally to delegators based on their amount / validator.total_delegated_stake.
  3. Unstake: After triggering an unstake request, tokens are subject to a cooldown period (governed by the protocol). status moves to 'unstaking'; the unstaked_at timestamp is set when the cooldown expires.

Governance Voting Weight​

Voting weight is calculated from the amount of $ARENA staked (delegated) by a governance participant:

voting_weight = staked_arena_amount

Unstaking tokens immediately removes their voting weight. Tokens in cooldown (status = 'unstaking') do not count toward voting weight.

Proposal Lifecycle​

stateDiagram-v2
[*] --> submitted : Any $ARENA holder submits proposal
submitted --> voting : Voting window opens
voting --> defeated : Quorum not met or votes against
voting --> timelocked : Quorum met, votes in favour
timelocked --> executed : Timelock expires, no veto
timelocked --> cancelled : Guardian veto during timelock
executed --> [*]
defeated --> [*]
cancelled --> [*]
  • Voting window: Fixed duration set by governance (e.g., 7 days)
  • Quorum: Minimum fraction of total staked $ARENA required to vote for a result to be valid
  • Timelock: Delay between vote passing and execution, allowing affected parties to exit before the change takes effect
  • Guardian veto: A multi-sig guardian can cancel proposals during the timelock (emergency safety measure)
  • Arena Token — $ARENA token overview, compliance matrix, and supply parameters
  • Inventory Validation — Validator registration, proof formats, and staking requirements
  • Bond Issuance — Governable collateral rate used when market makers post bonds
  • Identity & Compliance — ERC-3643 identity required for staking activities