Skip to content

Commit

Permalink
read all constants from docker image
Browse files Browse the repository at this point in the history
  • Loading branch information
droserasprout committed Jan 14, 2025
1 parent 1a49a8f commit 2e230b6
Show file tree
Hide file tree
Showing 6 changed files with 257 additions and 112 deletions.
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,9 @@ update-contracts: ## Update contract tests
kernel-docs: ## Build docs for Michelson IPython kernel
poetry run python scripts/generate_kernel_docs.py

# NOTE: See `pytezos.sandbox.parameters`
sandbox-params:
docker create --name temp tezos/tezos && docker cp temp:/usr/local/share/tezos/alpha-parameters/sandbox-parameters.json src/pytezos/sandbox/parameters.json && docker rm temp
docker create --name temp tezos/tezos && docker cp temp:/usr/local/share/tezos/021-PsQuebec-parameters/ src/pytezos/sandbox/ && docker rm temp

rpc-docs: ## Build docs for Tezos node RPC
poetry run python scripts/fetch_rpc_docs.py
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{ "bootstrap_accounts":
[ [ "edpkuBknW28nW72KG6RoHtYW7p12T6GKc7nAbwYX5m8Wd9sDVC9yav",
"4000000000000" ],
[ "edpktzNbDAUjUk697W7gYg2CRuBQjyPxbEg8dLccYYwKSKvkPvjtV9",
"4000000000000" ],
[ "edpkuTXkJDGcFd5nh6VvMz8phXxU3Bi7h6hqgywNFi1vZTfQNnS1RV",
"4000000000000" ],
[ "edpkuFrRoDSEbJYgxRtLx2ps82UdaYc1WwfS9sE11yhauZt5DgCHbU",
"4000000000000" ],
[ "edpkv8EUUH68jmo3f7Um5PezmfGrRF24gnfLpH3sVNwJnV5bVCxL2n",
"4000000000000" ] ], "consensus_rights_delay": 2,
"blocks_preservation_cycles": 1, "delegate_parameters_activation_delay": 5,
"blocks_per_cycle": 30720, "blocks_per_commitment": 240,
"nonce_revelation_threshold": 960, "cycles_per_voting_period": 5,
"hard_gas_limit_per_operation": "1040000",
"hard_gas_limit_per_block": "1386666",
"proof_of_work_threshold": "281474976710655",
"minimal_stake": "6000000000", "minimal_frozen_stake": "600000000",
"vdf_difficulty": "8000000000", "origination_size": 257,
"issuance_weights":
{ "base_total_issued_per_minute": "80007812",
"baking_reward_fixed_portion_weight": 5120,
"baking_reward_bonus_weight": 5120, "attesting_reward_weight": 10240,
"seed_nonce_revelation_tip_weight": 1, "vdf_revelation_tip_weight": 1 },
"cost_per_byte": "250", "hard_storage_limit_per_operation": "60000",
"quorum_min": 2000, "quorum_max": 7000, "min_proposal_quorum": 500,
"liquidity_baking_subsidy": "5000000",
"liquidity_baking_toggle_ema_threshold": 1000000000,
"max_operations_time_to_live": 450, "minimal_block_delay": "8",
"delay_increment_per_round": "4", "consensus_committee_size": 7000,
"consensus_threshold": 4667,
"minimal_participation_ratio": { "numerator": 2, "denominator": 3 },
"limit_of_delegation_over_baking": 9,
"percentage_of_frozen_deposits_slashed_per_double_baking": 500,
"percentage_of_frozen_deposits_slashed_per_double_attestation": 5000,
"max_slashing_per_block": 10000, "max_slashing_threshold": 2334,
"cache_script_size": 100000000, "cache_stake_distribution_cycles": 8,
"cache_sampler_state_cycles": 8,
"dal_parametric":
{ "feature_enable": true, "incentives_enable": false,
"number_of_slots": 32, "attestation_lag": 8,
"attestation_threshold": 66, "redundancy_factor": 8, "page_size": 3967,
"slot_size": 126944, "number_of_shards": 512 },
"smart_rollup_arith_pvm_enable": false,
"smart_rollup_origination_size": 6314,
"smart_rollup_challenge_window_in_blocks": 151200,
"smart_rollup_stake_amount": "10000000000",
"smart_rollup_commitment_period_in_blocks": 112,
"smart_rollup_max_lookahead_in_blocks": 324000,
"smart_rollup_max_active_outbox_levels": 151200,
"smart_rollup_max_outbox_messages_per_level": 100,
"smart_rollup_number_of_sections_in_dissection": 32,
"smart_rollup_timeout_period_in_blocks": 75600,
"smart_rollup_max_number_of_cemented_commitments": 5,
"smart_rollup_max_number_of_parallel_games": 32,
"smart_rollup_reveal_activation_level":
{ "raw_data": { "Blake2B": 0 }, "metadata": 0, "dal_page": 1,
"dal_parameters": 1, "dal_attested_slots_validity_lag": 241920 },
"smart_rollup_private_enable": true,
"smart_rollup_riscv_pvm_enable": false, "zk_rollup_enable": false,
"zk_rollup_origination_size": 4000, "zk_rollup_min_pending_to_process": 10,
"zk_rollup_max_ticket_payload_size": 2048,
"global_limit_of_staking_over_baking": 9,
"edge_of_staking_over_delegation": 3,
"adaptive_issuance_launch_ema_threshold": 0,
"adaptive_rewards_params":
{ "issuance_ratio_final_min": { "numerator": "1", "denominator": "400" },
"issuance_ratio_final_max": { "numerator": "1", "denominator": "10" },
"issuance_ratio_initial_min":
{ "numerator": "9", "denominator": "200" },
"issuance_ratio_initial_max":
{ "numerator": "11", "denominator": "200" }, "initial_period": 10,
"transition_period": 50, "max_bonus": "50000000000000",
"growth_rate": { "numerator": "1", "denominator": "100" },
"center_dz": { "numerator": "1", "denominator": "2" },
"radius_dz": { "numerator": "1", "denominator": "50" } },
"adaptive_issuance_activation_vote_enable": true,
"autostaking_enable": true, "adaptive_issuance_force_activation": false,
"ns_enable": true, "direct_ticket_spending_enable": false }
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
{ "bootstrap_accounts":
[ [ "edpkuBknW28nW72KG6RoHtYW7p12T6GKc7nAbwYX5m8Wd9sDVC9yav",
"4000000000000" ],
[ "edpktzNbDAUjUk697W7gYg2CRuBQjyPxbEg8dLccYYwKSKvkPvjtV9",
"4000000000000" ],
[ "edpkuTXkJDGcFd5nh6VvMz8phXxU3Bi7h6hqgywNFi1vZTfQNnS1RV",
"4000000000000" ],
[ "edpkuFrRoDSEbJYgxRtLx2ps82UdaYc1WwfS9sE11yhauZt5DgCHbU",
"4000000000000" ],
[ "edpkv8EUUH68jmo3f7Um5PezmfGrRF24gnfLpH3sVNwJnV5bVCxL2n",
"4000000000000" ] ], "consensus_rights_delay": 2,
"blocks_preservation_cycles": 1, "delegate_parameters_activation_delay": 5,
"blocks_per_cycle": 30720, "blocks_per_commitment": 240,
"nonce_revelation_threshold": 960, "cycles_per_voting_period": 5,
"hard_gas_limit_per_operation": "1040000",
"hard_gas_limit_per_block": "1386666",
"proof_of_work_threshold": "281474976710655",
"minimal_stake": "6000000000", "minimal_frozen_stake": "600000000",
"vdf_difficulty": "8000000000", "origination_size": 257,
"issuance_weights":
{ "base_total_issued_per_minute": "80007812",
"baking_reward_fixed_portion_weight": 5120,
"baking_reward_bonus_weight": 5120, "attesting_reward_weight": 10240,
"seed_nonce_revelation_tip_weight": 1, "vdf_revelation_tip_weight": 1 },
"cost_per_byte": "250", "hard_storage_limit_per_operation": "60000",
"quorum_min": 2000, "quorum_max": 7000, "min_proposal_quorum": 500,
"liquidity_baking_subsidy": "5000000",
"liquidity_baking_toggle_ema_threshold": 1000000000,
"max_operations_time_to_live": 450, "minimal_block_delay": "8",
"delay_increment_per_round": "4", "consensus_committee_size": 7000,
"consensus_threshold": 4667,
"minimal_participation_ratio": { "numerator": 2, "denominator": 3 },
"limit_of_delegation_over_baking": 9,
"percentage_of_frozen_deposits_slashed_per_double_baking": 500,
"percentage_of_frozen_deposits_slashed_per_double_attestation": 5000,
"max_slashing_per_block": 10000, "max_slashing_threshold": 2334,
"cache_script_size": 100000000, "cache_stake_distribution_cycles": 8,
"cache_sampler_state_cycles": 8,
"dal_parametric":
{ "feature_enable": true, "incentives_enable": false,
"number_of_slots": 32, "attestation_lag": 8,
"attestation_threshold": 66, "redundancy_factor": 8, "page_size": 3967,
"slot_size": 126944, "number_of_shards": 512 },
"smart_rollup_arith_pvm_enable": false,
"smart_rollup_origination_size": 6314,
"smart_rollup_challenge_window_in_blocks": 151200,
"smart_rollup_stake_amount": "10000000000",
"smart_rollup_commitment_period_in_blocks": 112,
"smart_rollup_max_lookahead_in_blocks": 324000,
"smart_rollup_max_active_outbox_levels": 151200,
"smart_rollup_max_outbox_messages_per_level": 100,
"smart_rollup_number_of_sections_in_dissection": 32,
"smart_rollup_timeout_period_in_blocks": 75600,
"smart_rollup_max_number_of_cemented_commitments": 5,
"smart_rollup_max_number_of_parallel_games": 32,
"smart_rollup_reveal_activation_level":
{ "raw_data": { "Blake2B": 0 }, "metadata": 0, "dal_page": 1,
"dal_parameters": 1, "dal_attested_slots_validity_lag": 241920 },
"smart_rollup_private_enable": true,
"smart_rollup_riscv_pvm_enable": false, "zk_rollup_enable": false,
"zk_rollup_origination_size": 4000, "zk_rollup_min_pending_to_process": 10,
"zk_rollup_max_ticket_payload_size": 2048,
"global_limit_of_staking_over_baking": 9,
"edge_of_staking_over_delegation": 3,
"adaptive_issuance_launch_ema_threshold": 0,
"adaptive_rewards_params":
{ "issuance_ratio_final_min": { "numerator": "1", "denominator": "400" },
"issuance_ratio_final_max": { "numerator": "1", "denominator": "10" },
"issuance_ratio_initial_min":
{ "numerator": "9", "denominator": "200" },
"issuance_ratio_initial_max":
{ "numerator": "11", "denominator": "200" }, "initial_period": 10,
"transition_period": 50, "max_bonus": "50000000000000",
"growth_rate": { "numerator": "1", "denominator": "100" },
"center_dz": { "numerator": "1", "denominator": "2" },
"radius_dz": { "numerator": "1", "denominator": "50" } },
"adaptive_issuance_activation_vote_enable": true,
"autostaking_enable": true, "adaptive_issuance_force_activation": false,
"ns_enable": true, "direct_ticket_spending_enable": false,
"chain_id": "NetXdQprcVkpaWU" }
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@
"percentage_of_frozen_deposits_slashed_per_double_baking": 500,
"percentage_of_frozen_deposits_slashed_per_double_attestation": 5000,
"max_slashing_per_block": 10000, "max_slashing_threshold": 101,
"cache_script_size": 100000000, "cache_stake_distribution_cycles": 5,
"cache_sampler_state_cycles": 5,
"cache_script_size": 100000000, "cache_stake_distribution_cycles": 8,
"cache_sampler_state_cycles": 8,
"dal_parametric":
{ "feature_enable": true, "incentives_enable": false,
"number_of_slots": 16, "attestation_lag": 8,
Expand Down
90 changes: 90 additions & 0 deletions src/pytezos/sandbox/021-PsQuebec-parameters/test-parameters.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{ "bootstrap_accounts":
[ [ "edpkuBknW28nW72KG6RoHtYW7p12T6GKc7nAbwYX5m8Wd9sDVC9yav",
"4000000000000" ],
[ "edpktzNbDAUjUk697W7gYg2CRuBQjyPxbEg8dLccYYwKSKvkPvjtV9",
"4000000000000" ],
[ "edpkuTXkJDGcFd5nh6VvMz8phXxU3Bi7h6hqgywNFi1vZTfQNnS1RV",
"4000000000000" ],
[ "edpkuFrRoDSEbJYgxRtLx2ps82UdaYc1WwfS9sE11yhauZt5DgCHbU",
"4000000000000" ],
[ "edpkv8EUUH68jmo3f7Um5PezmfGrRF24gnfLpH3sVNwJnV5bVCxL2n",
"4000000000000" ] ],
"commitments":
[ [ "btz1bRL4X5BWo2Fj4EsBdUwexXqgTf75uf1qa", "23932454669343" ],
[ "btz1SxjV1syBgftgKy721czKi3arVkVwYUFSv", "72954577464032" ],
[ "btz1LtoNCjiW23txBTenALaf5H6NKF1L3c1gw", "217487035428348" ],
[ "btz1SUd3mMhEBcWudrn8u361MVAec4WYCcFoy", "4092742372031" ],
[ "btz1MvBXf4orko1tsGmzkjLbpYSgnwUjEe81r", "17590039016550" ],
[ "btz1LoDZ3zsjgG3k3cqTpUMc9bsXbchu9qMXT", "26322312350555" ],
[ "btz1RMfq456hFV5AeDiZcQuZhoMv2dMpb9hpP", "244951387881443" ],
[ "btz1Y9roTh4A7PsMBkp8AgdVFrqUDNaBE59y1", "80065050465525" ],
[ "btz1Q1N2ePwhVw5ED3aaRVek6EBzYs1GDkSVD", "3569618927693" ],
[ "btz1VFFVsVMYHd5WfaDTAt92BeQYGK8Ri4eLy", "9034781424478" ] ],
"consensus_rights_delay": 2, "blocks_preservation_cycles": 1,
"delegate_parameters_activation_delay": 2, "blocks_per_cycle": 8,
"blocks_per_commitment": 4, "nonce_revelation_threshold": 4,
"cycles_per_voting_period": 8, "hard_gas_limit_per_operation": "1040000",
"hard_gas_limit_per_block": "1386666",
"proof_of_work_threshold": "4611686018427387903",
"minimal_stake": "6000000000", "minimal_frozen_stake": "600000000",
"vdf_difficulty": "50000", "origination_size": 257,
"issuance_weights":
{ "base_total_issued_per_minute": "80007812",
"baking_reward_fixed_portion_weight": 5120,
"baking_reward_bonus_weight": 5120, "attesting_reward_weight": 10240,
"seed_nonce_revelation_tip_weight": 1, "vdf_revelation_tip_weight": 1 },
"cost_per_byte": "250", "hard_storage_limit_per_operation": "60000",
"quorum_min": 2000, "quorum_max": 7000, "min_proposal_quorum": 500,
"liquidity_baking_subsidy": "5000000",
"liquidity_baking_toggle_ema_threshold": 1000000000,
"max_operations_time_to_live": 8, "minimal_block_delay": "1",
"delay_increment_per_round": "1", "consensus_committee_size": 256,
"consensus_threshold": 0,
"minimal_participation_ratio": { "numerator": 2, "denominator": 3 },
"limit_of_delegation_over_baking": 19,
"percentage_of_frozen_deposits_slashed_per_double_baking": 500,
"percentage_of_frozen_deposits_slashed_per_double_attestation": 5000,
"max_slashing_per_block": 10000, "max_slashing_threshold": 101,
"cache_script_size": 100000000, "cache_stake_distribution_cycles": 8,
"cache_sampler_state_cycles": 8,
"dal_parametric":
{ "feature_enable": true, "incentives_enable": false,
"number_of_slots": 16, "attestation_lag": 8,
"attestation_threshold": 66, "redundancy_factor": 8, "page_size": 3967,
"slot_size": 126944, "number_of_shards": 256 },
"smart_rollup_arith_pvm_enable": false,
"smart_rollup_origination_size": 6314,
"smart_rollup_challenge_window_in_blocks": 151200,
"smart_rollup_stake_amount": "10000000000",
"smart_rollup_commitment_period_in_blocks": 112,
"smart_rollup_max_lookahead_in_blocks": 324000,
"smart_rollup_max_active_outbox_levels": 151200,
"smart_rollup_max_outbox_messages_per_level": 100,
"smart_rollup_number_of_sections_in_dissection": 32,
"smart_rollup_timeout_period_in_blocks": 75600,
"smart_rollup_max_number_of_cemented_commitments": 5,
"smart_rollup_max_number_of_parallel_games": 32,
"smart_rollup_reveal_activation_level":
{ "raw_data": { "Blake2B": 0 }, "metadata": 0, "dal_page": 1,
"dal_parameters": 1, "dal_attested_slots_validity_lag": 241920 },
"smart_rollup_private_enable": true,
"smart_rollup_riscv_pvm_enable": false, "zk_rollup_enable": false,
"zk_rollup_origination_size": 4000, "zk_rollup_min_pending_to_process": 10,
"zk_rollup_max_ticket_payload_size": 2048,
"global_limit_of_staking_over_baking": 9,
"edge_of_staking_over_delegation": 3,
"adaptive_issuance_launch_ema_threshold": 0,
"adaptive_rewards_params":
{ "issuance_ratio_final_min": { "numerator": "1", "denominator": "400" },
"issuance_ratio_final_max": { "numerator": "1", "denominator": "10" },
"issuance_ratio_initial_min":
{ "numerator": "9", "denominator": "200" },
"issuance_ratio_initial_max":
{ "numerator": "11", "denominator": "200" }, "initial_period": 10,
"transition_period": 50, "max_bonus": "50000000000000",
"growth_rate": { "numerator": "1", "denominator": "100" },
"center_dz": { "numerator": "1", "denominator": "2" },
"radius_dz": { "numerator": "1", "denominator": "50" } },
"adaptive_issuance_activation_vote_enable": true,
"autostaking_enable": true, "adaptive_issuance_force_activation": false,
"ns_enable": true, "direct_ticket_spending_enable": false }
113 changes: 4 additions & 109 deletions src/pytezos/sandbox/parameters.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,115 +91,10 @@
}

