Pharos Staking Contract Documentation

Introduction

Pharos is a PoS blockchain where security and performance are strengthened through staking. Validator owners lock PROS to operate nodes, and any user can delegate PROS to validators to earn proportional staking rewards.

Staking is implemented as an upgradeable system contract (UUPS proxy). Proxy address:

0x4100000000000000000000000000000000000000

Roles

Key Concepts

Epochs

State transitions happen at epoch boundaries via advanceEpoch (admin-only). Default epoch: 4 hours.

Pending Mechanism

Delegated stake enters pendingStake and activates at the next epoch via lazy activation (settleReward). This prevents reward manipulation within a single epoch.

Bootstrapping Validators

Validators can register with less than minValidatorStake (but at least MIN_REGISTRATION_STAKE). They enter pendingAddPoolSets in a "bootstrapping" state. Delegators can delegate to bootstrapping validators. Once totalStake >= minValidatorStake, the validator activates at the next epoch.

Withdrawal Windows

Commission

Max 20% (MAX_COMMISSION_RATE = 2000), default 10%. Changes take effect after DEFAULT_COMMISSION_RATE_DELAY (10 epochs).