@aztec/stdlib 0.0.1-commit.9593d84 → 0.0.1-commit.96bb3f7
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 +603 -5
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +7 -7
- package/dest/abi/authorization_selector.d.ts +2 -2
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/authorization_selector.js +2 -1
- package/dest/abi/buffer.d.ts +2 -2
- package/dest/abi/buffer.d.ts.map +1 -1
- package/dest/abi/buffer.js +1 -1
- package/dest/abi/contract_artifact.d.ts +2 -2
- package/dest/abi/contract_artifact.d.ts.map +1 -1
- package/dest/abi/contract_artifact.js +1 -1
- package/dest/abi/decoder.d.ts +2 -2
- package/dest/abi/decoder.d.ts.map +1 -1
- package/dest/abi/encoder.d.ts +2 -2
- package/dest/abi/encoder.d.ts.map +1 -1
- package/dest/abi/encoder.js +1 -1
- package/dest/abi/event_selector.d.ts +2 -2
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/event_selector.js +2 -1
- package/dest/abi/function_call.d.ts +2 -2
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_selector.d.ts +3 -2
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.js +9 -1
- package/dest/abi/note_selector.d.ts +2 -2
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/note_selector.js +2 -2
- package/dest/abi/selector.d.ts +2 -2
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +4 -2
- package/dest/auth_witness/auth_witness.d.ts +2 -2
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/auth_witness/auth_witness.js +2 -2
- package/dest/avm/avm.d.ts +564 -352
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +238 -22
- package/dest/avm/avm_accumulated_data.d.ts +2 -2
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_accumulated_data.js +6 -3
- package/dest/avm/avm_circuit_public_inputs.d.ts +6 -4
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.js +4 -2
- package/dest/avm/avm_proving_request.d.ts +263 -259
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/contract_storage_read.d.ts +2 -2
- package/dest/avm/contract_storage_read.d.ts.map +1 -1
- package/dest/avm/contract_storage_read.js +1 -1
- package/dest/avm/contract_storage_update_request.d.ts +2 -2
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
- package/dest/avm/contract_storage_update_request.js +1 -1
- package/dest/avm/message_pack.d.ts +1 -1
- package/dest/avm/message_pack.d.ts.map +1 -1
- package/dest/avm/message_pack.js +2 -1
- package/dest/avm/public_call_stack_item_compressed.d.ts +2 -2
- package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
- package/dest/avm/public_call_stack_item_compressed.js +1 -1
- package/dest/avm/public_data_read.d.ts +2 -2
- package/dest/avm/public_data_read.d.ts.map +1 -1
- package/dest/avm/public_data_read.js +1 -1
- package/dest/avm/public_data_update_request.d.ts +2 -2
- package/dest/avm/public_data_update_request.d.ts.map +1 -1
- package/dest/avm/public_data_update_request.js +4 -2
- package/dest/avm/public_data_write.d.ts +2 -2
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/public_data_write.js +1 -1
- package/dest/avm/public_inner_call_request.d.ts +2 -2
- package/dest/avm/public_inner_call_request.d.ts.map +1 -1
- package/dest/avm/public_inner_call_request.js +3 -1
- package/dest/avm/revert_code.d.ts +2 -2
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +4 -2
- package/dest/aztec-address/index.d.ts +3 -2
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +5 -2
- package/dest/block/attestation_info.d.ts +5 -5
- package/dest/block/attestation_info.d.ts.map +1 -1
- package/dest/block/attestation_info.js +5 -5
- package/dest/block/block_hash.d.ts +2 -2
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +1 -1
- package/dest/block/block_parameter.d.ts +5 -0
- package/dest/block/block_parameter.d.ts.map +1 -0
- package/dest/block/block_parameter.js +6 -0
- package/dest/block/body.js +3 -1
- package/dest/block/checkpointed_l2_block.d.ts +267 -0
- package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
- package/dest/block/{published_l2_block.js → checkpointed_l2_block.js} +40 -4
- package/dest/block/in_block.d.ts +31 -12
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/in_block.js +17 -8
- package/dest/block/index.d.ts +3 -3
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +2 -2
- package/dest/block/l2_block.d.ts +12 -9
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +15 -10
- package/dest/block/l2_block_code_to_purge.d.ts +2 -3
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
- package/dest/block/l2_block_code_to_purge.js +6 -12
- package/dest/block/l2_block_header.d.ts +11 -15
- package/dest/block/l2_block_header.d.ts.map +1 -1
- package/dest/block/l2_block_header.js +26 -19
- package/dest/block/l2_block_info.d.ts +16 -11
- package/dest/block/l2_block_info.d.ts.map +1 -1
- package/dest/block/l2_block_info.js +8 -7
- package/dest/block/l2_block_new.d.ts +36 -10
- package/dest/block/l2_block_new.d.ts.map +1 -1
- package/dest/block/l2_block_new.js +41 -21
- package/dest/block/l2_block_source.d.ts +340 -146
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +27 -15
- package/dest/block/l2_block_stream/index.d.ts +2 -1
- package/dest/block/l2_block_stream/index.d.ts.map +1 -1
- package/dest/block/l2_block_stream/index.js +1 -0
- package/dest/block/l2_block_stream/interfaces.d.ts +12 -5
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +9 -2
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.js +112 -31
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -15
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -59
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
- package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
- package/dest/block/proposal/attestations_and_signers.d.ts +2 -2
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
- package/dest/block/proposal/committee_attestation.d.ts +2 -2
- package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +487 -43
- package/dest/block/validate_block_result.d.ts +24 -24
- package/dest/block/validate_block_result.d.ts.map +1 -1
- package/dest/block/validate_block_result.js +13 -13
- package/dest/checkpoint/checkpoint.d.ts +44 -12
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +47 -8
- package/dest/checkpoint/checkpoint_info.d.ts +38 -0
- package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_info.js +34 -0
- package/dest/checkpoint/index.d.ts +2 -1
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +1 -0
- package/dest/checkpoint/published_checkpoint.d.ts +36 -10
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/published_checkpoint.js +12 -2
- package/dest/contract/artifact_hash.d.ts +2 -2
- package/dest/contract/artifact_hash.d.ts.map +1 -1
- package/dest/contract/artifact_hash.js +2 -2
- package/dest/contract/complete_address.d.ts +2 -2
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/complete_address.js +1 -1
- package/dest/contract/contract_address.d.ts +2 -2
- package/dest/contract/contract_address.d.ts.map +1 -1
- package/dest/contract/contract_address.js +2 -2
- package/dest/contract/contract_class.d.ts +2 -2
- package/dest/contract/contract_class.d.ts.map +1 -1
- package/dest/contract/contract_class.js +1 -1
- package/dest/contract/contract_class_id.d.ts +2 -2
- package/dest/contract/contract_class_id.d.ts.map +1 -1
- package/dest/contract/contract_class_id.js +3 -3
- package/dest/contract/contract_deployment_data.d.ts +4 -4
- package/dest/contract/contract_instance.d.ts +2 -2
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +1 -1
- package/dest/contract/contract_instance_update.d.ts +2 -2
- package/dest/contract/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/contract_instance_update.js +1 -1
- package/dest/contract/deployment_info.d.ts +2 -2
- package/dest/contract/deployment_info.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.d.ts +19 -14
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.js +35 -18
- package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
- package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.d.ts +40 -31
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.js +30 -5
- package/dest/contract/interfaces/contract_instance_update.d.ts +7 -8
- package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance_update.js +5 -5
- package/dest/contract/partial_address.d.ts +2 -2
- package/dest/contract/partial_address.d.ts.map +1 -1
- package/dest/contract/private_function.d.ts +2 -2
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +3 -2
- package/dest/contract/private_function_membership_proof.js +2 -2
- package/dest/contract/utility_function_membership_proof.js +1 -1
- package/dest/database-version/version_manager.js +3 -1
- 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 +2 -2
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
- package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
- package/dest/epoch-helpers/index.d.ts +1 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +3 -3
- package/dest/errors/simulation_error.d.ts +2 -2
- package/dest/errors/simulation_error.d.ts.map +1 -1
- package/dest/fees/transaction_fee.d.ts +2 -2
- package/dest/fees/transaction_fee.d.ts.map +1 -1
- package/dest/gas/gas.d.ts +2 -2
- package/dest/gas/gas.d.ts.map +1 -1
- package/dest/gas/gas.js +4 -2
- package/dest/gas/gas_fees.d.ts +2 -2
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +3 -1
- package/dest/gas/gas_settings.d.ts +2 -2
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +1 -1
- package/dest/hash/hash.d.ts +2 -10
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +3 -14
- package/dest/hash/map_slot.d.ts +2 -2
- package/dest/hash/map_slot.d.ts.map +1 -1
- package/dest/hash/map_slot.js +1 -1
- package/dest/interfaces/allowed_element.d.ts +8 -9
- package/dest/interfaces/allowed_element.d.ts.map +1 -1
- package/dest/interfaces/allowed_element.js +3 -3
- package/dest/interfaces/api_limit.d.ts +2 -1
- package/dest/interfaces/api_limit.d.ts.map +1 -1
- package/dest/interfaces/api_limit.js +1 -0
- package/dest/interfaces/archiver.d.ts +12 -7
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +27 -16
- package/dest/interfaces/aztec-node-admin.d.ts +47 -22
- 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.d.ts +46 -48
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +36 -31
- package/dest/interfaces/block-builder.d.ts +6 -4
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +9 -1
- package/dest/interfaces/configs.d.ts +56 -27
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +12 -6
- package/dest/interfaces/epoch-prover.d.ts +5 -5
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/get_logs_response.d.ts +23 -6
- package/dest/interfaces/get_logs_response.d.ts.map +1 -1
- package/dest/interfaces/get_logs_response.js +5 -4
- package/dest/interfaces/l2_logs_source.d.ts +12 -15
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +7 -9
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +3 -4
- package/dest/interfaces/prover-client.d.ts +5 -3
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +5 -4
- package/dest/interfaces/proving-job.d.ts +178 -174
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +1 -7
- package/dest/interfaces/public_state_source.d.ts +2 -2
- package/dest/interfaces/public_state_source.d.ts.map +1 -1
- package/dest/interfaces/server_circuit_prover.d.ts +4 -3
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
- package/dest/interfaces/slasher.d.ts +1 -1
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +3 -3
- 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 +48 -15
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +8 -6
- package/dest/interfaces/world_state.d.ts +23 -31
- package/dest/interfaces/world_state.d.ts.map +1 -1
- package/dest/interfaces/world_state.js +4 -3
- package/dest/kernel/claimed_length_array.d.ts +2 -2
- package/dest/kernel/claimed_length_array.d.ts.map +1 -1
- package/dest/kernel/claimed_length_array.js +3 -1
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
- 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 +5 -6
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +2 -2
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
- package/dest/kernel/hints/key_validation_hint.d.ts +2 -2
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_hint.js +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +4 -3
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.js +2 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +2 -2
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
- package/dest/kernel/hints/read_request.d.ts +2 -2
- package/dest/kernel/hints/read_request.d.ts.map +1 -1
- package/dest/kernel/hints/read_request.js +1 -1
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +2 -2
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
- package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
- package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
- package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
- package/dest/kernel/hints/transient_data_squashing_hint.js +4 -2
- package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
- package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
- package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
- package/dest/kernel/log_hash.d.ts +2 -2
- package/dest/kernel/log_hash.d.ts.map +1 -1
- package/dest/kernel/log_hash.js +4 -2
- package/dest/kernel/note_hash.d.ts +2 -2
- package/dest/kernel/note_hash.d.ts.map +1 -1
- package/dest/kernel/note_hash.js +1 -1
- package/dest/kernel/nullifier.d.ts +2 -2
- package/dest/kernel/nullifier.d.ts.map +1 -1
- package/dest/kernel/nullifier.js +1 -1
- package/dest/kernel/padded_side_effects.d.ts +2 -2
- package/dest/kernel/padded_side_effects.d.ts.map +1 -1
- package/dest/kernel/padded_side_effects.js +1 -1
- package/dest/kernel/private_call_data.d.ts +2 -2
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.js +1 -1
- package/dest/kernel/private_call_request.d.ts +2 -2
- package/dest/kernel/private_call_request.d.ts.map +1 -1
- package/dest/kernel/private_call_request.js +1 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts +48 -48
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +60 -60
- package/dest/kernel/private_context_inputs.d.ts +2 -2
- package/dest/kernel/private_context_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +2 -2
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.js +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -2
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +1 -1
- package/dest/kernel/private_log_data.d.ts +2 -2
- package/dest/kernel/private_log_data.d.ts.map +1 -1
- package/dest/kernel/private_log_data.js +5 -2
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +6 -3
- package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -2
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_public_accumulated_data.js +4 -2
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
- package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -2
- 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 +1 -1
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +2 -2
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +2 -2
- 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 +1 -1
- package/dest/kernel/private_validation_requests.js +3 -1
- package/dest/kernel/public_call_request.d.ts +2 -2
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/public_call_request.js +6 -3
- package/dest/kernel/utils/optional_number.d.ts +2 -2
- package/dest/kernel/utils/optional_number.d.ts.map +1 -1
- package/dest/keys/derivation.d.ts +4 -3
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +5 -2
- package/dest/keys/public_key.d.ts +2 -2
- package/dest/keys/public_key.d.ts.map +1 -1
- package/dest/keys/public_keys.d.ts +3 -2
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +3 -2
- package/dest/l1-contracts/slash_factory.d.ts +3 -2
- package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
- package/dest/l1-contracts/slash_factory.js +1 -1
- package/dest/logs/contract_class_log.d.ts +2 -2
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +5 -3
- package/dest/logs/debug_log.d.ts +2 -2
- package/dest/logs/debug_log.d.ts.map +1 -1
- package/dest/logs/debug_log.js +1 -1
- package/dest/logs/directional_app_tagging_secret.d.ts +2 -2
- package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
- package/dest/logs/directional_app_tagging_secret.js +3 -2
- package/dest/logs/extended_public_log.d.ts +11 -3
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/index.d.ts +3 -2
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +2 -1
- package/dest/logs/log_id.d.ts +16 -5
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_id.js +19 -11
- package/dest/logs/message_context.d.ts +2 -2
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/message_context.js +1 -1
- package/dest/logs/pending_tagged_log.d.ts +2 -2
- package/dest/logs/pending_tagged_log.d.ts.map +1 -1
- package/dest/logs/pending_tagged_log.js +1 -1
- package/dest/logs/private_log.d.ts +2 -2
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/private_log.js +6 -3
- package/dest/logs/public_log.d.ts +3 -2
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +7 -2
- package/dest/logs/shared_secret_derivation.d.ts +2 -2
- package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
- package/dest/logs/shared_secret_derivation.js +1 -1
- package/dest/logs/siloed_tag.d.ts +23 -0
- package/dest/logs/siloed_tag.d.ts.map +1 -0
- package/dest/logs/siloed_tag.js +30 -0
- package/dest/logs/tag.d.ts +21 -0
- package/dest/logs/tag.d.ts.map +1 -0
- package/dest/logs/tag.js +30 -0
- package/dest/logs/tx_scoped_l2_log.d.ts +32 -38
- package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
- package/dest/logs/tx_scoped_l2_log.js +40 -45
- package/dest/messaging/in_hash.d.ts +5 -3
- package/dest/messaging/in_hash.d.ts.map +1 -1
- package/dest/messaging/in_hash.js +4 -2
- package/dest/messaging/inbox_leaf.d.ts +8 -7
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/inbox_leaf.js +10 -9
- package/dest/messaging/l1_actor.d.ts +2 -2
- package/dest/messaging/l1_actor.d.ts.map +1 -1
- package/dest/messaging/l1_actor.js +2 -2
- package/dest/messaging/l1_to_l2_message.d.ts +2 -2
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.js +2 -2
- package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
- package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
- package/dest/messaging/l2_actor.d.ts +2 -2
- package/dest/messaging/l2_actor.d.ts.map +1 -1
- package/dest/messaging/l2_actor.js +2 -2
- package/dest/messaging/l2_to_l1_membership.d.ts +89 -6
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +159 -43
- package/dest/messaging/l2_to_l1_message.d.ts +3 -2
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_message.js +4 -1
- package/dest/messaging/out_hash.d.ts +3 -2
- package/dest/messaging/out_hash.d.ts.map +1 -1
- package/dest/messaging/out_hash.js +14 -5
- package/dest/note/note.d.ts +2 -2
- package/dest/note/note.d.ts.map +1 -1
- package/dest/note/note.js +5 -2
- package/dest/note/note_dao.d.ts +14 -6
- package/dest/note/note_dao.d.ts.map +1 -1
- package/dest/note/note_dao.js +19 -8
- package/dest/note/notes_filter.d.ts +4 -2
- package/dest/note/notes_filter.d.ts.map +1 -1
- package/dest/note/notes_filter.js +1 -0
- package/dest/p2p/attestation_utils.d.ts +3 -3
- package/dest/p2p/attestation_utils.d.ts.map +1 -1
- package/dest/p2p/attestation_utils.js +1 -1
- package/dest/p2p/block_proposal.d.ts +86 -22
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +122 -38
- package/dest/p2p/checkpoint_attestation.d.ts +77 -0
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
- package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +24 -20
- package/dest/p2p/checkpoint_proposal.d.ts +154 -0
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
- package/dest/p2p/checkpoint_proposal.js +217 -0
- package/dest/p2p/consensus_payload.d.ts +7 -8
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +4 -3
- package/dest/p2p/gossipable.d.ts +4 -3
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/gossipable.js +16 -5
- package/dest/p2p/index.d.ts +4 -2
- package/dest/p2p/index.d.ts.map +1 -1
- package/dest/p2p/index.js +3 -1
- package/dest/p2p/signature_utils.d.ts +5 -3
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +5 -2
- package/dest/p2p/signed_txs.d.ts +40 -0
- package/dest/p2p/signed_txs.d.ts.map +1 -0
- package/dest/p2p/signed_txs.js +70 -0
- package/dest/p2p/topic_type.d.ts +3 -2
- package/dest/p2p/topic_type.d.ts.map +1 -1
- package/dest/p2p/topic_type.js +8 -2
- package/dest/parity/parity_base_private_inputs.d.ts +2 -2
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_base_private_inputs.js +1 -1
- package/dest/parity/parity_public_inputs.d.ts +2 -2
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.js +1 -1
- package/dest/proofs/chonk_proof.d.ts +2 -2
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +2 -2
- package/dest/proofs/proof.d.ts +2 -2
- package/dest/proofs/proof.d.ts.map +1 -1
- package/dest/proofs/proof.js +1 -1
- package/dest/proofs/proof_data.d.ts +13 -1
- package/dest/proofs/proof_data.d.ts.map +1 -1
- package/dest/proofs/proof_data.js +17 -0
- package/dest/proofs/recursive_proof.d.ts +2 -2
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/proofs/recursive_proof.js +1 -1
- package/dest/rollup/avm_proof_data.d.ts +3 -5
- package/dest/rollup/avm_proof_data.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.js +1 -9
- package/dest/rollup/base_rollup_hints.d.ts +2 -2
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.js +1 -1
- package/dest/rollup/block_constant_data.d.ts +2 -2
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.js +1 -1
- package/dest/rollup/block_headers_hash.d.ts +2 -2
- package/dest/rollup/block_headers_hash.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.js +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +5 -10
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +7 -11
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_root_rollup_private_inputs.js +1 -1
- package/dest/rollup/checkpoint_constant_data.d.ts +3 -2
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
- package/dest/rollup/checkpoint_constant_data.js +5 -2
- package/dest/rollup/checkpoint_header.d.ts +20 -13
- package/dest/rollup/checkpoint_header.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.js +39 -22
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +7 -2
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +7 -3
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +3 -2
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +2 -1
- package/dest/rollup/epoch_constant_data.d.ts +2 -2
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/epoch_constant_data.js +1 -1
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_private_inputs.js +1 -1
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_public_inputs.js +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.js +2 -2
- package/dest/rollup/root_rollup_public_inputs.d.ts +9 -4
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.js +7 -4
- package/dest/rollup/tree_snapshot_diff_hints.d.ts +2 -2
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
- package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_rollup_public_inputs.js +1 -1
- package/dest/schemas/schemas.d.ts +6 -3
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +2 -1
- package/dest/slashing/types.d.ts +4 -5
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +5 -5
- package/dest/snapshots/types.d.ts +1 -1
- package/dest/snapshots/types.d.ts.map +1 -1
- package/dest/snapshots/types.js +5 -5
- package/dest/stats/stats.d.ts +10 -6
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +41 -9
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +99 -23
- package/dest/tests/mocks.d.ts +77 -15
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +155 -48
- package/dest/trees/append_only_tree_snapshot.d.ts +2 -2
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +4 -2
- package/dest/trees/database_public_state_source.d.ts +2 -2
- package/dest/trees/database_public_state_source.d.ts.map +1 -1
- package/dest/trees/database_public_state_source.js +1 -1
- package/dest/trees/nullifier_leaf.d.ts +2 -2
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.js +1 -1
- package/dest/trees/nullifier_membership_witness.d.ts +2 -2
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.js +1 -1
- package/dest/trees/public_data_leaf.d.ts +2 -2
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +1 -1
- package/dest/trees/public_data_witness.d.ts +2 -2
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/trees/public_data_witness.js +1 -1
- package/dest/tx/block_header.d.ts +12 -11
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +11 -4
- package/dest/tx/call_context.d.ts +2 -2
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/call_context.js +3 -1
- package/dest/tx/capsule.d.ts +2 -2
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/capsule.js +1 -1
- package/dest/tx/function_data.d.ts +2 -2
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/function_data.js +1 -1
- package/dest/tx/global_variable_builder.d.ts +5 -3
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +19 -12
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +11 -9
- package/dest/tx/hashed_values.d.ts +2 -2
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/hashed_values.js +1 -1
- package/dest/tx/in_tx.d.ts +26 -0
- package/dest/tx/in_tx.d.ts.map +1 -0
- package/dest/tx/in_tx.js +14 -0
- package/dest/tx/index.d.ts +2 -2
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +1 -1
- package/dest/tx/indexed_tx_effect.d.ts +12 -8
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +5 -4
- package/dest/tx/offchain_effect.d.ts +2 -2
- package/dest/tx/offchain_effect.d.ts.map +1 -1
- package/dest/tx/offchain_effect.js +1 -1
- package/dest/tx/partial_state_reference.d.ts +2 -2
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/private_execution_result.d.ts +5 -9
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +5 -22
- package/dest/tx/private_tx_constant_data.d.ts +2 -2
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
- package/dest/tx/private_tx_constant_data.js +1 -1
- package/dest/tx/processed_tx.d.ts +5 -4
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +8 -7
- package/dest/tx/profiling.d.ts +2 -2
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +1 -1
- package/dest/tx/protocol_contracts.d.ts +2 -2
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/protocol_contracts.js +1 -1
- package/dest/tx/public_call_request_with_calldata.d.ts +2 -2
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/public_call_request_with_calldata.js +4 -2
- package/dest/tx/public_simulation_output.d.ts +2 -2
- package/dest/tx/public_simulation_output.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.js +1 -1
- package/dest/tx/simulated_tx.d.ts +1031 -7
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/state_reference.d.ts +2 -2
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +3 -1
- package/dest/tx/tree_snapshots.d.ts +2 -2
- package/dest/tx/tree_snapshots.d.ts.map +1 -1
- package/dest/tx/tree_snapshots.js +3 -1
- package/dest/tx/tx.d.ts +12 -5
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +14 -4
- package/dest/tx/tx_constant_data.d.ts +2 -2
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +1 -1
- package/dest/tx/tx_context.d.ts +2 -2
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_context.js +1 -1
- package/dest/tx/tx_effect.d.ts +2 -2
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +8 -4
- package/dest/tx/tx_execution_request.d.ts +2 -2
- package/dest/tx/tx_execution_request.d.ts.map +1 -1
- package/dest/tx/tx_execution_request.js +7 -3
- package/dest/tx/tx_hash.d.ts +2 -2
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_hash.js +1 -1
- package/dest/tx/tx_receipt.d.ts +4 -3
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +2 -1
- package/dest/tx/tx_request.d.ts +2 -2
- package/dest/tx/tx_request.d.ts.map +1 -1
- package/dest/tx/tx_request.js +2 -2
- package/dest/tx/validator/tx_validator.d.ts +1 -4
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/tx/validator/tx_validator.js +4 -4
- package/dest/update-checker/update-checker.d.ts +2 -2
- package/dest/update-checker/update-checker.d.ts.map +1 -1
- package/dest/update-checker/update-checker.js +1 -1
- package/dest/validators/errors.d.ts +2 -2
- package/dest/validators/errors.d.ts.map +1 -1
- package/dest/validators/schemas.d.ts +1 -1
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +13 -13
- package/dest/versioning/versioning.d.ts +2 -2
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/vks/verification_key.d.ts +2 -2
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/verification_key.js +1 -1
- package/dest/vks/vk_data.d.ts +2 -2
- package/dest/vks/vk_data.d.ts.map +1 -1
- package/dest/vks/vk_data.js +1 -1
- package/dest/zkpassport/index.d.ts +2 -2
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/dest/zkpassport/index.js +2 -2
- package/package.json +14 -9
- package/src/abi/abi.ts +40 -34
- package/src/abi/authorization_selector.ts +3 -2
- package/src/abi/buffer.ts +1 -1
- package/src/abi/contract_artifact.ts +10 -10
- package/src/abi/decoder.ts +1 -1
- package/src/abi/encoder.ts +1 -1
- package/src/abi/event_selector.ts +3 -2
- package/src/abi/function_call.ts +1 -1
- package/src/abi/function_selector.ts +11 -2
- package/src/abi/note_selector.ts +2 -2
- package/src/abi/selector.ts +1 -1
- package/src/auth_witness/auth_witness.ts +2 -2
- package/src/avm/avm.ts +338 -20
- package/src/avm/avm_accumulated_data.ts +1 -1
- package/src/avm/avm_circuit_public_inputs.ts +1 -1
- package/src/avm/contract_storage_read.ts +1 -1
- package/src/avm/contract_storage_update_request.ts +1 -1
- package/src/avm/message_pack.ts +2 -1
- package/src/avm/public_call_stack_item_compressed.ts +1 -1
- package/src/avm/public_data_read.ts +1 -1
- package/src/avm/public_data_update_request.ts +1 -1
- package/src/avm/public_data_write.ts +1 -1
- package/src/avm/public_inner_call_request.ts +1 -1
- package/src/avm/revert_code.ts +1 -1
- package/src/aztec-address/index.ts +2 -1
- package/src/block/attestation_info.ts +10 -7
- package/src/block/block_hash.ts +1 -1
- package/src/block/block_parameter.ts +8 -0
- package/src/block/{published_l2_block.ts → checkpointed_l2_block.ts} +58 -3
- package/src/block/in_block.ts +25 -12
- package/src/block/index.ts +2 -2
- package/src/block/l2_block.ts +28 -14
- package/src/block/l2_block_code_to_purge.ts +7 -15
- package/src/block/l2_block_header.ts +27 -18
- package/src/block/l2_block_info.ts +11 -10
- package/src/block/l2_block_new.ts +59 -19
- package/src/block/l2_block_source.ts +163 -67
- package/src/block/l2_block_stream/index.ts +1 -0
- package/src/block/l2_block_stream/interfaces.ts +12 -4
- package/src/block/l2_block_stream/l2_block_stream.ts +133 -36
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +63 -54
- package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
- package/src/block/proposal/attestations_and_signers.ts +1 -1
- package/src/block/proposal/committee_attestation.ts +1 -1
- package/src/block/test/l2_tips_store_test_suite.ts +491 -36
- package/src/block/validate_block_result.ts +35 -31
- package/src/checkpoint/checkpoint.ts +59 -11
- package/src/checkpoint/checkpoint_info.ts +52 -0
- package/src/checkpoint/index.ts +1 -0
- package/src/checkpoint/published_checkpoint.ts +20 -6
- package/src/contract/artifact_hash.ts +2 -2
- package/src/contract/complete_address.ts +1 -1
- package/src/contract/contract_address.ts +2 -2
- package/src/contract/contract_class.ts +2 -2
- package/src/contract/contract_class_id.ts +3 -3
- package/src/contract/contract_instance.ts +1 -1
- package/src/contract/contract_instance_update.ts +1 -1
- package/src/contract/deployment_info.ts +1 -1
- package/src/contract/interfaces/contract_class.ts +78 -47
- package/src/contract/interfaces/contract_data_source.ts +3 -2
- package/src/contract/interfaces/contract_instance.ts +48 -16
- package/src/contract/interfaces/contract_instance_update.ts +12 -10
- package/src/contract/partial_address.ts +1 -1
- package/src/contract/private_function.ts +3 -2
- package/src/contract/private_function_membership_proof.ts +2 -2
- package/src/contract/utility_function_membership_proof.ts +1 -1
- package/src/delayed_public_mutable/delayed_public_mutable_values.ts +2 -2
- package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
- package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
- package/src/epoch-helpers/index.ts +11 -9
- package/src/errors/simulation_error.ts +1 -1
- package/src/fees/transaction_fee.ts +1 -1
- package/src/gas/gas.ts +1 -1
- package/src/gas/gas_fees.ts +1 -1
- package/src/gas/gas_settings.ts +1 -1
- package/src/hash/hash.ts +3 -13
- package/src/hash/map_slot.ts +2 -2
- package/src/interfaces/allowed_element.ts +10 -8
- package/src/interfaces/api_limit.ts +1 -0
- package/src/interfaces/archiver.ts +46 -20
- package/src/interfaces/aztec-node-admin.ts +7 -4
- package/src/interfaces/aztec-node.ts +119 -85
- package/src/interfaces/block-builder.ts +14 -3
- package/src/interfaces/configs.ts +69 -33
- package/src/interfaces/epoch-prover.ts +4 -4
- package/src/interfaces/get_logs_response.ts +13 -9
- package/src/interfaces/l2_logs_source.ts +11 -14
- package/src/interfaces/merkle_tree_operations.ts +7 -3
- package/src/interfaces/p2p.ts +8 -12
- package/src/interfaces/prover-client.ts +13 -10
- package/src/interfaces/proving-job.ts +2 -11
- package/src/interfaces/public_state_source.ts +1 -1
- package/src/interfaces/server_circuit_prover.ts +3 -3
- package/src/interfaces/slasher.ts +24 -22
- package/src/interfaces/tx_provider.ts +2 -2
- package/src/interfaces/validator.ts +80 -26
- package/src/interfaces/world_state.ts +26 -18
- package/src/kernel/claimed_length_array.ts +1 -1
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +5 -8
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +1 -1
- package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
- package/src/kernel/hints/key_validation_hint.ts +1 -1
- package/src/kernel/hints/key_validation_request.ts +2 -1
- package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
- package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
- package/src/kernel/hints/read_request.ts +1 -1
- package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
- package/src/kernel/hints/scoped_value_cache.ts +1 -1
- package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
- package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
- package/src/kernel/log_hash.ts +1 -1
- package/src/kernel/note_hash.ts +1 -1
- package/src/kernel/nullifier.ts +1 -1
- package/src/kernel/padded_side_effects.ts +1 -1
- package/src/kernel/private_call_data.ts +1 -1
- package/src/kernel/private_call_request.ts +1 -1
- package/src/kernel/private_circuit_public_inputs.ts +86 -86
- package/src/kernel/private_context_inputs.ts +1 -1
- package/src/kernel/private_kernel_circuit_public_inputs.ts +1 -1
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +1 -1
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +1 -1
- package/src/kernel/private_log_data.ts +1 -1
- package/src/kernel/private_to_avm_accumulated_data.ts +1 -1
- package/src/kernel/private_to_public_accumulated_data.ts +1 -1
- package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +2 -2
- package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +2 -2
- package/src/kernel/public_call_request.ts +1 -1
- package/src/kernel/utils/optional_number.ts +1 -1
- package/src/keys/derivation.ts +5 -2
- package/src/keys/public_key.ts +1 -1
- package/src/keys/public_keys.ts +3 -2
- package/src/l1-contracts/slash_factory.ts +3 -1
- package/src/logs/contract_class_log.ts +2 -2
- package/src/logs/debug_log.ts +1 -1
- package/src/logs/directional_app_tagging_secret.ts +4 -2
- package/src/logs/index.ts +2 -1
- package/src/logs/log_id.ts +22 -11
- package/src/logs/message_context.ts +1 -1
- package/src/logs/pending_tagged_log.ts +1 -1
- package/src/logs/private_log.ts +3 -2
- package/src/logs/public_log.ts +8 -1
- package/src/logs/shared_secret_derivation.ts +2 -2
- package/src/logs/siloed_tag.ts +44 -0
- package/src/logs/tag.ts +42 -0
- package/src/logs/tx_scoped_l2_log.ts +48 -45
- package/src/messaging/in_hash.ts +4 -2
- package/src/messaging/inbox_leaf.ts +11 -10
- package/src/messaging/l1_actor.ts +2 -2
- package/src/messaging/l1_to_l2_message.ts +3 -2
- package/src/messaging/l1_to_l2_message_source.ts +5 -10
- package/src/messaging/l2_actor.ts +2 -2
- package/src/messaging/l2_to_l1_membership.ts +177 -52
- package/src/messaging/l2_to_l1_message.ts +5 -1
- package/src/messaging/out_hash.ts +18 -8
- package/src/note/note.ts +5 -2
- package/src/note/note_dao.ts +37 -6
- package/src/note/notes_filter.ts +4 -1
- package/src/p2p/attestation_utils.ts +3 -3
- package/src/p2p/block_proposal.ts +188 -43
- package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +33 -26
- package/src/p2p/checkpoint_proposal.ts +337 -0
- package/src/p2p/consensus_payload.ts +6 -3
- package/src/p2p/gossipable.ts +14 -4
- package/src/p2p/index.ts +3 -1
- package/src/p2p/signature_utils.ts +5 -2
- package/src/p2p/signed_txs.ts +83 -0
- package/src/p2p/topic_type.ts +3 -2
- package/src/parity/parity_base_private_inputs.ts +1 -1
- package/src/parity/parity_public_inputs.ts +1 -1
- package/src/proofs/chonk_proof.ts +2 -2
- package/src/proofs/proof.ts +1 -1
- package/src/proofs/proof_data.ts +24 -0
- package/src/proofs/recursive_proof.ts +1 -1
- package/src/rollup/avm_proof_data.ts +2 -9
- package/src/rollup/base_rollup_hints.ts +1 -1
- package/src/rollup/block_constant_data.ts +1 -1
- package/src/rollup/block_headers_hash.ts +1 -1
- package/src/rollup/block_rollup_public_inputs.ts +4 -10
- package/src/rollup/block_root_rollup_private_inputs.ts +1 -1
- package/src/rollup/checkpoint_constant_data.ts +2 -1
- package/src/rollup/checkpoint_header.ts +49 -20
- package/src/rollup/checkpoint_rollup_public_inputs.ts +7 -1
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +2 -1
- package/src/rollup/epoch_constant_data.ts +1 -1
- package/src/rollup/public_chonk_verifier_private_inputs.ts +1 -1
- package/src/rollup/public_chonk_verifier_public_inputs.ts +1 -1
- package/src/rollup/public_tx_base_rollup_private_inputs.ts +2 -2
- package/src/rollup/root_rollup_public_inputs.ts +7 -1
- package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
- package/src/rollup/tx_rollup_public_inputs.ts +1 -1
- package/src/schemas/schemas.ts +6 -1
- package/src/slashing/types.ts +24 -20
- package/src/snapshots/types.ts +33 -29
- package/src/stats/stats.ts +10 -5
- package/src/tests/factories.ts +128 -26
- package/src/tests/mocks.ts +248 -70
- package/src/trees/append_only_tree_snapshot.ts +1 -1
- package/src/trees/database_public_state_source.ts +1 -1
- package/src/trees/nullifier_leaf.ts +1 -1
- package/src/trees/nullifier_membership_witness.ts +1 -1
- package/src/trees/public_data_leaf.ts +1 -1
- package/src/trees/public_data_witness.ts +1 -1
- package/src/tx/block_header.ts +17 -11
- package/src/tx/call_context.ts +1 -1
- package/src/tx/capsule.ts +1 -1
- package/src/tx/function_data.ts +1 -1
- package/src/tx/global_variable_builder.ts +9 -2
- package/src/tx/global_variables.ts +16 -10
- package/src/tx/hashed_values.ts +1 -1
- package/src/tx/in_tx.ts +24 -0
- package/src/tx/index.ts +1 -1
- package/src/tx/indexed_tx_effect.ts +6 -5
- package/src/tx/offchain_effect.ts +1 -1
- package/src/tx/partial_state_reference.ts +1 -1
- package/src/tx/private_execution_result.ts +5 -20
- package/src/tx/private_tx_constant_data.ts +1 -1
- package/src/tx/processed_tx.ts +19 -16
- package/src/tx/profiling.ts +1 -1
- package/src/tx/protocol_contracts.ts +2 -2
- package/src/tx/public_call_request_with_calldata.ts +1 -1
- package/src/tx/public_simulation_output.ts +1 -1
- package/src/tx/state_reference.ts +1 -1
- package/src/tx/tree_snapshots.ts +1 -1
- package/src/tx/tx.ts +14 -4
- package/src/tx/tx_constant_data.ts +1 -1
- package/src/tx/tx_context.ts +1 -1
- package/src/tx/tx_effect.ts +5 -3
- package/src/tx/tx_execution_request.ts +3 -1
- package/src/tx/tx_hash.ts +1 -1
- package/src/tx/tx_receipt.ts +3 -2
- package/src/tx/tx_request.ts +2 -2
- package/src/tx/validator/tx_validator.ts +8 -6
- package/src/update-checker/update-checker.ts +2 -1
- package/src/validators/errors.ts +1 -1
- package/src/validators/schemas.ts +54 -48
- package/src/versioning/versioning.ts +1 -1
- package/src/vks/verification_key.ts +1 -1
- package/src/vks/vk_data.ts +1 -1
- package/src/zkpassport/index.ts +2 -2
- package/dest/block/l2_block_number.d.ts +0 -5
- package/dest/block/l2_block_number.d.ts.map +0 -1
- package/dest/block/l2_block_number.js +0 -6
- package/dest/block/published_l2_block.d.ts +0 -130
- package/dest/block/published_l2_block.d.ts.map +0 -1
- package/dest/logs/log_with_tx_data.d.ts +0 -19
- package/dest/logs/log_with_tx_data.d.ts.map +0 -1
- package/dest/logs/log_with_tx_data.js +0 -49
- package/dest/p2p/block_attestation.d.ts +0 -80
- package/dest/p2p/block_attestation.d.ts.map +0 -1
- package/dest/tx/content_commitment.d.ts +0 -48
- package/dest/tx/content_commitment.d.ts.map +0 -1
- package/dest/tx/content_commitment.js +0 -82
- package/src/block/l2_block_number.ts +0 -8
- package/src/logs/log_with_tx_data.ts +0 -46
- package/src/tx/content_commitment.ts +0 -104
|
@@ -1,17 +1,23 @@
|
|
|
1
1
|
import { type BlockBlobData, encodeBlockBlobData } from '@aztec/blob-lib/encoding';
|
|
2
|
-
import {
|
|
2
|
+
import { BlockNumber, CheckpointNumber, CheckpointNumberSchema } from '@aztec/foundation/branded-types';
|
|
3
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
4
|
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
5
|
|
|
5
6
|
import { z } from 'zod';
|
|
6
7
|
|
|
8
|
+
import type { PrivateLog } from '../logs/private_log.js';
|
|
7
9
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
8
10
|
import { BlockHeader } from '../tx/block_header.js';
|
|
9
11
|
import { Body } from './body.js';
|
|
10
12
|
import type { L2BlockInfo } from './l2_block_info.js';
|
|
11
13
|
|
|
14
|
+
// TODO(palla/mbps): Delete the existing `L2Block` class and rename this to `L2Block`.
|
|
15
|
+
// TODO(palla/mbps): Consider moving the checkpointNumber and indexWithinCheckpoint to the header:
|
|
16
|
+
// if the blockNumber is there, why not these as well? Consider whether they should be part of the
|
|
17
|
+
// circuits structs though.
|
|
18
|
+
|
|
12
19
|
/**
|
|
13
20
|
* An L2 block with a header and a body.
|
|
14
|
-
* TODO: Delete the existing `L2Block` class and rename this to `L2Block`.
|
|
15
21
|
*/
|
|
16
22
|
export class L2BlockNew {
|
|
17
23
|
constructor(
|
|
@@ -21,10 +27,13 @@ export class L2BlockNew {
|
|
|
21
27
|
public header: BlockHeader,
|
|
22
28
|
/** L2 block body. */
|
|
23
29
|
public body: Body,
|
|
24
|
-
|
|
30
|
+
/** Number of the checkpoint that the block belongs to. */
|
|
31
|
+
public checkpointNumber: CheckpointNumber,
|
|
32
|
+
/** Index of the block within the checkpoint. */
|
|
33
|
+
public indexWithinCheckpoint: number,
|
|
25
34
|
) {}
|
|
26
35
|
|
|
27
|
-
get number():
|
|
36
|
+
get number(): BlockNumber {
|
|
28
37
|
return this.header.globalVariables.blockNumber;
|
|
29
38
|
}
|
|
30
39
|
|
|
@@ -38,8 +47,13 @@ export class L2BlockNew {
|
|
|
38
47
|
archive: AppendOnlyTreeSnapshot.schema,
|
|
39
48
|
header: BlockHeader.schema,
|
|
40
49
|
body: Body.schema,
|
|
50
|
+
checkpointNumber: CheckpointNumberSchema,
|
|
51
|
+
indexWithinCheckpoint: z.number(),
|
|
41
52
|
})
|
|
42
|
-
.transform(
|
|
53
|
+
.transform(
|
|
54
|
+
({ archive, header, body, checkpointNumber, indexWithinCheckpoint }) =>
|
|
55
|
+
new L2BlockNew(archive, header, body, checkpointNumber, indexWithinCheckpoint),
|
|
56
|
+
);
|
|
43
57
|
}
|
|
44
58
|
|
|
45
59
|
/**
|
|
@@ -51,8 +65,10 @@ export class L2BlockNew {
|
|
|
51
65
|
const header = reader.readObject(BlockHeader);
|
|
52
66
|
const archive = reader.readObject(AppendOnlyTreeSnapshot);
|
|
53
67
|
const body = reader.readObject(Body);
|
|
68
|
+
const checkpointNumber = CheckpointNumber(reader.readNumber());
|
|
69
|
+
const indexWithinCheckpoint = reader.readNumber();
|
|
54
70
|
|
|
55
|
-
return new L2BlockNew(archive, header, body);
|
|
71
|
+
return new L2BlockNew(archive, header, body, checkpointNumber, indexWithinCheckpoint);
|
|
56
72
|
}
|
|
57
73
|
|
|
58
74
|
/**
|
|
@@ -60,26 +76,39 @@ export class L2BlockNew {
|
|
|
60
76
|
* @returns A serialized L2 block as a Buffer.
|
|
61
77
|
*/
|
|
62
78
|
toBuffer() {
|
|
63
|
-
return serializeToBuffer(this.header, this.archive, this.body);
|
|
79
|
+
return serializeToBuffer(this.header, this.archive, this.body, this.checkpointNumber, this.indexWithinCheckpoint);
|
|
64
80
|
}
|
|
65
81
|
|
|
66
82
|
/**
|
|
67
83
|
* Returns the block's hash (hash of block header).
|
|
68
84
|
* @returns The block's hash.
|
|
69
85
|
*/
|
|
70
|
-
public
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
86
|
+
public hash(): Promise<Fr> {
|
|
87
|
+
return this.header.hash();
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Checks if this block equals another block.
|
|
92
|
+
* @param other - The other block to compare with.
|
|
93
|
+
* @returns True if both blocks are equal.
|
|
94
|
+
*/
|
|
95
|
+
public equals(other: this): boolean {
|
|
96
|
+
return (
|
|
97
|
+
this.archive.equals(other.archive) &&
|
|
98
|
+
this.header.equals(other.header) &&
|
|
99
|
+
this.body.equals(other.body) &&
|
|
100
|
+
this.checkpointNumber === other.checkpointNumber &&
|
|
101
|
+
this.indexWithinCheckpoint === other.indexWithinCheckpoint
|
|
102
|
+
);
|
|
75
103
|
}
|
|
76
104
|
|
|
77
|
-
public toBlobFields(
|
|
78
|
-
const blockBlobData = this.toBlockBlobData(
|
|
105
|
+
public toBlobFields(): Fr[] {
|
|
106
|
+
const blockBlobData = this.toBlockBlobData();
|
|
79
107
|
return encodeBlockBlobData(blockBlobData);
|
|
80
108
|
}
|
|
81
109
|
|
|
82
|
-
public toBlockBlobData(
|
|
110
|
+
public toBlockBlobData(): BlockBlobData {
|
|
111
|
+
const isFirstBlock = this.indexWithinCheckpoint === 0;
|
|
83
112
|
return {
|
|
84
113
|
blockEndMarker: {
|
|
85
114
|
numTxs: this.body.txEffects.length,
|
|
@@ -102,6 +131,10 @@ export class L2BlockNew {
|
|
|
102
131
|
};
|
|
103
132
|
}
|
|
104
133
|
|
|
134
|
+
static empty() {
|
|
135
|
+
return new L2BlockNew(AppendOnlyTreeSnapshot.empty(), BlockHeader.empty(), Body.empty(), CheckpointNumber(0), 0);
|
|
136
|
+
}
|
|
137
|
+
|
|
105
138
|
/**
|
|
106
139
|
* Creates an L2 block containing random data.
|
|
107
140
|
* @param l2BlockNum - The number of the L2 block.
|
|
@@ -112,13 +145,17 @@ export class L2BlockNew {
|
|
|
112
145
|
* @returns The L2 block.
|
|
113
146
|
*/
|
|
114
147
|
static async random(
|
|
115
|
-
blockNumber:
|
|
148
|
+
blockNumber: BlockNumber,
|
|
116
149
|
{
|
|
150
|
+
checkpointNumber = CheckpointNumber(Number(blockNumber)),
|
|
151
|
+
indexWithinCheckpoint = 0,
|
|
117
152
|
txsPerBlock = 1,
|
|
118
153
|
txOptions = {},
|
|
119
154
|
makeTxOptions,
|
|
120
155
|
...blockHeaderOverrides
|
|
121
156
|
}: {
|
|
157
|
+
checkpointNumber?: CheckpointNumber;
|
|
158
|
+
indexWithinCheckpoint?: number;
|
|
122
159
|
txsPerBlock?: number;
|
|
123
160
|
txOptions?: Partial<Parameters<typeof Body.random>[0]>;
|
|
124
161
|
makeTxOptions?: (txIndex: number) => Partial<Parameters<typeof Body.random>[0]>;
|
|
@@ -127,7 +164,7 @@ export class L2BlockNew {
|
|
|
127
164
|
const archive = new AppendOnlyTreeSnapshot(Fr.random(), blockNumber + 1);
|
|
128
165
|
const header = BlockHeader.random({ blockNumber, ...blockHeaderOverrides });
|
|
129
166
|
const body = await Body.random({ txsPerBlock, makeTxOptions, ...txOptions });
|
|
130
|
-
return new L2BlockNew(archive, header, body);
|
|
167
|
+
return new L2BlockNew(archive, header, body, checkpointNumber, indexWithinCheckpoint);
|
|
131
168
|
}
|
|
132
169
|
|
|
133
170
|
/**
|
|
@@ -157,13 +194,16 @@ export class L2BlockNew {
|
|
|
157
194
|
};
|
|
158
195
|
}
|
|
159
196
|
|
|
197
|
+
getPrivateLogs(): PrivateLog[] {
|
|
198
|
+
return this.body.txEffects.map(txEffect => txEffect.privateLogs).flat();
|
|
199
|
+
}
|
|
200
|
+
|
|
160
201
|
toBlockInfo(): L2BlockInfo {
|
|
161
202
|
return {
|
|
162
|
-
blockHash: this.blockHash,
|
|
163
203
|
archive: this.archive.root,
|
|
164
204
|
lastArchive: this.header.lastArchive.root,
|
|
165
205
|
blockNumber: this.number,
|
|
166
|
-
slotNumber:
|
|
206
|
+
slotNumber: this.header.getSlot(),
|
|
167
207
|
txCount: this.body.txEffects.length,
|
|
168
208
|
timestamp: this.header.globalVariables.timestamp,
|
|
169
209
|
};
|
|
@@ -1,18 +1,29 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
BlockNumber,
|
|
3
|
+
BlockNumberSchema,
|
|
4
|
+
CheckpointNumber,
|
|
5
|
+
CheckpointNumberSchema,
|
|
6
|
+
type EpochNumber,
|
|
7
|
+
type SlotNumber,
|
|
8
|
+
} from '@aztec/foundation/branded-types';
|
|
9
|
+
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
10
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
|
-
import type { Fr } from '@aztec/foundation/fields';
|
|
4
11
|
import type { TypedEventEmitter } from '@aztec/foundation/types';
|
|
5
12
|
|
|
6
13
|
import { z } from 'zod';
|
|
7
14
|
|
|
15
|
+
import type { Checkpoint } from '../checkpoint/checkpoint.js';
|
|
16
|
+
import type { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
|
|
8
17
|
import type { L1RollupConstants } from '../epoch-helpers/index.js';
|
|
18
|
+
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
9
19
|
import type { BlockHeader } from '../tx/block_header.js';
|
|
10
20
|
import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
|
|
11
21
|
import type { TxHash } from '../tx/tx_hash.js';
|
|
12
22
|
import type { TxReceipt } from '../tx/tx_receipt.js';
|
|
23
|
+
import { type CheckpointedL2Block, PublishedL2Block } from './checkpointed_l2_block.js';
|
|
13
24
|
import type { L2Block } from './l2_block.js';
|
|
14
|
-
import {
|
|
15
|
-
import type {
|
|
25
|
+
import type { L2BlockNew } from './l2_block_new.js';
|
|
26
|
+
import type { ValidateCheckpointNegativeResult, ValidateCheckpointResult } from './validate_block_result.js';
|
|
16
27
|
|
|
17
28
|
/**
|
|
18
29
|
* Interface of classes allowing for the retrieval of L2 blocks.
|
|
@@ -34,53 +45,44 @@ export interface L2BlockSource {
|
|
|
34
45
|
* Gets the number of the latest L2 block processed by the block source implementation.
|
|
35
46
|
* @returns The number of the latest L2 block processed by the block source implementation.
|
|
36
47
|
*/
|
|
37
|
-
getBlockNumber(): Promise<
|
|
48
|
+
getBlockNumber(): Promise<BlockNumber>;
|
|
38
49
|
|
|
39
50
|
/**
|
|
40
51
|
* Gets the number of the latest L2 block proven seen by the block source implementation.
|
|
41
52
|
* @returns The number of the latest L2 block proven seen by the block source implementation.
|
|
42
53
|
*/
|
|
43
|
-
getProvenBlockNumber(): Promise<
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Gets an l2 block. If a negative number is passed, the block returned is the most recent.
|
|
47
|
-
* @param number - The block number to return (inclusive).
|
|
48
|
-
* @returns The requested L2 block.
|
|
49
|
-
*/
|
|
50
|
-
getBlock(number: number): Promise<L2Block | undefined>;
|
|
54
|
+
getProvenBlockNumber(): Promise<BlockNumber>;
|
|
51
55
|
|
|
52
56
|
/**
|
|
53
57
|
* Gets an l2 block header.
|
|
54
58
|
* @param number - The block number to return or 'latest' for the most recent one.
|
|
55
59
|
* @returns The requested L2 block header.
|
|
56
60
|
*/
|
|
57
|
-
getBlockHeader(number:
|
|
61
|
+
getBlockHeader(number: BlockNumber | 'latest'): Promise<BlockHeader | undefined>;
|
|
58
62
|
|
|
59
63
|
/**
|
|
60
|
-
* Gets
|
|
61
|
-
*
|
|
62
|
-
* @param
|
|
63
|
-
* @
|
|
64
|
-
* @returns The requested L2 blocks.
|
|
64
|
+
* Gets a checkpointed L2 block by block number.
|
|
65
|
+
* Returns undefined if the block doesn't exist or hasn't been checkpointed yet.
|
|
66
|
+
* @param number - The block number to retrieve.
|
|
67
|
+
* @returns The requested checkpointed L2 block (or undefined if not found or not checkpointed).
|
|
65
68
|
*/
|
|
66
|
-
|
|
69
|
+
getCheckpointedBlock(number: BlockNumber): Promise<CheckpointedL2Block | undefined>;
|
|
67
70
|
|
|
68
|
-
|
|
69
|
-
getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
|
|
71
|
+
getCheckpointedBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<CheckpointedL2Block[]>;
|
|
70
72
|
|
|
71
73
|
/**
|
|
72
|
-
*
|
|
73
|
-
* @param
|
|
74
|
-
* @
|
|
74
|
+
* Retrieves a collection of published checkpoints
|
|
75
|
+
* @param checkpointNumber The first checkpoint to be retrieved
|
|
76
|
+
* @param limit The number of checkpoints to be retrieved
|
|
77
|
+
* @returns The collection of complete checkpoints
|
|
75
78
|
*/
|
|
76
|
-
|
|
79
|
+
getPublishedCheckpoints(checkpointNumber: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
|
|
77
80
|
|
|
78
81
|
/**
|
|
79
|
-
* Gets
|
|
80
|
-
* @param
|
|
81
|
-
* @returns The requested published block (or undefined if not found).
|
|
82
|
+
* Gets the checkpoints for a given epoch
|
|
83
|
+
* @param epochNumber - Epoch for which we want checkpoint data
|
|
82
84
|
*/
|
|
83
|
-
|
|
85
|
+
getCheckpointsForEpoch(epochNumber: EpochNumber): Promise<Checkpoint[]>;
|
|
84
86
|
|
|
85
87
|
/**
|
|
86
88
|
* Gets a block header by its hash.
|
|
@@ -96,6 +98,13 @@ export interface L2BlockSource {
|
|
|
96
98
|
*/
|
|
97
99
|
getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
|
|
98
100
|
|
|
101
|
+
/**
|
|
102
|
+
* Gets an L2 block by block number.
|
|
103
|
+
* @param number - The block number to return.
|
|
104
|
+
* @returns The requested L2 block (or undefined if not found).
|
|
105
|
+
*/
|
|
106
|
+
getL2BlockNew(number: BlockNumber): Promise<L2BlockNew | undefined>;
|
|
107
|
+
|
|
99
108
|
/**
|
|
100
109
|
* Gets a tx effect.
|
|
101
110
|
* @param txHash - The hash of the tx corresponding to the tx effect.
|
|
@@ -120,13 +129,6 @@ export interface L2BlockSource {
|
|
|
120
129
|
*/
|
|
121
130
|
getL2EpochNumber(): Promise<EpochNumber | undefined>;
|
|
122
131
|
|
|
123
|
-
/**
|
|
124
|
-
* Returns all blocks for a given epoch.
|
|
125
|
-
* @dev Use this method only with recent epochs, since it walks the block list backwards.
|
|
126
|
-
* @param epochNumber - The epoch number to return blocks for.
|
|
127
|
-
*/
|
|
128
|
-
getBlocksForEpoch(epochNumber: EpochNumber): Promise<L2Block[]>;
|
|
129
|
-
|
|
130
132
|
/**
|
|
131
133
|
* Returns all block headers for a given epoch.
|
|
132
134
|
* @dev Use this method only with recent epochs, since it walks the block list backwards.
|
|
@@ -163,13 +165,72 @@ export interface L2BlockSource {
|
|
|
163
165
|
isPendingChainInvalid(): Promise<boolean>;
|
|
164
166
|
|
|
165
167
|
/**
|
|
166
|
-
* Returns the status of the pending chain validation. If the chain is invalid, reports the earliest consecutive
|
|
167
|
-
* that is invalid, along with the reason for being invalid, which can be used to trigger an invalidation.
|
|
168
|
+
* Returns the status of the pending chain validation. If the chain is invalid, reports the earliest consecutive
|
|
169
|
+
* checkpoint that is invalid, along with the reason for being invalid, which can be used to trigger an invalidation.
|
|
168
170
|
*/
|
|
169
|
-
getPendingChainValidationStatus(): Promise<
|
|
171
|
+
getPendingChainValidationStatus(): Promise<ValidateCheckpointResult>;
|
|
170
172
|
|
|
171
173
|
/** Force a sync. */
|
|
172
174
|
syncImmediate(): Promise<void>;
|
|
175
|
+
|
|
176
|
+
/* Legacy APIS */
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Gets an l2 block. If a negative number is passed, the block returned is the most recent.
|
|
180
|
+
* @param number - The block number to return (inclusive).
|
|
181
|
+
* @returns The requested L2 block.
|
|
182
|
+
* @deprecated Use getL2BlockNew instead.
|
|
183
|
+
*/
|
|
184
|
+
getBlock(number: BlockNumber): Promise<L2Block | undefined>;
|
|
185
|
+
|
|
186
|
+
getL2BlockNew(number: BlockNumber): Promise<L2BlockNew | undefined>;
|
|
187
|
+
|
|
188
|
+
getL2BlocksNew(from: BlockNumber, limit: number, proven?: boolean): Promise<L2BlockNew[]>;
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Returns all blocks for a given epoch.
|
|
192
|
+
* @dev Use this method only with recent epochs, since it walks the block list backwards.
|
|
193
|
+
* @param epochNumber - The epoch number to return blocks for.
|
|
194
|
+
*/
|
|
195
|
+
getBlocksForEpoch(epochNumber: EpochNumber): Promise<L2Block[]>;
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Gets a published block by its block hash.
|
|
199
|
+
* @param blockHash - The block hash to retrieve.
|
|
200
|
+
* @returns The requested block (or undefined if not found).
|
|
201
|
+
*/
|
|
202
|
+
getPublishedBlockByHash(blockHash: Fr): Promise<PublishedL2Block | undefined>;
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* Gets a published block by its archive root.
|
|
206
|
+
* @param archive - The archive root to retrieve.
|
|
207
|
+
* @returns The requested block (or undefined if not found).
|
|
208
|
+
*/
|
|
209
|
+
getPublishedBlockByArchive(archive: Fr): Promise<PublishedL2Block | undefined>;
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
213
|
+
* @param from - Number of the first block to return (inclusive).
|
|
214
|
+
* @param limit - The maximum number of blocks to return.
|
|
215
|
+
* @param proven - If true, only return blocks that have been proven.
|
|
216
|
+
* @returns The requested L2 blocks.
|
|
217
|
+
*/
|
|
218
|
+
getBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<L2Block[]>;
|
|
219
|
+
|
|
220
|
+
/** Equivalent to getBlocks but includes publish data. */
|
|
221
|
+
getPublishedBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Interface for classes that can receive and store L2 blocks.
|
|
226
|
+
*/
|
|
227
|
+
export interface L2BlockSink {
|
|
228
|
+
/**
|
|
229
|
+
* Adds a block to the store.
|
|
230
|
+
* @param block - The L2 block to add.
|
|
231
|
+
* @throws If block number is not incremental (i.e., not exactly one more than the last stored block).
|
|
232
|
+
*/
|
|
233
|
+
addBlock(block: L2BlockNew): Promise<void>;
|
|
173
234
|
}
|
|
174
235
|
|
|
175
236
|
/**
|
|
@@ -179,59 +240,89 @@ export interface L2BlockSource {
|
|
|
179
240
|
export type ArchiverEmitter = TypedEventEmitter<{
|
|
180
241
|
[L2BlockSourceEvents.L2PruneDetected]: (args: L2BlockPruneEvent) => void;
|
|
181
242
|
[L2BlockSourceEvents.L2BlockProven]: (args: L2BlockProvenEvent) => void;
|
|
182
|
-
[L2BlockSourceEvents.
|
|
243
|
+
[L2BlockSourceEvents.InvalidAttestationsCheckpointDetected]: (args: InvalidCheckpointDetectedEvent) => void;
|
|
244
|
+
[L2BlockSourceEvents.L2BlocksCheckpointed]: (args: L2CheckpointEvent) => void;
|
|
183
245
|
}>;
|
|
184
246
|
export interface L2BlockSourceEventEmitter extends L2BlockSource, ArchiverEmitter {}
|
|
185
247
|
|
|
186
248
|
/**
|
|
187
249
|
* Identifier for L2 block tags.
|
|
188
|
-
* -
|
|
250
|
+
* - proposed: Latest block proposed on L2.
|
|
251
|
+
* - checkpointed: Checkpointed block on L1.
|
|
189
252
|
* - proven: Proven block on L1.
|
|
190
253
|
* - finalized: Proven block on a finalized L1 block (not implemented, set to proven for now).
|
|
191
254
|
*/
|
|
192
|
-
export type L2BlockTag = '
|
|
255
|
+
export type L2BlockTag = 'proposed' | 'checkpointed' | 'proven' | 'finalized';
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Reason for L2 block prune.
|
|
259
|
+
* - uncheckpointed: L2 blocks were pruned due to a failure to checkpoint.
|
|
260
|
+
* - unproven: L2 blocks were pruned due to a failure to prove.
|
|
261
|
+
*/
|
|
262
|
+
export type L2BlockPruneReason = 'uncheckpointed' | 'unproven';
|
|
193
263
|
|
|
194
264
|
/** Tips of the L2 chain. */
|
|
195
|
-
export type L2Tips =
|
|
265
|
+
export type L2Tips = {
|
|
266
|
+
proposed: L2BlockId;
|
|
267
|
+
checkpointed: L2TipId;
|
|
268
|
+
proven: L2TipId;
|
|
269
|
+
finalized: L2TipId;
|
|
270
|
+
};
|
|
271
|
+
|
|
272
|
+
export const GENESIS_CHECKPOINT_HEADER_HASH = CheckpointHeader.empty().hash();
|
|
196
273
|
|
|
197
274
|
/** Identifies a block by number and hash. */
|
|
198
|
-
export type L2BlockId =
|
|
275
|
+
export type L2BlockId = { number: BlockNumber; hash: string };
|
|
276
|
+
|
|
277
|
+
export type CheckpointId = { number: CheckpointNumber; hash: string };
|
|
278
|
+
|
|
279
|
+
export type L2TipId = { block: L2BlockId; checkpoint: CheckpointId };
|
|
199
280
|
|
|
200
281
|
/** Creates an L2 block id */
|
|
201
|
-
export function makeL2BlockId(number:
|
|
282
|
+
export function makeL2BlockId(number: BlockNumber, hash?: string): L2BlockId {
|
|
202
283
|
if (number !== 0 && !hash) {
|
|
203
284
|
throw new Error(`Hash is required for non-genesis blocks (got block number ${number})`);
|
|
204
285
|
}
|
|
205
286
|
return { number, hash: hash! };
|
|
206
287
|
}
|
|
207
288
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
289
|
+
/** Creates an L2 checkpoint id */
|
|
290
|
+
export function makeL2CheckpointId(number: CheckpointNumber, hash: string): CheckpointId {
|
|
291
|
+
return { number, hash };
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
const L2BlockIdSchema = z.object({
|
|
295
|
+
number: BlockNumberSchema,
|
|
296
|
+
hash: z.string(),
|
|
297
|
+
});
|
|
298
|
+
|
|
299
|
+
const L2CheckpointIdSchema = z.object({
|
|
300
|
+
number: CheckpointNumberSchema,
|
|
301
|
+
hash: z.string(),
|
|
302
|
+
});
|
|
303
|
+
|
|
304
|
+
const L2TipIdSchema = z.object({
|
|
305
|
+
block: L2BlockIdSchema,
|
|
306
|
+
checkpoint: L2CheckpointIdSchema,
|
|
307
|
+
});
|
|
219
308
|
|
|
220
309
|
export const L2TipsSchema = z.object({
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
310
|
+
proposed: L2BlockIdSchema,
|
|
311
|
+
checkpointed: L2TipIdSchema,
|
|
312
|
+
proven: L2TipIdSchema,
|
|
313
|
+
finalized: L2TipIdSchema,
|
|
314
|
+
});
|
|
225
315
|
|
|
226
316
|
export enum L2BlockSourceEvents {
|
|
227
317
|
L2PruneDetected = 'l2PruneDetected',
|
|
228
318
|
L2BlockProven = 'l2BlockProven',
|
|
229
|
-
|
|
319
|
+
L2BlocksCheckpointed = 'l2BlocksCheckpointed',
|
|
320
|
+
InvalidAttestationsCheckpointDetected = 'invalidCheckpointDetected',
|
|
230
321
|
}
|
|
231
322
|
|
|
232
323
|
export type L2BlockProvenEvent = {
|
|
233
324
|
type: 'l2BlockProven';
|
|
234
|
-
blockNumber:
|
|
325
|
+
blockNumber: BlockNumber;
|
|
235
326
|
slotNumber: SlotNumber;
|
|
236
327
|
epochNumber: EpochNumber;
|
|
237
328
|
};
|
|
@@ -239,10 +330,15 @@ export type L2BlockProvenEvent = {
|
|
|
239
330
|
export type L2BlockPruneEvent = {
|
|
240
331
|
type: 'l2PruneDetected';
|
|
241
332
|
epochNumber: EpochNumber;
|
|
242
|
-
blocks:
|
|
333
|
+
blocks: L2BlockNew[];
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
export type L2CheckpointEvent = {
|
|
337
|
+
type: 'l2BlocksCheckpointed';
|
|
338
|
+
checkpoint: PublishedCheckpoint;
|
|
243
339
|
};
|
|
244
340
|
|
|
245
|
-
export type
|
|
246
|
-
type: '
|
|
247
|
-
validationResult:
|
|
341
|
+
export type InvalidCheckpointDetectedEvent = {
|
|
342
|
+
type: 'invalidCheckpointDetected';
|
|
343
|
+
validationResult: ValidateCheckpointNegativeResult;
|
|
248
344
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { PublishedCheckpoint } from '../../checkpoint/published_checkpoint.js';
|
|
2
|
+
import type { L2BlockNew } from '../l2_block_new.js';
|
|
3
|
+
import type { CheckpointId, L2BlockId, L2BlockPruneReason, L2Tips } from '../l2_block_source.js';
|
|
3
4
|
|
|
4
5
|
/** Interface to the local view of the chain. Implemented by world-state and l2-tips-store. */
|
|
5
6
|
export interface L2BlockStreamLocalDataProvider {
|
|
@@ -15,11 +16,18 @@ export interface L2BlockStreamEventHandler {
|
|
|
15
16
|
export type L2BlockStreamEvent =
|
|
16
17
|
| /** Emits blocks added to the chain. */ {
|
|
17
18
|
type: 'blocks-added';
|
|
18
|
-
blocks:
|
|
19
|
+
blocks: L2BlockNew[];
|
|
19
20
|
}
|
|
20
|
-
| /**
|
|
21
|
+
| /** Emits checkpoints published to L1. */ {
|
|
22
|
+
type: 'chain-checkpointed';
|
|
23
|
+
checkpoint: PublishedCheckpoint;
|
|
24
|
+
block: L2BlockId;
|
|
25
|
+
}
|
|
26
|
+
| /** Reports last correct block (new tip of the proposed chain). */ {
|
|
21
27
|
type: 'chain-pruned';
|
|
28
|
+
reason: L2BlockPruneReason;
|
|
22
29
|
block: L2BlockId;
|
|
30
|
+
checkpoint: CheckpointId;
|
|
23
31
|
}
|
|
24
32
|
| /** Reports new proven block. */ {
|
|
25
33
|
type: 'chain-proven';
|