{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "ProtocolConstants", "type": "object", "additionalProperties": false, "properties": { "rampUpCycles": { "type": "integer", "description": "The number of cycles where security deposit is ramping up", "format": "int32" }, "noRewardCycles": { "type": "integer", "description": "The number of cycles with no baking rewards", "format": "int32" }, "consensusRightsDelay": { "type": "integer", "description": "Delay in cycles after which baking rights are assigned", "format": "int32" }, "delegateParametersActivationDelay": { "type": "integer", "description": "Delay in cycles after which the parameters from `set_delegate_parameters` operations take effect", "format": "int32" }, "blocksPerCycle": { "type": "integer", "description": "A number of blocks the cycle contains", "format": "int32" }, "blocksPerCommitment": { "type": "integer", "description": "A number of blocks that indicates how often seed nonce hash is included in a block. Seed nonce hash presents in only one out of `blocksPerCommitment`", "format": "int32" }, "blocksPerSnapshot": { "type": "integer", "description": "A number of blocks that indicates how often a snapshot (snapshots are records of the state of stake distributions) is taken", "format": "int32" }, "blocksPerVoting": { "type": "integer", "description": "A number of block that indicates how long a voting period takes", "format": "int32" }, "timeBetweenBlocks": { "type": "integer", "description": "Minimum amount of seconds between blocks", "format": "int32" }, "attestersPerBlock": { "type": "integer", "description": "Number of bakers that assigned to attest a block", "format": "int32" }, "hardOperationGasLimit": { "type": "integer", "description": "Maximum amount of gas that one operation can consume", "format": "int32" }, "hardOperationStorageLimit": { "type": "integer", "description": "Maximum amount of storage that one operation can consume", "format": "int32" }, "hardBlockGasLimit": { "type": "integer", "description": "Maximum amount of total gas usage of a single block", "format": "int32" }, "minimalStake": { "type": "integer", "description": "Required number of tokens to get 1 roll (micro tez)", "format": "int64" }, "minimalFrozenStake": { "type": "integer", "description": "Required number of tokens to be frozen by bakers (micro tez)", "format": "int64" }, "blockDeposit": { "type": "integer", "description": "Security deposit for baking (producing) a block (micro tez)", "format": "int64" }, "blockReward": { "type": "array", "description": "Reward for baking (producing) a block (micro tez)", "items": { "type": "integer", "format": "int64" } }, "attestationDeposit": { "type": "integer", "description": "Security deposit for sending an attestation operation (micro tez)", "format": "int64" }, "attestationReward": { "type": "array", "description": "Reward for sending an attestation operation (micro tez)", "items": { "type": "integer", "format": "int64" } }, "originationSize": { "type": "integer", "description": "Initial storage size of an originated (created) account (bytes)", "format": "int32" }, "byteCost": { "type": "integer", "description": "Cost of one storage byte in the blockchain (micro tez)", "format": "int32" }, "proposalQuorum": { "type": "number", "description": "Percentage of the total number of voting power required to select a proposal on the proposal period", "format": "double" }, "ballotQuorumMin": { "type": "number", "description": "The minimum value of quorum percentage on the exploration and promotion periods", "format": "double" }, "ballotQuorumMax": { "type": "number", "description": "The maximum value of quorum percentage on the exploration and promotion periods", "format": "double" }, "lbToggleThreshold": { "type": "integer", "description": "1/2 window size of 2000 blocks with precision of 1000000 for integer computation", "format": "int32" }, "consensusThreshold": { "type": "integer", "description": "Attestation quorum", "format": "int32" }, "minParticipationNumerator": { "type": "integer", "description": "Number of attested slots needed to receive attestation rewards", "format": "int32" }, "minParticipationDenominator": { "type": "integer", "description": "Number of attested slots needed to receive attestation rewards", "format": "int32" }, "denunciationPeriod": { "type": "integer", "description": "Number of cycles after double baking/(pre)attestation where an accusation operation can be injected", "format": "int32" }, "slashingDelay": { "type": "integer", "description": "Number of cycles after double baking/(pre)attestation evidence where slashing happens", "format": "int32" }, "maxDelegatedOverFrozenRatio": { "type": "integer", "description": "The ratio of delegated tez over the baker\u2019s frozen stake", "format": "int32" }, "maxExternalOverOwnStakeRatio": { "type": "integer", "description": "The ratio of external staked balance over the baker\u2019s own staked balance", "format": "int32" }, "delegationPowerDivider": { "type": "integer", "description": "The divider by which delegation power is divided", "format": "int32" }, "smartRollupOriginationSize": { "type": "integer", "description": "Initial storage size of an originated (created) smart rollup (bytes)", "format": "int32" }, "smartRollupStakeAmount": { "type": "integer", "description": "Smart rollup commitment bond (mutez)", "format": "int64" }, "smartRollupChallengeWindow": { "type": "integer", "description": "Window (in blocks) when it's possible to refute pending commitment", "format": "int32" }, "smartRollupCommitmentPeriod": { "type": "integer", "description": "Period (in blocks) for publishing commitments", "format": "int32" }, "smartRollupTimeoutPeriod": { "type": "integer", "description": "Period (in blocks) when a refutation game player must make a turn", "format": "int32" }, "dalNumberOfShards": { "type": "integer", "description": "Number of DAL Shards", "format": "int32" }, "dictator": { "type": "string", "description": "Governance dictator", "nullable": true }, "endorsersPerBlock": { "type": "integer", "description": "**DEPRECATED**", "format": "int32" }, "endorsementDeposit": { "type": "integer", "description": "**DEPRECATED**", "format": "int64" }, "endorsementReward": { "type": "array", "description": "**DEPRECATED**", "items": { "type": "integer", "format": "int64" } } } }