@aztec/stdlib 0.0.1-commit.7d4e6cd → 0.0.1-commit.8227e42
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/function_call.d.ts +47 -9
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +20 -3
- package/dest/abi/utils.d.ts +7 -1
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +7 -0
- package/dest/auth_witness/auth_witness.d.ts +2 -1
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/auth_witness/auth_witness.js +3 -3
- package/dest/avm/avm.d.ts +62 -62
- package/dest/avm/avm_accumulated_data.d.ts +30 -3
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
- package/dest/avm/avm_proving_request.d.ts +299 -299
- package/dest/avm/contract_storage_read.d.ts +13 -1
- package/dest/avm/contract_storage_read.d.ts.map +1 -1
- package/dest/avm/contract_storage_update_request.d.ts +13 -1
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
- package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
- package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
- package/dest/avm/public_data_read.d.ts +10 -1
- package/dest/avm/public_data_read.d.ts.map +1 -1
- package/dest/avm/public_data_update_request.d.ts +10 -1
- package/dest/avm/public_data_update_request.d.ts.map +1 -1
- package/dest/avm/public_data_write.d.ts +7 -1
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/public_inner_call_request.d.ts +4 -1
- package/dest/avm/public_inner_call_request.d.ts.map +1 -1
- package/dest/avm/revert_code.d.ts +4 -4
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/block/block_data.d.ts +52 -0
- package/dest/block/block_data.d.ts.map +1 -0
- package/dest/block/block_data.js +12 -0
- package/dest/block/block_hash.d.ts +18 -14
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +22 -20
- package/dest/block/block_parameter.d.ts +4 -3
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +2 -0
- package/dest/block/body.d.ts +1 -1
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +2 -1
- package/dest/block/checkpointed_l2_block.d.ts +20 -137
- package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
- package/dest/block/checkpointed_l2_block.js +7 -45
- package/dest/block/in_block.d.ts +9 -9
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/in_block.js +5 -5
- package/dest/block/index.d.ts +2 -3
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +1 -2
- package/dest/block/l2_block.d.ts +56 -59
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +64 -110
- package/dest/block/l2_block_source.d.ts +84 -39
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +2 -1
- package/dest/block/l2_block_stream/interfaces.d.ts +9 -6
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -3
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.js +37 -34
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +3 -3
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +2 -7
- package/dest/block/validate_block_result.d.ts +1 -1
- package/dest/block/validate_block_result.d.ts.map +1 -1
- package/dest/block/validate_block_result.js +5 -4
- package/dest/checkpoint/checkpoint.d.ts +43 -19
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +37 -14
- package/dest/checkpoint/checkpoint_data.d.ts +120 -0
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_data.js +26 -0
- package/dest/checkpoint/index.d.ts +2 -1
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +1 -0
- package/dest/checkpoint/published_checkpoint.d.ts +33 -16
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/published_checkpoint.js +5 -5
- package/dest/config/index.d.ts +2 -1
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +1 -0
- package/dest/config/node-rpc-config.js +1 -1
- package/dest/config/sequencer-config.d.ts +10 -0
- package/dest/config/sequencer-config.d.ts.map +1 -0
- package/dest/config/sequencer-config.js +18 -0
- package/dest/contract/complete_address.d.ts +4 -1
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/contract_address.js +4 -4
- package/dest/contract/contract_class.d.ts +2 -3
- package/dest/contract/contract_class.d.ts.map +1 -1
- package/dest/contract/contract_class_id.d.ts +2 -2
- package/dest/contract/contract_class_id.d.ts.map +1 -1
- package/dest/contract/contract_class_id.js +6 -5
- package/dest/contract/contract_deployment_data.d.ts +5 -5
- package/dest/contract/index.d.ts +1 -3
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +0 -2
- package/dest/contract/interfaces/contract_instance.d.ts +16 -16
- package/dest/contract/interfaces/node-info.d.ts +3 -1
- package/dest/contract/interfaces/node-info.d.ts.map +1 -1
- package/dest/contract/interfaces/node-info.js +2 -1
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +3 -4
- package/dest/contract/private_function_membership_proof.d.ts +1 -1
- package/dest/contract/private_function_membership_proof.js +1 -1
- package/dest/database-version/database_version.d.ts +58 -0
- package/dest/database-version/database_version.d.ts.map +1 -0
- package/dest/database-version/database_version.js +69 -0
- package/dest/database-version/version_manager.d.ts +3 -49
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/database-version/version_manager.js +1 -66
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
- package/dest/deserialization/index.d.ts +11 -0
- package/dest/deserialization/index.d.ts.map +1 -0
- package/dest/deserialization/index.js +10 -0
- package/dest/epoch-helpers/index.d.ts +7 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +9 -3
- package/dest/errors/proving_error.d.ts +2 -2
- package/dest/errors/proving_error.d.ts.map +1 -1
- package/dest/file-store/local.d.ts +3 -3
- package/dest/file-store/local.d.ts.map +1 -1
- package/dest/file-store/local.js +13 -4
- package/dest/file-store/s3.d.ts +1 -1
- package/dest/file-store/s3.d.ts.map +1 -1
- package/dest/file-store/s3.js +11 -3
- package/dest/ha-signing/config.d.ts +101 -0
- package/dest/ha-signing/config.d.ts.map +1 -0
- package/dest/ha-signing/config.js +92 -0
- package/dest/ha-signing/index.d.ts +3 -0
- package/dest/ha-signing/index.d.ts.map +1 -0
- package/dest/ha-signing/index.js +2 -0
- package/dest/ha-signing/types.d.ts +85 -0
- package/dest/ha-signing/types.d.ts.map +1 -0
- package/dest/ha-signing/types.js +32 -0
- package/dest/hash/hash.d.ts +2 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +16 -10
- package/dest/hash/map_slot.d.ts +1 -1
- package/dest/hash/map_slot.d.ts.map +1 -1
- package/dest/hash/map_slot.js +4 -3
- package/dest/interfaces/api_limit.d.ts +2 -1
- package/dest/interfaces/api_limit.d.ts.map +1 -1
- package/dest/interfaces/api_limit.js +1 -0
- package/dest/interfaces/archiver.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +23 -15
- package/dest/interfaces/aztec-node-admin.d.ts +101 -28
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +12 -4
- package/dest/interfaces/aztec-node.d.ts +66 -69
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +10 -16
- package/dest/interfaces/block-builder.d.ts +22 -14
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +7 -0
- package/dest/interfaces/configs.d.ts +24 -9
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +4 -1
- package/dest/interfaces/get_logs_response.d.ts +16 -9
- package/dest/interfaces/get_logs_response.d.ts.map +1 -1
- package/dest/interfaces/l2_logs_source.d.ts +14 -5
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +2 -2
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/prover-broker.d.ts +16 -1
- package/dest/interfaces/prover-broker.d.ts.map +1 -1
- package/dest/interfaces/prover-broker.js +4 -1
- package/dest/interfaces/prover-client.d.ts +15 -1
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +12 -1
- package/dest/interfaces/proving-job.d.ts +216 -216
- package/dest/interfaces/slasher.d.ts +9 -1
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +2 -0
- package/dest/interfaces/tx_provider.d.ts +3 -3
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +118 -16
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +6 -3
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_note_hash_read_request_hints.js +29 -16
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +4 -4
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.js +28 -17
- package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
- package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_transient_data_hints.js +9 -3
- package/dest/kernel/hints/index.d.ts +2 -2
- package/dest/kernel/hints/index.js +2 -2
- package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +2 -1
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
- package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
- package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
- package/dest/kernel/hints/read_request.d.ts +7 -1
- package/dest/kernel/hints/read_request.d.ts.map +1 -1
- package/dest/kernel/hints/read_request_hints.d.ts +7 -1
- package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
- package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
- package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
- package/dest/kernel/private_accumulated_data.d.ts +23 -1
- package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.d.ts +25 -1
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_request.d.ts +16 -1
- package/dest/kernel/private_call_request.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts +81 -8
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +16 -16
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +33 -3
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
- package/dest/kernel/private_kernel_data.d.ts +7 -1
- package/dest/kernel/private_kernel_data.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +12 -3
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +25 -3
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
- 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 -7
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +18 -3
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
- package/dest/kernel/private_validation_requests.d.ts +13 -4
- package/dest/kernel/private_validation_requests.d.ts.map +1 -1
- package/dest/kernel/private_validation_requests.js +9 -9
- package/dest/kernel/public_call_request.d.ts +22 -1
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/utils/optional_number.d.ts +7 -1
- package/dest/kernel/utils/optional_number.d.ts.map +1 -1
- package/dest/keys/derivation.d.ts +3 -3
- package/dest/keys/derivation.js +15 -15
- package/dest/keys/key_types.d.ts +3 -3
- package/dest/keys/key_types.d.ts.map +1 -1
- package/dest/keys/public_keys.d.ts +5 -1
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +2 -2
- package/dest/keys/utils.d.ts +1 -1
- package/dest/keys/utils.d.ts.map +1 -1
- package/dest/keys/utils.js +8 -4
- package/dest/l1-contracts/slash_factory.d.ts +1 -1
- package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
- package/dest/l1-contracts/slash_factory.js +1 -0
- package/dest/logs/debug_log_store.d.ts +30 -0
- package/dest/logs/debug_log_store.d.ts.map +1 -0
- package/dest/logs/debug_log_store.js +30 -0
- package/dest/logs/extended_contract_class_log.d.ts +3 -1
- package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
- package/dest/logs/extended_public_log.d.ts +17 -9
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/index.d.ts +2 -1
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +1 -0
- package/dest/logs/log_id.d.ts +21 -14
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_id.js +20 -17
- package/dest/logs/private_log.d.ts +2 -2
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/siloed_tag.d.ts +1 -1
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +2 -5
- package/dest/messaging/inbox_leaf.d.ts +3 -1
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/l1_actor.d.ts +7 -1
- package/dest/messaging/l1_actor.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.d.ts +6 -1
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l2_actor.d.ts +7 -1
- package/dest/messaging/l2_actor.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts +3 -3
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +8 -6
- package/dest/messaging/out_hash.d.ts +41 -4
- package/dest/messaging/out_hash.d.ts.map +1 -1
- package/dest/messaging/out_hash.js +52 -26
- package/dest/note/index.d.ts +1 -2
- package/dest/note/index.d.ts.map +1 -1
- package/dest/note/index.js +0 -1
- package/dest/note/note_dao.d.ts +36 -5
- package/dest/note/note_dao.d.ts.map +1 -1
- package/dest/note/note_dao.js +15 -12
- package/dest/p2p/attestation_utils.d.ts +11 -1
- package/dest/p2p/attestation_utils.d.ts.map +1 -1
- package/dest/p2p/attestation_utils.js +45 -0
- package/dest/p2p/block_proposal.d.ts +23 -8
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +26 -10
- package/dest/p2p/checkpoint_attestation.d.ts +6 -1
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_attestation.js +1 -1
- package/dest/p2p/checkpoint_proposal.d.ts +34 -9
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +46 -20
- package/dest/p2p/consensus_payload.d.ts +15 -5
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +22 -18
- package/dest/p2p/constants.d.ts +5 -0
- package/dest/p2p/constants.d.ts.map +1 -0
- package/dest/p2p/constants.js +3 -0
- package/dest/p2p/index.d.ts +2 -1
- package/dest/p2p/index.d.ts.map +1 -1
- package/dest/p2p/index.js +1 -0
- package/dest/p2p/message_validator.d.ts +18 -3
- package/dest/p2p/message_validator.d.ts.map +1 -1
- package/dest/p2p/message_validator.js +2 -1
- package/dest/p2p/signed_txs.d.ts +3 -1
- package/dest/p2p/signed_txs.d.ts.map +1 -1
- package/dest/p2p/signed_txs.js +6 -1
- package/dest/p2p/topic_type.js +2 -1
- package/dest/parity/parity_base_private_inputs.d.ts +3 -1
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.d.ts +4 -1
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_root_private_inputs.d.ts +2 -1
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.d.ts +1 -1
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +9 -4
- package/dest/proofs/proof.d.ts +4 -1
- package/dest/proofs/proof.d.ts.map +1 -1
- package/dest/proofs/recursive_proof.d.ts +10 -1
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.d.ts +34 -1
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.d.ts +12 -1
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.js +1 -1
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +44 -3
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +2 -2
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.d.ts +31 -4
- package/dest/rollup/checkpoint_header.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.js +23 -7
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +45 -10
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -7
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
- package/dest/rollup/epoch_constant_data.d.ts +16 -1
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +17 -7
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.js +7 -4
- package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
- package/dest/schemas/schemas.d.ts +1 -1
- package/dest/slashing/empire.d.ts +1 -1
- package/dest/slashing/empire.d.ts.map +1 -1
- package/dest/slashing/empire.js +2 -0
- package/dest/slashing/helpers.d.ts +2 -2
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +6 -0
- package/dest/slashing/tally.d.ts +2 -1
- package/dest/slashing/tally.d.ts.map +1 -1
- package/dest/slashing/tally.js +6 -2
- package/dest/slashing/types.d.ts +7 -3
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +13 -1
- package/dest/stats/stats.d.ts +1 -3
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +2 -4
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +18 -27
- package/dest/tests/jest.js +1 -1
- package/dest/tests/mocks.d.ts +24 -15
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +63 -40
- package/dest/timetable/index.d.ts +37 -0
- package/dest/timetable/index.d.ts.map +1 -0
- package/dest/timetable/index.js +39 -0
- package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.d.ts +13 -1
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.d.ts +10 -1
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.d.ts +17 -1
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +7 -6
- package/dest/trees/public_data_witness.d.ts +11 -1
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/tx/block_header.d.ts +14 -2
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +6 -2
- package/dest/tx/call_context.d.ts +13 -1
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +4 -1
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/execution_payload.d.ts +9 -1
- package/dest/tx/execution_payload.d.ts.map +1 -1
- package/dest/tx/function_data.d.ts +4 -2
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +12 -4
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/hashed_values.d.ts +7 -1
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/in_tx.d.ts +4 -4
- package/dest/tx/indexed_tx_effect.d.ts +5 -5
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +3 -2
- package/dest/tx/partial_state_reference.d.ts +4 -1
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/private_execution_result.d.ts +23 -2
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +1 -1
- package/dest/tx/private_tx_constant_data.d.ts +16 -1
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
- package/dest/tx/profiling.d.ts +152 -29
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +47 -10
- package/dest/tx/protocol_contracts.d.ts +2 -2
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/protocol_contracts.js +2 -2
- package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.d.ts +4 -2
- package/dest/tx/public_simulation_output.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.js +7 -3
- package/dest/tx/state_reference.d.ts +3 -1
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/tx.d.ts +24 -1
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +6 -3
- package/dest/tx/tx_context.d.ts +2 -1
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_effect.d.ts +32 -6
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +0 -7
- package/dest/tx/tx_execution_request.d.ts +30 -1
- package/dest/tx/tx_execution_request.d.ts.map +1 -1
- package/dest/tx/tx_hash.d.ts +2 -1
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_receipt.d.ts +62 -14
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +55 -16
- package/dest/tx/tx_request.d.ts +6 -1
- package/dest/tx/tx_request.d.ts.map +1 -1
- package/dest/tx/tx_request.js +2 -2
- package/dest/tx/validator/empty_validator.d.ts +2 -2
- package/dest/tx/validator/empty_validator.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.d.ts +3 -2
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +3 -1
- package/dest/tx/validator/tx_validator.d.ts +2 -2
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/types/shared.d.ts +4 -1
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/validators/schemas.d.ts +38 -38
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +4 -3
- package/dest/validators/types.d.ts +3 -3
- package/dest/validators/types.d.ts.map +1 -1
- package/dest/vks/verification_key.d.ts +22 -1
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/vk_data.d.ts +7 -1
- package/dest/vks/vk_data.d.ts.map +1 -1
- package/dest/zkpassport/index.d.ts +3 -4
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/dest/zkpassport/index.js +9 -9
- package/package.json +27 -13
- package/src/abi/function_call.ts +25 -3
- package/src/abi/utils.ts +17 -0
- package/src/auth_witness/auth_witness.ts +3 -3
- package/src/block/block_data.ts +26 -0
- package/src/block/block_hash.ts +26 -25
- package/src/block/block_parameter.ts +4 -2
- package/src/block/body.ts +2 -1
- package/src/block/checkpointed_l2_block.ts +8 -58
- package/src/block/in_block.ts +6 -6
- package/src/block/index.ts +1 -2
- package/src/block/l2_block.ts +102 -150
- package/src/block/l2_block_source.ts +93 -42
- package/src/block/l2_block_stream/interfaces.ts +8 -5
- package/src/block/l2_block_stream/l2_block_stream.ts +45 -37
- package/src/block/l2_block_stream/l2_tips_store_base.ts +2 -2
- package/src/block/test/l2_tips_store_test_suite.ts +4 -9
- package/src/block/validate_block_result.ts +5 -4
- package/src/checkpoint/checkpoint.ts +61 -21
- package/src/checkpoint/checkpoint_data.ts +51 -0
- package/src/checkpoint/index.ts +1 -0
- package/src/checkpoint/published_checkpoint.ts +7 -4
- package/src/config/index.ts +1 -0
- package/src/config/node-rpc-config.ts +1 -1
- package/src/config/sequencer-config.ts +29 -0
- package/src/contract/contract_address.ts +4 -4
- package/src/contract/contract_class.ts +3 -3
- package/src/contract/contract_class_id.ts +6 -5
- package/src/contract/index.ts +0 -2
- package/src/contract/interfaces/node-info.ts +3 -0
- package/src/contract/private_function.ts +3 -4
- package/src/contract/private_function_membership_proof.ts +1 -1
- package/src/database-version/database_version.ts +87 -0
- package/src/database-version/version_manager.ts +1 -77
- package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
- package/src/deserialization/index.ts +21 -0
- package/src/epoch-helpers/index.ts +13 -1
- package/src/file-store/local.ts +15 -5
- package/src/file-store/s3.ts +12 -3
- package/src/ha-signing/config.ts +149 -0
- package/src/ha-signing/index.ts +18 -0
- package/src/ha-signing/types.ts +112 -0
- package/src/hash/hash.ts +14 -10
- package/src/hash/map_slot.ts +3 -2
- package/src/interfaces/api_limit.ts +1 -0
- package/src/interfaces/archiver.ts +23 -24
- package/src/interfaces/aztec-node-admin.ts +26 -2
- package/src/interfaces/aztec-node.ts +86 -135
- package/src/interfaces/block-builder.ts +41 -23
- package/src/interfaces/configs.ts +13 -4
- package/src/interfaces/l2_logs_source.ts +17 -4
- package/src/interfaces/merkle_tree_operations.ts +1 -1
- package/src/interfaces/p2p.ts +1 -1
- package/src/interfaces/prover-broker.ts +22 -0
- package/src/interfaces/prover-client.ts +22 -0
- package/src/interfaces/slasher.ts +4 -0
- package/src/interfaces/tx_provider.ts +2 -2
- package/src/interfaces/validator.ts +20 -12
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +31 -24
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +32 -32
- package/src/kernel/hints/build_transient_data_hints.ts +17 -2
- package/src/kernel/hints/index.ts +2 -2
- package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
- package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
- package/src/kernel/private_circuit_public_inputs.ts +14 -14
- package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
- package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
- package/src/kernel/private_validation_requests.ts +8 -8
- package/src/keys/derivation.ts +15 -15
- package/src/keys/key_types.ts +6 -2
- package/src/keys/public_keys.ts +2 -2
- package/src/keys/utils.ts +8 -4
- package/src/l1-contracts/slash_factory.ts +1 -0
- package/src/logs/debug_log_store.ts +54 -0
- package/src/logs/index.ts +1 -0
- package/src/logs/log_id.ts +22 -18
- package/src/logs/siloed_tag.ts +2 -2
- package/src/messaging/l2_to_l1_membership.ts +8 -6
- package/src/messaging/out_hash.ts +60 -29
- package/src/note/index.ts +0 -1
- package/src/note/note_dao.ts +18 -13
- package/src/p2p/attestation_utils.ts +56 -0
- package/src/p2p/block_proposal.ts +36 -15
- package/src/p2p/checkpoint_attestation.ts +6 -1
- package/src/p2p/checkpoint_proposal.ts +74 -24
- package/src/p2p/consensus_payload.ts +25 -17
- package/src/p2p/constants.ts +6 -0
- package/src/p2p/index.ts +1 -0
- package/src/p2p/message_validator.ts +14 -2
- package/src/p2p/signed_txs.ts +6 -1
- package/src/p2p/topic_type.ts +1 -1
- package/src/proofs/chonk_proof.ts +9 -5
- package/src/rollup/block_headers_hash.ts +1 -1
- package/src/rollup/block_rollup_public_inputs.ts +2 -2
- package/src/rollup/checkpoint_header.ts +22 -2
- package/src/rollup/checkpoint_rollup_public_inputs.ts +16 -10
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
- package/src/rollup/root_rollup_public_inputs.ts +11 -8
- package/src/slashing/empire.ts +3 -1
- package/src/slashing/helpers.ts +8 -0
- package/src/slashing/tally.ts +8 -2
- package/src/slashing/types.ts +14 -0
- package/src/stats/stats.ts +0 -2
- package/src/tests/factories.ts +23 -43
- package/src/tests/jest.ts +1 -1
- package/src/tests/mocks.ts +90 -55
- package/src/timetable/index.ts +66 -0
- package/src/trees/public_data_leaf.ts +11 -5
- package/src/tx/block_header.ts +12 -4
- package/src/tx/global_variables.ts +3 -3
- package/src/tx/indexed_tx_effect.ts +3 -2
- package/src/tx/private_execution_result.ts +1 -1
- package/src/tx/profiling.ts +51 -9
- package/src/tx/protocol_contracts.ts +2 -2
- package/src/tx/public_simulation_output.ts +4 -0
- package/src/tx/tx.ts +8 -9
- package/src/tx/tx_effect.ts +0 -9
- package/src/tx/tx_receipt.ts +85 -18
- package/src/tx/tx_request.ts +2 -2
- package/src/tx/validator/empty_validator.ts +1 -1
- package/src/tx/validator/error_texts.ts +4 -1
- package/src/tx/validator/tx_validator.ts +1 -1
- package/src/validators/schemas.ts +8 -1
- package/src/validators/types.ts +5 -4
- package/src/zkpassport/index.ts +11 -12
- package/dest/block/l2_block_code_to_purge.d.ts +0 -11
- package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
- package/dest/block/l2_block_code_to_purge.js +0 -55
- package/dest/block/l2_block_header.d.ts +0 -94
- package/dest/block/l2_block_header.d.ts.map +0 -1
- package/dest/block/l2_block_header.js +0 -160
- package/dest/block/l2_block_new.d.ts +0 -134
- package/dest/block/l2_block_new.d.ts.map +0 -1
- package/dest/block/l2_block_new.js +0 -155
- package/dest/contract/contract_class_metadata.d.ts +0 -8
- package/dest/contract/contract_class_metadata.d.ts.map +0 -1
- package/dest/contract/contract_class_metadata.js +0 -1
- package/dest/contract/contract_metadata.d.ts +0 -7
- package/dest/contract/contract_metadata.d.ts.map +0 -1
- package/dest/contract/contract_metadata.js +0 -1
- package/dest/database-version/index.d.ts +0 -2
- package/dest/database-version/index.d.ts.map +0 -1
- package/dest/database-version/index.js +0 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -25
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
- package/dest/note/notes_filter.d.ts +0 -27
- package/dest/note/notes_filter.d.ts.map +0 -1
- package/dest/note/notes_filter.js +0 -11
- package/src/block/l2_block_code_to_purge.ts +0 -80
- package/src/block/l2_block_header.ts +0 -255
- package/src/block/l2_block_new.ts +0 -211
- package/src/contract/contract_class_metadata.ts +0 -8
- package/src/contract/contract_metadata.ts +0 -7
- package/src/database-version/index.ts +0 -1
- package/src/note/notes_filter.ts +0 -38
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ARCHIVE_HEIGHT,
|
|
3
|
-
L1_TO_L2_MSG_TREE_HEIGHT,
|
|
4
|
-
NOTE_HASH_TREE_HEIGHT,
|
|
5
|
-
NULLIFIER_TREE_HEIGHT,
|
|
6
|
-
PUBLIC_DATA_TREE_HEIGHT,
|
|
7
|
-
} from '@aztec/constants';
|
|
1
|
+
import { ARCHIVE_HEIGHT, L1_TO_L2_MSG_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT } from '@aztec/constants';
|
|
8
2
|
import { type L1ContractAddresses, L1ContractAddressesSchema } from '@aztec/ethereum/l1-contract-addresses';
|
|
9
3
|
import {
|
|
10
4
|
BlockNumber,
|
|
@@ -23,11 +17,11 @@ import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
|
|
|
23
17
|
import { z } from 'zod';
|
|
24
18
|
|
|
25
19
|
import type { AztecAddress } from '../aztec-address/index.js';
|
|
20
|
+
import { BlockHash } from '../block/block_hash.js';
|
|
26
21
|
import { type BlockParameter, BlockParameterSchema } from '../block/block_parameter.js';
|
|
27
|
-
import { CheckpointedL2Block
|
|
22
|
+
import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
|
|
28
23
|
import { type DataInBlock, dataInBlockSchemaFor } from '../block/in_block.js';
|
|
29
24
|
import { L2Block } from '../block/l2_block.js';
|
|
30
|
-
import { L2BlockNew } from '../block/l2_block_new.js';
|
|
31
25
|
import { type L2BlockSource, type L2Tips, L2TipsSchema } from '../block/l2_block_source.js';
|
|
32
26
|
import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
|
|
33
27
|
import {
|
|
@@ -78,13 +72,7 @@ import { type WorldStateSyncStatus, WorldStateSyncStatusSchema } from './world_s
|
|
|
78
72
|
export interface AztecNode
|
|
79
73
|
extends Pick<
|
|
80
74
|
L2BlockSource,
|
|
81
|
-
| '
|
|
82
|
-
| 'getL2BlocksNew'
|
|
83
|
-
| 'getPublishedBlocks'
|
|
84
|
-
| 'getPublishedCheckpoints'
|
|
85
|
-
| 'getBlockHeader'
|
|
86
|
-
| 'getL2Tips'
|
|
87
|
-
| 'getCheckpointedBlocks'
|
|
75
|
+
'getBlocks' | 'getCheckpoints' | 'getBlockHeader' | 'getL2Tips' | 'getCheckpointedBlocks'
|
|
88
76
|
> {
|
|
89
77
|
/**
|
|
90
78
|
* Returns the tips of the L2 chain.
|
|
@@ -99,72 +87,31 @@ export interface AztecNode
|
|
|
99
87
|
/**
|
|
100
88
|
* Find the indexes of the given leaves in the given tree along with a block metadata pointing to the block in which
|
|
101
89
|
* the leaves were inserted.
|
|
102
|
-
* @param
|
|
90
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
103
91
|
* @param treeId - The tree to search in.
|
|
104
92
|
* @param leafValues - The values to search for.
|
|
105
93
|
* @returns The indices of leaves and the block metadata of a block in which the leaves were inserted.
|
|
106
94
|
*/
|
|
107
95
|
findLeavesIndexes(
|
|
108
|
-
|
|
96
|
+
referenceBlock: BlockParameter,
|
|
109
97
|
treeId: MerkleTreeId,
|
|
110
98
|
leafValues: Fr[],
|
|
111
99
|
): Promise<(DataInBlock<bigint> | undefined)[]>;
|
|
112
100
|
|
|
113
|
-
/**
|
|
114
|
-
* Returns a sibling path for the given index in the nullifier tree.
|
|
115
|
-
* @param blockNumber - The block number at which to get the data.
|
|
116
|
-
* @param leafIndex - The index of the leaf for which the sibling path is required.
|
|
117
|
-
* @returns The sibling path for the leaf index.
|
|
118
|
-
*/
|
|
119
|
-
getNullifierSiblingPath(
|
|
120
|
-
blockNumber: BlockParameter,
|
|
121
|
-
leafIndex: bigint,
|
|
122
|
-
): Promise<SiblingPath<typeof NULLIFIER_TREE_HEIGHT>>;
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* Returns a sibling path for the given index in the note hash tree.
|
|
126
|
-
* @param blockNumber - The block number at which to get the data.
|
|
127
|
-
* @param leafIndex - The index of the leaf for which the sibling path is required.
|
|
128
|
-
* @returns The sibling path for the leaf index.
|
|
129
|
-
*/
|
|
130
|
-
getNoteHashSiblingPath(
|
|
131
|
-
blockNumber: BlockParameter,
|
|
132
|
-
leafIndex: bigint,
|
|
133
|
-
): Promise<SiblingPath<typeof NOTE_HASH_TREE_HEIGHT>>;
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Returns a sibling path for a leaf in the committed historic blocks tree.
|
|
137
|
-
* @param blockNumber - The block number at which to get the data.
|
|
138
|
-
* @param leafIndex - Index of the leaf in the tree.
|
|
139
|
-
* @returns The sibling path.
|
|
140
|
-
*/
|
|
141
|
-
getArchiveSiblingPath(blockNumber: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof ARCHIVE_HEIGHT>>;
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* Returns a sibling path for a leaf in the committed public data tree.
|
|
145
|
-
* @param blockNumber - The block number at which to get the data.
|
|
146
|
-
* @param leafIndex - Index of the leaf in the tree.
|
|
147
|
-
* @returns The sibling path.
|
|
148
|
-
*/
|
|
149
|
-
getPublicDataSiblingPath(
|
|
150
|
-
blockNumber: BlockParameter,
|
|
151
|
-
leafIndex: bigint,
|
|
152
|
-
): Promise<SiblingPath<typeof PUBLIC_DATA_TREE_HEIGHT>>;
|
|
153
|
-
|
|
154
101
|
/**
|
|
155
102
|
* Returns a nullifier membership witness for a given nullifier at a given block.
|
|
156
|
-
* @param
|
|
103
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
157
104
|
* @param nullifier - Nullifier we try to find witness for.
|
|
158
105
|
* @returns The nullifier membership witness (if found).
|
|
159
106
|
*/
|
|
160
107
|
getNullifierMembershipWitness(
|
|
161
|
-
|
|
108
|
+
referenceBlock: BlockParameter,
|
|
162
109
|
nullifier: Fr,
|
|
163
110
|
): Promise<NullifierMembershipWitness | undefined>;
|
|
164
111
|
|
|
165
112
|
/**
|
|
166
113
|
* Returns a low nullifier membership witness for a given nullifier at a given block.
|
|
167
|
-
* @param
|
|
114
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
168
115
|
* @param nullifier - Nullifier we try to find the low nullifier witness for.
|
|
169
116
|
* @returns The low nullifier membership witness (if found).
|
|
170
117
|
* @remarks Low nullifier witness can be used to perform a nullifier non-inclusion proof by leveraging the "linked
|
|
@@ -172,49 +119,56 @@ export interface AztecNode
|
|
|
172
119
|
* we are trying to prove non-inclusion for.
|
|
173
120
|
*/
|
|
174
121
|
getLowNullifierMembershipWitness(
|
|
175
|
-
|
|
122
|
+
referenceBlock: BlockParameter,
|
|
176
123
|
nullifier: Fr,
|
|
177
124
|
): Promise<NullifierMembershipWitness | undefined>;
|
|
178
125
|
|
|
179
126
|
/**
|
|
180
127
|
* Returns a public data tree witness for a given leaf slot at a given block.
|
|
181
|
-
* @param
|
|
128
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
182
129
|
* @param leafSlot - The leaf slot we try to find the witness for.
|
|
183
130
|
* @returns The public data witness (if found).
|
|
184
131
|
* @remarks The witness can be used to compute the current value of the public data tree leaf. If the low leaf preimage corresponds to an
|
|
185
132
|
* "in range" slot, means that the slot doesn't exist and the value is 0. If the low leaf preimage corresponds to the exact slot, the current value
|
|
186
133
|
* is contained in the leaf preimage.
|
|
187
134
|
*/
|
|
188
|
-
getPublicDataWitness(
|
|
135
|
+
getPublicDataWitness(referenceBlock: BlockParameter, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
189
136
|
|
|
190
137
|
/**
|
|
191
|
-
* Returns a membership witness for a given
|
|
192
|
-
*
|
|
193
|
-
*
|
|
138
|
+
* Returns a membership witness for a given block hash in the archive tree.
|
|
139
|
+
*
|
|
140
|
+
* Block hashes are the leaves of the archive tree. Each time a new block is added to the chain,
|
|
141
|
+
* its block hash is appended as a new leaf to the archive tree. This method finds the membership
|
|
142
|
+
* witness (leaf index and sibling path) for a given block hash, which can be used to prove that
|
|
143
|
+
* a specific block exists in the chain's history.
|
|
144
|
+
*
|
|
145
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data
|
|
146
|
+
* (which contains the root of the archive tree in which we are searching for the block hash).
|
|
147
|
+
* @param blockHash - The block hash to find in the archive tree.
|
|
194
148
|
*/
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
149
|
+
getBlockHashMembershipWitness(
|
|
150
|
+
referenceBlock: BlockParameter,
|
|
151
|
+
blockHash: BlockHash,
|
|
198
152
|
): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
|
|
199
153
|
|
|
200
154
|
/**
|
|
201
155
|
* Returns a membership witness for a given note hash at a given block.
|
|
202
|
-
* @param
|
|
156
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
203
157
|
* @param noteHash - The note hash we try to find the witness for.
|
|
204
158
|
*/
|
|
205
159
|
getNoteHashMembershipWitness(
|
|
206
|
-
|
|
160
|
+
referenceBlock: BlockParameter,
|
|
207
161
|
noteHash: Fr,
|
|
208
162
|
): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
|
|
209
163
|
|
|
210
164
|
/**
|
|
211
165
|
* Returns the index and a sibling path for a leaf in the committed l1 to l2 data tree.
|
|
212
|
-
* @param
|
|
166
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
213
167
|
* @param l1ToL2Message - The l1ToL2Message to get the index / sibling path for.
|
|
214
168
|
* @returns A tuple of the index and the sibling path of the L1ToL2Message (undefined if not found).
|
|
215
169
|
*/
|
|
216
170
|
getL1ToL2MessageMembershipWitness(
|
|
217
|
-
|
|
171
|
+
referenceBlock: BlockParameter,
|
|
218
172
|
l1ToL2Message: Fr,
|
|
219
173
|
): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>] | undefined>;
|
|
220
174
|
|
|
@@ -238,18 +192,18 @@ export interface AztecNode
|
|
|
238
192
|
getL2ToL1Messages(epoch: EpochNumber): Promise<Fr[][][][]>;
|
|
239
193
|
|
|
240
194
|
/**
|
|
241
|
-
* Get a block specified by its number.
|
|
242
|
-
* @param
|
|
195
|
+
* Get a block specified by its block number or 'latest'.
|
|
196
|
+
* @param blockParameter - The block parameter (block number, block hash, or 'latest').
|
|
243
197
|
* @returns The requested block.
|
|
244
198
|
*/
|
|
245
|
-
getBlock(
|
|
199
|
+
getBlock(blockParameter: BlockParameter): Promise<L2Block | undefined>;
|
|
246
200
|
|
|
247
201
|
/**
|
|
248
202
|
* Get a block specified by its hash.
|
|
249
203
|
* @param blockHash - The block hash being requested.
|
|
250
204
|
* @returns The requested block.
|
|
251
205
|
*/
|
|
252
|
-
getBlockByHash(blockHash:
|
|
206
|
+
getBlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
|
|
253
207
|
|
|
254
208
|
/**
|
|
255
209
|
* Get a block specified by its archive root.
|
|
@@ -270,6 +224,12 @@ export interface AztecNode
|
|
|
270
224
|
*/
|
|
271
225
|
getProvenBlockNumber(): Promise<BlockNumber>;
|
|
272
226
|
|
|
227
|
+
/**
|
|
228
|
+
* Fetches the latest checkpointed block number.
|
|
229
|
+
* @returns The block number.
|
|
230
|
+
*/
|
|
231
|
+
getCheckpointedBlockNumber(): Promise<BlockNumber>;
|
|
232
|
+
|
|
273
233
|
/**
|
|
274
234
|
* Method to determine if the node is ready to accept transactions.
|
|
275
235
|
* @returns - Flag indicating the readiness for tx submission.
|
|
@@ -353,16 +313,38 @@ export interface AztecNode
|
|
|
353
313
|
getContractClassLogs(filter: LogFilter): Promise<GetContractClassLogsResponse>;
|
|
354
314
|
|
|
355
315
|
/**
|
|
356
|
-
* Gets
|
|
316
|
+
* Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
|
|
357
317
|
* array implies no logs match that tag.
|
|
318
|
+
* @param tags - The tags to search for.
|
|
319
|
+
* @param page - The page number (0-indexed) for pagination.
|
|
320
|
+
* @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
|
|
321
|
+
* This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
|
|
322
|
+
* If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
|
|
323
|
+
* undefined behavior in the client's code.
|
|
324
|
+
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
325
|
+
* for a tag, the caller should fetch the next page to check for more logs.
|
|
358
326
|
*/
|
|
359
|
-
getPrivateLogsByTags(tags: SiloedTag[]): Promise<TxScopedL2Log[][]>;
|
|
327
|
+
getPrivateLogsByTags(tags: SiloedTag[], page?: number, referenceBlock?: BlockHash): Promise<TxScopedL2Log[][]>;
|
|
360
328
|
|
|
361
329
|
/**
|
|
362
|
-
* Gets
|
|
330
|
+
* Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
|
|
363
331
|
* logs is returned. An empty array implies no logs match that tag.
|
|
364
|
-
|
|
365
|
-
|
|
332
|
+
* @param contractAddress - The contract address to search logs for.
|
|
333
|
+
* @param tags - The tags to search for.
|
|
334
|
+
* @param page - The page number (0-indexed) for pagination.
|
|
335
|
+
* @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
|
|
336
|
+
* This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
|
|
337
|
+
* If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
|
|
338
|
+
* undefined behavior in the client's code.
|
|
339
|
+
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
340
|
+
* for a tag, the caller should fetch the next page to check for more logs.
|
|
341
|
+
*/
|
|
342
|
+
getPublicLogsByTagsFromContract(
|
|
343
|
+
contractAddress: AztecAddress,
|
|
344
|
+
tags: Tag[],
|
|
345
|
+
page?: number,
|
|
346
|
+
referenceBlock?: BlockHash,
|
|
347
|
+
): Promise<TxScopedL2Log[][]>;
|
|
366
348
|
|
|
367
349
|
/**
|
|
368
350
|
* Method to submit a transaction to the p2p pool.
|
|
@@ -420,25 +402,19 @@ export interface AztecNode
|
|
|
420
402
|
* @remarks The storage slot here refers to the slot as it is defined in Noir not the index in the merkle tree.
|
|
421
403
|
* Aztec's version of `eth_getStorageAt`.
|
|
422
404
|
*
|
|
405
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
423
406
|
* @param contract - Address of the contract to query.
|
|
424
407
|
* @param slot - Slot to query.
|
|
425
|
-
* @param blockNumber - The block number at which to get the data or 'latest'.
|
|
426
408
|
* @returns Storage value at the given contract slot.
|
|
427
409
|
*/
|
|
428
|
-
getPublicStorageAt(
|
|
429
|
-
|
|
430
|
-
/**
|
|
431
|
-
* Returns the currently committed block header.
|
|
432
|
-
* @returns The current committed block header.
|
|
433
|
-
*/
|
|
434
|
-
getBlockHeader(blockNumber?: BlockParameter): Promise<BlockHeader | undefined>;
|
|
410
|
+
getPublicStorageAt(referenceBlock: BlockParameter, contract: AztecAddress, slot: Fr): Promise<Fr>;
|
|
435
411
|
|
|
436
412
|
/**
|
|
437
|
-
*
|
|
438
|
-
* @param
|
|
413
|
+
* Returns the block header for a given block number, block hash, or 'latest'.
|
|
414
|
+
* @param block - The block parameter (block number, block hash, or 'latest'). Defaults to 'latest'.
|
|
439
415
|
* @returns The requested block header.
|
|
440
416
|
*/
|
|
441
|
-
|
|
417
|
+
getBlockHeader(block?: BlockParameter): Promise<BlockHeader | undefined>;
|
|
442
418
|
|
|
443
419
|
/**
|
|
444
420
|
* Get a block header specified by its archive root.
|
|
@@ -467,7 +443,7 @@ export interface AztecNode
|
|
|
467
443
|
/**
|
|
468
444
|
* Returns true if the transaction is valid for inclusion at the current state. Valid transactions can be
|
|
469
445
|
* made invalid by *other* transactions if e.g. they emit the same nullifiers, or come become invalid
|
|
470
|
-
* due to e.g. the
|
|
446
|
+
* due to e.g. the expiration_timestamp property.
|
|
471
447
|
* @param tx - The transaction to validate for correctness.
|
|
472
448
|
* @param isSimulation - True if the transaction is a simulated one without generated proofs. (Optional)
|
|
473
449
|
* @param skipFeeEnforcement - True if the validation of the fee should be skipped. Useful when the simulation is for estimating fee (Optional)
|
|
@@ -511,26 +487,6 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
511
487
|
.args(BlockParameterSchema, z.nativeEnum(MerkleTreeId), z.array(schemas.Fr).max(MAX_RPC_LEN))
|
|
512
488
|
.returns(z.array(optional(dataInBlockSchemaFor(schemas.BigInt)))),
|
|
513
489
|
|
|
514
|
-
getNullifierSiblingPath: z
|
|
515
|
-
.function()
|
|
516
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
517
|
-
.returns(SiblingPath.schemaFor(NULLIFIER_TREE_HEIGHT)),
|
|
518
|
-
|
|
519
|
-
getNoteHashSiblingPath: z
|
|
520
|
-
.function()
|
|
521
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
522
|
-
.returns(SiblingPath.schemaFor(NOTE_HASH_TREE_HEIGHT)),
|
|
523
|
-
|
|
524
|
-
getArchiveSiblingPath: z
|
|
525
|
-
.function()
|
|
526
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
527
|
-
.returns(SiblingPath.schemaFor(ARCHIVE_HEIGHT)),
|
|
528
|
-
|
|
529
|
-
getPublicDataSiblingPath: z
|
|
530
|
-
.function()
|
|
531
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
532
|
-
.returns(SiblingPath.schemaFor(PUBLIC_DATA_TREE_HEIGHT)),
|
|
533
|
-
|
|
534
490
|
getNullifierMembershipWitness: z
|
|
535
491
|
.function()
|
|
536
492
|
.args(BlockParameterSchema, schemas.Fr)
|
|
@@ -546,9 +502,9 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
546
502
|
.args(BlockParameterSchema, schemas.Fr)
|
|
547
503
|
.returns(PublicDataWitness.schema.optional()),
|
|
548
504
|
|
|
549
|
-
|
|
505
|
+
getBlockHashMembershipWitness: z
|
|
550
506
|
.function()
|
|
551
|
-
.args(BlockParameterSchema,
|
|
507
|
+
.args(BlockParameterSchema, BlockHash.schema)
|
|
552
508
|
.returns(MembershipWitness.schemaFor(ARCHIVE_HEIGHT).optional()),
|
|
553
509
|
|
|
554
510
|
getNoteHashMembershipWitness: z
|
|
@@ -572,7 +528,7 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
572
528
|
|
|
573
529
|
getBlock: z.function().args(BlockParameterSchema).returns(L2Block.schema.optional()),
|
|
574
530
|
|
|
575
|
-
getBlockByHash: z.function().args(
|
|
531
|
+
getBlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
|
|
576
532
|
|
|
577
533
|
getBlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
|
|
578
534
|
|
|
@@ -580,6 +536,8 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
580
536
|
|
|
581
537
|
getProvenBlockNumber: z.function().returns(BlockNumberSchema),
|
|
582
538
|
|
|
539
|
+
getCheckpointedBlockNumber: z.function().returns(BlockNumberSchema),
|
|
540
|
+
|
|
583
541
|
isReady: z.function().returns(z.boolean()),
|
|
584
542
|
|
|
585
543
|
getNodeInfo: z.function().returns(NodeInfoSchema),
|
|
@@ -589,24 +547,14 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
589
547
|
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
590
548
|
.returns(z.array(L2Block.schema)),
|
|
591
549
|
|
|
592
|
-
|
|
593
|
-
.function()
|
|
594
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
595
|
-
.returns(z.array(PublishedL2Block.schema)),
|
|
596
|
-
|
|
597
|
-
getPublishedCheckpoints: z
|
|
550
|
+
getCheckpoints: z
|
|
598
551
|
.function()
|
|
599
552
|
.args(CheckpointNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_CHECKPOINTS_LEN))
|
|
600
553
|
.returns(z.array(PublishedCheckpoint.schema)),
|
|
601
554
|
|
|
602
|
-
getL2BlocksNew: z
|
|
603
|
-
.function()
|
|
604
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
605
|
-
.returns(z.array(L2BlockNew.schema)),
|
|
606
|
-
|
|
607
555
|
getCheckpointedBlocks: z
|
|
608
556
|
.function()
|
|
609
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN)
|
|
557
|
+
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
610
558
|
.returns(z.array(CheckpointedL2Block.schema)),
|
|
611
559
|
|
|
612
560
|
getCurrentMinFees: z.function().returns(GasFees.schema),
|
|
@@ -634,12 +582,17 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
634
582
|
|
|
635
583
|
getPrivateLogsByTags: z
|
|
636
584
|
.function()
|
|
637
|
-
.args(z.array(SiloedTag.schema).max(MAX_RPC_LEN))
|
|
585
|
+
.args(z.array(SiloedTag.schema).max(MAX_RPC_LEN), optional(z.number().gte(0)), optional(BlockHash.schema))
|
|
638
586
|
.returns(z.array(z.array(TxScopedL2Log.schema))),
|
|
639
587
|
|
|
640
588
|
getPublicLogsByTagsFromContract: z
|
|
641
589
|
.function()
|
|
642
|
-
.args(
|
|
590
|
+
.args(
|
|
591
|
+
schemas.AztecAddress,
|
|
592
|
+
z.array(Tag.schema).max(MAX_RPC_LEN),
|
|
593
|
+
optional(z.number().gte(0)),
|
|
594
|
+
optional(BlockHash.schema),
|
|
595
|
+
)
|
|
643
596
|
.returns(z.array(z.array(TxScopedL2Log.schema))),
|
|
644
597
|
|
|
645
598
|
sendTx: z.function().args(Tx.schema).returns(z.void()),
|
|
@@ -663,8 +616,6 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
663
616
|
|
|
664
617
|
getBlockHeader: z.function().args(optional(BlockParameterSchema)).returns(BlockHeader.schema.optional()),
|
|
665
618
|
|
|
666
|
-
getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
|
|
667
|
-
|
|
668
619
|
getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
|
|
669
620
|
|
|
670
621
|
getValidatorsStats: z.function().returns(ValidatorsStatsSchema),
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import type { BlockNumber } from '@aztec/foundation/branded-types';
|
|
1
|
+
import type { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
-
import type {
|
|
3
|
+
import type { LoggerBindings } from '@aztec/foundation/log';
|
|
4
4
|
|
|
5
5
|
import type { L2Block } from '../block/l2_block.js';
|
|
6
6
|
import type { ChainConfig, SequencerConfig } from '../config/chain-config.js';
|
|
7
7
|
import type { L1RollupConstants } from '../epoch-helpers/index.js';
|
|
8
8
|
import type { Gas } from '../gas/gas.js';
|
|
9
|
-
import type { MerkleTreeWriteOperations } from '../trees/index.js';
|
|
10
9
|
import type { BlockHeader } from '../tx/block_header.js';
|
|
11
|
-
import type { GlobalVariables } from '../tx/global_variables.js';
|
|
10
|
+
import type { CheckpointGlobalVariables, GlobalVariables } from '../tx/global_variables.js';
|
|
12
11
|
import type { FailedTx, ProcessedTx } from '../tx/processed_tx.js';
|
|
13
12
|
import { Tx } from '../tx/tx.js';
|
|
14
13
|
import type { TxValidator } from '../tx/validator/tx_validator.js';
|
|
14
|
+
import type { MerkleTreeWriteOperations } from './merkle_tree_operations.js';
|
|
15
15
|
import type { ProcessedTxHandler } from './processed-tx-handler.js';
|
|
16
16
|
|
|
17
17
|
/** The interface to a block builder. Generates an L2 block out of a set of processed txs. */
|
|
@@ -47,16 +47,6 @@ export interface PublicProcessorValidator {
|
|
|
47
47
|
preprocessValidator?: TxValidator<Tx>;
|
|
48
48
|
nullifierCache?: { addNullifiers: (nullifiers: Buffer[]) => void };
|
|
49
49
|
}
|
|
50
|
-
export interface BuildBlockResult {
|
|
51
|
-
block: L2Block;
|
|
52
|
-
publicGas: Gas;
|
|
53
|
-
publicProcessorDuration: number;
|
|
54
|
-
numMsgs: number;
|
|
55
|
-
numTxs: number;
|
|
56
|
-
failedTxs: FailedTx[];
|
|
57
|
-
blockBuildingTimer: Timer;
|
|
58
|
-
usedTxs: Tx[];
|
|
59
|
-
}
|
|
60
50
|
|
|
61
51
|
export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
|
|
62
52
|
Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
|
|
@@ -72,18 +62,46 @@ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[
|
|
|
72
62
|
'fakeThrowAfterProcessingTxCount',
|
|
73
63
|
] as const;
|
|
74
64
|
|
|
75
|
-
|
|
76
|
-
|
|
65
|
+
/** Thrown when no valid transactions are available to include in a block after processing, and this is not the first block in a checkpoint. */
|
|
66
|
+
export class NoValidTxsError extends Error {
|
|
67
|
+
constructor(public readonly failedTxs: FailedTx[]) {
|
|
68
|
+
super('No valid transactions to include in block');
|
|
69
|
+
this.name = 'NoValidTxsError';
|
|
70
|
+
}
|
|
71
|
+
}
|
|
77
72
|
|
|
78
|
-
|
|
73
|
+
/** Result of building a block within a checkpoint. */
|
|
74
|
+
export type BuildBlockInCheckpointResult = {
|
|
75
|
+
block: L2Block;
|
|
76
|
+
publicGas: Gas;
|
|
77
|
+
publicProcessorDuration: number;
|
|
78
|
+
numTxs: number;
|
|
79
|
+
failedTxs: FailedTx[];
|
|
80
|
+
usedTxs: Tx[];
|
|
81
|
+
usedTxBlobFields: number;
|
|
82
|
+
};
|
|
79
83
|
|
|
84
|
+
/** Interface for building blocks within a checkpoint context. */
|
|
85
|
+
export interface ICheckpointBlockBuilder {
|
|
80
86
|
buildBlock(
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
+
pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
|
|
88
|
+
blockNumber: BlockNumber,
|
|
89
|
+
timestamp: bigint,
|
|
90
|
+
opts: PublicProcessorLimits,
|
|
91
|
+
): Promise<BuildBlockInCheckpointResult>;
|
|
92
|
+
}
|
|
87
93
|
|
|
94
|
+
/** Interface for creating checkpoint builders. */
|
|
95
|
+
export interface ICheckpointsBuilder {
|
|
88
96
|
getFork(blockNumber: BlockNumber): Promise<MerkleTreeWriteOperations>;
|
|
97
|
+
|
|
98
|
+
startCheckpoint(
|
|
99
|
+
checkpointNumber: CheckpointNumber,
|
|
100
|
+
constants: CheckpointGlobalVariables,
|
|
101
|
+
feeAssetPriceModifier: bigint,
|
|
102
|
+
l1ToL2Messages: Fr[],
|
|
103
|
+
previousCheckpointOutHashes: Fr[],
|
|
104
|
+
fork: MerkleTreeWriteOperations,
|
|
105
|
+
bindings?: LoggerBindings,
|
|
106
|
+
): Promise<ICheckpointBlockBuilder>;
|
|
89
107
|
}
|
|
@@ -65,12 +65,16 @@ export interface SequencerConfig {
|
|
|
65
65
|
shuffleAttestationOrdering?: boolean;
|
|
66
66
|
/** Duration per block in milliseconds when building multiple blocks per slot (default: undefined = single block per slot) */
|
|
67
67
|
blockDurationMs?: number;
|
|
68
|
+
/** Expected number of block proposals per slot for P2P peer scoring. 0 disables scoring, undefined falls back to blocksPerSlot - 1. */
|
|
69
|
+
expectedBlockProposalsPerSlot?: number;
|
|
68
70
|
/** Have sequencer build and publish an empty checkpoint if there are no txs */
|
|
69
71
|
buildCheckpointIfEmpty?: boolean;
|
|
70
|
-
|
|
71
|
-
// TODO(palla/mbps): Change default to false once block sync is stable
|
|
72
|
-
/** Skip pushing proposed blocks to archiver (default: true) */
|
|
72
|
+
/** Skip pushing proposed blocks to archiver (default: false) */
|
|
73
73
|
skipPushProposedBlocksToArchiver?: boolean;
|
|
74
|
+
/** Minimum number of blocks required for a checkpoint proposal (test only, defaults to undefined = no minimum) */
|
|
75
|
+
minBlocksForCheckpoint?: number;
|
|
76
|
+
/** Skip publishing checkpoint proposals probability (for testing checkpoint prunes only) */
|
|
77
|
+
skipPublishingCheckpointsPercent?: number;
|
|
74
78
|
}
|
|
75
79
|
|
|
76
80
|
export const SequencerConfigSchema = zodFor<SequencerConfig>()(
|
|
@@ -103,14 +107,18 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
|
|
|
103
107
|
fishermanMode: z.boolean().optional(),
|
|
104
108
|
shuffleAttestationOrdering: z.boolean().optional(),
|
|
105
109
|
blockDurationMs: z.number().positive().optional(),
|
|
110
|
+
expectedBlockProposalsPerSlot: z.number().nonnegative().optional(),
|
|
106
111
|
buildCheckpointIfEmpty: z.boolean().optional(),
|
|
107
112
|
skipPushProposedBlocksToArchiver: z.boolean().optional(),
|
|
113
|
+
minBlocksForCheckpoint: z.number().positive().optional(),
|
|
114
|
+
skipPublishingCheckpointsPercent: z.number().gte(0).lte(100).optional(),
|
|
108
115
|
}),
|
|
109
116
|
);
|
|
110
117
|
|
|
111
118
|
type SequencerConfigOptionalKeys =
|
|
112
119
|
| 'governanceProposerPayload'
|
|
113
120
|
| 'blockDurationMs'
|
|
121
|
+
| 'expectedBlockProposalsPerSlot'
|
|
114
122
|
| 'coinbase'
|
|
115
123
|
| 'feeRecipient'
|
|
116
124
|
| 'acvmWorkingDirectory'
|
|
@@ -119,7 +127,8 @@ type SequencerConfigOptionalKeys =
|
|
|
119
127
|
| 'fakeThrowAfterProcessingTxCount'
|
|
120
128
|
| 'l1PublishingTime'
|
|
121
129
|
| 'txPublicSetupAllowList'
|
|
122
|
-
| 'minValidTxsPerBlock'
|
|
130
|
+
| 'minValidTxsPerBlock'
|
|
131
|
+
| 'minBlocksForCheckpoint';
|
|
123
132
|
|
|
124
133
|
export type ResolvedSequencerConfig = Prettify<
|
|
125
134
|
Required<Omit<SequencerConfig, SequencerConfigOptionalKeys>> & Pick<SequencerConfig, SequencerConfigOptionalKeys>
|
|
@@ -12,16 +12,29 @@ import type { GetContractClassLogsResponse, GetPublicLogsResponse } from './get_
|
|
|
12
12
|
*/
|
|
13
13
|
export interface L2LogsSource {
|
|
14
14
|
/**
|
|
15
|
-
* Gets
|
|
15
|
+
* Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
|
|
16
16
|
* array implies no logs match that tag.
|
|
17
|
+
* @param tags - The tags to search for.
|
|
18
|
+
* @param page - The page number (0-indexed) for pagination.
|
|
19
|
+
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
20
|
+
* for a tag, the caller should fetch the next page to check for more logs.
|
|
17
21
|
*/
|
|
18
|
-
getPrivateLogsByTags(tags: SiloedTag[]): Promise<TxScopedL2Log[][]>;
|
|
22
|
+
getPrivateLogsByTags(tags: SiloedTag[], page?: number): Promise<TxScopedL2Log[][]>;
|
|
19
23
|
|
|
20
24
|
/**
|
|
21
|
-
* Gets
|
|
25
|
+
* Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
|
|
22
26
|
* logs is returned. An empty array implies no logs match that tag.
|
|
27
|
+
* @param contractAddress - The contract address to search logs for.
|
|
28
|
+
* @param tags - The tags to search for.
|
|
29
|
+
* @param page - The page number (0-indexed) for pagination.
|
|
30
|
+
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
31
|
+
* for a tag, the caller should fetch the next page to check for more logs.
|
|
23
32
|
*/
|
|
24
|
-
getPublicLogsByTagsFromContract(
|
|
33
|
+
getPublicLogsByTagsFromContract(
|
|
34
|
+
contractAddress: AztecAddress,
|
|
35
|
+
tags: Tag[],
|
|
36
|
+
page?: number,
|
|
37
|
+
): Promise<TxScopedL2Log[][]>;
|
|
25
38
|
|
|
26
39
|
/**
|
|
27
40
|
* Gets public logs based on the provided filter.
|
|
@@ -254,7 +254,7 @@ export interface MerkleTreeCheckpointOperations {
|
|
|
254
254
|
export interface MerkleTreeWriteOperations
|
|
255
255
|
extends MerkleTreeReadOperations,
|
|
256
256
|
MerkleTreeCheckpointOperations,
|
|
257
|
-
|
|
257
|
+
AsyncDisposable {
|
|
258
258
|
/**
|
|
259
259
|
* Appends leaves to a given tree.
|
|
260
260
|
* @param treeId - The tree to be updated.
|
package/src/interfaces/p2p.ts
CHANGED
|
@@ -63,7 +63,7 @@ export interface P2PApiWithAttestations extends P2PApiWithoutAttestations {
|
|
|
63
63
|
|
|
64
64
|
export interface P2PClient extends P2PApiWithAttestations {
|
|
65
65
|
/** Manually adds checkpoint attestations to the p2p client attestation pool. */
|
|
66
|
-
|
|
66
|
+
addOwnCheckpointAttestations(attestations: CheckpointAttestation[]): Promise<void>;
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
export type P2PApi<T extends P2PClientType = P2PClientType.Full> = T extends P2PClientType.Full
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { EpochNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
|
|
1
3
|
import type { ProvingRequestType } from '../proofs/proving_request_type.js';
|
|
2
4
|
import type { ProofUri, ProvingJob, ProvingJobId, ProvingJobStatus } from './proving-job.js';
|
|
3
5
|
|
|
@@ -88,3 +90,23 @@ export interface ProvingJobConsumer {
|
|
|
88
90
|
}
|
|
89
91
|
|
|
90
92
|
export interface ProvingJobBroker extends ProvingJobProducer, ProvingJobConsumer {}
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Debug interface for replaying proving jobs from stored inputs.
|
|
96
|
+
* Used for benchmarking different agent configurations against the same workload.
|
|
97
|
+
*/
|
|
98
|
+
export interface ProvingJobBrokerDebug {
|
|
99
|
+
/**
|
|
100
|
+
* Replays a proving job by re-enqueuing it with inputs from the configured proof store.
|
|
101
|
+
* The proof type is parsed from the job ID (format: epoch:typeName:hash).
|
|
102
|
+
* @param jobId - The original job ID to replay
|
|
103
|
+
* @param epochNumber - The epoch number to assign
|
|
104
|
+
* @param inputsUri - The proof inputs location
|
|
105
|
+
*/
|
|
106
|
+
replayProvingJob(
|
|
107
|
+
jobId: ProvingJobId,
|
|
108
|
+
type: ProvingRequestType,
|
|
109
|
+
epochNumber: EpochNumber,
|
|
110
|
+
inputsUri: ProofUri,
|
|
111
|
+
): Promise<ProvingJobStatus>;
|
|
112
|
+
}
|