@aztec/stdlib 0.0.1-commit.ec5f612 → 0.0.1-commit.ec7ac5448
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/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 -67
- package/dest/abi/encoder.d.ts +1 -1
- package/dest/abi/encoder.d.ts.map +1 -1
- package/dest/abi/encoder.js +28 -1
- 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/function_selector.js +1 -1
- 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/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/avm/avm.d.ts +300 -300
- package/dest/avm/revert_code.d.ts +8 -18
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +15 -30
- package/dest/block/l2_block.d.ts +9 -1
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +12 -2
- package/dest/block/l2_block_source.d.ts +95 -10
- 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/l2_tips_store_base.d.ts +1 -1
- 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 +17 -4
- 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 +3 -2
- package/dest/checkpoint/checkpoint.d.ts +8 -1
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +18 -5
- package/dest/checkpoint/checkpoint_data.d.ts +71 -5
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_data.js +10 -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/validate.d.ts +36 -0
- package/dest/checkpoint/validate.d.ts.map +1 -0
- package/dest/checkpoint/validate.js +120 -0
- 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/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 +4 -2
- package/dest/config/sequencer-config.d.ts.map +1 -1
- package/dest/config/sequencer-config.js +13 -0
- package/dest/contract/contract_address.d.ts +3 -3
- package/dest/contract/contract_address.js +3 -3
- package/dest/contract/contract_class_id.d.ts +2 -2
- package/dest/contract/contract_class_id.js +2 -2
- 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/epoch-helpers/index.d.ts +11 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +16 -2
- 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/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/ha-signing/config.d.ts +49 -14
- package/dest/ha-signing/config.d.ts.map +1 -1
- package/dest/ha-signing/config.js +20 -15
- package/dest/ha-signing/index.d.ts +3 -2
- package/dest/ha-signing/index.d.ts.map +1 -1
- package/dest/ha-signing/index.js +2 -1
- 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/hash/hash.d.ts +19 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +29 -0
- 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 +6 -3
- package/dest/interfaces/aztec-node-admin.d.ts +79 -43
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +3 -3
- 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 +12 -6
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +5 -2
- package/dest/interfaces/block-builder.d.ts +38 -11
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +13 -6
- 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 +62 -32
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +6 -2
- 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 +9 -19
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/prover-client.d.ts +6 -1
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +7 -1
- package/dest/interfaces/proving-job.d.ts +34 -34
- package/dest/interfaces/slasher.d.ts +1 -10
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +0 -2
- package/dest/interfaces/validator.d.ts +106 -55
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +8 -5
- package/dest/interfaces/world_state.d.ts +5 -4
- package/dest/interfaces/world_state.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -0
- 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/extended_directional_app_tagging_secret.d.ts +4 -4
- package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -1
- package/dest/logs/extended_directional_app_tagging_secret.js +12 -5
- 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_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/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/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 +4 -1
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +7 -3
- 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 +32 -6
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +69 -26
- package/dest/noir/index.d.ts +3 -3
- package/dest/noir/index.d.ts.map +1 -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/checkpoint_proposal.d.ts +2 -7
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +3 -25
- 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/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/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 +4 -90
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +0 -14
- package/dest/slashing/{tally.d.ts → votes.d.ts} +7 -2
- package/dest/slashing/votes.d.ts.map +1 -0
- package/dest/slashing/{tally.js → votes.js} +30 -2
- package/dest/tests/factories.d.ts +2 -4
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +11 -28
- package/dest/tests/mocks.d.ts +4 -2
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +26 -26
- package/dest/timetable/index.d.ts +51 -1
- package/dest/timetable/index.d.ts.map +1 -1
- package/dest/timetable/index.js +204 -14
- package/dest/tx/block_header.d.ts +3 -1
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +4 -0
- 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/global_variable_builder.d.ts +3 -2
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- 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 +14 -2
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +13 -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 +6 -5
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +18 -6
- package/dest/tx/tx_receipt.d.ts +14 -5
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +14 -18
- package/dest/tx/validator/error_texts.d.ts +9 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +10 -0
- 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/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 +10 -9
- package/src/abi/abi.ts +25 -2
- package/src/abi/buffer.ts +25 -4
- package/src/abi/decoder.ts +36 -79
- package/src/abi/encoder.ts +41 -1
- package/src/abi/event_metadata_definition.ts +2 -0
- package/src/abi/function_selector.ts +1 -1
- package/src/abi/function_signature_decoder.ts +77 -0
- package/src/abi/index.ts +1 -0
- package/src/abi/selector.ts +1 -1
- package/src/abi/utils.ts +25 -0
- package/src/avm/revert_code.ts +25 -39
- package/src/block/l2_block.ts +13 -1
- package/src/block/l2_block_source.ts +26 -9
- package/src/block/l2_block_stream/l2_tips_store_base.ts +24 -12
- package/src/block/test/l2_tips_store_test_suite.ts +8 -1
- package/src/checkpoint/checkpoint.ts +23 -4
- package/src/checkpoint/checkpoint_data.ts +40 -4
- package/src/checkpoint/index.ts +1 -0
- package/src/checkpoint/validate.ts +230 -0
- package/src/config/index.ts +1 -0
- package/src/config/pipelining-config.ts +31 -0
- package/src/config/sequencer-config.ts +19 -1
- package/src/contract/contract_address.ts +3 -3
- package/src/contract/contract_class_id.ts +2 -2
- package/src/contract/index.ts +0 -2
- package/src/contract/interfaces/contract_class.ts +2 -82
- package/src/epoch-helpers/index.ts +27 -0
- 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/gas/README.md +123 -0
- package/src/gas/gas_fees.ts +15 -1
- package/src/gas/gas_settings.ts +65 -12
- package/src/ha-signing/config.ts +45 -38
- package/src/ha-signing/index.ts +9 -0
- package/src/ha-signing/local_config.ts +46 -0
- package/src/hash/hash.ts +34 -0
- package/src/interfaces/allowed_element.ts +29 -9
- package/src/interfaces/archiver.ts +6 -3
- package/src/interfaces/aztec-node-admin.ts +5 -7
- package/src/interfaces/aztec-node-debug.ts +40 -0
- package/src/interfaces/aztec-node.ts +24 -5
- package/src/interfaces/block-builder.ts +60 -14
- package/src/interfaces/client.ts +1 -0
- package/src/interfaces/configs.ts +25 -8
- package/src/interfaces/l2_logs_source.ts +4 -1
- package/src/interfaces/merkle_tree_operations.ts +8 -18
- package/src/interfaces/prover-client.ts +8 -0
- package/src/interfaces/slasher.ts +0 -6
- package/src/interfaces/validator.ts +48 -33
- package/src/interfaces/world_state.ts +4 -3
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +9 -0
- 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/extended_directional_app_tagging_secret.ts +19 -8
- package/src/logs/index.ts +1 -0
- package/src/logs/log_filter.ts +5 -0
- package/src/logs/message_context.ts +17 -7
- package/src/logs/pending_tagged_log.ts +1 -3
- package/src/logs/public_log.ts +4 -2
- package/src/logs/shared_secret_derivation.ts +21 -10
- package/src/logs/siloed_tag.ts +7 -2
- 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 +98 -33
- package/src/noir/index.ts +2 -2
- package/src/note/note_dao.ts +1 -4
- package/src/p2p/checkpoint_proposal.ts +8 -38
- package/src/p2p/peer_error.ts +7 -0
- package/src/proofs/chonk_proof.ts +91 -5
- package/src/slashing/index.ts +1 -2
- package/src/slashing/serialization.ts +1 -81
- package/src/slashing/types.ts +3 -35
- package/src/slashing/{tally.ts → votes.ts} +34 -1
- package/src/tests/factories.ts +5 -34
- package/src/tests/mocks.ts +31 -18
- package/src/timetable/index.ts +293 -13
- package/src/tx/block_header.ts +6 -0
- package/src/tx/capsule.ts +10 -2
- package/src/tx/global_variable_builder.ts +2 -0
- package/src/tx/private_execution_result.ts +5 -5
- package/src/tx/profiling.ts +11 -2
- package/src/tx/simulated_tx.ts +14 -3
- package/src/tx/tx.ts +20 -11
- package/src/tx/tx_receipt.ts +18 -16
- package/src/tx/validator/error_texts.ts +12 -0
- 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/versioning/versioning.ts +4 -1
- package/src/world-state/genesis_data.ts +15 -0
- package/src/world-state/index.ts +1 -0
- 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/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 -158
- package/dest/slashing/empire.d.ts +0 -31
- package/dest/slashing/empire.d.ts.map +0 -1
- package/dest/slashing/empire.js +0 -87
- 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/l1-contracts/slash_factory.ts +0 -180
- package/src/slashing/empire.ts +0 -104
- package/src/update-checker/update-checker.ts +0 -166
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ARCHIVE_HEIGHT, L1_TO_L2_MSG_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT } from '@aztec/constants';
|
|
2
2
|
import { L1ContractAddressesSchema } from '@aztec/ethereum/l1-contract-addresses';
|
|
3
|
-
import { BlockNumberPositiveSchema, BlockNumberSchema, CheckpointNumberPositiveSchema, EpochNumberSchema } from '@aztec/foundation/branded-types';
|
|
3
|
+
import { BlockNumberPositiveSchema, BlockNumberSchema, CheckpointNumberPositiveSchema, CheckpointNumberSchema, EpochNumberSchema } from '@aztec/foundation/branded-types';
|
|
4
4
|
import { createSafeJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
|
|
5
5
|
import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
|
|
6
6
|
import { z } from 'zod';
|
|
@@ -10,6 +10,7 @@ import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
|
|
|
10
10
|
import { dataInBlockSchemaFor } from '../block/in_block.js';
|
|
11
11
|
import { L2Block } from '../block/l2_block.js';
|
|
12
12
|
import { L2TipsSchema } from '../block/l2_block_source.js';
|
|
13
|
+
import { CheckpointDataSchema } from '../checkpoint/checkpoint_data.js';
|
|
13
14
|
import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
|
|
14
15
|
import { ContractClassPublicSchema, ContractInstanceWithAddressSchema, NodeInfoSchema, ProtocolContractAddressesSchema } from '../contract/index.js';
|
|
15
16
|
import { GasFees } from '../gas/gas_fees.js';
|
|
@@ -41,13 +42,14 @@ export const AztecNodeApiSchema = {
|
|
|
41
42
|
schemas.BigInt,
|
|
42
43
|
SiblingPath.schemaFor(L1_TO_L2_MSG_TREE_HEIGHT)
|
|
43
44
|
]).optional()),
|
|
44
|
-
|
|
45
|
+
getL1ToL2MessageCheckpoint: z.function().args(schemas.Fr).returns(CheckpointNumberSchema.optional()),
|
|
45
46
|
isL1ToL2MessageSynced: z.function().args(schemas.Fr).returns(z.boolean()),
|
|
46
47
|
getL2ToL1Messages: z.function().args(EpochNumberSchema).returns(z.array(z.array(z.array(z.array(schemas.Fr))))),
|
|
47
48
|
getBlock: z.function().args(BlockParameterSchema).returns(L2Block.schema.optional()),
|
|
48
49
|
getBlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
|
|
49
50
|
getBlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
|
|
50
51
|
getBlockNumber: z.function().returns(BlockNumberSchema),
|
|
52
|
+
getCheckpointNumber: z.function().returns(CheckpointNumberSchema),
|
|
51
53
|
getProvenBlockNumber: z.function().returns(BlockNumberSchema),
|
|
52
54
|
getCheckpointedBlockNumber: z.function().returns(BlockNumberSchema),
|
|
53
55
|
isReady: z.function().returns(z.boolean()),
|
|
@@ -55,6 +57,7 @@ export const AztecNodeApiSchema = {
|
|
|
55
57
|
getBlocks: z.function().args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN)).returns(z.array(L2Block.schema)),
|
|
56
58
|
getCheckpoints: z.function().args(CheckpointNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_CHECKPOINTS_LEN)).returns(z.array(PublishedCheckpoint.schema)),
|
|
57
59
|
getCheckpointedBlocks: z.function().args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN)).returns(z.array(CheckpointedL2Block.schema)),
|
|
60
|
+
getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
|
|
58
61
|
getCurrentMinFees: z.function().returns(GasFees.schema),
|
|
59
62
|
getMaxPriorityFees: z.function().returns(GasFees.schema),
|
|
60
63
|
getNodeVersion: z.function().returns(z.string()),
|
|
@@ -30,43 +30,70 @@ export interface IBlockFactory extends ProcessedTxHandler {
|
|
|
30
30
|
*/
|
|
31
31
|
setBlockCompleted(expectedBlockHeader?: BlockHeader): Promise<L2Block>;
|
|
32
32
|
}
|
|
33
|
-
|
|
33
|
+
/** Limits passed to the public processor for tx processing within a block. */
|
|
34
|
+
export type PublicProcessorLimits = {
|
|
35
|
+
/** Maximum number of txs to process. */
|
|
34
36
|
maxTransactions?: number;
|
|
35
|
-
|
|
37
|
+
/** L2 and DA gas limits. */
|
|
36
38
|
maxBlockGas?: Gas;
|
|
39
|
+
/** Maximum number of blob fields allowed. */
|
|
37
40
|
maxBlobFields?: number;
|
|
41
|
+
/** Deadline for processing the txs. Processor will stop as soon as it hits this time. */
|
|
38
42
|
deadline?: Date;
|
|
39
|
-
|
|
43
|
+
/** 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. */
|
|
44
|
+
isBuildingProposal?: boolean;
|
|
45
|
+
};
|
|
46
|
+
/** Base fields shared by both proposer and validator block builder options. */
|
|
47
|
+
type BlockBuilderOptionsBase = PublicProcessorLimits & {
|
|
48
|
+
/** Minimum number of successfully processed txs required. Block is rejected if fewer succeed. */
|
|
49
|
+
minValidTxs: number;
|
|
50
|
+
};
|
|
51
|
+
/** Proposer mode: redistribution params are required. */
|
|
52
|
+
type ProposerBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
53
|
+
isBuildingProposal: true;
|
|
54
|
+
/** Maximum number of blocks per checkpoint, derived from the timetable. */
|
|
55
|
+
maxBlocksPerCheckpoint: number;
|
|
56
|
+
/** Per-block gas budget multiplier. Budget = (remaining / remainingBlocks) * multiplier. */
|
|
57
|
+
perBlockAllocationMultiplier: number;
|
|
58
|
+
};
|
|
59
|
+
/** Validator mode: no redistribution params needed. */
|
|
60
|
+
type ValidatorBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
61
|
+
isBuildingProposal: false;
|
|
62
|
+
};
|
|
63
|
+
/** Options for building a block within a checkpoint. When proposing, redistribution params are required. */
|
|
64
|
+
export type BlockBuilderOptions = ProposerBlockBuilderOptions | ValidatorBlockBuilderOptions;
|
|
40
65
|
export interface PublicProcessorValidator {
|
|
41
66
|
preprocessValidator?: TxValidator<Tx>;
|
|
42
67
|
nullifierCache?: {
|
|
43
68
|
addNullifiers: (nullifiers: Buffer[]) => void;
|
|
44
69
|
};
|
|
45
70
|
}
|
|
46
|
-
export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> & Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<SequencerConfig, '
|
|
71
|
+
export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'rollupManaLimit'> & Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'fakeProcessingDelayPerTxMs' | 'fakeThrowAfterProcessingTxCount' | 'maxTxsPerBlock' | 'maxTxsPerCheckpoint' | 'maxL2BlockGas' | 'maxDABlockGas'>;
|
|
47
72
|
export declare const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[];
|
|
48
|
-
/** Thrown when
|
|
49
|
-
export declare class
|
|
73
|
+
/** Thrown when the number of successfully processed transactions is below the required minimum. */
|
|
74
|
+
export declare class InsufficientValidTxsError extends Error {
|
|
75
|
+
readonly processedCount: number;
|
|
76
|
+
readonly minRequired: number;
|
|
50
77
|
readonly failedTxs: FailedTx[];
|
|
51
|
-
constructor(failedTxs: FailedTx[]);
|
|
78
|
+
constructor(processedCount: number, minRequired: number, failedTxs: FailedTx[]);
|
|
52
79
|
}
|
|
53
80
|
/** Result of building a block within a checkpoint. */
|
|
54
81
|
export type BuildBlockInCheckpointResult = {
|
|
55
82
|
block: L2Block;
|
|
56
|
-
publicGas: Gas;
|
|
57
83
|
publicProcessorDuration: number;
|
|
58
84
|
numTxs: number;
|
|
59
85
|
failedTxs: FailedTx[];
|
|
60
86
|
usedTxs: Tx[];
|
|
61
|
-
usedTxBlobFields: number;
|
|
62
87
|
};
|
|
63
88
|
/** Interface for building blocks within a checkpoint context. */
|
|
64
89
|
export interface ICheckpointBlockBuilder {
|
|
65
|
-
|
|
90
|
+
/** Builds a single block within this checkpoint. Throws InsufficientValidTxsError if fewer than minValidTxs succeed. */
|
|
91
|
+
buildBlock(pendingTxs: Iterable<Tx> | AsyncIterable<Tx>, blockNumber: BlockNumber, timestamp: bigint, opts: BlockBuilderOptions): Promise<BuildBlockInCheckpointResult>;
|
|
66
92
|
}
|
|
67
93
|
/** Interface for creating checkpoint builders. */
|
|
68
94
|
export interface ICheckpointsBuilder {
|
|
69
95
|
getFork(blockNumber: BlockNumber): Promise<MerkleTreeWriteOperations>;
|
|
70
96
|
startCheckpoint(checkpointNumber: CheckpointNumber, constants: CheckpointGlobalVariables, feeAssetPriceModifier: bigint, l1ToL2Messages: Fr[], previousCheckpointOutHashes: Fr[], fork: MerkleTreeWriteOperations, bindings?: LoggerBindings): Promise<ICheckpointBlockBuilder>;
|
|
71
97
|
}
|
|
72
|
-
|
|
98
|
+
export {};
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stYnVpbGRlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZXMvYmxvY2stYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRixPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCxPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUUsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUYsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLDZGQUE2RjtBQUM3RixNQUFNLFdBQVcsYUFBYyxTQUFRLGtCQUFrQjtJQUN2RDs7OztP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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-builder.d.ts","sourceRoot":"","sources":["../../src/interfaces/block-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,6FAA6F;AAC7F,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IACvD;;;;OAIG;IACH,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErF;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxE;AAED,MAAM,
|
|
1
|
+
{"version":3,"file":"block-builder.d.ts","sourceRoot":"","sources":["../../src/interfaces/block-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,14 +3,21 @@ export const FullNodeBlockBuilderConfigKeys = [
|
|
|
3
3
|
'slotDuration',
|
|
4
4
|
'l1ChainId',
|
|
5
5
|
'rollupVersion',
|
|
6
|
-
'
|
|
6
|
+
'txPublicSetupAllowListExtend',
|
|
7
7
|
'fakeProcessingDelayPerTxMs',
|
|
8
|
-
'fakeThrowAfterProcessingTxCount'
|
|
8
|
+
'fakeThrowAfterProcessingTxCount',
|
|
9
|
+
'maxTxsPerBlock',
|
|
10
|
+
'maxTxsPerCheckpoint',
|
|
11
|
+
'maxL2BlockGas',
|
|
12
|
+
'maxDABlockGas',
|
|
13
|
+
'rollupManaLimit'
|
|
9
14
|
];
|
|
10
|
-
/** Thrown when
|
|
15
|
+
/** Thrown when the number of successfully processed transactions is below the required minimum. */ export class InsufficientValidTxsError extends Error {
|
|
16
|
+
processedCount;
|
|
17
|
+
minRequired;
|
|
11
18
|
failedTxs;
|
|
12
|
-
constructor(failedTxs){
|
|
13
|
-
super(
|
|
14
|
-
this.name = '
|
|
19
|
+
constructor(processedCount, minRequired, failedTxs){
|
|
20
|
+
super(`Insufficient valid txs: got ${processedCount} but need ${minRequired}`), this.processedCount = processedCount, this.minRequired = minRequired, this.failedTxs = failedTxs;
|
|
21
|
+
this.name = 'InsufficientValidTxsError';
|
|
15
22
|
}
|
|
16
23
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './aztec-node.js';
|
|
2
2
|
export * from './aztec-node-admin.js';
|
|
3
|
+
export * from './aztec-node-debug.js';
|
|
3
4
|
export * from './private_kernel_prover.js';
|
|
4
5
|
export * from './get_logs_response.js';
|
|
5
6
|
export * from './api_limit.js';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsZ0JBQWdCLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/interfaces/client.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/interfaces/client.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC"}
|
|
@@ -9,6 +9,8 @@ export interface SequencerConfig {
|
|
|
9
9
|
sequencerPollingIntervalMS?: number;
|
|
10
10
|
/** The maximum number of txs to include in a block. */
|
|
11
11
|
maxTxsPerBlock?: number;
|
|
12
|
+
/** The maximum number of txs across all blocks in a checkpoint. */
|
|
13
|
+
maxTxsPerCheckpoint?: number;
|
|
12
14
|
/** The minimum number of txs to include in a block. */
|
|
13
15
|
minTxsPerBlock?: number;
|
|
14
16
|
/** The minimum number of valid txs (after execution) to include in a block. If not set, falls back to minTxsPerBlock. */
|
|
@@ -19,6 +21,10 @@ export interface SequencerConfig {
|
|
|
19
21
|
maxL2BlockGas?: number;
|
|
20
22
|
/** The maximum DA block gas. */
|
|
21
23
|
maxDABlockGas?: number;
|
|
24
|
+
/** Per-block gas budget multiplier for both L2 and DA gas. Budget = (checkpointLimit / maxBlocks) * multiplier. */
|
|
25
|
+
perBlockAllocationMultiplier?: number;
|
|
26
|
+
/** Redistribute remaining checkpoint budget evenly across remaining blocks instead of allowing a single block to consume the entire remaining budget. */
|
|
27
|
+
redistributeCheckpointBudget?: boolean;
|
|
22
28
|
/** Recipient of block reward. */
|
|
23
29
|
coinbase?: EthAddress;
|
|
24
30
|
/** Address to receive fees. */
|
|
@@ -27,10 +33,8 @@ export interface SequencerConfig {
|
|
|
27
33
|
acvmWorkingDirectory?: string;
|
|
28
34
|
/** The path to the ACVM binary */
|
|
29
35
|
acvmBinaryPath?: string;
|
|
30
|
-
/**
|
|
31
|
-
|
|
32
|
-
/** Max block size */
|
|
33
|
-
maxBlockSizeInBytes?: number;
|
|
36
|
+
/** Additional entries to extend the default setup allow list. */
|
|
37
|
+
txPublicSetupAllowListExtend?: AllowedElement[];
|
|
34
38
|
/** Payload address to vote for */
|
|
35
39
|
governanceProposerPayload?: EthAddress;
|
|
36
40
|
/** Whether to enforce the time table when building blocks */
|
|
@@ -55,6 +59,10 @@ export interface SequencerConfig {
|
|
|
55
59
|
broadcastInvalidBlockProposal?: boolean;
|
|
56
60
|
/** Inject a fake attestation (for testing only) */
|
|
57
61
|
injectFakeAttestation?: boolean;
|
|
62
|
+
/** Inject a malleable attestation with a high-s value (for testing only) */
|
|
63
|
+
injectHighSValueAttestation?: boolean;
|
|
64
|
+
/** Inject an attestation with an unrecoverable signature (for testing only) */
|
|
65
|
+
injectUnrecoverableSignatureAttestation?: boolean;
|
|
58
66
|
/** Whether to run in fisherman mode: builds blocks on every slot for validation without publishing */
|
|
59
67
|
fishermanMode?: boolean;
|
|
60
68
|
/** Shuffle attestation ordering to create invalid ordering (for testing only) */
|
|
@@ -75,47 +83,55 @@ export interface SequencerConfig {
|
|
|
75
83
|
export declare const SequencerConfigSchema: z.ZodObject<{
|
|
76
84
|
sequencerPollingIntervalMS: z.ZodOptional<z.ZodNumber>;
|
|
77
85
|
maxTxsPerBlock: z.ZodOptional<z.ZodNumber>;
|
|
86
|
+
maxTxsPerCheckpoint: z.ZodOptional<z.ZodNumber>;
|
|
78
87
|
minValidTxsPerBlock: z.ZodOptional<z.ZodNumber>;
|
|
79
88
|
minTxsPerBlock: z.ZodOptional<z.ZodNumber>;
|
|
80
89
|
maxL2BlockGas: z.ZodOptional<z.ZodNumber>;
|
|
81
90
|
publishTxsWithProposals: z.ZodOptional<z.ZodBoolean>;
|
|
82
91
|
maxDABlockGas: z.ZodOptional<z.ZodNumber>;
|
|
92
|
+
perBlockAllocationMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
redistributeCheckpointBudget: z.ZodOptional<z.ZodBoolean>;
|
|
83
94
|
coinbase: z.ZodOptional<import("../schemas/index.js").ZodFor<EthAddress>>;
|
|
84
95
|
feeRecipient: z.ZodOptional<import("../schemas/index.js").ZodFor<AztecAddress>>;
|
|
85
96
|
acvmWorkingDirectory: z.ZodOptional<z.ZodString>;
|
|
86
97
|
acvmBinaryPath: z.ZodOptional<z.ZodString>;
|
|
87
|
-
|
|
98
|
+
txPublicSetupAllowListExtend: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
|
88
99
|
address: import("../schemas/index.js").ZodFor<AztecAddress>;
|
|
89
100
|
selector: import("../schemas/index.js").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
|
|
101
|
+
onlySelf: z.ZodOptional<z.ZodBoolean>;
|
|
102
|
+
rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
|
|
103
|
+
calldataLength: z.ZodOptional<z.ZodNumber>;
|
|
90
104
|
}, "strip", z.ZodTypeAny, {
|
|
91
105
|
address: AztecAddress;
|
|
92
106
|
selector: import("../abi/function_selector.js").FunctionSelector;
|
|
107
|
+
onlySelf?: boolean | undefined;
|
|
108
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
109
|
+
calldataLength?: number | undefined;
|
|
93
110
|
}, {
|
|
94
111
|
address?: any;
|
|
95
112
|
selector?: any;
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
address: AztecAddress;
|
|
100
|
-
}, {
|
|
101
|
-
address?: any;
|
|
113
|
+
onlySelf?: boolean | undefined;
|
|
114
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
115
|
+
calldataLength?: number | undefined;
|
|
102
116
|
}>, z.ZodObject<{
|
|
103
117
|
classId: import("../schemas/index.js").ZodFor<import("@aztec/foundation/schemas").Fr>;
|
|
104
118
|
selector: import("../schemas/index.js").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
|
|
119
|
+
onlySelf: z.ZodOptional<z.ZodBoolean>;
|
|
120
|
+
rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
|
|
121
|
+
calldataLength: z.ZodOptional<z.ZodNumber>;
|
|
105
122
|
}, "strip", z.ZodTypeAny, {
|
|
106
123
|
classId: import("@aztec/foundation/schemas").Fr;
|
|
107
124
|
selector: import("../abi/function_selector.js").FunctionSelector;
|
|
125
|
+
onlySelf?: boolean | undefined;
|
|
126
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
127
|
+
calldataLength?: number | undefined;
|
|
108
128
|
}, {
|
|
109
129
|
classId?: any;
|
|
110
130
|
selector?: any;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
classId: import("@aztec/foundation/schemas").Fr;
|
|
115
|
-
}, {
|
|
116
|
-
classId?: any;
|
|
131
|
+
onlySelf?: boolean | undefined;
|
|
132
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
133
|
+
calldataLength?: number | undefined;
|
|
117
134
|
}>]>, "many">>;
|
|
118
|
-
maxBlockSizeInBytes: z.ZodOptional<z.ZodNumber>;
|
|
119
135
|
governanceProposerPayload: z.ZodOptional<import("../schemas/index.js").ZodFor<EthAddress>>;
|
|
120
136
|
l1PublishingTime: z.ZodOptional<z.ZodNumber>;
|
|
121
137
|
enforceTimeTable: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -128,6 +144,8 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
128
144
|
secondsBeforeInvalidatingBlockAsNonCommitteeMember: z.ZodNumber;
|
|
129
145
|
broadcastInvalidBlockProposal: z.ZodOptional<z.ZodBoolean>;
|
|
130
146
|
injectFakeAttestation: z.ZodOptional<z.ZodBoolean>;
|
|
147
|
+
injectHighSValueAttestation: z.ZodOptional<z.ZodBoolean>;
|
|
148
|
+
injectUnrecoverableSignatureAttestation: z.ZodOptional<z.ZodBoolean>;
|
|
131
149
|
fishermanMode: z.ZodOptional<z.ZodBoolean>;
|
|
132
150
|
shuffleAttestationOrdering: z.ZodOptional<z.ZodBoolean>;
|
|
133
151
|
blockDurationMs: z.ZodOptional<z.ZodNumber>;
|
|
@@ -139,27 +157,31 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
139
157
|
}, "strip", z.ZodTypeAny, {
|
|
140
158
|
sequencerPollingIntervalMS?: number | undefined;
|
|
141
159
|
maxTxsPerBlock?: number | undefined;
|
|
160
|
+
maxTxsPerCheckpoint?: number | undefined;
|
|
142
161
|
minValidTxsPerBlock?: number | undefined;
|
|
143
162
|
minTxsPerBlock?: number | undefined;
|
|
144
163
|
maxL2BlockGas?: number | undefined;
|
|
145
164
|
publishTxsWithProposals?: boolean | undefined;
|
|
146
165
|
maxDABlockGas?: number | undefined;
|
|
166
|
+
perBlockAllocationMultiplier?: number | undefined;
|
|
167
|
+
redistributeCheckpointBudget?: boolean | undefined;
|
|
147
168
|
coinbase?: EthAddress | undefined;
|
|
148
169
|
feeRecipient?: AztecAddress | undefined;
|
|
149
170
|
acvmWorkingDirectory?: string | undefined;
|
|
150
171
|
acvmBinaryPath?: string | undefined;
|
|
151
|
-
|
|
172
|
+
txPublicSetupAllowListExtend?: ({
|
|
152
173
|
address: AztecAddress;
|
|
153
174
|
selector: import("../abi/function_selector.js").FunctionSelector;
|
|
154
|
-
|
|
155
|
-
|
|
175
|
+
onlySelf?: boolean | undefined;
|
|
176
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
177
|
+
calldataLength?: number | undefined;
|
|
156
178
|
} | {
|
|
157
179
|
classId: import("@aztec/foundation/schemas").Fr;
|
|
158
180
|
selector: import("../abi/function_selector.js").FunctionSelector;
|
|
159
|
-
|
|
160
|
-
|
|
181
|
+
onlySelf?: boolean | undefined;
|
|
182
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
183
|
+
calldataLength?: number | undefined;
|
|
161
184
|
})[] | undefined;
|
|
162
|
-
maxBlockSizeInBytes?: number | undefined;
|
|
163
185
|
governanceProposerPayload?: EthAddress | undefined;
|
|
164
186
|
l1PublishingTime?: number | undefined;
|
|
165
187
|
enforceTimeTable?: boolean | undefined;
|
|
@@ -172,6 +194,8 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
172
194
|
secondsBeforeInvalidatingBlockAsNonCommitteeMember: number;
|
|
173
195
|
broadcastInvalidBlockProposal?: boolean | undefined;
|
|
174
196
|
injectFakeAttestation?: boolean | undefined;
|
|
197
|
+
injectHighSValueAttestation?: boolean | undefined;
|
|
198
|
+
injectUnrecoverableSignatureAttestation?: boolean | undefined;
|
|
175
199
|
fishermanMode?: boolean | undefined;
|
|
176
200
|
shuffleAttestationOrdering?: boolean | undefined;
|
|
177
201
|
blockDurationMs?: number | undefined;
|
|
@@ -183,27 +207,31 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
183
207
|
}, {
|
|
184
208
|
sequencerPollingIntervalMS?: number | undefined;
|
|
185
209
|
maxTxsPerBlock?: number | undefined;
|
|
210
|
+
maxTxsPerCheckpoint?: number | undefined;
|
|
186
211
|
minValidTxsPerBlock?: number | undefined;
|
|
187
212
|
minTxsPerBlock?: number | undefined;
|
|
188
213
|
maxL2BlockGas?: number | undefined;
|
|
189
214
|
publishTxsWithProposals?: boolean | undefined;
|
|
190
215
|
maxDABlockGas?: number | undefined;
|
|
216
|
+
perBlockAllocationMultiplier?: number | undefined;
|
|
217
|
+
redistributeCheckpointBudget?: boolean | undefined;
|
|
191
218
|
coinbase?: any;
|
|
192
219
|
feeRecipient?: any;
|
|
193
220
|
acvmWorkingDirectory?: string | undefined;
|
|
194
221
|
acvmBinaryPath?: string | undefined;
|
|
195
|
-
|
|
222
|
+
txPublicSetupAllowListExtend?: ({
|
|
196
223
|
address?: any;
|
|
197
224
|
selector?: any;
|
|
198
|
-
|
|
199
|
-
|
|
225
|
+
onlySelf?: boolean | undefined;
|
|
226
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
227
|
+
calldataLength?: number | undefined;
|
|
200
228
|
} | {
|
|
201
229
|
classId?: any;
|
|
202
230
|
selector?: any;
|
|
203
|
-
|
|
204
|
-
|
|
231
|
+
onlySelf?: boolean | undefined;
|
|
232
|
+
rejectNullMsgSender?: boolean | undefined;
|
|
233
|
+
calldataLength?: number | undefined;
|
|
205
234
|
})[] | undefined;
|
|
206
|
-
maxBlockSizeInBytes?: number | undefined;
|
|
207
235
|
governanceProposerPayload?: any;
|
|
208
236
|
l1PublishingTime?: number | undefined;
|
|
209
237
|
enforceTimeTable?: boolean | undefined;
|
|
@@ -216,6 +244,8 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
216
244
|
secondsBeforeInvalidatingBlockAsNonCommitteeMember: number;
|
|
217
245
|
broadcastInvalidBlockProposal?: boolean | undefined;
|
|
218
246
|
injectFakeAttestation?: boolean | undefined;
|
|
247
|
+
injectHighSValueAttestation?: boolean | undefined;
|
|
248
|
+
injectUnrecoverableSignatureAttestation?: boolean | undefined;
|
|
219
249
|
fishermanMode?: boolean | undefined;
|
|
220
250
|
shuffleAttestationOrdering?: boolean | undefined;
|
|
221
251
|
blockDurationMs?: number | undefined;
|
|
@@ -225,7 +255,7 @@ export declare const SequencerConfigSchema: z.ZodObject<{
|
|
|
225
255
|
minBlocksForCheckpoint?: number | undefined;
|
|
226
256
|
skipPublishingCheckpointsPercent?: number | undefined;
|
|
227
257
|
}>;
|
|
228
|
-
type SequencerConfigOptionalKeys = 'governanceProposerPayload' | 'blockDurationMs' | 'expectedBlockProposalsPerSlot' | 'coinbase' | 'feeRecipient' | 'acvmWorkingDirectory' | 'acvmBinaryPath' | 'fakeProcessingDelayPerTxMs' | 'fakeThrowAfterProcessingTxCount' | 'l1PublishingTime' | '
|
|
258
|
+
type SequencerConfigOptionalKeys = 'governanceProposerPayload' | 'blockDurationMs' | 'expectedBlockProposalsPerSlot' | 'coinbase' | 'feeRecipient' | 'acvmWorkingDirectory' | 'acvmBinaryPath' | 'fakeProcessingDelayPerTxMs' | 'fakeThrowAfterProcessingTxCount' | 'l1PublishingTime' | 'txPublicSetupAllowListExtend' | 'minValidTxsPerBlock' | 'minBlocksForCheckpoint' | 'maxTxsPerBlock' | 'maxTxsPerCheckpoint' | 'maxL2BlockGas' | 'maxDABlockGas' | 'redistributeCheckpointBudget';
|
|
229
259
|
export type ResolvedSequencerConfig = Prettify<Required<Omit<SequencerConfig, SequencerConfigOptionalKeys>> & Pick<SequencerConfig, SequencerConfigOptionalKeys>>;
|
|
230
260
|
export {};
|
|
231
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlncy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZXMvY29uZmlncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTlELE9BQU8sRUFBRSxLQUFLLGNBQWMsRUFBd0IsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRiw4QkFBOEI7QUFDOUIsTUFBTSxXQUFXLGVBQWU7SUFDOUIsZ0VBQWdFO0lBQ2hFLDBCQUEwQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3BDLHVEQUF1RDtJQUN2RCxjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDeEIsbUVBQW1FO0lBQ25FLG1CQUFtQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzdCLHVEQUF1RDtJQUN2RCxjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDeEIseUhBQXlIO0lBQ3pILG1CQUFtQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzdCLHNEQUFzRDtJQUN0RCx1QkFBdUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNsQyxnQ0FBZ0M7SUFDaEMsYUFBYSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3ZCLGdDQUFnQztJQUNoQyxhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdkIsbUhBQW1IO0lBQ25ILDRCQUE0QixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3RDLHlKQUF5SjtJQUN6Siw0QkFBNEIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUN2QyxpQ0FBaUM7SUFDakMsUUFBUSxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ3RCLCtCQUErQjtJQUMv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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../src/interfaces/configs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,KAAK,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAEjF,8BAA8B;AAC9B,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yHAAyH;IACzH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../src/interfaces/configs.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,17 +4,19 @@ import { AllowedElementSchema } from './allowed_element.js';
|
|
|
4
4
|
export const SequencerConfigSchema = zodFor()(z.object({
|
|
5
5
|
sequencerPollingIntervalMS: z.number().optional(),
|
|
6
6
|
maxTxsPerBlock: z.number().optional(),
|
|
7
|
+
maxTxsPerCheckpoint: z.number().optional(),
|
|
7
8
|
minValidTxsPerBlock: z.number().optional(),
|
|
8
9
|
minTxsPerBlock: z.number().optional(),
|
|
9
10
|
maxL2BlockGas: z.number().optional(),
|
|
10
11
|
publishTxsWithProposals: z.boolean().optional(),
|
|
11
12
|
maxDABlockGas: z.number().optional(),
|
|
13
|
+
perBlockAllocationMultiplier: z.number().optional(),
|
|
14
|
+
redistributeCheckpointBudget: z.boolean().optional(),
|
|
12
15
|
coinbase: schemas.EthAddress.optional(),
|
|
13
16
|
feeRecipient: schemas.AztecAddress.optional(),
|
|
14
17
|
acvmWorkingDirectory: z.string().optional(),
|
|
15
18
|
acvmBinaryPath: z.string().optional(),
|
|
16
|
-
|
|
17
|
-
maxBlockSizeInBytes: z.number().optional(),
|
|
19
|
+
txPublicSetupAllowListExtend: z.array(AllowedElementSchema).optional(),
|
|
18
20
|
governanceProposerPayload: schemas.EthAddress.optional(),
|
|
19
21
|
l1PublishingTime: z.number().optional(),
|
|
20
22
|
enforceTimeTable: z.boolean().optional(),
|
|
@@ -27,6 +29,8 @@ export const SequencerConfigSchema = zodFor()(z.object({
|
|
|
27
29
|
secondsBeforeInvalidatingBlockAsNonCommitteeMember: z.number(),
|
|
28
30
|
broadcastInvalidBlockProposal: z.boolean().optional(),
|
|
29
31
|
injectFakeAttestation: z.boolean().optional(),
|
|
32
|
+
injectHighSValueAttestation: z.boolean().optional(),
|
|
33
|
+
injectUnrecoverableSignatureAttestation: z.boolean().optional(),
|
|
30
34
|
fishermanMode: z.boolean().optional(),
|
|
31
35
|
shuffleAttestationOrdering: z.boolean().optional(),
|
|
32
36
|
blockDurationMs: z.number().positive().optional(),
|
|
@@ -14,20 +14,22 @@ export interface L2LogsSource {
|
|
|
14
14
|
* array implies no logs match that tag.
|
|
15
15
|
* @param tags - The tags to search for.
|
|
16
16
|
* @param page - The page number (0-indexed) for pagination.
|
|
17
|
+
* @param upToBlockNumber - If set, only return logs from blocks up to and including this block number.
|
|
17
18
|
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
18
19
|
* for a tag, the caller should fetch the next page to check for more logs.
|
|
19
20
|
*/
|
|
20
|
-
getPrivateLogsByTags(tags: SiloedTag[], page?: number): Promise<TxScopedL2Log[][]>;
|
|
21
|
+
getPrivateLogsByTags(tags: SiloedTag[], page?: number, upToBlockNumber?: BlockNumber): Promise<TxScopedL2Log[][]>;
|
|
21
22
|
/**
|
|
22
23
|
* Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
|
|
23
24
|
* logs is returned. An empty array implies no logs match that tag.
|
|
24
25
|
* @param contractAddress - The contract address to search logs for.
|
|
25
26
|
* @param tags - The tags to search for.
|
|
26
27
|
* @param page - The page number (0-indexed) for pagination.
|
|
28
|
+
* @param upToBlockNumber - If set, only return logs from blocks up to and including this block number.
|
|
27
29
|
* @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
|
|
28
30
|
* for a tag, the caller should fetch the next page to check for more logs.
|
|
29
31
|
*/
|
|
30
|
-
getPublicLogsByTagsFromContract(contractAddress: AztecAddress, tags: Tag[], page?: number): Promise<TxScopedL2Log[][]>;
|
|
32
|
+
getPublicLogsByTagsFromContract(contractAddress: AztecAddress, tags: Tag[], page?: number, upToBlockNumber?: BlockNumber): Promise<TxScopedL2Log[][]>;
|
|
31
33
|
/**
|
|
32
34
|
* Gets public logs based on the provided filter.
|
|
33
35
|
* @param filter - The filter to apply to the logs.
|
|
@@ -46,4 +48,4 @@ export interface L2LogsSource {
|
|
|
46
48
|
*/
|
|
47
49
|
getBlockNumber(): Promise<BlockNumber>;
|
|
48
50
|
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfbG9nc19zb3VyY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2wyX2xvZ3Nfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLDRCQUE0QixFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbEc7O0dBRUc7QUFDSCxNQUFNLFdBQVcsWUFBWTtJQUMzQjs7Ozs7Ozs7T0FRRztJQUNILG9CQUFvQixDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFbEg7Ozs7Ozs7OztPQVNHO0lBQ0gsK0JBQStCLENBQzdCLGVBQWUsRUFBRSxZQUFZLEVBQzdCLElBQUksRUFBRSxHQUFHLEVBQUUsRUFDWCxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQ2IsZUFBZSxDQUFDLEVBQUUsV0FBVyxHQUM1QixPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTlCOzs7O09BSUc7SUFDSCxhQUFhLENBQUMsTUFBTSxFQUFFLFNBQVMsR0FBRyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUVqRTs7OztPQUlHO0lBQ0gsb0JBQW9CLENBQUMsTUFBTSxFQUFFLFNBQVMsR0FBRyxPQUFPLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUUvRTs7O09BR0c7SUFDSCxjQUFjLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0NBQ3hDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"l2_logs_source.d.ts","sourceRoot":"","sources":["../../src/interfaces/l2_logs_source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAElG;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B
|
|
1
|
+
{"version":3,"file":"l2_logs_source.d.ts","sourceRoot":"","sources":["../../src/interfaces/l2_logs_source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAElG;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;OAQG;IACH,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAElH;;;;;;;;;OASG;IACH,+BAA+B,CAC7B,eAAe,EAAE,YAAY,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,IAAI,CAAC,EAAE,MAAM,EACb,eAAe,CAAC,EAAE,WAAW,GAC5B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAE9B;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAEjE;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAE/E;;;OAGG;IACH,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;CACxC"}
|
|
@@ -180,26 +180,16 @@ export interface MerkleTreeReadOperations {
|
|
|
180
180
|
getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(BlockNumber | undefined)[]>;
|
|
181
181
|
}
|
|
182
182
|
export interface MerkleTreeCheckpointOperations {
|
|
183
|
-
/**
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
createCheckpoint(): Promise<void>;
|
|
187
|
-
/**
|
|
188
|
-
* Commits the current checkpoint
|
|
189
|
-
*/
|
|
183
|
+
/** Checkpoints the current fork state. Returns the depth of the new checkpoint. */
|
|
184
|
+
createCheckpoint(): Promise<number>;
|
|
185
|
+
/** Commits the current checkpoint. */
|
|
190
186
|
commitCheckpoint(): Promise<void>;
|
|
191
|
-
/**
|
|
192
|
-
* Reverts the current checkpoint
|
|
193
|
-
*/
|
|
187
|
+
/** Reverts the current checkpoint. */
|
|
194
188
|
revertCheckpoint(): Promise<void>;
|
|
195
|
-
/**
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* Reverts all checkpoints
|
|
201
|
-
*/
|
|
202
|
-
revertAllCheckpoints(): Promise<void>;
|
|
189
|
+
/** Commits all checkpoints above the given depth, leaving checkpoint depth at the given value. */
|
|
190
|
+
commitAllCheckpointsTo(depth: number): Promise<void>;
|
|
191
|
+
/** Reverts all checkpoints above the given depth, leaving checkpoint depth at the given value. */
|
|
192
|
+
revertAllCheckpointsTo(depth: number): Promise<void>;
|
|
203
193
|
}
|
|
204
194
|
export interface MerkleTreeWriteOperations extends MerkleTreeReadOperations, MerkleTreeCheckpointOperations, AsyncDisposable {
|
|
205
195
|
/**
|
|
@@ -240,4 +230,4 @@ export interface MerkleTreeWriteOperations extends MerkleTreeReadOperations, Mer
|
|
|
240
230
|
*/
|
|
241
231
|
export declare function inspectTree(db: MerkleTreeReadOperations, treeId: MerkleTreeId, log?: import("@aztec/foundation/log").Logger): Promise<void>;
|
|
242
232
|
export {};
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
233
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVya2xlX3RyZWVfb3BlcmF0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyZmFjZXMvbWVya2xlX3RyZWVfb3BlcmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyx1QkFBdUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9HOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQztBQUV4RixNQUFNLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7QUFFNUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcscUJBQXFCLENBQUMsQ0FBQyxTQUFTLE1BQU07SUFDckQ7O09BRUc7SUFDSCxZQUFZLEVBQUUsdUJBQXVCLENBQUM7SUFDdEM7O09BRUc7SUFDSCxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxD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
|