Skip to main content
All protocol-level decisions on StableNet — validator membership, WKRC minting, gas tip, and account restrictions — are made on-chain through quorum-based governance contracts.
StableNet replaces off-chain coordination with five system contracts deployed at genesis. No single party can change the validator set, mint tokens, or modify account flags unilaterally.

The five system contracts

All contracts are deployed at genesis, have no owner, and can only be upgraded via hard fork.

GovValidator — validators and gas tip

GovValidator manages who can produce blocks and what the minimum gas tip is. Validator set: Adding or removing a validator requires a governance proposal and quorum approval from existing members. Changes take effect at the next epoch boundary (~10 blocks). Each validator registers three keys: an operator key, a consensus key, and a BLS public key. Gas tip: The gasTip stored in GovValidator is the network-wide minimum maxPriorityFeePerGas. General accounts cannot override it. Query the current value with eth_maxPriorityFeePerGas.

GovMasterMinter and GovMinter — WKRC supply

WKRC supply is not algorithmically inflated. New tokens enter circulation only when a licensed institution deposits KRW fiat.
  • GovMasterMinter maintains the list of approved minters and their maximum mint allowance per address
  • GovMinter handles the proposal lifecycle: a minter submits proof of a KRW deposit, governance votes, and NativeCoinAdapter executes the mint once quorum is reached
Burning works the same way in reverse. The base fee is never burned — it goes to validators.

GovCouncil — blacklist and authorized accounts

GovCouncil manages two per-account flags enforced at the protocol level: These flags are stored in each account’s Extra field and are checked during every transaction and EVM call — not only at the RPC layer.

Developer benefits

  • The gas tip minimum is published on-chain — query it programmatically instead of hardcoding a value
  • Blacklist status is readable on-chain — check before sending to avoid unexpected reverts
  • Validator and minter changes are observable on-chain — index GovValidator events to track validator set changes