Constants and Mimir
Overview
The network launched with a set number of constants, which have not changed. Constants can be overridden via Mimir and nodes have the ability to vote on and change Mimir values.
See Halt Management for halt and pause specific settings.
Mimir setting can be created and changed without a corresponding Constant.
Mimirs have a maximum length of 128 bytes (see MaxMimirLength in THORNode code).
Values
- Constant Values:https://midgard.ninerealms.com/v2/thorchain/constants
- Mimir Values: https://thornode.ninerealms.com/thorchain/mimir
Key
- No Symbol - Constant only, no Mimir override.
- Star (*) indicates a Mimir override of a Constant.
- Hash (#) indicates Mimir with no Constant.
Outbound Transactions
OutboundTransactionFee
: Amount of rune to withhold on all outbound transactions (1e8 notation)RescheduleCoalesceBlocks
*: The number of blocks to coalesce rescheduled outboundsMaxOutboundAttempts
: The maximum retries to reschedule a transaction
Scheduled Outbound
MaxTxOutOffset
: Maximum number of blocks a scheduled outbound transaction can be delayedMinTxOutVolumeThreshold
: Quantity of outbound value (in 1e8 rune) in a block before it's considered "full" and additional value is pushed into the next blockTxOutDelayMax
: Maximum number of blocks a scheduled transaction can be delayedTxOutDelayRate
*: Rate of which scheduled transactions are delayed
Swapping
HaltTrading
#: Pause all tradingHalt<chain>Trading
#: Pause trading on a specific chainMaxSwapsPerBlock
: Artificial limit on the number of swaps that a single block with processMinSwapsPerBlock
: Process all swaps if the queue is equal to or smaller than this numberEnableDerivedAssets
: Enable/disable derived asset swapping (excludes lending)StreamingSwapMinBPFee
*: Minimum swap fee (in basis points) for a streaming swap tradeStreamingSwapMaxLength
: Maximum number of blocks a streaming swap can trade forStreamingSwapMaxLengthNative
*: Maximum number of blocks native streaming swaps can trade overTradeAccountsEnabled
: Enable/disable trade accountCloutReset
: The number of blocks before clout spent gets resetCloutLimit
*: Max clout allowed to spendMultipleAffiliatesMaxCount
: Maximum number of nested affiliatesL1SlipMinBps
: Minimum L1 asset swap fee in basis pointsTradeAccountsSlipMinBps
: Minimum trade asset swap fee in basis pointsSecuredAssetSlipMinBps
: Minimum secured asset swap fee in basis pointsSynthSlipMinBps
: Minimum synth asset swap fee in basis pointsDerivedSlipMinBps
: Minimum derived asset swap fee in basis points
TCY Management
MinRuneForTCYStakeDistribution
: Minimum RUNE required in the TCY fund to be eligible for distribution (default: 2,100 RUNE (210000000000 in 1e8 notation))MinTCYForTCYStakeDistribution
: Minimum TCY required in the TCY fund to be eligible for distribution (default: 100,000 TCY)TCYStakeSystemIncomeBps
: Percentage (in basis points) of system income allocated to the TCY fund (default: 1000 bps = 10%)TCYClaimingSwapHalt
: Enables/disables RUNE-to-TCY swaps in the claiming module (default: 1, halted)TCYStakeDistributionHalt
: Enables/disables distribution of RUNE revenue to TCY stakers (default: 1, halted)TCYStakingHalt
: Enables/disables staking of TCY tokens (default: 1, halted)TCYUnstakingHalt
: Enables/disables unstaking of TCY tokens (default: 1, halted)TCYClaimingHalt
: Enables/disables claiming of TCY tokens for THORFi deposits (default: 1, halted)
Secured Asset Management
HaltSecuredGlobal
#: Halts operations for all secured assets across both the Base and App LayersHaltSecuredDeposit-<Chain>
#: Disables deposit of secured assets on the specified chainHaltSecuredWithdraw-<Chain>
#: Disables withdrawal of secured asset on the specified chain
App Layer Management
WasmPermissionless
#: Toggles permissionless deployment of CosmWasm smart contracts (default: 0, restricted).WasmMinGasPrice
#: Sets the minimum gas price for CosmWasm transactions in the App Layer in RUNE.HaltWasmGlobal
#: Pauses all CosmWasm smart contract executions in the App Layer.HaltWasmCs-<checksum>
#: Halts a specific CosmWasm contract by its base32-encoded checksum.HaltWasmContract-<address suffix>
#: Halts a specific CosmWasm contract using the last 6 characters of its address.
LP Management
PauseLP
#: Pauses the ability for LPs to add/remove liquidityPauseLP<chain>
#: Pauses the ability for LPs to add/remove liquidity, per chainMaximumLiquidityRune
#: Maximum RUNE capped on the pools known as the ‘soft cap’LiquidityLockUpBlocks
: The number of blocks an LP must wait before they can withdraw their liquidityPendingLiquidityAgeLimit
: The number of blocks the network waits before initiating pending liquidity cleanup. Cleanup of all pools lasts for the same duration.PauseAsymWithdrawal-<Chain>
#: Forces dual-address liquidity providers to withdraw symmetrically rather than asymmetrically.PauseLPDeposit-<Asset>
#: pauses the ability to add liquidity into that pool. E.g.PAUSELPDEPOSIT-BTC-BTC=1
suspends deposits for the BTC pool
RunePool
RUNEPoolEnabled
: Enable/disable RUNE PoolRUNEPoolDepositMaturityBlocks
: Minimum number of blocks from last RUNEPool deposit when a withdraw is allowed.RUNEPoolMaxReserveBackstop
: Max amount of RUNE above thePOLMaxNetworkDeposit
that the reserve can enter RunePool before withdrawals are disabled.
Chain Management
HaltChainGlobal
#: Pause observations on all chains (chain clients)HaltTrading
: Stops swaps and additions, if done, will result in refunds. Observations still occur.Halt<chain>Chain
#: Pause a specific blockchainSolvencyHalt<Chain>
# Halts a chain if the solvency checker for that chain fails.NodePauseChainGlobal
#: Individual node controlled means to pause all chainsNodePauseChainBlocks
: Number of block a node operator can pause/resume the chains forBlocksPerYear
: Blocks in a yearMaxUTXOsToSpend
#: Max UTXOs to be spent in one blockMinimumNodesForBFT
: Minimum node count to keep the network running. Below this, Ragnarök is performedMaxConfirmations-<Chain>
# : The maximum number of confirmations for a chainConfMultiplierBasisPoints-<Chain>
#: Increases or decrease the inbound confirmation count block requirement for a chain
Fee Management
NativeTransactionFee
: RUNE fee on all on chain txsTNSRegisterFee
: Registration fee for new THORName, in RUNETNSFeeOnSale
: fee for TNS sale in basis pointsTNSFeePerBlock
: per block cost for TNS, in RUNEPreferredAssetOutboundFeeMultiplier
*: The multiplier of the current preferred asset outbound fee, if RUNE balance > multiplier * outbound_fee, a preferred asset swap is triggeredMinOutboundFeeMultiplierBasisPoints
*: Minimum multiplier applied to base outbound fee charged to user, in basis pointsMaxOutboundFeeMultiplierBasisPoints
: Maximum multiplier applied to base outbound fee charged to user, in basis points
Solvency Checker
StopSolvencyCheck
#: Enable/Disable Solvency CheckerStopSolvencyCheck<chain>
#: Enable/Disable Solvency Checker, per chainPermittedSolvencyGap
: The amount of funds permitted to be "insolvent". This gives the network a little bit of "wiggle room" for margin of error
Node Management
MinimumBondInRune
*: Sets a lower bound on bond for a node to be considered to be churned inValidatorMaxRewardRatio
*: the ratio to MinimumBondInRune at which validators stop receiving rewards proportional to their bondMaxBondProviders
*: Maximum number of bond providers per modeNodeOperatorFee
*: Minimum node operator feeSignerConcurrency
*: Number of concurrent signers for active and retiring vaults
Slashing Management
LackOfObservationPenalty
: Add two slash points for each block where a node does not observeSigningTransactionPeriod
: How many blocks before a request to sign a tx by yggdrasil pool, is counted as delinquent.DoubleSignMaxAge
: Number of blocks to limit double signing a blockFailKeygenSlashPoints
: Slash for 720 blocks, which equals 1 hourFailKeysignSlashPoints
: Slash for 2 blocksObserveSlashPoints
: The number of slashpoints for making an observation (redeems later if observation reaches consensus)ObservationDelayFlexibility
: Number of blocks of flexibility for a validator to get their slash points taken off for making an observationJailTimeKeygen
: Blocks a node account is jailed for failing to keygen. DO NOT drop below TSS timeoutJailTimeKeysign
: Blocks a node account is jailed for failing to keysign. DO NOT drop below TSS timeoutBondSlashBan
: RUNE amount to slash bond of banned node
Churning
AsgardSize
*: Defines the number of members to an Asgard vaultMinSlashPointsForBadValidator
: Minimum quantity of slash points needed to be considered "bad" and be marked for churn outBondLockupPeriod
: Lockout period that a node must wait before being allowed to unbondChurnInterval
*: Number of blocks between each churnHaltChurning
: Pause churningDesiredValidatorSet
*: Maximum number of validatorsFundMigrationInterval
*: Number of blocks between attempts to migrate funds between asgard vaults during a migrationNumberOfNewNodesPerChurn
#: Number of targeted additional nodes added to the validator set each churnBadValidatorRedline
*: Redline multiplier to find a multitude of bad actorsLowBondValidatorRate
: Rate to mark a validator to be rotated out for low bondMaxNodeToChurnOutForLowVersion
*: Maximum number of validators to churn out for low version each churnMigrationVaultSecurityBps
: Vault bond must be greater than bps of funds value in rune to receive migrations
Economics
EmissionCurve
*: How quickly rune is emitted from the reserve in block rewardsMaxAvailablePools
: Maximum number of pools allowed on the network. Gas pools (native pools) are excluded from this.MinRunePoolDepth
*: Minimum number of RUNE to be considered to become activePoolCycle
*: Number of blocks the network will churn the pools (add/remove new available pools)StagedPoolCost
: Number of RUNE (1e8 notation) that a staged pool is deducted on each pool cycle.KillSwitchStart
*: Block height to start to kill BEP2 and ERC20 RUNEKillSwitchDuration
: Duration (in blocks) until switching is deprecatedMinimumPoolLiquidityFee
: Minimum liquidity fee an active pool should accumulate to avoid being demoted, set to 0 to disable demote pool based on liquidity feeMaxRuneSupply
*: Maximum supply of RUNEPendulumUseEffectiveSecurity
: Determines the Incentive Pendulum perception of thesecuring
. If set to 1,Effective Security Bond
is used; otherwiseTotal Effective Bond
is applied.PendulumUseVaultAssets
: Determines the Incentive Pendulum perception of thesecuring
. If set to 1,Total Pooled
is used; otherwiseVaulted Assets
is applied.PendulumAssetsBasisPoints
: Scales the Incentive Pendulum perception of thesecured
L1 asset size, where values above 100% overestimate and values below 100% underestimate the amount ofsecured
assets.
Attestation Gossip
AttestationMaxBatchSize
: Maximum attestations to send in a batchAttestationPeerConcurrentSends
: Maximum batches to concurrently send to peerAttestationPeerConcurrentReceives
: Maximum batches to concurrently receive from a peer
Miscellaneous
DollarsPerRune
: Manual override of number of dollars per one RUNE. Used for metrics data collection and RUNE calculation from MinimumL1OutboundFeeUSDTHORNames
: Enable/Disable THORNamesTNSRegisterFee
: TNS registration fee of new namesTNSFeePerBlock
: TNS cost per block to retain ownership of a nameArtificialRagnarokBlockHeight
: Triggers a chain shutdown and ragnarokNativeTransactionFee
: The RUNE fee for a native transaction (gas cost in 1e8 notation)HALTSIGNING<chain>
#: Halt signing in a specific chainHALTSIGNING#
: Halt signing globallyRagnarok-<Asset>
#: Ragnaroks a specific poolBankSendEnabled
: Enable/Disable cosmos bank send messagesObservationDelayFlexibility
*: Number of blocks of flexibility for a validator to get their slash points taken off for making an observation
Router Upgrading (DO NOT TOUCH!)
Old keys (pre 1.94.0)
MimirRecallFund
: Recalls Chain funds, typically used for router upgrades onlyMimirUpgradeContract
: Upgrades contract, typically used for router upgrades only
New keys (1.94.0 and on)
MimirRecallFund<CHAIN>
: Recalls Chain funds, typically used for router upgrades onlyMimirUpgradeContract<CHAIN>
: Upgrades contract, typically used for router upgrades only