# NOTE: Run `make sandbox-params` to update this file
sandbox_params = json.loads(Path(__file__).parent.joinpath('parameters.json').read_text())

# NOTE: https://rpc.tzkt.io/quebecnet/chains/main/blocks/head/context/constants/parametric
protocol_params = {
"consensus_rights_delay": 2,
"blocks_preservation_cycles": 1,
"delegate_parameters_activation_delay": 3,
"blocks_per_cycle": 210,
"blocks_per_commitment": 25,
"nonce_revelation_threshold": 50,
"cycles_per_voting_period": 1,
"hard_gas_limit_per_operation": "1040000",
"hard_gas_limit_per_block": "3328000",
"proof_of_work_threshold": "-1",
"minimal_stake": "6000000000",
"minimal_frozen_stake": "600000000",
"vdf_difficulty": "10000000",
"origination_size": 257,
"issuance_weights": {
"base_total_issued_per_minute": "85007812",
"baking_reward_fixed_portion_weight": 5120,
"baking_reward_bonus_weight": 5120,
"attesting_reward_weight": 10240,
"seed_nonce_revelation_tip_weight": 1,
"vdf_revelation_tip_weight": 1,
},
"cost_per_byte": "250",
"hard_storage_limit_per_operation": "60000",
"quorum_min": 2000,
"quorum_max": 7000,
"min_proposal_quorum": 500,
"liquidity_baking_subsidy": "5000000",
"liquidity_baking_toggle_ema_threshold": 100000,
"max_operations_time_to_live": 187,
"minimal_block_delay": "4",
"delay_increment_per_round": "4",
"consensus_committee_size": 7000,
"consensus_threshold": 4667,
"minimal_participation_ratio": {"numerator": 2, "denominator": 3},
"limit_of_delegation_over_baking": 9,
"percentage_of_frozen_deposits_slashed_per_double_baking": 700,
"percentage_of_frozen_deposits_slashed_per_double_attestation": 5000,
"max_slashing_per_block": 10000,
"max_slashing_threshold": 2334,
"testnet_dictator": "tz1e1TX7KghsqWUBXWmBTAAtPK3W6JTbNc82",
"cache_script_size": 100000000,
"cache_stake_distribution_cycles": 8,
"cache_sampler_state_cycles": 8,
"dal_parametric": {
"feature_enable": True,
"incentives_enable": False,
"number_of_slots": 32,
"attestation_lag": 8,
"attestation_threshold": 66,
"redundancy_factor": 8,
"page_size": 3967,
"slot_size": 126944,
"number_of_shards": 512,
},
"smart_rollup_arith_pvm_enable": True,
"smart_rollup_origination_size": 6314,
"smart_rollup_challenge_window_in_blocks": 62,
"smart_rollup_stake_amount": "32000000",
"smart_rollup_commitment_period_in_blocks": 31,
"smart_rollup_max_lookahead_in_blocks": 46875,
"smart_rollup_max_active_outbox_levels": 31500,
"smart_rollup_max_outbox_messages_per_level": 100,
"smart_rollup_number_of_sections_in_dissection": 32,
"smart_rollup_timeout_period_in_blocks": 781,
"smart_rollup_max_number_of_cemented_commitments": 5,
"smart_rollup_max_number_of_parallel_games": 32,
"smart_rollup_reveal_activation_level": {
"raw_data": {"Blake2B": 0},
"metadata": 0,
"dal_page": 1,
"dal_parameters": 1,
"dal_attested_slots_validity_lag": 241920,
},
"smart_rollup_private_enable": True,
"smart_rollup_riscv_pvm_enable": True,
"zk_rollup_enable": True,
"zk_rollup_origination_size": 4000,
"zk_rollup_min_pending_to_process": 10,
"zk_rollup_max_ticket_payload_size": 2048,
"global_limit_of_staking_over_baking": 9,
"edge_of_staking_over_delegation": 3,
"adaptive_issuance_launch_ema_threshold": 0,
"adaptive_rewards_params": {
"issuance_ratio_final_min": {"numerator": "1", "denominator": "400"},
"issuance_ratio_final_max": {"numerator": "1", "denominator": "10"},
"issuance_ratio_initial_min": {"numerator": "9", "denominator": "200"},
"issuance_ratio_initial_max": {"numerator": "11", "denominator": "200"},
"initial_period": 10,
"transition_period": 50,
"max_bonus": "50000000000000",
"growth_rate": {"numerator": "1", "denominator": "100"},
"center_dz": {"numerator": "1", "denominator": "2"},
"radius_dz": {"numerator": "1", "denominator": "50"},
},
"adaptive_issuance_activation_vote_enable": True,
"autostaking_enable": True,
"adaptive_issuance_force_activation": False,
"ns_enable": True,
"direct_ticket_spending_enable": False,
}
sandbox_params = json.loads(
Path(__file__).parent.joinpath('021-PsQuebec-parameters', 'test-parameters.json').read_text()
)


def get_protocol_parameters(protocol_hash: str) -> Dict[str, Any]:
return {
**protocol_params,
**sandbox_params,
}
return {**sandbox_params}

0 comments on commit 2e230b6

Please sign in to comment.