diff --git a/packages/docs/pages/introduction/protocol-intro.mdx b/packages/docs/pages/introduction/protocol-intro.mdx index 0edfeb12..0db7164c 100644 --- a/packages/docs/pages/introduction/protocol-intro.mdx +++ b/packages/docs/pages/introduction/protocol-intro.mdx @@ -33,74 +33,83 @@ E.g: ```text Governance Parameters - Min. proposal fund: 500.000000 - Max. proposal code size: 600000 - Min. proposal voting period: 3 - Max. proposal period: 27 - Max. proposal content size: 10000 - Min. proposal grace epochs: 6 + Min. proposal fund: 2000.000000 native tokens + Max. proposal code size: 1000000 bytes + Min. proposal voting period: 12 epochs + Max. proposal period: 84 epochs + Max. proposal content size: 10000 characters + Min. proposal grace epochs: 1 + Max. proposal latency: 8 epochs Public Goods Funding Parameters - Pgf inflation rate: 0.1 - Steward inflation rate: 0.01 + Pgf inflation rate: 0.05 + Steward inflation rate: 0 + Max. number of stewards: 5 Protocol parameters - Min. epoch duration: 1 - Min. number of blocks: 4 - Max. block duration: 30 - VP allowlist: [] - Transactions allowlist: [] - Max block gas: 20000000 - Fee unshielding gas limit: 20000 - Fee unshielding descriptions limit: 15 - Gas cost table: - tnam1qxgfw7myv4dh0qna4hq0xdg6lx77fzl7dcem8h7e: Amount { raw: 1 } -PoS parameters - Pipeline length: 2 - Unbonding length: 3 - Cubic slashing window length: 1 - Max. consensus validator slots: 128 - Validator stake threshold: 1000000 + Min. epoch duration: 21600 seconds + Epochs per year: 1460 + Min. number of blocks: 2700 + Masp epoch multiplier: 4 + Implicit VP hash: FB4462B86FF8969826FB66DFA0397CD795DF9DE9769F7A414D368200A8342951 + VP allowlist: ["fb4462b86ff8969826fb66dfa0397cd795df9de9769f7a414d368200a8342951", "abb163de1f532c740ee6bb69ccc69a5a55505b5c92979d1f256527833b8dfeca"] + Transactions allowlist: ["c6629064a1c3bde8503212cfa5e9b954169a7f162ad411b63a71db782fe909d7", "490cf419bdbffe616c6aa6c72d38064e350ee65fb04d92472ccf285aec6844b6", "473ee80e6e714f6097ec713c88f527b38da6479354075c879b66b9f53e813cb0", "0295796e5ff47aeecb95b68c2fe308693e5f84b251126f26d03309e5f4f5da55", "b745bc2b87bf8acd07e2f3409c77eee06c9b5206d2a77a2f23bb8e593c70cbfe", "1b5a323c140b54700f280cde8b9aac1c12555f9c119e936432ddfa8f194d23ac", "b6a1f7e069360650d2c6a1bdd2e5f4e18bb748d35dad02c31c027673fa042d8c", "5120581194f1e6a122d2eec3f886e9cf5f079f56540d96193d3c1f9804c4d936", "cecb1f1b75cd649915423c5e68be20c5232f94ab57a11a908dc66751bbdc4f72", "26f90ec6676444cd6191d7555fd48861372f901c46e5178c59a897b411616918", "33ee28597cf0f6a11dfe6e23e9aedf2eb04dabb44069cbe317768f4d982d80be", "fbe97ce1136225bdbf8e388bab833a8c51e80bc1b8d94f7d3f8e49b3fad08543", "7d5ad1877643f7d9b32a511ef93a11e8503426baee0f5986d29e3f63a2355d58", "b63738a98927be05fd27f00d208e8703031e45b579d42f776d27234c48a48523", "f1fc74460bd9bbd17140c88dfc0543440f066ffb84849c35c2bb0e331e51cf1c", "6d753db0390e7cec16729fc405bfe41384c93bd79f42b8b8be41b22edbbf1b7c", "36e774350b865752c9d309d518223abf0a60374bae15a1f73dfe4721b5887048", "2e17680cec3e97ff5a6d4db2ba4a376a15f6da143abce690affd800645c6db80", "12faf164aef7b6f91ed918db39f00e19fd3fc527a63f3b2589f43bf30bbaf24b", "d7e34efc128d6a1c84691200f72f83ad9f696e1766f8ce083894f26343fc395f", "faad78023b9391596981ac9a536070a3d7d469d5c6e20c2855b2cfca63c38f59", "8a9df03a1a8f5e9e606e14a97fdfb2097dba062da1b3b2158bbfa7deabeeadfb"] + Max. proposal bytes: 6291456 + Max tx bytes: 1048576 + Max. block gas: 3000000 gas units + Masp fee payment gas limit: 100000 gas units + Minimum gas costs: + tnam1q9gr66cvu4hrzm0sd5kmlnjje82gs3xlfg3v6nu7: 0.000001 per gas unit + Gas scale: 50000 + Is native token transferable: false + +Proof of Stake parameters + Pipeline length: 2 epochs + Unbonding length: 53 epochs + Cubic slashing window length: 1 epoch + Max. consensus validator slots: 255 + Validator stake threshold: 1000.000000 native tokens Duplicate vote minimum slash rate: 0.001 Light client attack minimum slash rate: 0.001 - Liveness window: 100 blocks - Liveness threshold: 0.9 + Liveness window: 10000 blocks + Liveness threshold: 0.1 Block proposer reward: 0.125 Block vote reward: 0.1 - Max inflation rate: 0.1 - Target staked ratio: 0.6667 - Inflation kP gain: 0.25 - Inflation kD gain: 0.25 - Votes per raw token: 1 + Max inflation rate: 0.05 + Target staked ratio: 0.55 + Inflation kP gain: 0.5 + Inflation kD gain: 0.5 + Votes per raw native token: 1 ``` - ### Governance parameters -- Min. proposal fund: The minimum amount of tokens required to submit a proposal. +- Min. proposal fund: The minimum amount of native tokens required to submit a proposal. - Max. proposal code size: The maximum size of the code that can be submitted in a proposal. - Min. proposal voting period: The minimum duration (in epochs) of the voting period for a proposal. - Max. proposal period: The maximum duration (in epochs) of the proposal period. - Max. proposal content size: The maximum number of characters of the content that can be submitted in a proposal. -- Min. proposal grace epochs: The minimum number of epochs that a proposal can be in the grace period. +- Min. proposal grace epochs: The minimum number of epochs between the end of a proposal's voting period and the epoch at which the code executes. -The *grace period* is defined as the epochs **between** the end of the voting period and the `grace epoch` as defined on the proposal. The grace epoch is the final epoch of the grace period. +The proposal period is defined as the time between the epoch when voting begins (start epch) and the epoch when the proposal code would execute (activation epoch). -Any changes enacted by a passing proposal (for example, changes to the protocol parameters) will take effect at the end of the grace period. +Any changes enacted by a passing proposal (for example, changes to the protocol parameters) will take effect at the beginning of the activation epoch. ### Public Goods Funding Parameters -- Pgf inflation rate: The inflation rate for the Public Goods Funding -- the percentage of newly minted tokens that are allotted to the PGF treasury. -- Steward inflation rate: The inflation rate for the Steward account(s) -- the percentage of newly minted tokens allotted to funding PGF Steward operations (such as reviewing PGF recipient nominees). +- Pgf inflation rate: The annual inflation rate for the Public Goods Funding -- the percentage of newly minted tokens that are allotted to the PGF treasury annually. +- Steward inflation rate: The annual inflation rate for the Steward account(s) -- the percentage of newly minted tokens allotted to funding PGF Steward operations (such as reviewing PGF recipient nominees) annually. This inflation amount is minted for each steward. +- Max number of stewards: The maximum number of PGF stewards allowed at a given time ### Protocol parameters - Min. epoch duration: The minimum number of seconds per epoch. +- Epochs per year: the configured number of epochs in a year - Min. number of blocks: The minimum number of blocks per epoch. -- Max. block duration: The maximum number of seconds per block. +- Masp epoch multiplier: the number of epochs in a MASP epoch, which is when shielded rewards inflation is minted. - VP allowlist: The list of validity predicates (their wasm hashes) that are "whitelisted" and can be invoked in transactions. - Transactions allowlist: The list of transactions (their wasm hashes) that are "whitelisted" and can be invoked in transactions. - Max block gas: The maximum amount of gas that a block can consume. @@ -110,22 +119,19 @@ Any changes enacted by a passing proposal (for example, changes to the protocol ### PoS parameters -- Pipeline length: The number of epochs that a validator must wait before they can unbond their stake. -- Unbonding length: The number of epochs that a validator must wait before they can withdraw their stake after unbonding. -- Cubic slashing window length: The number of epochs between the point of a validator's infraction and the point at which they are slashed. -- Max. consensus validator slots: The maximum number of consensus validator slots. These are sorted by bonded stake. Any validator with a stake below the "validator stake threshold" will not be participating in consensus. - -### Protocol parameters - +- Pipeline length: The number of epochs until a bond becomes active (and other transactions take effect). +- Unbonding length: Determines the number of epochs it takes to withdraw unbonded tokens. +- Cubic slashing window length: Determines the size of the epoch window used to do cubic slashing. +- Max. consensus validator slots: The maximum number of consensus validator slots. - Validator stake threshold: The minimum amount of tokens that a validator must have in order to be eligible for consensus. - Duplicate vote minimum slash rate: The minimum slashing rate for a duplicate vote. - Light client attack minimum slash rate: The minimum slashing rate for a light client attack. -- Liveness window: The number of blocks that are considered for the liveness check (a slashable event), counted by number of blocks that a validator signs -- Liveness threshold: The proportion (decimal) of blocks that a validator must sign within the window in order to be considered live. +- Liveness window: The number of blocks that are considered for the liveness check, counted by number of blocks that a validator signs +- Liveness threshold: The fraction of blocks that a validator must sign within the window in order to be considered live. Any active validator in the consensus set falling below this threshold will be jailed for inactivity. -- Block proposer reward: The reward for the block proposer. -- Block vote reward: The reward for the block voter. -- Max inflation rate: The maximum inflation rate. +- Block proposer reward: The reward coefficient for the block proposer. +- Block vote reward: The reward coefficient for the block voter. +- Max inflation rate: The maximum annual inflation rate. - Target staked ratio: The target ratio of the total staked tokens to the total supply. - Inflation kP gain: The `kp` (proportional) gain for the inflation parameter in the PD controller. - Inflation kD gain: The `kd` (second order) gain for the inflation parameter.