@aztec/stdlib 0.0.1-commit.d431d1c → 0.0.1-commit.d939eb5aa
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 +138 -1
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +10 -2
- package/dest/abi/authorization_selector.d.ts +3 -6
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/buffer.d.ts +14 -4
- package/dest/abi/buffer.d.ts.map +1 -1
- package/dest/abi/buffer.js +25 -4
- package/dest/abi/decoder.d.ts +6 -45
- package/dest/abi/decoder.d.ts.map +1 -1
- package/dest/abi/decoder.js +17 -70
- package/dest/abi/encoder.d.ts +1 -1
- package/dest/abi/encoder.d.ts.map +1 -1
- package/dest/abi/encoder.js +37 -6
- package/dest/abi/event_metadata_definition.d.ts +3 -1
- package/dest/abi/event_metadata_definition.d.ts.map +1 -1
- package/dest/abi/event_metadata_definition.js +1 -1
- package/dest/abi/event_selector.d.ts +3 -6
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_call.d.ts +39 -9
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +20 -3
- package/dest/abi/function_selector.d.ts +3 -6
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.js +2 -4
- package/dest/abi/function_signature_decoder.d.ts +43 -0
- package/dest/abi/function_signature_decoder.d.ts.map +1 -0
- package/dest/abi/function_signature_decoder.js +66 -0
- package/dest/abi/index.d.ts +2 -1
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +1 -0
- package/dest/abi/note_selector.d.ts +3 -6
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/note_selector.js +1 -3
- package/dest/abi/selector.d.ts +2 -2
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +1 -1
- package/dest/abi/utils.d.ts +14 -1
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +15 -0
- package/dest/auth_witness/auth_witness.js +3 -3
- package/dest/avm/avm.d.ts +300 -300
- package/dest/avm/avm_proving_request.d.ts +166 -166
- package/dest/avm/revert_code.d.ts +9 -4
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +16 -21
- package/dest/aztec-address/index.d.ts +3 -6
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +2 -4
- 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 +20 -21
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +22 -31
- package/dest/block/block_parameter.d.ts +4 -4
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +2 -2
- package/dest/block/checkpointed_l2_block.d.ts +6 -6
- package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
- package/dest/block/checkpointed_l2_block.js +3 -3
- package/dest/block/in_block.d.ts +11 -11
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/in_block.js +5 -5
- package/dest/block/index.d.ts +3 -2
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +2 -1
- package/dest/block/{l2_block_new.d.ts → l2_block.d.ts} +16 -7
- package/dest/block/l2_block.d.ts.map +1 -0
- package/dest/block/{l2_block_new.js → l2_block.js} +17 -11
- package/dest/block/l2_block_info.d.ts +6 -5
- package/dest/block/l2_block_info.d.ts.map +1 -1
- package/dest/block/l2_block_info.js +6 -5
- package/dest/block/l2_block_source.d.ts +148 -35
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +1 -0
- package/dest/block/l2_block_stream/interfaces.d.ts +8 -5
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -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 +14 -4
- 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/l2_block_stream/l2_tips_store_base.js +18 -5
- 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 +6 -5
- package/dest/checkpoint/checkpoint.d.ts +34 -13
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +44 -20
- package/dest/checkpoint/checkpoint_data.d.ts +186 -0
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_data.js +36 -0
- package/dest/checkpoint/index.d.ts +3 -1
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +2 -0
- package/dest/checkpoint/published_checkpoint.d.ts +19 -4
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/published_checkpoint.js +1 -2
- package/dest/checkpoint/validate.d.ts +36 -0
- package/dest/checkpoint/validate.d.ts.map +1 -0
- package/dest/checkpoint/validate.js +120 -0
- package/dest/config/chain-config.d.ts +1 -1
- package/dest/config/chain-config.d.ts.map +1 -1
- package/dest/config/chain-config.js +7 -1
- package/dest/config/index.d.ts +3 -1
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +2 -0
- package/dest/config/node-rpc-config.js +1 -1
- package/dest/config/pipelining-config.d.ts +19 -0
- package/dest/config/pipelining-config.d.ts.map +1 -0
- package/dest/config/pipelining-config.js +18 -0
- package/dest/config/sequencer-config.d.ts +12 -0
- package/dest/config/sequencer-config.d.ts.map +1 -0
- package/dest/config/sequencer-config.js +31 -0
- package/dest/contract/contract_address.d.ts +3 -3
- package/dest/contract/contract_address.js +7 -7
- 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 +3 -3
- package/dest/contract/contract_class_id.d.ts.map +1 -1
- package/dest/contract/contract_class_id.js +7 -6
- 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_class.d.ts +3 -156
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.js +1 -28
- 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/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 +2 -50
- 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/epoch-helpers/index.d.ts +17 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +23 -3
- package/dest/file-store/factory.d.ts +4 -3
- package/dest/file-store/factory.d.ts.map +1 -1
- package/dest/file-store/factory.js +2 -2
- package/dest/file-store/http.d.ts +9 -2
- package/dest/file-store/http.d.ts.map +1 -1
- package/dest/file-store/http.js +20 -9
- package/dest/file-store/index.d.ts +2 -1
- package/dest/file-store/index.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/gas/fee_math.d.ts +49 -0
- package/dest/gas/fee_math.d.ts.map +1 -0
- package/dest/gas/fee_math.js +80 -0
- package/dest/gas/gas_fees.d.ts +1 -1
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +13 -1
- package/dest/gas/gas_settings.d.ts +40 -3
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +50 -6
- package/dest/gas/index.d.ts +2 -1
- package/dest/gas/index.d.ts.map +1 -1
- package/dest/gas/index.js +1 -0
- package/dest/ha-signing/config.d.ts +136 -0
- package/dest/ha-signing/config.d.ts.map +1 -0
- package/dest/ha-signing/config.js +97 -0
- package/dest/ha-signing/index.d.ts +4 -0
- package/dest/ha-signing/index.d.ts.map +1 -0
- package/dest/ha-signing/index.js +3 -0
- package/dest/ha-signing/local_config.d.ts +63 -0
- package/dest/ha-signing/local_config.d.ts.map +1 -0
- package/dest/ha-signing/local_config.js +24 -0
- package/dest/ha-signing/types.d.ts +90 -0
- package/dest/ha-signing/types.d.ts.map +1 -0
- package/dest/ha-signing/types.js +39 -0
- package/dest/hash/hash.d.ts +20 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +45 -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/allowed_element.d.ts +26 -20
- package/dest/interfaces/allowed_element.d.ts.map +1 -1
- package/dest/interfaces/allowed_element.js +8 -8
- package/dest/interfaces/archiver.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +27 -18
- package/dest/interfaces/aztec-node-admin.d.ts +127 -45
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +15 -7
- package/dest/interfaces/aztec-node-debug.d.ts +21 -0
- package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
- package/dest/interfaces/aztec-node-debug.js +18 -0
- package/dest/interfaces/aztec-node.d.ts +70 -62
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +20 -19
- package/dest/interfaces/block-builder.d.ts +47 -14
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +16 -2
- package/dest/interfaces/client.d.ts +2 -1
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +1 -0
- package/dest/interfaces/configs.d.ts +78 -33
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +10 -3
- package/dest/interfaces/get_logs_response.d.ts +15 -8
- package/dest/interfaces/get_logs_response.d.ts.map +1 -1
- package/dest/interfaces/l2_logs_source.d.ts +5 -3
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +13 -22
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +4 -9
- 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 +20 -1
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +18 -4
- package/dest/interfaces/proving-job.d.ts +36 -36
- package/dest/interfaces/slasher.d.ts +9 -10
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +2 -2
- 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 +157 -60
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +11 -5
- package/dest/interfaces/world_state.d.ts +5 -4
- package/dest/interfaces/world_state.d.ts.map +1 -1
- 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 +13 -10
- 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 +16 -15
- 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_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/{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_circuit_public_inputs.d.ts +9 -9
- 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 +3 -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_tail_circuit_private_inputs.d.ts +3 -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 +4 -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 +11 -7
- 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_kernel_circuit_public_inputs.d.ts +3 -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 +3 -3
- package/dest/kernel/private_validation_requests.js +9 -9
- 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.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/kv-store/config.d.ts +17 -0
- package/dest/kv-store/config.d.ts.map +1 -0
- package/dest/kv-store/config.js +26 -0
- package/dest/kv-store/index.d.ts +2 -0
- package/dest/kv-store/index.d.ts.map +1 -0
- package/dest/kv-store/index.js +1 -0
- package/dest/l1-contracts/index.d.ts +2 -2
- package/dest/l1-contracts/index.d.ts.map +1 -1
- package/dest/l1-contracts/index.js +1 -1
- 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_directional_app_tagging_secret.d.ts +47 -0
- package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +35 -20
- package/dest/logs/extended_public_log.d.ts +13 -7
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/index.d.ts +4 -2
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +3 -1
- package/dest/logs/log_filter.d.ts +4 -1
- package/dest/logs/log_filter.d.ts.map +1 -1
- package/dest/logs/log_filter.js +2 -1
- package/dest/logs/log_id.d.ts +17 -14
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_id.js +19 -17
- package/dest/logs/message_context.d.ts +4 -7
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/message_context.js +23 -9
- package/dest/logs/pending_tagged_log.d.ts +2 -3
- package/dest/logs/pending_tagged_log.d.ts.map +1 -1
- package/dest/logs/pending_tagged_log.js +2 -2
- package/dest/logs/pre_tag.d.ts +16 -11
- package/dest/logs/pre_tag.d.ts.map +1 -1
- package/dest/logs/pre_tag.js +2 -2
- package/dest/logs/private_log.d.ts +2 -2
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/public_log.d.ts +4 -3
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +2 -1
- package/dest/logs/shared_secret_derivation.d.ts +11 -10
- package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
- package/dest/logs/shared_secret_derivation.js +15 -9
- package/dest/logs/siloed_tag.d.ts +12 -9
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +16 -6
- package/dest/logs/tag.d.ts +5 -6
- package/dest/logs/tag.d.ts.map +1 -1
- package/dest/logs/tag.js +5 -1
- package/dest/logs/tagging_index_range.d.ts +40 -0
- package/dest/logs/tagging_index_range.d.ts.map +1 -0
- package/dest/logs/tagging_index_range.js +8 -0
- package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
- package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
- package/dest/logs/tx_scoped_l2_log.js +7 -0
- package/dest/messaging/l1_to_l2_message.d.ts +3 -2
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.js +11 -13
- package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
- package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts +34 -8
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +72 -29
- package/dest/noir/index.d.ts +3 -3
- package/dest/noir/index.d.ts.map +1 -1
- 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 +1 -1
- package/dest/note/note_dao.d.ts.map +1 -1
- package/dest/note/note_dao.js +1 -4
- 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 +19 -14
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +7 -14
- package/dest/p2p/checkpoint_attestation.d.ts +5 -6
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_attestation.js +3 -8
- package/dest/p2p/checkpoint_proposal.d.ts +32 -20
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +32 -47
- package/dest/p2p/client_type.d.ts +2 -5
- package/dest/p2p/client_type.d.ts.map +1 -1
- package/dest/p2p/client_type.js +0 -7
- package/dest/p2p/consensus_payload.d.ts +12 -3
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +22 -15
- package/dest/p2p/constants.d.ts +3 -1
- package/dest/p2p/constants.d.ts.map +1 -1
- package/dest/p2p/constants.js +1 -0
- package/dest/p2p/gossipable.d.ts +4 -4
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/index.d.ts +1 -2
- package/dest/p2p/index.d.ts.map +1 -1
- package/dest/p2p/index.js +0 -1
- 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/peer_error.d.ts +3 -1
- package/dest/p2p/peer_error.d.ts.map +1 -1
- package/dest/p2p/peer_error.js +5 -0
- package/dest/p2p/topic_type.d.ts +3 -4
- package/dest/p2p/topic_type.d.ts.map +1 -1
- package/dest/p2p/topic_type.js +7 -24
- package/dest/proofs/chonk_proof.d.ts +46 -2
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +85 -10
- package/dest/rollup/checkpoint_header.d.ts +2 -2
- package/dest/rollup/checkpoint_header.js +2 -2
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.js +3 -3
- 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/index.d.ts +2 -3
- package/dest/slashing/index.d.ts.map +1 -1
- package/dest/slashing/index.js +1 -2
- package/dest/slashing/serialization.d.ts +2 -6
- package/dest/slashing/serialization.d.ts.map +1 -1
- package/dest/slashing/serialization.js +0 -60
- package/dest/slashing/types.d.ts +10 -92
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +13 -15
- package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
- package/dest/slashing/votes.d.ts.map +1 -0
- package/dest/slashing/{tally.js → votes.js} +35 -3
- package/dest/stats/stats.d.ts +1 -3
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +4 -4
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +33 -42
- package/dest/tests/jest.d.ts +4 -4
- package/dest/tests/jest.js +9 -9
- package/dest/tests/mocks.d.ts +21 -11
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +62 -51
- package/dest/timetable/index.d.ts +87 -0
- package/dest/timetable/index.d.ts.map +1 -0
- package/dest/timetable/index.js +229 -0
- package/dest/trees/public_data_leaf.d.ts +2 -1
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +7 -6
- package/dest/tx/block_header.d.ts +6 -3
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +7 -2
- package/dest/tx/capsule.d.ts +6 -2
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/capsule.js +9 -3
- package/dest/tx/fee_provider.d.ts +10 -0
- package/dest/tx/fee_provider.d.ts.map +1 -0
- package/dest/tx/fee_provider.js +1 -0
- package/dest/tx/global_variable_builder.d.ts +3 -4
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +4 -4
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/in_tx.d.ts +3 -3
- package/dest/tx/index.d.ts +2 -1
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +1 -0
- 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 +2 -2
- package/dest/tx/private_execution_result.d.ts +6 -6
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +6 -6
- package/dest/tx/profiling.d.ts +17 -5
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +15 -5
- package/dest/tx/protocol_contracts.d.ts +1 -1
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/protocol_contracts.js +2 -2
- 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/simulated_tx.d.ts +116 -5
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +7 -4
- package/dest/tx/tx.d.ts +8 -7
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +18 -6
- package/dest/tx/tx_receipt.d.ts +70 -19
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +64 -29
- 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 +10 -2
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +11 -1
- package/dest/tx/validator/tx_validator.d.ts +2 -2
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/update-checker/index.d.ts +3 -2
- package/dest/update-checker/index.d.ts.map +1 -1
- package/dest/update-checker/index.js +2 -1
- package/dest/update-checker/package_version.d.ts +3 -0
- package/dest/update-checker/package_version.d.ts.map +1 -0
- package/dest/update-checker/package_version.js +24 -0
- package/dest/update-checker/version_checker.d.ts +25 -0
- package/dest/update-checker/version_checker.d.ts.map +1 -0
- package/dest/update-checker/version_checker.js +50 -0
- package/dest/validators/errors.d.ts +6 -1
- package/dest/validators/errors.d.ts.map +1 -1
- package/dest/validators/errors.js +7 -0
- package/dest/validators/schemas.d.ts +30 -30
- 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/versioning/versioning.d.ts +4 -2
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/versioning/versioning.js +4 -1
- package/dest/world-state/genesis_data.d.ts +11 -0
- package/dest/world-state/genesis_data.d.ts.map +1 -0
- package/dest/world-state/genesis_data.js +4 -0
- package/dest/world-state/index.d.ts +2 -1
- package/dest/world-state/index.d.ts.map +1 -1
- package/dest/world-state/index.js +1 -0
- package/package.json +26 -13
- package/src/abi/abi.ts +25 -2
- package/src/abi/authorization_selector.ts +2 -8
- package/src/abi/buffer.ts +25 -4
- package/src/abi/decoder.ts +36 -82
- package/src/abi/encoder.ts +49 -6
- package/src/abi/event_metadata_definition.ts +2 -0
- package/src/abi/event_selector.ts +2 -8
- package/src/abi/function_call.ts +25 -3
- package/src/abi/function_selector.ts +4 -13
- package/src/abi/function_signature_decoder.ts +77 -0
- package/src/abi/index.ts +1 -0
- package/src/abi/note_selector.ts +3 -12
- package/src/abi/selector.ts +1 -1
- package/src/abi/utils.ts +25 -0
- package/src/auth_witness/auth_witness.ts +3 -3
- package/src/avm/revert_code.ts +26 -25
- package/src/aztec-address/index.ts +4 -10
- package/src/block/block_data.ts +25 -0
- package/src/block/block_hash.ts +32 -46
- package/src/block/block_parameter.ts +3 -3
- package/src/block/checkpointed_l2_block.ts +4 -4
- package/src/block/in_block.ts +8 -8
- package/src/block/index.ts +2 -1
- package/src/block/{l2_block_new.ts → l2_block.ts} +21 -13
- package/src/block/l2_block_info.ts +8 -6
- package/src/block/l2_block_source.ts +84 -36
- package/src/block/l2_block_stream/interfaces.ts +8 -4
- package/src/block/l2_block_stream/l2_block_stream.ts +26 -6
- package/src/block/l2_block_stream/l2_tips_store_base.ts +27 -15
- package/src/block/test/l2_tips_store_test_suite.ts +13 -6
- package/src/checkpoint/checkpoint.ts +60 -23
- package/src/checkpoint/checkpoint_data.ts +87 -0
- package/src/checkpoint/index.ts +2 -0
- package/src/checkpoint/published_checkpoint.ts +3 -1
- package/src/checkpoint/validate.ts +230 -0
- package/src/config/chain-config.ts +7 -1
- package/src/config/index.ts +2 -0
- package/src/config/node-rpc-config.ts +1 -1
- package/src/config/pipelining-config.ts +31 -0
- package/src/config/sequencer-config.ts +47 -0
- package/src/contract/contract_address.ts +7 -7
- package/src/contract/contract_class.ts +3 -3
- package/src/contract/contract_class_id.ts +7 -6
- package/src/contract/index.ts +0 -2
- package/src/contract/interfaces/contract_class.ts +2 -82
- package/src/contract/interfaces/node-info.ts +3 -0
- package/src/contract/private_function.ts +3 -4
- 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/epoch-helpers/index.ts +40 -1
- package/src/file-store/factory.ts +13 -4
- package/src/file-store/http.ts +29 -10
- package/src/file-store/index.ts +1 -0
- package/src/file-store/local.ts +15 -5
- package/src/file-store/s3.ts +12 -3
- package/src/gas/README.md +154 -0
- package/src/gas/fee_math.ts +120 -0
- package/src/gas/gas_fees.ts +15 -1
- package/src/gas/gas_settings.ts +65 -12
- package/src/gas/index.ts +1 -0
- package/src/ha-signing/config.ts +156 -0
- package/src/ha-signing/index.ts +29 -0
- package/src/ha-signing/local_config.ts +46 -0
- package/src/ha-signing/types.ts +126 -0
- package/src/hash/hash.ts +48 -10
- package/src/hash/map_slot.ts +3 -2
- package/src/interfaces/allowed_element.ts +29 -9
- package/src/interfaces/archiver.ts +27 -27
- package/src/interfaces/aztec-node-admin.ts +31 -9
- package/src/interfaces/aztec-node-debug.ts +40 -0
- package/src/interfaces/aztec-node.ts +107 -117
- package/src/interfaces/block-builder.ts +71 -14
- package/src/interfaces/client.ts +1 -0
- package/src/interfaces/configs.ts +37 -11
- package/src/interfaces/l2_logs_source.ts +4 -1
- package/src/interfaces/merkle_tree_operations.ts +12 -21
- package/src/interfaces/p2p.ts +3 -14
- package/src/interfaces/prover-broker.ts +22 -0
- package/src/interfaces/prover-client.ts +32 -5
- package/src/interfaces/slasher.ts +4 -6
- package/src/interfaces/tx_provider.ts +2 -2
- package/src/interfaces/validator.ts +71 -38
- package/src/interfaces/world_state.ts +4 -3
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +16 -28
- 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 +14 -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/kv-store/config.ts +36 -0
- package/src/kv-store/index.ts +1 -0
- package/src/l1-contracts/index.ts +1 -1
- package/src/logs/debug_log_store.ts +54 -0
- package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +41 -22
- package/src/logs/index.ts +3 -1
- package/src/logs/log_filter.ts +5 -0
- package/src/logs/log_id.ts +21 -18
- package/src/logs/message_context.ts +17 -7
- package/src/logs/pending_tagged_log.ts +1 -3
- package/src/logs/pre_tag.ts +5 -5
- package/src/logs/public_log.ts +4 -2
- package/src/logs/shared_secret_derivation.ts +21 -10
- package/src/logs/siloed_tag.ts +23 -13
- package/src/logs/tag.ts +9 -9
- package/src/logs/tagging_index_range.ts +24 -0
- package/src/logs/tx_scoped_l2_log.ts +16 -0
- package/src/messaging/l1_to_l2_message.ts +12 -9
- package/src/messaging/l1_to_l2_message_source.ts +3 -1
- package/src/messaging/l2_to_l1_membership.ts +101 -36
- package/src/noir/index.ts +2 -2
- package/src/note/index.ts +0 -1
- package/src/note/note_dao.ts +1 -4
- package/src/p2p/attestation_utils.ts +56 -0
- package/src/p2p/block_proposal.ts +26 -17
- package/src/p2p/checkpoint_attestation.ts +11 -10
- package/src/p2p/checkpoint_proposal.ts +72 -62
- package/src/p2p/client_type.ts +0 -6
- package/src/p2p/consensus_payload.ts +25 -12
- package/src/p2p/constants.ts +3 -0
- package/src/p2p/gossipable.ts +4 -4
- package/src/p2p/index.ts +0 -1
- package/src/p2p/message_validator.ts +14 -2
- package/src/p2p/peer_error.ts +7 -0
- package/src/p2p/topic_type.ts +8 -15
- package/src/proofs/chonk_proof.ts +91 -5
- package/src/rollup/checkpoint_header.ts +2 -2
- package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
- package/src/rollup/root_rollup_public_inputs.ts +7 -7
- package/src/slashing/helpers.ts +8 -0
- package/src/slashing/index.ts +1 -2
- package/src/slashing/serialization.ts +1 -81
- package/src/slashing/types.ts +17 -35
- package/src/slashing/{tally.ts → votes.ts} +41 -2
- package/src/stats/stats.ts +0 -2
- package/src/tests/factories.ts +32 -52
- package/src/tests/jest.ts +9 -9
- package/src/tests/mocks.ts +85 -46
- package/src/timetable/index.ts +346 -0
- package/src/trees/public_data_leaf.ts +11 -5
- package/src/tx/block_header.ts +14 -5
- package/src/tx/capsule.ts +10 -2
- package/src/tx/fee_provider.ts +10 -0
- package/src/tx/global_variable_builder.ts +2 -3
- package/src/tx/global_variables.ts +3 -3
- package/src/tx/index.ts +1 -0
- package/src/tx/indexed_tx_effect.ts +2 -2
- package/src/tx/private_execution_result.ts +5 -5
- package/src/tx/profiling.ts +14 -5
- package/src/tx/protocol_contracts.ts +2 -2
- package/src/tx/public_simulation_output.ts +4 -0
- package/src/tx/simulated_tx.ts +14 -3
- package/src/tx/tx.ts +22 -13
- package/src/tx/tx_receipt.ts +98 -29
- package/src/tx/tx_request.ts +2 -2
- package/src/tx/validator/empty_validator.ts +1 -1
- package/src/tx/validator/error_texts.ts +13 -1
- package/src/tx/validator/tx_validator.ts +1 -1
- package/src/update-checker/index.ts +2 -1
- package/src/update-checker/package_version.ts +30 -0
- package/src/update-checker/version_checker.ts +65 -0
- package/src/validators/errors.ts +9 -0
- package/src/validators/schemas.ts +8 -1
- package/src/validators/types.ts +5 -4
- package/src/versioning/versioning.ts +4 -1
- package/src/world-state/genesis_data.ts +15 -0
- package/src/world-state/index.ts +1 -0
- package/dest/block/l2_block_new.d.ts.map +0 -1
- package/dest/contract/private_function_membership_proof.d.ts +0 -32
- package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
- package/dest/contract/private_function_membership_proof.js +0 -124
- package/dest/contract/utility_function_membership_proof.d.ts +0 -27
- package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
- package/dest/contract/utility_function_membership_proof.js +0 -87
- 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 -30
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
- package/dest/l1-contracts/slash_factory.d.ts +0 -45
- package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
- package/dest/l1-contracts/slash_factory.js +0 -157
- package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
- package/dest/logs/directional_app_tagging_secret.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/dest/slashing/empire.d.ts +0 -31
- package/dest/slashing/empire.d.ts.map +0 -1
- package/dest/slashing/empire.js +0 -85
- package/dest/slashing/tally.d.ts.map +0 -1
- package/dest/update-checker/update-checker.d.ts +0 -49
- package/dest/update-checker/update-checker.d.ts.map +0 -1
- package/dest/update-checker/update-checker.js +0 -130
- package/src/contract/private_function_membership_proof.ts +0 -167
- package/src/contract/utility_function_membership_proof.ts +0 -118
- package/src/database-version/index.ts +0 -1
- package/src/l1-contracts/slash_factory.ts +0 -179
- package/src/note/notes_filter.ts +0 -38
- package/src/slashing/empire.ts +0 -102
- package/src/update-checker/update-checker.ts +0 -166
|
@@ -1,16 +1,12 @@
|
|
|
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,
|
|
11
5
|
BlockNumberPositiveSchema,
|
|
12
6
|
BlockNumberSchema,
|
|
7
|
+
CheckpointNumber,
|
|
13
8
|
CheckpointNumberPositiveSchema,
|
|
9
|
+
CheckpointNumberSchema,
|
|
14
10
|
EpochNumber,
|
|
15
11
|
EpochNumberSchema,
|
|
16
12
|
type SlotNumber,
|
|
@@ -23,11 +19,13 @@ import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
|
|
|
23
19
|
import { z } from 'zod';
|
|
24
20
|
|
|
25
21
|
import type { AztecAddress } from '../aztec-address/index.js';
|
|
22
|
+
import { BlockHash } from '../block/block_hash.js';
|
|
26
23
|
import { type BlockParameter, BlockParameterSchema } from '../block/block_parameter.js';
|
|
27
24
|
import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
|
|
28
25
|
import { type DataInBlock, dataInBlockSchemaFor } from '../block/in_block.js';
|
|
29
|
-
import {
|
|
26
|
+
import { L2Block } from '../block/l2_block.js';
|
|
30
27
|
import { type L2BlockSource, type L2Tips, L2TipsSchema } from '../block/l2_block_source.js';
|
|
28
|
+
import { CheckpointDataSchema } from '../checkpoint/checkpoint_data.js';
|
|
31
29
|
import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
|
|
32
30
|
import {
|
|
33
31
|
type ContractClassPublic,
|
|
@@ -39,6 +37,7 @@ import {
|
|
|
39
37
|
type ProtocolContractAddresses,
|
|
40
38
|
ProtocolContractAddressesSchema,
|
|
41
39
|
} from '../contract/index.js';
|
|
40
|
+
import { ManaUsageEstimate } from '../gas/fee_math.js';
|
|
42
41
|
import { GasFees } from '../gas/gas_fees.js';
|
|
43
42
|
import { SiloedTag, Tag, TxScopedL2Log } from '../logs/index.js';
|
|
44
43
|
import { type LogFilter, LogFilterSchema } from '../logs/log_filter.js';
|
|
@@ -78,12 +77,11 @@ export interface AztecNode
|
|
|
78
77
|
extends Pick<
|
|
79
78
|
L2BlockSource,
|
|
80
79
|
| 'getBlocks'
|
|
81
|
-
| '
|
|
82
|
-
| 'getPublishedBlocks'
|
|
83
|
-
| 'getPublishedCheckpoints'
|
|
80
|
+
| 'getCheckpoints'
|
|
84
81
|
| 'getBlockHeader'
|
|
85
82
|
| 'getL2Tips'
|
|
86
83
|
| 'getCheckpointedBlocks'
|
|
84
|
+
| 'getCheckpointsDataForEpoch'
|
|
87
85
|
> {
|
|
88
86
|
/**
|
|
89
87
|
* Returns the tips of the L2 chain.
|
|
@@ -98,124 +96,100 @@ export interface AztecNode
|
|
|
98
96
|
/**
|
|
99
97
|
* Find the indexes of the given leaves in the given tree along with a block metadata pointing to the block in which
|
|
100
98
|
* the leaves were inserted.
|
|
101
|
-
* @param
|
|
99
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
102
100
|
* @param treeId - The tree to search in.
|
|
103
101
|
* @param leafValues - The values to search for.
|
|
104
102
|
* @returns The indices of leaves and the block metadata of a block in which the leaves were inserted.
|
|
105
103
|
*/
|
|
106
104
|
findLeavesIndexes(
|
|
107
|
-
|
|
105
|
+
referenceBlock: BlockParameter,
|
|
108
106
|
treeId: MerkleTreeId,
|
|
109
107
|
leafValues: Fr[],
|
|
110
108
|
): Promise<(DataInBlock<bigint> | undefined)[]>;
|
|
111
109
|
|
|
112
|
-
/**
|
|
113
|
-
* Returns a sibling path for the given index in the nullifier tree.
|
|
114
|
-
* @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
115
|
-
* @param leafIndex - The index of the leaf for which the sibling path is required.
|
|
116
|
-
* @returns The sibling path for the leaf index.
|
|
117
|
-
*/
|
|
118
|
-
getNullifierSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof NULLIFIER_TREE_HEIGHT>>;
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Returns a sibling path for the given index in the note hash tree.
|
|
122
|
-
* @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
123
|
-
* @param leafIndex - The index of the leaf for which the sibling path is required.
|
|
124
|
-
* @returns The sibling path for the leaf index.
|
|
125
|
-
*/
|
|
126
|
-
getNoteHashSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof NOTE_HASH_TREE_HEIGHT>>;
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* Returns a sibling path for a leaf in the committed historic blocks tree.
|
|
130
|
-
* @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
131
|
-
* @param leafIndex - Index of the leaf in the tree.
|
|
132
|
-
* @returns The sibling path.
|
|
133
|
-
*/
|
|
134
|
-
getArchiveSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof ARCHIVE_HEIGHT>>;
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* Returns a sibling path for a leaf in the committed public data tree.
|
|
138
|
-
* @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
139
|
-
* @param leafIndex - Index of the leaf in the tree.
|
|
140
|
-
* @returns The sibling path.
|
|
141
|
-
*/
|
|
142
|
-
getPublicDataSiblingPath(
|
|
143
|
-
block: BlockParameter,
|
|
144
|
-
leafIndex: bigint,
|
|
145
|
-
): Promise<SiblingPath<typeof PUBLIC_DATA_TREE_HEIGHT>>;
|
|
146
|
-
|
|
147
110
|
/**
|
|
148
111
|
* Returns a nullifier membership witness for a given nullifier at a given block.
|
|
149
|
-
* @param
|
|
112
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
150
113
|
* @param nullifier - Nullifier we try to find witness for.
|
|
151
114
|
* @returns The nullifier membership witness (if found).
|
|
152
115
|
*/
|
|
153
|
-
getNullifierMembershipWitness(
|
|
116
|
+
getNullifierMembershipWitness(
|
|
117
|
+
referenceBlock: BlockParameter,
|
|
118
|
+
nullifier: Fr,
|
|
119
|
+
): Promise<NullifierMembershipWitness | undefined>;
|
|
154
120
|
|
|
155
121
|
/**
|
|
156
122
|
* Returns a low nullifier membership witness for a given nullifier at a given block.
|
|
157
|
-
* @param
|
|
123
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
158
124
|
* @param nullifier - Nullifier we try to find the low nullifier witness for.
|
|
159
125
|
* @returns The low nullifier membership witness (if found).
|
|
126
|
+
* @throws If the nullifier already exists in the tree, since non-inclusion cannot be proven.
|
|
160
127
|
* @remarks Low nullifier witness can be used to perform a nullifier non-inclusion proof by leveraging the "linked
|
|
161
128
|
* list structure" of leaves and proving that a lower nullifier is pointing to a bigger next value than the nullifier
|
|
162
129
|
* we are trying to prove non-inclusion for.
|
|
163
130
|
*/
|
|
164
131
|
getLowNullifierMembershipWitness(
|
|
165
|
-
|
|
132
|
+
referenceBlock: BlockParameter,
|
|
166
133
|
nullifier: Fr,
|
|
167
134
|
): Promise<NullifierMembershipWitness | undefined>;
|
|
168
135
|
|
|
169
136
|
/**
|
|
170
137
|
* Returns a public data tree witness for a given leaf slot at a given block.
|
|
171
|
-
* @param
|
|
138
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
172
139
|
* @param leafSlot - The leaf slot we try to find the witness for.
|
|
173
140
|
* @returns The public data witness (if found).
|
|
174
141
|
* @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
|
|
175
142
|
* "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
|
|
176
143
|
* is contained in the leaf preimage.
|
|
177
144
|
*/
|
|
178
|
-
getPublicDataWitness(
|
|
145
|
+
getPublicDataWitness(referenceBlock: BlockParameter, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
179
146
|
|
|
180
147
|
/**
|
|
181
|
-
* Returns a membership witness for a given
|
|
182
|
-
*
|
|
183
|
-
*
|
|
148
|
+
* Returns a membership witness for a given block hash in the archive tree.
|
|
149
|
+
*
|
|
150
|
+
* Block hashes are the leaves of the archive tree. Each time a new block is added to the chain,
|
|
151
|
+
* its block hash is appended as a new leaf to the archive tree. This method finds the membership
|
|
152
|
+
* witness (leaf index and sibling path) for a given block hash, which can be used to prove that
|
|
153
|
+
* a specific block exists in the chain's history.
|
|
154
|
+
*
|
|
155
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data
|
|
156
|
+
* (which contains the root of the archive tree in which we are searching for the block hash).
|
|
157
|
+
* @param blockHash - The block hash to find in the archive tree.
|
|
184
158
|
*/
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
159
|
+
getBlockHashMembershipWitness(
|
|
160
|
+
referenceBlock: BlockParameter,
|
|
161
|
+
blockHash: BlockHash,
|
|
188
162
|
): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
|
|
189
163
|
|
|
190
164
|
/**
|
|
191
165
|
* Returns a membership witness for a given note hash at a given block.
|
|
192
|
-
* @param
|
|
166
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
193
167
|
* @param noteHash - The note hash we try to find the witness for.
|
|
194
168
|
*/
|
|
195
169
|
getNoteHashMembershipWitness(
|
|
196
|
-
|
|
170
|
+
referenceBlock: BlockParameter,
|
|
197
171
|
noteHash: Fr,
|
|
198
172
|
): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
|
|
199
173
|
|
|
200
174
|
/**
|
|
201
175
|
* Returns the index and a sibling path for a leaf in the committed l1 to l2 data tree.
|
|
202
|
-
* @param
|
|
176
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
203
177
|
* @param l1ToL2Message - The l1ToL2Message to get the index / sibling path for.
|
|
204
178
|
* @returns A tuple of the index and the sibling path of the L1ToL2Message (undefined if not found).
|
|
205
179
|
*/
|
|
206
180
|
getL1ToL2MessageMembershipWitness(
|
|
207
|
-
|
|
181
|
+
referenceBlock: BlockParameter,
|
|
208
182
|
l1ToL2Message: Fr,
|
|
209
183
|
): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>] | undefined>;
|
|
210
184
|
|
|
211
|
-
/** Returns the L2
|
|
212
|
-
|
|
185
|
+
/** Returns the L2 checkpoint number in which this L1 to L2 message becomes available, or undefined if not found. */
|
|
186
|
+
getL1ToL2MessageCheckpoint(l1ToL2Message: Fr): Promise<CheckpointNumber | undefined>;
|
|
213
187
|
|
|
214
188
|
/**
|
|
215
189
|
* Returns whether an L1 to L2 message is synced by archiver.
|
|
216
190
|
* @param l1ToL2Message - The L1 to L2 message to check.
|
|
217
191
|
* @returns Whether the message is synced.
|
|
218
|
-
* @deprecated Use `
|
|
192
|
+
* @deprecated Use `getL1ToL2MessageCheckpoint` instead. This method may return true even if the message is not ready to use.
|
|
219
193
|
*/
|
|
220
194
|
isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean>;
|
|
221
195
|
|
|
@@ -229,24 +203,24 @@ export interface AztecNode
|
|
|
229
203
|
|
|
230
204
|
/**
|
|
231
205
|
* Get a block specified by its block number or 'latest'.
|
|
232
|
-
* @param
|
|
206
|
+
* @param blockParameter - The block parameter (block number, block hash, or 'latest').
|
|
233
207
|
* @returns The requested block.
|
|
234
208
|
*/
|
|
235
|
-
getBlock(
|
|
209
|
+
getBlock(blockParameter: BlockParameter): Promise<L2Block | undefined>;
|
|
236
210
|
|
|
237
211
|
/**
|
|
238
212
|
* Get a block specified by its hash.
|
|
239
213
|
* @param blockHash - The block hash being requested.
|
|
240
214
|
* @returns The requested block.
|
|
241
215
|
*/
|
|
242
|
-
getBlockByHash(blockHash:
|
|
216
|
+
getBlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
|
|
243
217
|
|
|
244
218
|
/**
|
|
245
219
|
* Get a block specified by its archive root.
|
|
246
220
|
* @param archive - The archive root being requested.
|
|
247
221
|
* @returns The requested block.
|
|
248
222
|
*/
|
|
249
|
-
getBlockByArchive(archive: Fr): Promise<
|
|
223
|
+
getBlockByArchive(archive: Fr): Promise<L2Block | undefined>;
|
|
250
224
|
|
|
251
225
|
/**
|
|
252
226
|
* Method to fetch the latest block number synchronized by the node.
|
|
@@ -260,6 +234,18 @@ export interface AztecNode
|
|
|
260
234
|
*/
|
|
261
235
|
getProvenBlockNumber(): Promise<BlockNumber>;
|
|
262
236
|
|
|
237
|
+
/**
|
|
238
|
+
* Fetches the latest checkpointed block number.
|
|
239
|
+
* @returns The block number.
|
|
240
|
+
*/
|
|
241
|
+
getCheckpointedBlockNumber(): Promise<BlockNumber>;
|
|
242
|
+
|
|
243
|
+
/**
|
|
244
|
+
* Method to fetch the latest checkpoint number synchronized by the node.
|
|
245
|
+
* @returns The checkpoint number.
|
|
246
|
+
*/
|
|
247
|
+
getCheckpointNumber(): Promise<CheckpointNumber>;
|
|
248
|
+
|
|
263
249
|
/**
|
|
264
250
|
* Method to determine if the node is ready to accept transactions.
|
|
265
251
|
* @returns - Flag indicating the readiness for tx submission.
|
|
@@ -279,7 +265,7 @@ export interface AztecNode
|
|
|
279
265
|
* @param limit - The maximum number of blocks to return.
|
|
280
266
|
* @returns The blocks requested.
|
|
281
267
|
*/
|
|
282
|
-
getBlocks(from: BlockNumber, limit: number): Promise<
|
|
268
|
+
getBlocks(from: BlockNumber, limit: number): Promise<L2Block[]>;
|
|
283
269
|
|
|
284
270
|
/**
|
|
285
271
|
* Method to fetch the current min fees.
|
|
@@ -287,6 +273,15 @@ export interface AztecNode
|
|
|
287
273
|
*/
|
|
288
274
|
getCurrentMinFees(): Promise<GasFees>;
|
|
289
275
|
|
|
276
|
+
/**
|
|
277
|
+
* Returns predicted min fees for the current slot and next N slots.
|
|
278
|
+
* Each entry accounts for the L1 gas oracle transition and congestion growth based on the
|
|
279
|
+
* given mana usage estimate. Defaults to target usage (steady state).
|
|
280
|
+
* @param manaUsage - Expected mana usage per checkpoint (none, target, or limit).
|
|
281
|
+
* @returns An array of GasFees, one per slot in the prediction window.
|
|
282
|
+
*/
|
|
283
|
+
getPredictedMinFees(manaUsage?: ManaUsageEstimate): Promise<GasFees[]>;
|
|
284
|
+
|
|
290
285
|
/**
|
|
291
286
|
* Method to fetch the current max priority fee of txs in the mempool.
|
|
292
287
|
* @returns The current max priority fees.
|
|
@@ -347,10 +342,14 @@ export interface AztecNode
|
|
|
347
342
|
* array implies no logs match that tag.
|
|
348
343
|
* @param tags - The tags to search for.
|
|
349
344
|
* @param page - The page number (0-indexed) for pagination.
|
|
345
|
+
* @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
|
|
346
|
+
* This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
|
|
347
|
+
* If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
|
|
348
|
+
* undefined behavior in the client's code.
|
|
350
349
|
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
351
350
|
* for a tag, the caller should fetch the next page to check for more logs.
|
|
352
351
|
*/
|
|
353
|
-
getPrivateLogsByTags(tags: SiloedTag[], page?: number): Promise<TxScopedL2Log[][]>;
|
|
352
|
+
getPrivateLogsByTags(tags: SiloedTag[], page?: number, referenceBlock?: BlockHash): Promise<TxScopedL2Log[][]>;
|
|
354
353
|
|
|
355
354
|
/**
|
|
356
355
|
* Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
|
|
@@ -358,6 +357,10 @@ export interface AztecNode
|
|
|
358
357
|
* @param contractAddress - The contract address to search logs for.
|
|
359
358
|
* @param tags - The tags to search for.
|
|
360
359
|
* @param page - The page number (0-indexed) for pagination.
|
|
360
|
+
* @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
|
|
361
|
+
* This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
|
|
362
|
+
* If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
|
|
363
|
+
* undefined behavior in the client's code.
|
|
361
364
|
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
362
365
|
* for a tag, the caller should fetch the next page to check for more logs.
|
|
363
366
|
*/
|
|
@@ -365,6 +368,7 @@ export interface AztecNode
|
|
|
365
368
|
contractAddress: AztecAddress,
|
|
366
369
|
tags: Tag[],
|
|
367
370
|
page?: number,
|
|
371
|
+
referenceBlock?: BlockHash,
|
|
368
372
|
): Promise<TxScopedL2Log[][]>;
|
|
369
373
|
|
|
370
374
|
/**
|
|
@@ -423,12 +427,12 @@ export interface AztecNode
|
|
|
423
427
|
* @remarks The storage slot here refers to the slot as it is defined in Noir not the index in the merkle tree.
|
|
424
428
|
* Aztec's version of `eth_getStorageAt`.
|
|
425
429
|
*
|
|
426
|
-
* @param
|
|
430
|
+
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
427
431
|
* @param contract - Address of the contract to query.
|
|
428
432
|
* @param slot - Slot to query.
|
|
429
433
|
* @returns Storage value at the given contract slot.
|
|
430
434
|
*/
|
|
431
|
-
getPublicStorageAt(
|
|
435
|
+
getPublicStorageAt(referenceBlock: BlockParameter, contract: AztecAddress, slot: Fr): Promise<Fr>;
|
|
432
436
|
|
|
433
437
|
/**
|
|
434
438
|
* Returns the block header for a given block number, block hash, or 'latest'.
|
|
@@ -464,7 +468,7 @@ export interface AztecNode
|
|
|
464
468
|
/**
|
|
465
469
|
* Returns true if the transaction is valid for inclusion at the current state. Valid transactions can be
|
|
466
470
|
* made invalid by *other* transactions if e.g. they emit the same nullifiers, or come become invalid
|
|
467
|
-
* due to e.g. the
|
|
471
|
+
* due to e.g. the expiration_timestamp property.
|
|
468
472
|
* @param tx - The transaction to validate for correctness.
|
|
469
473
|
* @param isSimulation - True if the transaction is a simulated one without generated proofs. (Optional)
|
|
470
474
|
* @param skipFeeEnforcement - True if the validation of the fee should be skipped. Useful when the simulation is for estimating fee (Optional)
|
|
@@ -508,26 +512,6 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
508
512
|
.args(BlockParameterSchema, z.nativeEnum(MerkleTreeId), z.array(schemas.Fr).max(MAX_RPC_LEN))
|
|
509
513
|
.returns(z.array(optional(dataInBlockSchemaFor(schemas.BigInt)))),
|
|
510
514
|
|
|
511
|
-
getNullifierSiblingPath: z
|
|
512
|
-
.function()
|
|
513
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
514
|
-
.returns(SiblingPath.schemaFor(NULLIFIER_TREE_HEIGHT)),
|
|
515
|
-
|
|
516
|
-
getNoteHashSiblingPath: z
|
|
517
|
-
.function()
|
|
518
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
519
|
-
.returns(SiblingPath.schemaFor(NOTE_HASH_TREE_HEIGHT)),
|
|
520
|
-
|
|
521
|
-
getArchiveSiblingPath: z
|
|
522
|
-
.function()
|
|
523
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
524
|
-
.returns(SiblingPath.schemaFor(ARCHIVE_HEIGHT)),
|
|
525
|
-
|
|
526
|
-
getPublicDataSiblingPath: z
|
|
527
|
-
.function()
|
|
528
|
-
.args(BlockParameterSchema, schemas.BigInt)
|
|
529
|
-
.returns(SiblingPath.schemaFor(PUBLIC_DATA_TREE_HEIGHT)),
|
|
530
|
-
|
|
531
515
|
getNullifierMembershipWitness: z
|
|
532
516
|
.function()
|
|
533
517
|
.args(BlockParameterSchema, schemas.Fr)
|
|
@@ -543,9 +527,9 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
543
527
|
.args(BlockParameterSchema, schemas.Fr)
|
|
544
528
|
.returns(PublicDataWitness.schema.optional()),
|
|
545
529
|
|
|
546
|
-
|
|
530
|
+
getBlockHashMembershipWitness: z
|
|
547
531
|
.function()
|
|
548
|
-
.args(BlockParameterSchema,
|
|
532
|
+
.args(BlockParameterSchema, BlockHash.schema)
|
|
549
533
|
.returns(MembershipWitness.schemaFor(ARCHIVE_HEIGHT).optional()),
|
|
550
534
|
|
|
551
535
|
getNoteHashMembershipWitness: z
|
|
@@ -558,7 +542,7 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
558
542
|
.args(BlockParameterSchema, schemas.Fr)
|
|
559
543
|
.returns(z.tuple([schemas.BigInt, SiblingPath.schemaFor(L1_TO_L2_MSG_TREE_HEIGHT)]).optional()),
|
|
560
544
|
|
|
561
|
-
|
|
545
|
+
getL1ToL2MessageCheckpoint: z.function().args(schemas.Fr).returns(CheckpointNumberSchema.optional()),
|
|
562
546
|
|
|
563
547
|
isL1ToL2MessageSynced: z.function().args(schemas.Fr).returns(z.boolean()),
|
|
564
548
|
|
|
@@ -567,16 +551,20 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
567
551
|
.args(EpochNumberSchema)
|
|
568
552
|
.returns(z.array(z.array(z.array(z.array(schemas.Fr))))),
|
|
569
553
|
|
|
570
|
-
getBlock: z.function().args(BlockParameterSchema).returns(
|
|
554
|
+
getBlock: z.function().args(BlockParameterSchema).returns(L2Block.schema.optional()),
|
|
571
555
|
|
|
572
|
-
getBlockByHash: z.function().args(
|
|
556
|
+
getBlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
|
|
573
557
|
|
|
574
|
-
getBlockByArchive: z.function().args(schemas.Fr).returns(
|
|
558
|
+
getBlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
|
|
575
559
|
|
|
576
560
|
getBlockNumber: z.function().returns(BlockNumberSchema),
|
|
577
561
|
|
|
562
|
+
getCheckpointNumber: z.function().returns(CheckpointNumberSchema),
|
|
563
|
+
|
|
578
564
|
getProvenBlockNumber: z.function().returns(BlockNumberSchema),
|
|
579
565
|
|
|
566
|
+
getCheckpointedBlockNumber: z.function().returns(BlockNumberSchema),
|
|
567
|
+
|
|
580
568
|
isReady: z.function().returns(z.boolean()),
|
|
581
569
|
|
|
582
570
|
getNodeInfo: z.function().returns(NodeInfoSchema),
|
|
@@ -584,30 +572,27 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
584
572
|
getBlocks: z
|
|
585
573
|
.function()
|
|
586
574
|
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
587
|
-
.returns(z.array(
|
|
575
|
+
.returns(z.array(L2Block.schema)),
|
|
588
576
|
|
|
589
|
-
|
|
590
|
-
.function()
|
|
591
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
592
|
-
.returns(z.array(CheckpointedL2Block.schema)),
|
|
593
|
-
|
|
594
|
-
getPublishedCheckpoints: z
|
|
577
|
+
getCheckpoints: z
|
|
595
578
|
.function()
|
|
596
579
|
.args(CheckpointNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_CHECKPOINTS_LEN))
|
|
597
580
|
.returns(z.array(PublishedCheckpoint.schema)),
|
|
598
581
|
|
|
599
|
-
getL2BlocksNew: z
|
|
600
|
-
.function()
|
|
601
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
602
|
-
.returns(z.array(L2BlockNew.schema)),
|
|
603
|
-
|
|
604
582
|
getCheckpointedBlocks: z
|
|
605
583
|
.function()
|
|
606
|
-
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN)
|
|
584
|
+
.args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
|
|
607
585
|
.returns(z.array(CheckpointedL2Block.schema)),
|
|
608
586
|
|
|
587
|
+
getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
|
|
588
|
+
|
|
609
589
|
getCurrentMinFees: z.function().returns(GasFees.schema),
|
|
610
590
|
|
|
591
|
+
getPredictedMinFees: z
|
|
592
|
+
.function()
|
|
593
|
+
.args(optional(z.nativeEnum(ManaUsageEstimate)))
|
|
594
|
+
.returns(z.array(GasFees.schema)),
|
|
595
|
+
|
|
611
596
|
getMaxPriorityFees: z.function().returns(GasFees.schema),
|
|
612
597
|
|
|
613
598
|
getNodeVersion: z.function().returns(z.string()),
|
|
@@ -631,12 +616,17 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
|
|
|
631
616
|
|
|
632
617
|
getPrivateLogsByTags: z
|
|
633
618
|
.function()
|
|
634
|
-
.args(z.array(SiloedTag.schema).max(MAX_RPC_LEN), optional(z.number().gte(0)))
|
|
619
|
+
.args(z.array(SiloedTag.schema).max(MAX_RPC_LEN), optional(z.number().gte(0)), optional(BlockHash.schema))
|
|
635
620
|
.returns(z.array(z.array(TxScopedL2Log.schema))),
|
|
636
621
|
|
|
637
622
|
getPublicLogsByTagsFromContract: z
|
|
638
623
|
.function()
|
|
639
|
-
.args(
|
|
624
|
+
.args(
|
|
625
|
+
schemas.AztecAddress,
|
|
626
|
+
z.array(Tag.schema).max(MAX_RPC_LEN),
|
|
627
|
+
optional(z.number().gte(0)),
|
|
628
|
+
optional(BlockHash.schema),
|
|
629
|
+
)
|
|
640
630
|
.returns(z.array(z.array(TxScopedL2Log.schema))),
|
|
641
631
|
|
|
642
632
|
sendTx: z.function().args(Tx.schema).returns(z.void()),
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
+
import type { LoggerBindings } from '@aztec/foundation/log';
|
|
3
4
|
|
|
4
|
-
import type {
|
|
5
|
+
import type { L2Block } from '../block/l2_block.js';
|
|
5
6
|
import type { ChainConfig, SequencerConfig } from '../config/chain-config.js';
|
|
6
7
|
import type { L1RollupConstants } from '../epoch-helpers/index.js';
|
|
7
8
|
import type { Gas } from '../gas/gas.js';
|
|
@@ -31,54 +32,108 @@ export interface IBlockFactory extends ProcessedTxHandler {
|
|
|
31
32
|
/**
|
|
32
33
|
* Assembles the block and updates the archive tree.
|
|
33
34
|
*/
|
|
34
|
-
setBlockCompleted(expectedBlockHeader?: BlockHeader): Promise<
|
|
35
|
+
setBlockCompleted(expectedBlockHeader?: BlockHeader): Promise<L2Block>;
|
|
35
36
|
}
|
|
36
37
|
|
|
37
|
-
|
|
38
|
+
/** Limits passed to the public processor for tx processing within a block. */
|
|
39
|
+
export type PublicProcessorLimits = {
|
|
40
|
+
/** Maximum number of txs to process. */
|
|
38
41
|
maxTransactions?: number;
|
|
39
|
-
|
|
42
|
+
/** L2 and DA gas limits. */
|
|
40
43
|
maxBlockGas?: Gas;
|
|
44
|
+
/** Maximum number of blob fields allowed. */
|
|
41
45
|
maxBlobFields?: number;
|
|
46
|
+
/** Deadline for processing the txs. Processor will stop as soon as it hits this time. */
|
|
42
47
|
deadline?: Date;
|
|
43
|
-
|
|
48
|
+
/** Whether this processor is building a proposal (as opposed to re-executing one). Skipping txs due to gas or blob limits is only done during proposal building. */
|
|
49
|
+
isBuildingProposal?: boolean;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
/** Base fields shared by both proposer and validator block builder options. */
|
|
53
|
+
type BlockBuilderOptionsBase = PublicProcessorLimits & {
|
|
54
|
+
/** Minimum number of successfully processed txs required. Block is rejected if fewer succeed. */
|
|
55
|
+
minValidTxs: number;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/** Proposer mode: redistribution params are required. */
|
|
59
|
+
type ProposerBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
60
|
+
isBuildingProposal: true;
|
|
61
|
+
/** Maximum number of blocks per checkpoint, derived from the timetable. */
|
|
62
|
+
maxBlocksPerCheckpoint: number;
|
|
63
|
+
/** Per-block gas budget multiplier. Budget = (remaining / remainingBlocks) * multiplier. */
|
|
64
|
+
perBlockAllocationMultiplier: number;
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/** Validator mode: no redistribution params needed. */
|
|
68
|
+
type ValidatorBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
69
|
+
isBuildingProposal: false;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
/** Options for building a block within a checkpoint. When proposing, redistribution params are required. */
|
|
73
|
+
export type BlockBuilderOptions = ProposerBlockBuilderOptions | ValidatorBlockBuilderOptions;
|
|
44
74
|
|
|
45
75
|
export interface PublicProcessorValidator {
|
|
46
76
|
preprocessValidator?: TxValidator<Tx>;
|
|
47
77
|
nullifierCache?: { addNullifiers: (nullifiers: Buffer[]) => void };
|
|
48
78
|
}
|
|
49
79
|
|
|
50
|
-
export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
|
|
80
|
+
export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'rollupManaLimit'> &
|
|
51
81
|
Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
|
|
52
|
-
Pick<
|
|
82
|
+
Pick<
|
|
83
|
+
SequencerConfig,
|
|
84
|
+
| 'txPublicSetupAllowListExtend'
|
|
85
|
+
| 'fakeProcessingDelayPerTxMs'
|
|
86
|
+
| 'fakeThrowAfterProcessingTxCount'
|
|
87
|
+
| 'maxTxsPerBlock'
|
|
88
|
+
| 'maxTxsPerCheckpoint'
|
|
89
|
+
| 'maxL2BlockGas'
|
|
90
|
+
| 'maxDABlockGas'
|
|
91
|
+
>;
|
|
53
92
|
|
|
54
93
|
export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[] = [
|
|
55
94
|
'l1GenesisTime',
|
|
56
95
|
'slotDuration',
|
|
57
96
|
'l1ChainId',
|
|
58
97
|
'rollupVersion',
|
|
59
|
-
'
|
|
98
|
+
'txPublicSetupAllowListExtend',
|
|
60
99
|
'fakeProcessingDelayPerTxMs',
|
|
61
100
|
'fakeThrowAfterProcessingTxCount',
|
|
101
|
+
'maxTxsPerBlock',
|
|
102
|
+
'maxTxsPerCheckpoint',
|
|
103
|
+
'maxL2BlockGas',
|
|
104
|
+
'maxDABlockGas',
|
|
105
|
+
'rollupManaLimit',
|
|
62
106
|
] as const;
|
|
63
107
|
|
|
108
|
+
/** Thrown when the number of successfully processed transactions is below the required minimum. */
|
|
109
|
+
export class InsufficientValidTxsError extends Error {
|
|
110
|
+
constructor(
|
|
111
|
+
public readonly processedCount: number,
|
|
112
|
+
public readonly minRequired: number,
|
|
113
|
+
public readonly failedTxs: FailedTx[],
|
|
114
|
+
) {
|
|
115
|
+
super(`Insufficient valid txs: got ${processedCount} but need ${minRequired}`);
|
|
116
|
+
this.name = 'InsufficientValidTxsError';
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
64
120
|
/** Result of building a block within a checkpoint. */
|
|
65
|
-
export
|
|
66
|
-
block:
|
|
67
|
-
publicGas: Gas;
|
|
121
|
+
export type BuildBlockInCheckpointResult = {
|
|
122
|
+
block: L2Block;
|
|
68
123
|
publicProcessorDuration: number;
|
|
69
124
|
numTxs: number;
|
|
70
125
|
failedTxs: FailedTx[];
|
|
71
126
|
usedTxs: Tx[];
|
|
72
|
-
|
|
73
|
-
}
|
|
127
|
+
};
|
|
74
128
|
|
|
75
129
|
/** Interface for building blocks within a checkpoint context. */
|
|
76
130
|
export interface ICheckpointBlockBuilder {
|
|
131
|
+
/** Builds a single block within this checkpoint. Throws InsufficientValidTxsError if fewer than minValidTxs succeed. */
|
|
77
132
|
buildBlock(
|
|
78
133
|
pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
|
|
79
134
|
blockNumber: BlockNumber,
|
|
80
135
|
timestamp: bigint,
|
|
81
|
-
opts:
|
|
136
|
+
opts: BlockBuilderOptions,
|
|
82
137
|
): Promise<BuildBlockInCheckpointResult>;
|
|
83
138
|
}
|
|
84
139
|
|
|
@@ -89,8 +144,10 @@ export interface ICheckpointsBuilder {
|
|
|
89
144
|
startCheckpoint(
|
|
90
145
|
checkpointNumber: CheckpointNumber,
|
|
91
146
|
constants: CheckpointGlobalVariables,
|
|
147
|
+
feeAssetPriceModifier: bigint,
|
|
92
148
|
l1ToL2Messages: Fr[],
|
|
93
149
|
previousCheckpointOutHashes: Fr[],
|
|
94
150
|
fork: MerkleTreeWriteOperations,
|
|
151
|
+
bindings?: LoggerBindings,
|
|
95
152
|
): Promise<ICheckpointBlockBuilder>;
|
|
96
153
|
}
|
package/src/interfaces/client.ts
CHANGED