@aztec/stdlib 2.1.0-rc.9 → 3.0.0-devnet.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/abi/abi.d.ts +8 -8
- package/dest/abi/abi.js +1 -1
- package/dest/abi/contract_artifact.js +3 -0
- package/dest/abi/event_metadata_definition.d.ts +8 -0
- package/dest/abi/event_metadata_definition.d.ts.map +1 -0
- package/dest/abi/event_metadata_definition.js +1 -0
- package/dest/abi/function_call.d.ts +7 -2
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +6 -2
- package/dest/abi/index.d.ts +1 -0
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +1 -0
- package/dest/avm/avm.d.ts +131 -72
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +8 -4
- package/dest/avm/avm_accumulated_data.d.ts +10 -21
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_accumulated_data.js +19 -22
- package/dest/avm/avm_circuit_public_inputs.d.ts +30 -13
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.js +17 -6
- package/dest/avm/avm_proving_request.d.ts +96 -48
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/index.d.ts +1 -1
- package/dest/avm/index.d.ts.map +1 -1
- package/dest/avm/index.js +1 -1
- package/dest/avm/message_pack.d.ts +1 -0
- package/dest/avm/message_pack.d.ts.map +1 -1
- package/dest/avm/message_pack.js +28 -5
- package/dest/block/attestation_info.d.ts +30 -0
- package/dest/block/attestation_info.d.ts.map +1 -0
- package/dest/block/attestation_info.js +39 -0
- package/dest/block/body.d.ts +4 -1
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +17 -15
- package/dest/block/index.d.ts +2 -0
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +2 -0
- package/dest/block/l2_block.d.ts +19 -5
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +28 -7
- package/dest/block/l2_block_code_to_purge.d.ts +3 -14
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
- package/dest/block/l2_block_code_to_purge.js +23 -13
- package/dest/block/l2_block_header.d.ts +100 -0
- package/dest/block/l2_block_header.d.ts.map +1 -0
- package/dest/block/l2_block_header.js +146 -0
- package/dest/block/l2_block_source.d.ts +29 -0
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.js +1 -1
- package/dest/block/proposal/attestations_and_signers.d.ts +1 -1
- package/dest/block/proposal/attestations_and_signers.js +1 -1
- package/dest/block/proposal/committee_attestation.d.ts +0 -1
- package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
- package/dest/block/proposal/committee_attestation.js +0 -3
- package/dest/block/published_l2_block.d.ts +2 -8
- package/dest/block/published_l2_block.d.ts.map +1 -1
- package/dest/block/published_l2_block.js +0 -9
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +1 -3
- package/dest/checkpoint/checkpoint_body.d.ts +4 -0
- package/dest/checkpoint/checkpoint_body.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_body.js +9 -0
- package/dest/checkpoint/index.d.ts +2 -0
- package/dest/checkpoint/index.d.ts.map +1 -0
- package/dest/checkpoint/index.js +1 -0
- package/dest/config/node-rpc-config.d.ts +2 -0
- package/dest/config/node-rpc-config.d.ts.map +1 -1
- package/dest/config/node-rpc-config.js +6 -0
- package/dest/contract/contract_address.d.ts +1 -1
- package/dest/contract/contract_address.js +1 -1
- package/dest/contract/contract_class_metadata.d.ts +8 -0
- package/dest/contract/contract_class_metadata.d.ts.map +1 -0
- package/dest/contract/contract_class_metadata.js +1 -0
- package/dest/contract/contract_instance.d.ts +9 -8
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +1 -2
- package/dest/contract/contract_metadata.d.ts +7 -0
- package/dest/contract/contract_metadata.d.ts.map +1 -0
- package/dest/contract/contract_metadata.js +1 -0
- package/dest/contract/index.d.ts +2 -0
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +2 -0
- package/dest/contract/interfaces/contract_class.d.ts +1 -1
- package/dest/contract/interfaces/contract_instance.d.ts +2 -2
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +0 -3
- package/dest/interfaces/archiver.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +7 -0
- package/dest/interfaces/aztec-node-admin.d.ts +40 -36
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +2 -2
- package/dest/interfaces/aztec-node.d.ts +30 -0
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +7 -1
- package/dest/interfaces/block-builder.d.ts +1 -2
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/client.d.ts +0 -1
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +0 -1
- package/dest/interfaces/configs.d.ts +5 -0
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +1 -0
- package/dest/interfaces/epoch-prover.d.ts +26 -9
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +5 -0
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +2 -0
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +2 -1
- package/dest/interfaces/private_kernel_prover.d.ts +2 -2
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
- package/dest/interfaces/proving-job.d.ts +343 -194
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +131 -113
- package/dest/interfaces/server_circuit_prover.d.ts +34 -34
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
- package/dest/interfaces/tx_provider.d.ts +1 -1
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +99 -3
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +7 -0
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -2
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts +4 -3
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/nullifier.d.ts +2 -2
- package/dest/kernel/nullifier.d.ts.map +1 -1
- package/dest/kernel/nullifier.js +11 -11
- package/dest/kernel/private_call_data.d.ts +4 -24
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.js +4 -16
- package/dest/kernel/private_circuit_public_inputs.d.ts +5 -5
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +7 -7
- package/dest/kernel/private_context_inputs.d.ts +2 -2
- package/dest/kernel/private_context_inputs.d.ts.map +1 -1
- package/dest/kernel/private_context_inputs.js +4 -4
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +3 -3
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +5 -4
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -6
- package/dest/kernel/private_kernel_prover_output.d.ts +1 -1
- package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -0
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -1
- package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -0
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -0
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -1
- package/dest/keys/derivation.d.ts +0 -2
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +1 -21
- package/dest/logs/contract_class_log.d.ts +1 -1
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +1 -3
- package/dest/logs/debug_log.d.ts +13 -0
- package/dest/logs/debug_log.d.ts.map +1 -0
- package/dest/logs/debug_log.js +26 -0
- package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
- package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/directional_app_tagging_secret.js +64 -0
- package/dest/logs/index.d.ts +3 -1
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +3 -1
- package/dest/logs/log_with_tx_data.d.ts +9 -12
- package/dest/logs/log_with_tx_data.d.ts.map +1 -1
- package/dest/logs/log_with_tx_data.js +18 -23
- package/dest/logs/pre_tag.d.ts +34 -0
- package/dest/logs/pre_tag.d.ts.map +1 -0
- package/dest/logs/pre_tag.js +7 -0
- package/dest/logs/public_log.d.ts +23 -10
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +117 -42
- package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +16 -18
- package/dest/noir/index.d.ts +11 -0
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/note/index.d.ts +1 -1
- package/dest/note/index.d.ts.map +1 -1
- package/dest/note/index.js +1 -1
- package/dest/note/notes_filter.d.ts +0 -5
- package/dest/note/notes_filter.d.ts.map +1 -1
- package/dest/note/notes_filter.js +0 -3
- package/dest/note/unique_note.d.ts +43 -0
- package/dest/note/unique_note.d.ts.map +1 -0
- package/dest/note/{extended_note.js → unique_note.js} +9 -48
- package/dest/p2p/block_attestation.d.ts +13 -13
- package/dest/p2p/block_attestation.d.ts.map +1 -1
- package/dest/p2p/block_attestation.js +27 -25
- package/dest/p2p/block_proposal.d.ts +6 -8
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +10 -13
- package/dest/p2p/consensus_payload.d.ts +7 -6
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +7 -6
- package/dest/parity/index.d.ts +2 -3
- package/dest/parity/index.d.ts.map +1 -1
- package/dest/parity/index.js +2 -3
- package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +7 -7
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
- package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +10 -6
- package/dest/parity/parity_root_private_inputs.d.ts +39 -0
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
- package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
- package/dest/proofs/client_ivc_proof.d.ts +17 -7
- package/dest/proofs/client_ivc_proof.d.ts.map +1 -1
- package/dest/proofs/client_ivc_proof.js +78 -19
- package/dest/proofs/index.d.ts +1 -0
- package/dest/proofs/index.d.ts.map +1 -1
- package/dest/proofs/index.js +1 -0
- package/dest/proofs/proof_data.d.ts +21 -0
- package/dest/proofs/proof_data.d.ts.map +1 -0
- package/dest/proofs/proof_data.js +22 -0
- package/dest/proofs/proving_request_type.d.ts +17 -13
- package/dest/proofs/proving_request_type.d.ts.map +1 -1
- package/dest/proofs/proving_request_type.js +17 -12
- package/dest/rollup/avm_proof_data.d.ts +2 -12
- package/dest/rollup/avm_proof_data.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.js +0 -24
- package/dest/rollup/base_rollup_hints.d.ts +17 -17
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.js +26 -26
- package/dest/rollup/block_constant_data.d.ts +24 -10
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.js +18 -10
- package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +17 -10
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/block_rollup_public_inputs.d.ts +124 -0
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/block_rollup_public_inputs.js +85 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +236 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/block_root_rollup_private_inputs.js +257 -0
- package/dest/rollup/checkpoint_constant_data.d.ts +54 -0
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
- package/dest/rollup/checkpoint_constant_data.js +55 -0
- package/dest/{tx/proposed_block_header.d.ts → rollup/checkpoint_header.d.ts} +12 -13
- package/dest/rollup/checkpoint_header.d.ts.map +1 -0
- package/dest/{tx/proposed_block_header.js → rollup/checkpoint_header.js} +9 -9
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +106 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +123 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +178 -0
- package/dest/rollup/epoch_constant_data.d.ts +23 -6
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/epoch_constant_data.js +25 -12
- package/dest/rollup/index.d.ts +17 -16
- package/dest/rollup/index.d.ts.map +1 -1
- package/dest/rollup/index.js +17 -16
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
- package/dest/rollup/public_tube_private_inputs.d.ts +21 -0
- package/dest/rollup/public_tube_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tube_private_inputs.js +42 -0
- package/dest/rollup/public_tube_public_inputs.d.ts +20 -0
- package/dest/rollup/public_tube_public_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tube_public_inputs.js +41 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_private_inputs.js +69 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts +46 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_public_inputs.js +71 -0
- package/dest/rollup/{state_diff_hints.d.ts → tree_snapshot_diff_hints.d.ts} +22 -38
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
- package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
- package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +11 -10
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +14 -14
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +15 -15
- package/dest/stats/stats.d.ts +1 -1
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +42 -74
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +144 -167
- package/dest/tests/mocks.d.ts +11 -7
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +44 -23
- package/dest/trees/index.d.ts +0 -1
- package/dest/trees/index.d.ts.map +1 -1
- package/dest/trees/index.js +0 -1
- package/dest/trees/merkle_tree_id.d.ts +4 -4
- package/dest/trees/nullifier_membership_witness.d.ts +3 -3
- package/dest/tx/block_header.d.ts +12 -13
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +16 -21
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +0 -1
- package/dest/tx/index.d.ts +2 -1
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +2 -1
- package/dest/tx/private_execution_result.d.ts +7 -2
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +10 -6
- package/dest/tx/private_tx_constant_data.d.ts +60 -0
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
- package/dest/tx/private_tx_constant_data.js +69 -0
- package/dest/tx/processed_tx.d.ts +0 -1
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +1 -6
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +0 -2
- package/dest/tx/protocol_contracts.d.ts +29 -0
- package/dest/tx/protocol_contracts.d.ts.map +1 -0
- package/dest/tx/protocol_contracts.js +49 -0
- package/dest/tx/simulated_tx.d.ts +3 -3
- package/dest/tx/tx.d.ts +6 -2
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +10 -3
- package/dest/tx/tx_constant_data.d.ts +6 -38
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +11 -20
- package/dest/tx/tx_effect.d.ts +3 -36
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +63 -202
- package/dest/tx/validator/error_texts.d.ts +1 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +1 -1
- package/dest/versioning/versioning.d.ts +2 -2
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/versioning/versioning.js +18 -13
- package/dest/world-state/index.d.ts +2 -0
- package/dest/world-state/index.d.ts.map +1 -0
- package/dest/world-state/index.js +1 -0
- package/dest/world-state/world_state_revision.d.ts +22 -0
- package/dest/world-state/world_state_revision.d.ts.map +1 -0
- package/dest/world-state/world_state_revision.js +21 -0
- package/dest/zkpassport/index.d.ts +15 -9
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/dest/zkpassport/index.js +17 -11
- package/package.json +12 -10
- package/src/abi/abi.ts +1 -1
- package/src/abi/contract_artifact.ts +3 -0
- package/src/abi/event_metadata_definition.ts +8 -0
- package/src/abi/function_call.ts +5 -1
- package/src/abi/index.ts +1 -0
- package/src/avm/avm.ts +13 -2
- package/src/avm/avm_accumulated_data.ts +25 -29
- package/src/avm/avm_circuit_public_inputs.ts +21 -0
- package/src/avm/index.ts +1 -1
- package/src/avm/message_pack.ts +25 -1
- package/src/block/attestation_info.ts +62 -0
- package/src/block/body.ts +25 -23
- package/src/block/index.ts +2 -0
- package/src/block/l2_block.ts +33 -8
- package/src/block/l2_block_code_to_purge.ts +30 -31
- package/src/block/l2_block_header.ts +232 -0
- package/src/block/l2_block_source.ts +32 -0
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +1 -1
- package/src/block/proposal/attestations_and_signers.ts +1 -1
- package/src/block/proposal/committee_attestation.ts +0 -4
- package/src/block/published_l2_block.ts +0 -17
- package/src/block/test/l2_tips_store_test_suite.ts +1 -2
- package/src/checkpoint/checkpoint_body.ts +10 -0
- package/src/checkpoint/index.ts +1 -0
- package/src/config/node-rpc-config.ts +9 -0
- package/src/contract/contract_address.ts +1 -1
- package/src/contract/contract_class_metadata.ts +8 -0
- package/src/contract/contract_instance.ts +11 -10
- package/src/contract/contract_metadata.ts +7 -0
- package/src/contract/index.ts +2 -0
- package/src/contract/interfaces/contract_class.ts +1 -1
- package/src/hash/hash.ts +0 -4
- package/src/interfaces/archiver.ts +9 -1
- package/src/interfaces/aztec-node-admin.ts +2 -2
- package/src/interfaces/aztec-node.ts +45 -0
- package/src/interfaces/block-builder.ts +1 -6
- package/src/interfaces/client.ts +0 -1
- package/src/interfaces/configs.ts +3 -0
- package/src/interfaces/epoch-prover.ts +35 -11
- package/src/interfaces/merkle_tree_operations.ts +6 -0
- package/src/interfaces/p2p.ts +4 -0
- package/src/interfaces/private_kernel_prover.ts +2 -2
- package/src/interfaces/proving-job.ts +215 -134
- package/src/interfaces/server_circuit_prover.ts +87 -61
- package/src/interfaces/tx_provider.ts +1 -0
- package/src/interfaces/validator.ts +19 -4
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +3 -2
- package/src/kernel/hints/nullifier_read_request_hints.ts +3 -3
- package/src/kernel/nullifier.ts +8 -8
- package/src/kernel/private_call_data.ts +2 -21
- package/src/kernel/private_circuit_public_inputs.ts +5 -5
- package/src/kernel/private_context_inputs.ts +2 -2
- package/src/kernel/private_kernel_circuit_public_inputs.ts +4 -4
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +5 -4
- package/src/kernel/private_kernel_prover_output.ts +1 -1
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +8 -2
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +9 -0
- package/src/keys/derivation.ts +1 -26
- package/src/logs/contract_class_log.ts +2 -3
- package/src/logs/debug_log.ts +32 -0
- package/src/logs/directional_app_tagging_secret.ts +78 -0
- package/src/logs/index.ts +3 -1
- package/src/logs/log_with_tx_data.ts +14 -24
- package/src/logs/pre_tag.ts +25 -0
- package/src/logs/public_log.ts +120 -58
- package/src/messaging/l2_to_l1_membership.ts +20 -26
- package/src/noir/index.ts +11 -0
- package/src/note/index.ts +1 -1
- package/src/note/notes_filter.ts +0 -7
- package/src/note/{extended_note.ts → unique_note.ts} +14 -75
- package/src/p2p/block_attestation.ts +31 -24
- package/src/p2p/block_proposal.ts +11 -16
- package/src/p2p/consensus_payload.ts +8 -7
- package/src/parity/index.ts +2 -3
- package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +13 -11
- package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
- package/src/proofs/client_ivc_proof.ts +86 -20
- package/src/proofs/index.ts +1 -0
- package/src/proofs/proof_data.ts +36 -0
- package/src/proofs/proving_request_type.ts +14 -10
- package/src/rollup/avm_proof_data.ts +2 -31
- package/src/rollup/base_rollup_hints.ts +22 -22
- package/src/rollup/block_constant_data.ts +16 -6
- package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
- package/src/rollup/block_rollup_public_inputs.ts +123 -0
- package/src/rollup/block_root_rollup_private_inputs.ts +312 -0
- package/src/rollup/checkpoint_constant_data.ts +84 -0
- package/src/{tx/proposed_block_header.ts → rollup/checkpoint_header.ts} +17 -18
- package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
- package/src/rollup/{block_root_or_block_merge_public_inputs.ts → checkpoint_rollup_public_inputs.ts} +30 -52
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +218 -0
- package/src/rollup/epoch_constant_data.ts +28 -10
- package/src/rollup/index.ts +17 -16
- package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
- package/src/rollup/public_tube_private_inputs.ts +53 -0
- package/src/rollup/public_tube_public_inputs.ts +52 -0
- package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
- package/src/rollup/root_rollup_private_inputs.ts +90 -0
- package/src/rollup/root_rollup_public_inputs.ts +99 -0
- package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +26 -41
- package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
- package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +13 -13
- package/src/stats/stats.ts +19 -13
- package/src/tests/factories.ts +217 -275
- package/src/tests/mocks.ts +71 -53
- package/src/trees/index.ts +0 -1
- package/src/tx/block_header.ts +17 -32
- package/src/tx/global_variables.ts +0 -1
- package/src/tx/index.ts +2 -1
- package/src/tx/private_execution_result.ts +9 -3
- package/src/tx/private_tx_constant_data.ts +94 -0
- package/src/tx/processed_tx.ts +1 -7
- package/src/tx/profiling.ts +0 -2
- package/src/tx/protocol_contracts.ts +70 -0
- package/src/tx/tx.ts +12 -3
- package/src/tx/tx_constant_data.ts +8 -21
- package/src/tx/tx_effect.ts +64 -213
- package/src/tx/validator/error_texts.ts +1 -1
- package/src/versioning/versioning.ts +20 -15
- package/src/world-state/index.ts +1 -0
- package/src/world-state/world_state_revision.ts +21 -0
- package/src/zkpassport/index.ts +40 -28
- package/dest/avm/public_data_hint.d.ts +0 -16
- package/dest/avm/public_data_hint.d.ts.map +0 -1
- package/dest/avm/public_data_hint.js +0 -27
- package/dest/interfaces/pxe.d.ts +0 -336
- package/dest/interfaces/pxe.d.ts.map +0 -1
- package/dest/interfaces/pxe.js +0 -101
- package/dest/logs/indexed_tagging_secret.d.ts +0 -28
- package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
- package/dest/logs/indexed_tagging_secret.js +0 -50
- package/dest/note/extended_note.d.ts +0 -111
- package/dest/note/extended_note.d.ts.map +0 -1
- package/dest/parity/base_parity_inputs.d.ts.map +0 -1
- package/dest/parity/root_parity_input.d.ts +0 -52
- package/dest/parity/root_parity_input.d.ts.map +0 -1
- package/dest/parity/root_parity_input.js +0 -50
- package/dest/parity/root_parity_inputs.d.ts +0 -37
- package/dest/parity/root_parity_inputs.d.ts.map +0 -1
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -134
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -125
- package/dest/rollup/block_root_rollup.d.ts +0 -283
- package/dest/rollup/block_root_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_rollup.js +0 -306
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -51
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/empty_block_root_rollup_inputs.js +0 -65
- package/dest/rollup/merge_rollup.d.ts.map +0 -1
- package/dest/rollup/padding_block_root_rollup_inputs.d.ts +0 -20
- package/dest/rollup/padding_block_root_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/padding_block_root_rollup_inputs.js +0 -39
- package/dest/rollup/previous_rollup_block_data.d.ts +0 -47
- package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_block_data.js +0 -37
- package/dest/rollup/previous_rollup_data.d.ts +0 -47
- package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_data.js +0 -37
- package/dest/rollup/private_base_rollup_inputs.d.ts +0 -21
- package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/private_base_rollup_inputs.js +0 -44
- package/dest/rollup/private_tube_data.d.ts +0 -15
- package/dest/rollup/private_tube_data.d.ts.map +0 -1
- package/dest/rollup/private_tube_data.js +0 -25
- package/dest/rollup/public_base_rollup_inputs.d.ts +0 -23
- package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/public_base_rollup_inputs.js +0 -48
- package/dest/rollup/public_tube_data.d.ts +0 -15
- package/dest/rollup/public_tube_data.d.ts.map +0 -1
- package/dest/rollup/public_tube_data.js +0 -25
- package/dest/rollup/root_rollup.d.ts +0 -106
- package/dest/rollup/root_rollup.d.ts.map +0 -1
- package/dest/rollup/root_rollup.js +0 -147
- package/dest/rollup/state_diff_hints.d.ts.map +0 -1
- package/dest/rollup/state_diff_hints.js +0 -85
- package/dest/rollup/tube_inputs.d.ts +0 -43
- package/dest/rollup/tube_inputs.d.ts.map +0 -1
- package/dest/rollup/tube_inputs.js +0 -63
- package/dest/trees/protocol_contract_leaf.d.ts +0 -84
- package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
- package/dest/trees/protocol_contract_leaf.js +0 -100
- package/dest/tx/proposed_block_header.d.ts.map +0 -1
- package/src/avm/public_data_hint.ts +0 -38
- package/src/interfaces/pxe.ts +0 -541
- package/src/logs/indexed_tagging_secret.ts +0 -48
- package/src/parity/root_parity_input.ts +0 -71
- package/src/rollup/block_root_rollup.ts +0 -380
- package/src/rollup/empty_block_root_rollup_inputs.ts +0 -80
- package/src/rollup/padding_block_root_rollup_inputs.ts +0 -47
- package/src/rollup/previous_rollup_block_data.ts +0 -48
- package/src/rollup/previous_rollup_data.ts +0 -48
- package/src/rollup/private_base_rollup_inputs.ts +0 -53
- package/src/rollup/private_tube_data.ts +0 -35
- package/src/rollup/public_base_rollup_inputs.ts +0 -59
- package/src/rollup/public_tube_data.ts +0 -35
- package/src/rollup/root_rollup.ts +0 -195
- package/src/rollup/tube_inputs.ts +0 -77
- package/src/trees/protocol_contract_leaf.ts +0 -128
package/src/block/body.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createBlockEndMarker, getNumTxsFromBlockEndMarker, isBlockEndMarker } from '@aztec/blob-lib/encoding';
|
|
2
2
|
import { timesParallel } from '@aztec/foundation/collection';
|
|
3
|
-
import
|
|
3
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
4
4
|
import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
5
5
|
|
|
6
6
|
import { inspect } from 'util';
|
|
@@ -9,14 +9,16 @@ import { z } from 'zod';
|
|
|
9
9
|
import type { ZodFor } from '../schemas/index.js';
|
|
10
10
|
import { TxEffect } from '../tx/tx_effect.js';
|
|
11
11
|
|
|
12
|
+
export { createBlockEndMarker };
|
|
13
|
+
|
|
14
|
+
export function getBlockBlobFields(txEffects: TxEffect[]) {
|
|
15
|
+
const blobFields = txEffects.flatMap(txEffect => txEffect.toBlobFields());
|
|
16
|
+
blobFields.push(createBlockEndMarker(txEffects.length));
|
|
17
|
+
return blobFields;
|
|
18
|
+
}
|
|
19
|
+
|
|
12
20
|
export class Body {
|
|
13
|
-
constructor(public txEffects: TxEffect[]) {
|
|
14
|
-
txEffects.forEach(txEffect => {
|
|
15
|
-
if (txEffect.isEmpty()) {
|
|
16
|
-
throw new Error('Empty tx effect not allowed in Body');
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
}
|
|
21
|
+
constructor(public txEffects: TxEffect[]) {}
|
|
20
22
|
|
|
21
23
|
equals(other: Body) {
|
|
22
24
|
return (
|
|
@@ -54,19 +56,7 @@ export class Body {
|
|
|
54
56
|
* Returns a flat packed array of fields of all tx effects - used for blobs.
|
|
55
57
|
*/
|
|
56
58
|
toBlobFields() {
|
|
57
|
-
|
|
58
|
-
this.txEffects.forEach((effect: TxEffect) => {
|
|
59
|
-
flattened = flattened.concat(effect.toBlobFields());
|
|
60
|
-
});
|
|
61
|
-
if (flattened.length > BLOBS_PER_BLOCK * FIELDS_PER_BLOB) {
|
|
62
|
-
throw new Error(
|
|
63
|
-
`Attempted to overfill block's blobs with ${flattened.length} elements. The maximum is ${
|
|
64
|
-
BLOBS_PER_BLOCK * FIELDS_PER_BLOB
|
|
65
|
-
}`,
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return flattened;
|
|
59
|
+
return getBlockBlobFields(this.txEffects);
|
|
70
60
|
}
|
|
71
61
|
|
|
72
62
|
/**
|
|
@@ -74,10 +64,22 @@ export class Body {
|
|
|
74
64
|
*/
|
|
75
65
|
static fromBlobFields(fields: Fr[]) {
|
|
76
66
|
const txEffects: TxEffect[] = [];
|
|
77
|
-
const reader = new FieldReader(fields);
|
|
67
|
+
const reader = new FieldReader(fields.slice(0, -1));
|
|
78
68
|
while (!reader.isFinished()) {
|
|
79
69
|
txEffects.push(TxEffect.fromBlobFields(reader));
|
|
80
70
|
}
|
|
71
|
+
|
|
72
|
+
// If the fields are from a proven block, or are constructed by calling `toBlobFields`, the following errors should never throw.
|
|
73
|
+
|
|
74
|
+
if (!isBlockEndMarker(fields[fields.length - 1])) {
|
|
75
|
+
throw new Error('Block end marker not found');
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const numTxs = getNumTxsFromBlockEndMarker(fields[fields.length - 1]);
|
|
79
|
+
if (numTxs !== txEffects.length) {
|
|
80
|
+
throw new Error(`Expected ${numTxs} txs, but got ${txEffects.length}`);
|
|
81
|
+
}
|
|
82
|
+
|
|
81
83
|
return new this(txEffects);
|
|
82
84
|
}
|
|
83
85
|
|
package/src/block/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './l2_block.js';
|
|
2
|
+
export * from './l2_block_header.js';
|
|
2
3
|
export * from './l2_block_stream/index.js';
|
|
3
4
|
export * from './in_block.js';
|
|
4
5
|
export * from './body.js';
|
|
@@ -9,3 +10,4 @@ export * from './published_l2_block.js';
|
|
|
9
10
|
export * from './proposal/index.js';
|
|
10
11
|
export * from './validate_block_result.js';
|
|
11
12
|
export * from './l2_block_info.js';
|
|
13
|
+
export * from './attestation_info.js';
|
package/src/block/l2_block.ts
CHANGED
|
@@ -4,10 +4,12 @@ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
|
4
4
|
|
|
5
5
|
import { z } from 'zod';
|
|
6
6
|
|
|
7
|
+
import { getCheckpointBlobFields } from '../checkpoint/checkpoint_body.js';
|
|
7
8
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
8
|
-
import { BlockHeader } from '../tx/block_header.js';
|
|
9
|
+
import type { BlockHeader } from '../tx/block_header.js';
|
|
9
10
|
import { Body } from './body.js';
|
|
10
|
-
import { makeAppendOnlyTreeSnapshot,
|
|
11
|
+
import { makeAppendOnlyTreeSnapshot, makeL2BlockHeader } from './l2_block_code_to_purge.js';
|
|
12
|
+
import { L2BlockHeader } from './l2_block_header.js';
|
|
11
13
|
import type { L2BlockInfo } from './l2_block_info.js';
|
|
12
14
|
|
|
13
15
|
/**
|
|
@@ -18,7 +20,7 @@ export class L2Block {
|
|
|
18
20
|
/** Snapshot of archive tree after the block is applied. */
|
|
19
21
|
public archive: AppendOnlyTreeSnapshot,
|
|
20
22
|
/** L2 block header. */
|
|
21
|
-
public header:
|
|
23
|
+
public header: L2BlockHeader,
|
|
22
24
|
/** L2 block body. */
|
|
23
25
|
public body: Body,
|
|
24
26
|
private blockHash: Fr | undefined = undefined,
|
|
@@ -28,7 +30,7 @@ export class L2Block {
|
|
|
28
30
|
return z
|
|
29
31
|
.object({
|
|
30
32
|
archive: AppendOnlyTreeSnapshot.schema,
|
|
31
|
-
header:
|
|
33
|
+
header: L2BlockHeader.schema,
|
|
32
34
|
body: Body.schema,
|
|
33
35
|
})
|
|
34
36
|
.transform(({ archive, header, body }) => new L2Block(archive, header, body));
|
|
@@ -40,7 +42,7 @@ export class L2Block {
|
|
|
40
42
|
*/
|
|
41
43
|
static fromBuffer(buf: Buffer | BufferReader) {
|
|
42
44
|
const reader = BufferReader.asReader(buf);
|
|
43
|
-
const header = reader.readObject(
|
|
45
|
+
const header = reader.readObject(L2BlockHeader);
|
|
44
46
|
const archive = reader.readObject(AppendOnlyTreeSnapshot);
|
|
45
47
|
const body = reader.readObject(Body);
|
|
46
48
|
|
|
@@ -94,7 +96,7 @@ export class L2Block {
|
|
|
94
96
|
|
|
95
97
|
return new L2Block(
|
|
96
98
|
makeAppendOnlyTreeSnapshot(l2BlockNum + 1),
|
|
97
|
-
|
|
99
|
+
makeL2BlockHeader(0, l2BlockNum, slotNumber ?? l2BlockNum, {}, inHash),
|
|
98
100
|
body,
|
|
99
101
|
);
|
|
100
102
|
}
|
|
@@ -104,7 +106,7 @@ export class L2Block {
|
|
|
104
106
|
* @returns The L2 block.
|
|
105
107
|
*/
|
|
106
108
|
static empty(): L2Block {
|
|
107
|
-
return new L2Block(AppendOnlyTreeSnapshot.empty(),
|
|
109
|
+
return new L2Block(AppendOnlyTreeSnapshot.empty(), L2BlockHeader.empty(), Body.empty());
|
|
108
110
|
}
|
|
109
111
|
|
|
110
112
|
get number(): number {
|
|
@@ -125,11 +127,34 @@ export class L2Block {
|
|
|
125
127
|
*/
|
|
126
128
|
public async hash(): Promise<Fr> {
|
|
127
129
|
if (this.blockHash === undefined) {
|
|
128
|
-
this.blockHash = await this.
|
|
130
|
+
this.blockHash = await this.getBlockHeader().hash();
|
|
129
131
|
}
|
|
130
132
|
return this.blockHash;
|
|
131
133
|
}
|
|
132
134
|
|
|
135
|
+
/**
|
|
136
|
+
* @deprecated
|
|
137
|
+
* This only works when there's one block per checkpoint.
|
|
138
|
+
* TODO(#17027): Remove this method from L2Block and create a dedicated Checkpoint class.
|
|
139
|
+
*/
|
|
140
|
+
public getCheckpointHeader() {
|
|
141
|
+
return this.header.toCheckpointHeader();
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// Temporary helper to get the actual block header.
|
|
145
|
+
public getBlockHeader(): BlockHeader {
|
|
146
|
+
return this.header.toBlockHeader();
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* @deprecated
|
|
151
|
+
* This only works when there's one block per checkpoint.
|
|
152
|
+
* TODO(#17027): Remove this method from L2Block and create a dedicated Checkpoint class.
|
|
153
|
+
*/
|
|
154
|
+
public getCheckpointBlobFields() {
|
|
155
|
+
return getCheckpointBlobFields([this.body.txEffects]);
|
|
156
|
+
}
|
|
157
|
+
|
|
133
158
|
/**
|
|
134
159
|
* Returns stats used for logging.
|
|
135
160
|
* @returns Stats on tx count, number, and log size and count.
|
|
@@ -1,26 +1,35 @@
|
|
|
1
|
+
import { compact } from '@aztec/foundation/collection';
|
|
1
2
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
3
5
|
|
|
4
6
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
5
7
|
import { GasFees } from '../gas/gas_fees.js';
|
|
6
8
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
7
|
-
import { BlockHeader } from '../tx/block_header.js';
|
|
8
9
|
import { ContentCommitment } from '../tx/content_commitment.js';
|
|
9
10
|
import { GlobalVariables } from '../tx/global_variables.js';
|
|
10
11
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
11
12
|
import { StateReference } from '../tx/state_reference.js';
|
|
13
|
+
import { L2BlockHeader } from './l2_block_header.js';
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
export function makeL2BlockHeader(
|
|
16
|
+
seed = 0,
|
|
17
|
+
blockNumber?: number,
|
|
18
|
+
slotNumber?: number,
|
|
19
|
+
overrides: Partial<FieldsOf<L2BlockHeader>> = {},
|
|
20
|
+
inHash?: Fr,
|
|
21
|
+
) {
|
|
22
|
+
return new L2BlockHeader(
|
|
18
23
|
makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
19
|
-
makeContentCommitment(seed + 0x200, inHash),
|
|
20
|
-
makeStateReference(seed + 0x600),
|
|
21
|
-
makeGlobalVariables((seed += 0x700),
|
|
24
|
+
overrides?.contentCommitment ?? makeContentCommitment(seed + 0x200, inHash),
|
|
25
|
+
overrides?.state ?? makeStateReference(seed + 0x600),
|
|
26
|
+
makeGlobalVariables((seed += 0x700), {
|
|
27
|
+
...(blockNumber ? { blockNumber } : {}),
|
|
28
|
+
...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
|
|
29
|
+
}),
|
|
22
30
|
new Fr(seed + 0x800),
|
|
23
31
|
new Fr(seed + 0x900),
|
|
32
|
+
new Fr(seed + 0xa00),
|
|
24
33
|
);
|
|
25
34
|
}
|
|
26
35
|
|
|
@@ -62,26 +71,16 @@ function makePartialStateReference(seed = 0): PartialStateReference {
|
|
|
62
71
|
);
|
|
63
72
|
}
|
|
64
73
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
)
|
|
77
|
-
return new GlobalVariables(
|
|
78
|
-
new Fr(seed),
|
|
79
|
-
new Fr(seed + 1),
|
|
80
|
-
blockNumber ?? seed + 2,
|
|
81
|
-
new Fr(slotNumber ?? seed + 3),
|
|
82
|
-
BigInt(seed + 4),
|
|
83
|
-
EthAddress.fromField(new Fr(seed + 5)),
|
|
84
|
-
AztecAddress.fromField(new Fr(seed + 6)),
|
|
85
|
-
new GasFees(seed + 7, seed + 8),
|
|
86
|
-
);
|
|
74
|
+
function makeGlobalVariables(seed = 1, overrides: Partial<FieldsOf<GlobalVariables>> = {}): GlobalVariables {
|
|
75
|
+
return GlobalVariables.from({
|
|
76
|
+
chainId: new Fr(seed),
|
|
77
|
+
version: new Fr(seed + 1),
|
|
78
|
+
blockNumber: seed + 2,
|
|
79
|
+
slotNumber: new Fr(seed + 3),
|
|
80
|
+
timestamp: BigInt(seed + 4),
|
|
81
|
+
coinbase: EthAddress.fromField(new Fr(seed + 5)),
|
|
82
|
+
feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
|
|
83
|
+
gasFees: new GasFees(seed + 7, seed + 8),
|
|
84
|
+
...compact(overrides),
|
|
85
|
+
});
|
|
87
86
|
}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { type ZodFor, schemas } from '@aztec/foundation/schemas';
|
|
3
|
+
import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
4
|
+
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
5
|
+
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
|
+
|
|
7
|
+
import { inspect } from 'util';
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
|
|
10
|
+
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
11
|
+
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
12
|
+
import { BlockHeader, ContentCommitment, GlobalVariables, StateReference } from '../tx/index.js';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* TO BE DELETED
|
|
16
|
+
*
|
|
17
|
+
* A header of an L2 block combining the block header and the checkpoint header.
|
|
18
|
+
* This is a temporary workaround to avoid changing too many things before building in chunks is properly implemented.
|
|
19
|
+
* This works for now because we only have one block per checkpoint.
|
|
20
|
+
*
|
|
21
|
+
* @deprecated Use BlockHeader or CheckpointHeader instead.
|
|
22
|
+
*/
|
|
23
|
+
export class L2BlockHeader {
|
|
24
|
+
constructor(
|
|
25
|
+
/** Snapshot of archive before the block is applied. */
|
|
26
|
+
public lastArchive: AppendOnlyTreeSnapshot,
|
|
27
|
+
/** Hash of the body of an L2 block. */
|
|
28
|
+
public contentCommitment: ContentCommitment,
|
|
29
|
+
/** State reference. */
|
|
30
|
+
public state: StateReference,
|
|
31
|
+
/** Global variables of an L2 block. */
|
|
32
|
+
public globalVariables: GlobalVariables,
|
|
33
|
+
/** Total fees in the block, computed by the root rollup circuit */
|
|
34
|
+
public totalFees: Fr,
|
|
35
|
+
/** Total mana used in the block, computed by the root rollup circuit */
|
|
36
|
+
public totalManaUsed: Fr,
|
|
37
|
+
/** Hash of the sponge blob of the block. */
|
|
38
|
+
public spongeBlobHash: Fr,
|
|
39
|
+
) {}
|
|
40
|
+
|
|
41
|
+
static get schema(): ZodFor<L2BlockHeader> {
|
|
42
|
+
return z
|
|
43
|
+
.object({
|
|
44
|
+
lastArchive: AppendOnlyTreeSnapshot.schema,
|
|
45
|
+
contentCommitment: ContentCommitment.schema,
|
|
46
|
+
state: StateReference.schema,
|
|
47
|
+
globalVariables: GlobalVariables.schema,
|
|
48
|
+
totalFees: schemas.Fr,
|
|
49
|
+
totalManaUsed: schemas.Fr,
|
|
50
|
+
spongeBlobHash: schemas.Fr,
|
|
51
|
+
})
|
|
52
|
+
.transform(L2BlockHeader.from);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
static getFields(fields: FieldsOf<L2BlockHeader>) {
|
|
56
|
+
return [
|
|
57
|
+
fields.lastArchive,
|
|
58
|
+
fields.contentCommitment,
|
|
59
|
+
fields.state,
|
|
60
|
+
fields.globalVariables,
|
|
61
|
+
fields.totalFees,
|
|
62
|
+
fields.totalManaUsed,
|
|
63
|
+
fields.spongeBlobHash,
|
|
64
|
+
] as const;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
static from(fields: FieldsOf<L2BlockHeader>) {
|
|
68
|
+
return new L2BlockHeader(...L2BlockHeader.getFields(fields));
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
getSlot() {
|
|
72
|
+
return this.globalVariables.slotNumber.toBigInt();
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
getBlockNumber() {
|
|
76
|
+
return this.globalVariables.blockNumber;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
getSize() {
|
|
80
|
+
return (
|
|
81
|
+
this.lastArchive.getSize() +
|
|
82
|
+
this.contentCommitment.getSize() +
|
|
83
|
+
this.state.getSize() +
|
|
84
|
+
this.globalVariables.getSize() +
|
|
85
|
+
this.totalFees.size +
|
|
86
|
+
this.totalManaUsed.size +
|
|
87
|
+
this.spongeBlobHash.size
|
|
88
|
+
);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
toBuffer() {
|
|
92
|
+
return serializeToBuffer(...L2BlockHeader.getFields(this));
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
toFields(): Fr[] {
|
|
96
|
+
return serializeToFields(...L2BlockHeader.getFields(this));
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
clone() {
|
|
100
|
+
return L2BlockHeader.fromBuffer(this.toBuffer());
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
104
|
+
const reader = BufferReader.asReader(buffer);
|
|
105
|
+
|
|
106
|
+
return new L2BlockHeader(
|
|
107
|
+
reader.readObject(AppendOnlyTreeSnapshot),
|
|
108
|
+
reader.readObject(ContentCommitment),
|
|
109
|
+
reader.readObject(StateReference),
|
|
110
|
+
reader.readObject(GlobalVariables),
|
|
111
|
+
reader.readObject(Fr),
|
|
112
|
+
reader.readObject(Fr),
|
|
113
|
+
reader.readObject(Fr),
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
static fromFields(fields: Fr[] | FieldReader) {
|
|
118
|
+
const reader = FieldReader.asReader(fields);
|
|
119
|
+
|
|
120
|
+
return new L2BlockHeader(
|
|
121
|
+
AppendOnlyTreeSnapshot.fromFields(reader),
|
|
122
|
+
ContentCommitment.fromFields(reader),
|
|
123
|
+
StateReference.fromFields(reader),
|
|
124
|
+
GlobalVariables.fromFields(reader),
|
|
125
|
+
reader.readField(),
|
|
126
|
+
reader.readField(),
|
|
127
|
+
reader.readField(),
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
static empty(fields: Partial<FieldsOf<L2BlockHeader>> = {}) {
|
|
132
|
+
return L2BlockHeader.from({
|
|
133
|
+
lastArchive: AppendOnlyTreeSnapshot.empty(),
|
|
134
|
+
contentCommitment: ContentCommitment.empty(),
|
|
135
|
+
state: StateReference.empty(),
|
|
136
|
+
globalVariables: GlobalVariables.empty(),
|
|
137
|
+
totalFees: Fr.ZERO,
|
|
138
|
+
totalManaUsed: Fr.ZERO,
|
|
139
|
+
spongeBlobHash: Fr.ZERO,
|
|
140
|
+
...fields,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
isEmpty(): boolean {
|
|
145
|
+
return (
|
|
146
|
+
this.lastArchive.isEmpty() &&
|
|
147
|
+
this.contentCommitment.isEmpty() &&
|
|
148
|
+
this.state.isEmpty() &&
|
|
149
|
+
this.globalVariables.isEmpty() &&
|
|
150
|
+
this.totalFees.isZero() &&
|
|
151
|
+
this.totalManaUsed.isZero() &&
|
|
152
|
+
this.spongeBlobHash.isZero()
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* Serializes this instance into a string.
|
|
158
|
+
* @returns Encoded string.
|
|
159
|
+
*/
|
|
160
|
+
public toString() {
|
|
161
|
+
return bufferToHex(this.toBuffer());
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
static fromString(str: string) {
|
|
165
|
+
return L2BlockHeader.fromBuffer(hexToBuffer(str));
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
toCheckpointHeader() {
|
|
169
|
+
return new CheckpointHeader(
|
|
170
|
+
this.lastArchive.root,
|
|
171
|
+
this.contentCommitment,
|
|
172
|
+
this.globalVariables.slotNumber,
|
|
173
|
+
this.globalVariables.timestamp,
|
|
174
|
+
this.globalVariables.coinbase,
|
|
175
|
+
this.globalVariables.feeRecipient,
|
|
176
|
+
this.globalVariables.gasFees,
|
|
177
|
+
this.totalManaUsed,
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
toBlockHeader() {
|
|
182
|
+
return new BlockHeader(
|
|
183
|
+
this.lastArchive,
|
|
184
|
+
this.state,
|
|
185
|
+
this.spongeBlobHash,
|
|
186
|
+
this.globalVariables,
|
|
187
|
+
this.totalFees,
|
|
188
|
+
this.totalManaUsed,
|
|
189
|
+
);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
toInspect() {
|
|
193
|
+
return {
|
|
194
|
+
lastArchive: this.lastArchive.root.toString(),
|
|
195
|
+
contentCommitment: this.contentCommitment.toInspect(),
|
|
196
|
+
state: this.state.toInspect(),
|
|
197
|
+
globalVariables: this.globalVariables.toInspect(),
|
|
198
|
+
totalFees: this.totalFees.toBigInt(),
|
|
199
|
+
totalManaUsed: this.totalManaUsed.toBigInt(),
|
|
200
|
+
spongeBlobHash: this.spongeBlobHash.toString(),
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
[inspect.custom]() {
|
|
205
|
+
return `L2BlockHeader {
|
|
206
|
+
lastArchive: ${inspect(this.lastArchive)},
|
|
207
|
+
contentCommitment.blobsHash: ${inspect(this.contentCommitment.blobsHash)},
|
|
208
|
+
contentCommitment.inHash: ${inspect(this.contentCommitment.inHash)},
|
|
209
|
+
contentCommitment.outHash: ${inspect(this.contentCommitment.outHash)},
|
|
210
|
+
state.l1ToL2MessageTree: ${inspect(this.state.l1ToL2MessageTree)},
|
|
211
|
+
state.noteHashTree: ${inspect(this.state.partial.noteHashTree)},
|
|
212
|
+
state.nullifierTree: ${inspect(this.state.partial.nullifierTree)},
|
|
213
|
+
state.publicDataTree: ${inspect(this.state.partial.publicDataTree)},
|
|
214
|
+
globalVariables: ${inspect(this.globalVariables)},
|
|
215
|
+
totalFees: ${this.totalFees},
|
|
216
|
+
totalManaUsed: ${this.totalManaUsed},
|
|
217
|
+
spongeBlobHash: ${this.spongeBlobHash},
|
|
218
|
+
}`;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
public equals(other: this): boolean {
|
|
222
|
+
return (
|
|
223
|
+
this.contentCommitment.equals(other.contentCommitment) &&
|
|
224
|
+
this.state.equals(other.state) &&
|
|
225
|
+
this.globalVariables.equals(other.globalVariables) &&
|
|
226
|
+
this.totalFees.equals(other.totalFees) &&
|
|
227
|
+
this.totalManaUsed.equals(other.totalManaUsed) &&
|
|
228
|
+
this.lastArchive.equals(other.lastArchive) &&
|
|
229
|
+
this.spongeBlobHash.equals(other.spongeBlobHash)
|
|
230
|
+
);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
|
+
import type { Fr } from '@aztec/foundation/fields';
|
|
2
3
|
import type { TypedEventEmitter } from '@aztec/foundation/types';
|
|
3
4
|
|
|
4
5
|
import { z } from 'zod';
|
|
@@ -66,6 +67,34 @@ export interface L2BlockSource {
|
|
|
66
67
|
/** Equivalent to getBlocks but includes publish data. */
|
|
67
68
|
getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
|
|
68
69
|
|
|
70
|
+
/**
|
|
71
|
+
* Gets a published block by its hash.
|
|
72
|
+
* @param blockHash - The block hash to retrieve.
|
|
73
|
+
* @returns The requested published block (or undefined if not found).
|
|
74
|
+
*/
|
|
75
|
+
getPublishedBlockByHash(blockHash: Fr): Promise<PublishedL2Block | undefined>;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Gets a published block by its archive root.
|
|
79
|
+
* @param archive - The archive root to retrieve.
|
|
80
|
+
* @returns The requested published block (or undefined if not found).
|
|
81
|
+
*/
|
|
82
|
+
getPublishedBlockByArchive(archive: Fr): Promise<PublishedL2Block | undefined>;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Gets a block header by its hash.
|
|
86
|
+
* @param blockHash - The block hash to retrieve.
|
|
87
|
+
* @returns The requested block header (or undefined if not found).
|
|
88
|
+
*/
|
|
89
|
+
getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Gets a block header by its archive root.
|
|
93
|
+
* @param archive - The archive root to retrieve.
|
|
94
|
+
* @returns The requested block header (or undefined if not found).
|
|
95
|
+
*/
|
|
96
|
+
getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
|
|
97
|
+
|
|
69
98
|
/**
|
|
70
99
|
* Gets a tx effect.
|
|
71
100
|
* @param txHash - The hash of the tx corresponding to the tx effect.
|
|
@@ -120,6 +149,9 @@ export interface L2BlockSource {
|
|
|
120
149
|
*/
|
|
121
150
|
getL1Constants(): Promise<L1RollupConstants>;
|
|
122
151
|
|
|
152
|
+
/** Returns values for the genesis block */
|
|
153
|
+
getGenesisValues(): Promise<{ genesisArchiveRoot: Fr }>;
|
|
154
|
+
|
|
123
155
|
/** Latest synced L1 timestamp. */
|
|
124
156
|
getL1Timestamp(): Promise<bigint>;
|
|
125
157
|
|
|
@@ -111,10 +111,6 @@ export class CommitteeAttestation {
|
|
|
111
111
|
return this.address.equals(other.address) && this.signature.equals(other.signature);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
toString(): string {
|
|
115
|
-
return `CommitteeAttestation(${this.address.toString()}, ${this.signature.toString()})`;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
114
|
toViem(): ViemCommitteeAttestation {
|
|
119
115
|
return {
|
|
120
116
|
addr: this.address.toString(),
|
|
@@ -7,8 +7,6 @@ import type { FieldsOf } from '@aztec/foundation/types';
|
|
|
7
7
|
|
|
8
8
|
import { z } from 'zod';
|
|
9
9
|
|
|
10
|
-
import { BlockAttestation } from '../p2p/block_attestation.js';
|
|
11
|
-
import { ConsensusPayload } from '../p2p/consensus_payload.js';
|
|
12
10
|
import { L2Block } from './l2_block.js';
|
|
13
11
|
import { CommitteeAttestation } from './proposal/committee_attestation.js';
|
|
14
12
|
|
|
@@ -82,18 +80,3 @@ export class PublishedL2Block {
|
|
|
82
80
|
);
|
|
83
81
|
}
|
|
84
82
|
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* Extracts block attestations from a published L2 block.
|
|
88
|
-
* Returns undefined for attestations with empty signatures, preserving array indices.
|
|
89
|
-
*/
|
|
90
|
-
export function getAttestationsFromPublishedL2Block(
|
|
91
|
-
block: Pick<PublishedL2Block, 'attestations' | 'block'>,
|
|
92
|
-
): (BlockAttestation | undefined)[] {
|
|
93
|
-
const payload = ConsensusPayload.fromBlock(block.block);
|
|
94
|
-
return block.attestations.map(attestation =>
|
|
95
|
-
attestation.signature.isEmpty()
|
|
96
|
-
? undefined
|
|
97
|
-
: new BlockAttestation(block.block.number, payload, attestation.signature),
|
|
98
|
-
);
|
|
99
|
-
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { times } from '@aztec/foundation/collection';
|
|
2
2
|
import { Fr } from '@aztec/foundation/fields';
|
|
3
3
|
import { type L2Block, type L2BlockId, PublishedL2Block } from '@aztec/stdlib/block';
|
|
4
|
-
import type { BlockHeader } from '@aztec/stdlib/tx';
|
|
5
4
|
|
|
6
5
|
import { jestExpect as expect } from '@jest/expect';
|
|
7
6
|
|
|
@@ -16,7 +15,7 @@ export function testL2TipsStore(makeTipsStore: () => Promise<L2TipsStore>) {
|
|
|
16
15
|
|
|
17
16
|
const makeBlock = (number: number): PublishedL2Block =>
|
|
18
17
|
PublishedL2Block.fromFields({
|
|
19
|
-
block: { number,
|
|
18
|
+
block: { number, hash: () => Promise.resolve(new Fr(number)) } as L2Block,
|
|
20
19
|
l1: { blockNumber: BigInt(number), blockHash: `0x${number}`, timestamp: BigInt(number) },
|
|
21
20
|
attestations: [],
|
|
22
21
|
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
+
|
|
3
|
+
import { getBlockBlobFields } from '../block/body.js';
|
|
4
|
+
import type { TxEffect } from '../tx/tx_effect.js';
|
|
5
|
+
|
|
6
|
+
export function getCheckpointBlobFields(txEffectsInBlocks: TxEffect[][]) {
|
|
7
|
+
const blockBlobFields = txEffectsInBlocks.map(blockTxEffects => getBlockBlobFields(blockTxEffects)).flat();
|
|
8
|
+
const totalNumBlobFields = blockBlobFields.length + 1; // +1 for the prefix indicating the number of total blob fields in a checkpoint.
|
|
9
|
+
return [new Fr(totalNumBlobFields)].concat(blockBlobFields);
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkpoint_body.js';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DEFAULT_MAX_DEBUG_LOG_MEMORY_READS } from '@aztec/constants';
|
|
1
2
|
import { type ConfigMappingsType, numberConfigHelper } from '@aztec/foundation/config';
|
|
2
3
|
|
|
3
4
|
export const nodeRpcConfigMappings: ConfigMappingsType<NodeRPCConfig> = {
|
|
@@ -6,6 +7,12 @@ export const nodeRpcConfigMappings: ConfigMappingsType<NodeRPCConfig> = {
|
|
|
6
7
|
description: 'Maximum gas limit for public tx simulation in the node on `simulatePublicCalls`.',
|
|
7
8
|
...numberConfigHelper(10e9),
|
|
8
9
|
},
|
|
10
|
+
rpcSimulatePublicMaxDebugLogMemoryReads: {
|
|
11
|
+
env: 'RPC_SIMULATE_PUBLIC_MAX_DEBUG_LOG_MEMORY_READS',
|
|
12
|
+
description:
|
|
13
|
+
'Maximum memory reads for debug logs performed for public tx simulation in the node on `simulatePublicCalls`. ',
|
|
14
|
+
...numberConfigHelper(DEFAULT_MAX_DEBUG_LOG_MEMORY_READS),
|
|
15
|
+
},
|
|
9
16
|
rpcMaxBatchSize: {
|
|
10
17
|
env: 'RPC_MAX_BATCH_SIZE',
|
|
11
18
|
description: 'Maximum allowed batch size for JSON RPC batch requests.',
|
|
@@ -21,6 +28,8 @@ export const nodeRpcConfigMappings: ConfigMappingsType<NodeRPCConfig> = {
|
|
|
21
28
|
export type NodeRPCConfig = {
|
|
22
29
|
/** Maximum gas limit for public tx simulation in the node on `simulatePublicCalls`. */
|
|
23
30
|
rpcSimulatePublicMaxGasLimit: number;
|
|
31
|
+
/** Maximum memory reads for debug logs performed for public tx simulation in the node on `simulatePublicCalls`. */
|
|
32
|
+
rpcSimulatePublicMaxDebugLogMemoryReads: number;
|
|
24
33
|
/** Maximum allowed batch size for JSON RPC batch requests. */
|
|
25
34
|
rpcMaxBatchSize: number;
|
|
26
35
|
/** The maximum body size the RPC server will accept */
|
|
@@ -11,7 +11,7 @@ import type { ContractInstance } from './interfaces/contract_instance.js';
|
|
|
11
11
|
// TODO(@spalladino): Review all generator indices in this file
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
* Returns the deployment address for a given contract instance
|
|
14
|
+
* Returns the deployment address for a given contract instance.
|
|
15
15
|
* ```
|
|
16
16
|
* salted_initialization_hash = pedersen([salt, initialization_hash, deployer], GENERATOR__SALTED_INITIALIZATION_HASH)
|
|
17
17
|
* partial_address = pedersen([contract_class_id, salted_initialization_hash], GENERATOR__CONTRACT_PARTIAL_ADDRESS_V1)
|