Skip to content
Tenzro
Documentation menu
Machine Economy

Governed parameters

Every network policy and economic value is a parameter in chain state, read the same by every node and changed only by an enacted governance proposal.

Every network policy and economic value of Tenzro Network is a governed parameter: 346 of them in the current release. They cover fees and the fee market, bonds for each role, slashing rates and the jail term, unbonding periods, SLA penalties, duty rewards, sponsorship and grant limits, the post-quantum switches and the voting rules themselves. Each one:

  • starts at its genesis value, written into chain state at block 0;
  • is read from chain state by every node, so all nodes apply the same value;
  • changes only through an enacted parameter_change proposal. No admin method, CLI flag or node configuration sets one.

Reading them

bash
tenzro governance params --rpc https://rpc.tenzro.com
tenzro governance params --key settlement.reconciliation_reward --rpc https://rpc.tenzro.com

tenzro_getNetworkParams returns every parameter, or one with {"key": "..."}, with its current value, its bounds, its genesis value, the direction that tightens it and any enacted change still waiting for its epoch. Values are decimal strings, since several exceed what a JSON number holds exactly. The MCP tool is get_network_params.

Changing one

bash
tenzro governance propose-param --key settlement.reconciliation_reward --value <VALUE> --memo "Why the change"
  1. Submission. A key that is not a governed parameter, or a value outside its bounds, is refused when the proposal is submitted.
  2. Vote. The proposal is decided on the standard track by the voting rules in force when it opened. A change to the rules enacted while a proposal is open never moves that proposal's window, timelock or threshold.
  3. Enactment. After the timelock the change applies at the next epoch. A change that tightens a requirement, such as a higher bond, a higher slash or a shorter window to respond in, waits out a grace window first (governance.tightening_grace_epochs), so an operator who met the old value keeps serving while they top up.

A value outside the parameter's hard bounds cannot be proposed. Bounds are safety limits that keep the network working at both ends: an epoch-based value of zero, a quorum anyone could clear alone, a slash above 100%. They change only with a protocol upgrade. Cryptography, encodings, state-transition rules and gas costs are protocol rules, not parameters, and the epoch and round lengths are fixed at genesis in the current release.

Kinds of parameter

  • Values: amounts, caps, rates and windows, each with a minimum and a maximum.
  • Switches (keys ending in _enabled): 1 on, 0 off.
  • Status levers (keys ending in .status): 0 enabled, 1 paused, 2 retired. A change that only pauses a lever runs on the expedited track; resuming and retiring run on the standard track. Retiring is final. Levers exist for each inference verification level, each proof system the chain verifies, each kind of recovery signer, new bonds for each operator role other than validator, and each bridge transport.
  • Activation epochs (feature.<name>.activation_epoch): the epoch at which a new state-transition rule goes live for every node at once. None is gated at present.

Protocol guardians can pause one running lever without a vote, within limits that are themselves parameters (governance.guardian_threshold, governance.feature_pause_max_epochs, governance.feature_pause_cooloff_epochs). List every lever, its status and any guardian pause with tenzro governance levers.

Parameters worth knowing

KeyAt genesisWhat it does
accounts.ml_dsa_leg_on_enrolment.statuspaused (1)Whether an account that enrols an ML-DSA-65 key requires the ML-DSA-65 leg of every key acting for it from then on. See Cryptography
slashing.jail_term_epochs720Epochs a slashed validator stays jailed; a reinstate_validator proposal can end it sooner
validator.admission_approval1 at launch (the code default is 0)1 means a new validator registers only from an account an approve_validators proposal named; genesis validators and those already registered are not affected
stake.validator_tnzo10,000Validator self-stake, whole TNZO
stake.unbonding_ms7 daysHow long a role stake stays slashable after its operator asks to withdraw
governance.tightening_grace_epochs168Wait before a change that asks more of those it binds applies
governance.guardian_threshold2Guardians whose signals it takes to veto a proposal or pause a feature
records.pq_leg_required_from_msneverWhen machine records must carry an ML-DSA-65 leg; see Cryptography
session.hybrid_records_from_msneverWhen stored records must carry a hybrid session signature

Sponsorship and grant caps (sponsorship.*, grants.*, treasury.sponsorship_grants_yearly_max_*) all start at zero. See Sponsorship and grants.

See Governance for tracks, quorums, guardians and the jail and reinstatement rules.

Methods

MethodAccessPurpose
tenzro_getNetworkParamsopenEvery governed parameter, or one by key
tenzro_listLeversopenEvery lever with its kind, value or status, bounds and any change waiting for its epoch
ExploreJoin the network