> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stablenet.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Governance Overview

> StableNet's on-chain governance manages validators, WKRC supply, and account policy through five genesis-deployed system contracts — all changes require quorum voting.

> 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

| Contract          | Address   | Responsibility                                                 |
| ----------------- | --------- | -------------------------------------------------------------- |
| NativeCoinAdapter | `0x…1000` | ERC-20 interface for WKRC; mint/burn execution point           |
| GovValidator      | `0x…1001` | Validator set, BLS keys, network-wide gas tip                  |
| GovMasterMinter   | `0x…1002` | Approved minter registry and per-minter mint allowance caps    |
| GovMinter         | `0x…1003` | Proof-based mint/burn proposal creation, voting, and execution |
| GovCouncil        | `0x…1004` | Blacklist and Authorized account management                    |

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:

| Flag        | Effect                                                                   |
| ----------- | ------------------------------------------------------------------------ |
| Blacklisted | All transfers blocked — address cannot send or receive WKRC              |
| Authorized  | Exempt from governance gas tip enforcement; can set custom priority fees |

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

## Related

* [WKRC Gas Token](/en/v0.3/learn/wkrc-gas-token) — how the gas tip and supply model work together
* [Gas and Fees](/en/v0.3/learn/gas-and-fees) — fee calculation and the governance tip in practice
* [Contract Addresses](/en/v0.3/reference/contract-addresses) — full address table
