Consensus & Staking

Governance

StableChain changes only by open, recorded decisions of the council. Every proposal, every vote and every change is a transaction on the ledger, and every change waits out a public notice period before it takes effect.

Decided by A council of 1 to 32 members, M of N
Notice before a change From immediate to 8 epochs
What it can do A closed list of bounded actions

01 How a decision is made

A council member proposes one action. Members vote until the threshold of approvals is reached, or until so many reject it that it can no longer pass. An approved proposal then waits out its timelock, and anyone may execute it once the timelock ends. If nobody executes it within the execution window, it expires.

  1. 1 Proposed A council member submits the action; its identifier binds proposer, nonce and action.
  2. 2 Voting Members approve or reject during the voting period.
  3. 3 Timelocked Approved by the threshold; the public notice period runs.
  4. 4 Executed Anyone triggers it after the timelock; the change takes effect.
  5. 5 Or expired Rejected, or not executed within the window: nothing changes.

02 What governance may do

Governance can only perform actions from a closed list, each with built-in bounds. It cannot move anyone's balance, write arbitrary state, or reverse a final block. The notice period grows with the weight of the change.

ActionTimelockBounds
Suspend a payment participantImmediateFor cause: a suspension takes effect in the same block.
Pause a bridge routeImmediateStops new bridge messages at once; balances are never touched.
Register or deactivate an issuer1 epochIdentity and residence issuers, and land authorities, with their scopes.
Set a fee price1 epochThe price per execution unit of a fee asset; at most doubling or halving per proposal.
Admit or change a participant1 epochBanks and payment institutions in the payment network.
Resume a bridge route1 epochA resumption waits one epoch after approval.
Set AEY authorized capacity4 epochsNever below outstanding supply, and rising by at most the governed maximum.
Open a bridge route or set its guardians4 epochsRoutes always open paused; guardian sets need a two-thirds threshold.
Schedule a protocol upgrade8 epochsThe new rules activate at a set height, after every operator has had time to upgrade.
Replace the council8 epochsThe longest notice, because it changes who governs.

03 The council

MembershipBetween 1 and 32 accounts, with an M-of-N threshold, set at genesis and changed only by a council proposal with the longest notice.
RejectionA proposal fails as soon as more members reject it than the council could spare and still reach the threshold.
Identity of a proposalEach proposal's identifier is a hash of its proposer, the proposer's nonce and the action, so the same proposal cannot be submitted twice.

04 Epochs and timing

Governance epochTimelocks are counted in governance epochs of a fixed number of slots, set at genesis: 512 slots, about 4 minutes 16 seconds at 500 ms each.
Execution windowAfter its timelock, an approved proposal must be executed within a set number of epochs, or it expires.
UpgradesA protocol upgrade names the height at which the new rules begin, so every node switches at the same block.

05 Seeing it on the ledger

Proposals, votes and executions are ordinary transactions of the governance types (80 Propose, 81 Vote, 82 Execute), signed by council members and settled in finalized blocks. They appear in the Transactions register as Registry transactions, with the proposal recorded in each receipt's events. Each executed change is final like any other block: the record of who proposed, who voted and when it took effect can never be altered.