@aztec/stdlib 0.0.1-commit.181e2d196 → 0.0.1-commit.189eedb3
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 +142 -1081
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +41 -18
- package/dest/abi/authorization_selector.d.ts +4 -7
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/buffer.d.ts +14 -4
- package/dest/abi/buffer.d.ts.map +1 -1
- package/dest/abi/buffer.js +25 -4
- package/dest/abi/contract_artifact.d.ts +1 -1
- package/dest/abi/contract_artifact.d.ts.map +1 -1
- package/dest/abi/contract_artifact.js +14 -7
- 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 +60 -7
- package/dest/abi/event_metadata_definition.d.ts +3 -1
- package/dest/abi/event_metadata_definition.d.ts.map +1 -1
- package/dest/abi/event_metadata_definition.js +1 -1
- package/dest/abi/event_selector.d.ts +4 -7
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_call.d.ts +7 -25
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_selector.d.ts +3 -6
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.js +2 -4
- package/dest/abi/function_signature_decoder.d.ts +43 -0
- package/dest/abi/function_signature_decoder.d.ts.map +1 -0
- package/dest/abi/function_signature_decoder.js +66 -0
- package/dest/abi/index.d.ts +2 -1
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +1 -0
- package/dest/abi/note_selector.d.ts +4 -7
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/note_selector.js +1 -3
- package/dest/abi/selector.d.ts +2 -2
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +1 -1
- package/dest/abi/utils.d.ts +14 -1
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +16 -1
- package/dest/auth_witness/auth_witness.d.ts +2 -2
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/avm/avm.d.ts +1756 -10463
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +6 -3
- package/dest/avm/avm_accumulated_data.d.ts +22 -86
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_proving_request.d.ts +653 -5446
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/message_pack.js +12 -3
- package/dest/avm/public_data_write.d.ts +6 -12
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/revert_code.d.ts +5 -21
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +12 -30
- package/dest/aztec-address/index.d.ts +8 -8
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +9 -6
- package/dest/block/attestation_info.d.ts +3 -2
- package/dest/block/attestation_info.d.ts.map +1 -1
- package/dest/block/attestation_info.js +7 -5
- package/dest/block/block_data.d.ts +13 -38
- package/dest/block/block_data.d.ts.map +1 -1
- package/dest/block/block_data.js +2 -2
- package/dest/block/block_hash.d.ts +11 -10
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +10 -9
- package/dest/block/block_parameter.d.ts +37 -4
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +53 -2
- package/dest/block/in_block.d.ts +5 -24
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/index.d.ts +1 -2
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +0 -1
- package/dest/block/l2_block.d.ts +21 -41
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +12 -2
- package/dest/block/l2_block_info.d.ts +10 -29
- package/dest/block/l2_block_info.d.ts.map +1 -1
- package/dest/block/l2_block_info.js +6 -5
- package/dest/block/l2_block_source.d.ts +215 -356
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +67 -1
- package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -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 +44 -17
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
- 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 +3 -0
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -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 +43 -11
- package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
- package/dest/block/proposal/attestations_and_signers.js +26 -18
- package/dest/block/proposal/committee_attestation.d.ts +6 -12
- 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 +5 -4
- package/dest/checkpoint/checkpoint.d.ts +31 -96
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +18 -5
- package/dest/checkpoint/checkpoint_data.d.ts +68 -91
- package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_data.js +12 -0
- package/dest/checkpoint/checkpoint_info.d.ts +7 -23
- package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
- package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
- package/dest/checkpoint/digest.d.ts +18 -0
- package/dest/checkpoint/digest.d.ts.map +1 -0
- package/dest/checkpoint/digest.js +12 -0
- package/dest/checkpoint/index.d.ts +5 -1
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +4 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
- package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
- package/dest/checkpoint/published_checkpoint.d.ts +42 -194
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/validate.d.ts +36 -0
- package/dest/checkpoint/validate.d.ts.map +1 -0
- package/dest/checkpoint/validate.js +120 -0
- package/dest/config/chain-config.d.ts +4 -9
- package/dest/config/chain-config.d.ts.map +1 -1
- package/dest/config/chain-config.js +13 -12
- 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 +18 -5
- package/dest/contract/complete_address.d.ts +3 -2
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/complete_address.js +6 -2
- package/dest/contract/contract_address.d.ts +6 -6
- package/dest/contract/contract_address.d.ts.map +1 -1
- package/dest/contract/contract_address.js +6 -5
- package/dest/contract/contract_class_id.d.ts +2 -2
- package/dest/contract/contract_class_id.js +2 -2
- package/dest/contract/contract_deployment_data.d.ts +15 -61
- package/dest/contract/contract_deployment_data.d.ts.map +1 -1
- package/dest/contract/contract_instance.d.ts +4 -2
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +10 -3
- 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 +17 -241
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.js +1 -28
- package/dest/contract/interfaces/contract_instance.d.ts +41 -95
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.js +4 -2
- package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
- package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +2 -4
- package/dest/database-version/database_version.d.ts +5 -11
- package/dest/database-version/database_version.d.ts.map +1 -1
- package/dest/database-version/version_manager.d.ts +6 -2
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/database-version/version_manager.js +12 -1
- package/dest/epoch-helpers/index.d.ts +12 -20
- 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/fee_math.d.ts +49 -0
- package/dest/gas/fee_math.d.ts.map +1 -0
- package/dest/gas/fee_math.js +80 -0
- package/dest/gas/gas.d.ts +9 -14
- package/dest/gas/gas.d.ts.map +1 -1
- package/dest/gas/gas.js +6 -3
- package/dest/gas/gas_fees.d.ts +13 -14
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +17 -4
- package/dest/gas/gas_settings.d.ts +66 -86
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +56 -9
- package/dest/gas/index.d.ts +2 -1
- package/dest/gas/index.d.ts.map +1 -1
- package/dest/gas/index.js +1 -0
- package/dest/ha-signing/config.d.ts +28 -57
- package/dest/ha-signing/config.d.ts.map +1 -1
- package/dest/ha-signing/config.js +24 -28
- package/dest/ha-signing/index.d.ts +4 -3
- package/dest/ha-signing/index.d.ts.map +1 -1
- package/dest/ha-signing/index.js +3 -2
- package/dest/ha-signing/local_config.d.ts +32 -0
- package/dest/ha-signing/local_config.d.ts.map +1 -0
- package/dest/ha-signing/local_config.js +24 -0
- package/dest/ha-signing/types.d.ts +37 -32
- package/dest/ha-signing/types.d.ts.map +1 -1
- package/dest/ha-signing/types.js +13 -6
- package/dest/hash/hash.d.ts +34 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +63 -2
- package/dest/interfaces/allowed_element.d.ts +16 -16
- package/dest/interfaces/allowed_element.d.ts.map +1 -1
- package/dest/interfaces/allowed_element.js +8 -2
- package/dest/interfaces/api_limit.d.ts +1 -1
- package/dest/interfaces/api_limit.js +1 -1
- package/dest/interfaces/archiver.d.ts +22 -32
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +214 -69
- package/dest/interfaces/aztec-node-admin.d.ts +80 -258
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +59 -16
- 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 +21 -0
- package/dest/interfaces/aztec-node.d.ts +114 -105
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +311 -68
- package/dest/interfaces/block-builder.d.ts +40 -11
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +12 -5
- package/dest/interfaces/block_response.d.ts +90 -0
- package/dest/interfaces/block_response.d.ts.map +1 -0
- package/dest/interfaces/block_response.js +30 -0
- package/dest/interfaces/chain_tips.d.ts +50 -0
- package/dest/interfaces/chain_tips.d.ts.map +1 -0
- package/dest/interfaces/chain_tips.js +11 -0
- package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
- package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_parameter.js +18 -0
- package/dest/interfaces/checkpoint_response.d.ts +122 -0
- package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
- package/dest/interfaces/checkpoint_response.js +26 -0
- package/dest/interfaces/client.d.ts +8 -2
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +7 -1
- package/dest/interfaces/configs.d.ts +56 -105
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +12 -2
- package/dest/interfaces/l1_publish_info.d.ts +29 -0
- package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
- package/dest/interfaces/l1_publish_info.js +26 -0
- package/dest/interfaces/l2_logs_source.d.ts +14 -34
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/l2_logs_source.js +5 -0
- package/dest/interfaces/merkle_tree_operations.d.ts +20 -23
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p-bootstrap.js +8 -2
- package/dest/interfaces/p2p.d.ts +15 -5
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +28 -5
- package/dest/interfaces/private_kernel_prover.d.ts +62 -2
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.d.ts +5 -23
- package/dest/interfaces/prover-agent.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.js +4 -1
- package/dest/interfaces/prover-client.d.ts +9 -25
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +7 -4
- package/dest/interfaces/prover-node.js +22 -8
- package/dest/interfaces/proving-job-source.js +24 -4
- package/dest/interfaces/proving-job.d.ts +742 -5793
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +1 -1
- package/dest/interfaces/public_storage_override.d.ts +22 -0
- package/dest/interfaces/public_storage_override.d.ts.map +1 -0
- package/dest/interfaces/public_storage_override.js +7 -0
- package/dest/interfaces/server.d.ts +6 -1
- package/dest/interfaces/server.d.ts.map +1 -1
- package/dest/interfaces/server.js +5 -0
- package/dest/interfaces/slasher.d.ts +25 -65
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +8 -4
- package/dest/interfaces/tx_provider.d.ts +6 -1
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +70 -191
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +12 -5
- package/dest/interfaces/world_state.d.ts +6 -5
- package/dest/interfaces/world_state.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +12 -8
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.js +20 -18
- package/dest/kernel/index.d.ts +5 -1
- package/dest/kernel/index.d.ts.map +1 -1
- package/dest/kernel/index.js +4 -0
- package/dest/kernel/log_hash.d.ts +6 -2
- package/dest/kernel/log_hash.d.ts.map +1 -1
- package/dest/kernel/log_hash.js +21 -9
- package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
- package/dest/kernel/private_circuit_public_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_init_2_circuit_private_inputs.d.ts +23 -0
- package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
- package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
- package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
- package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +10 -6
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +26 -7
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
- package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_public_accumulated_data.js +6 -3
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
- package/dest/kernel/public_call_request.d.ts +15 -30
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/public_call_request.js +16 -7
- package/dest/keys/derivation.d.ts +6 -2
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +16 -6
- package/dest/keys/public_key.d.ts +22 -3
- package/dest/keys/public_key.d.ts.map +1 -1
- package/dest/keys/public_key.js +20 -1
- package/dest/keys/public_keys.d.ts +55 -82
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +102 -74
- package/dest/kv-store/config.d.ts +14 -0
- package/dest/kv-store/config.d.ts.map +1 -0
- package/dest/kv-store/config.js +21 -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/app_tagging_secret.d.ts +46 -0
- package/dest/logs/app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/app_tagging_secret.js +109 -0
- package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
- package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
- package/dest/logs/app_tagging_secret_kind.js +17 -0
- package/dest/logs/contract_class_log.d.ts +16 -34
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +11 -9
- package/dest/logs/index.d.ts +8 -7
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +7 -6
- package/dest/logs/log_cursor.d.ts +51 -0
- package/dest/logs/log_cursor.d.ts.map +1 -0
- package/dest/logs/log_cursor.js +82 -0
- package/dest/logs/log_result.d.ts +54 -0
- package/dest/logs/log_result.d.ts.map +1 -0
- package/dest/logs/log_result.js +56 -0
- package/dest/logs/logs_query.d.ts +82 -0
- package/dest/logs/logs_query.d.ts.map +1 -0
- package/dest/logs/logs_query.js +50 -0
- package/dest/logs/message_context.d.ts +6 -8
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/message_context.js +27 -9
- package/dest/logs/pending_tagged_log.d.ts +2 -3
- package/dest/logs/pending_tagged_log.d.ts.map +1 -1
- package/dest/logs/pending_tagged_log.js +2 -2
- package/dest/logs/pre_tag.d.ts +11 -24
- package/dest/logs/pre_tag.d.ts.map +1 -1
- package/dest/logs/pre_tag.js +2 -2
- package/dest/logs/private_log.d.ts +7 -12
- 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 +4 -3
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +2 -1
- package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
- package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
- package/dest/logs/query_all_logs_by_tags.js +64 -0
- 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 +8 -7
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +13 -3
- package/dest/logs/tag.d.ts +5 -6
- package/dest/logs/tag.d.ts.map +1 -1
- package/dest/logs/tag.js +4 -0
- package/dest/logs/tagging_index_range.d.ts +22 -0
- package/dest/logs/tagging_index_range.d.ts.map +1 -0
- package/dest/logs/tagging_index_range.js +8 -0
- package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
- package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
- package/dest/messaging/append_l1_to_l2_messages.js +12 -0
- package/dest/messaging/index.d.ts +2 -1
- package/dest/messaging/index.d.ts.map +1 -1
- package/dest/messaging/index.js +1 -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 +70 -7
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +130 -27
- package/dest/messaging/l2_to_l1_message.d.ts +38 -112
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_message.js +21 -12
- package/dest/noir/index.d.ts +5 -3
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/note/note.d.ts +2 -2
- package/dest/note/note.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/block_proposal.d.ts +31 -14
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +57 -39
- package/dest/p2p/checkpoint_attestation.d.ts +15 -9
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_attestation.js +23 -24
- package/dest/p2p/checkpoint_proposal.d.ts +35 -21
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +59 -61
- package/dest/p2p/consensus_payload.d.ts +26 -20
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +38 -19
- package/dest/p2p/gossipable.d.ts +4 -4
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/peer_error.d.ts +3 -1
- package/dest/p2p/peer_error.d.ts.map +1 -1
- package/dest/p2p/peer_error.js +5 -0
- package/dest/p2p/signature_utils.d.ts +28 -19
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +118 -21
- package/dest/p2p/signed_txs.d.ts +15 -13
- package/dest/p2p/signed_txs.d.ts.map +1 -1
- package/dest/p2p/signed_txs.js +26 -24
- package/dest/parity/parity_base_private_inputs.d.ts +8 -4
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_base_private_inputs.js +7 -5
- package/dest/parity/parity_public_inputs.d.ts +8 -4
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.js +6 -3
- package/dest/parity/parity_root_private_inputs.d.ts +2 -2
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.d.ts +57 -7
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +112 -15
- package/dest/proofs/recursive_proof.d.ts +2 -2
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.d.ts +1 -1
- package/dest/rollup/block_headers_hash.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.js +8 -2
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +12 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +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_public_inputs.d.ts +2 -2
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +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/schemas/schemas.d.ts +32 -78
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +2 -2
- package/dest/slashing/helpers.d.ts +2 -2
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +10 -7
- 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 +18 -112
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +16 -24
- package/dest/slashing/{tally.d.ts → votes.d.ts} +5 -6
- package/dest/slashing/votes.d.ts.map +1 -0
- package/dest/slashing/{tally.js → votes.js} +19 -10
- package/dest/snapshots/types.d.ts +15 -78
- package/dest/snapshots/types.d.ts.map +1 -1
- package/dest/stats/stats.d.ts +2 -2
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +25 -32
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +82 -82
- package/dest/tests/mocks.d.ts +11 -6
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +55 -62
- package/dest/timetable/index.d.ts +48 -1
- package/dest/timetable/index.d.ts.map +1 -1
- package/dest/timetable/index.js +184 -14
- package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +6 -3
- package/dest/trees/nullifier_leaf.d.ts +19 -42
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.js +3 -0
- package/dest/trees/nullifier_membership_witness.d.ts +16 -59
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.js +2 -14
- package/dest/trees/public_data_leaf.d.ts +21 -53
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_witness.d.ts +16 -58
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/tx/block_header.d.ts +7 -4
- 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 +4 -14
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +7 -3
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/capsule.js +9 -3
- package/dest/tx/fee_provider.d.ts +10 -0
- package/dest/tx/fee_provider.d.ts.map +1 -0
- package/dest/tx/fee_provider.js +1 -0
- package/dest/tx/function_data.d.ts +4 -10
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variable_builder.d.ts +3 -4
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +16 -49
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +8 -12
- package/dest/tx/hashed_values.d.ts +4 -3
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/hashed_values.js +6 -3
- package/dest/tx/in_tx.d.ts +5 -17
- package/dest/tx/in_tx.d.ts.map +1 -1
- package/dest/tx/index.d.ts +2 -1
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +1 -0
- package/dest/tx/indexed_tx_effect.d.ts +8 -19
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +9 -6
- package/dest/tx/partial_state_reference.d.ts +22 -65
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +6 -3
- package/dest/tx/private_execution_result.d.ts +11 -21
- 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 +67 -353
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +17 -7
- package/dest/tx/protocol_contracts.d.ts +5 -9
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/proven_tx.d.ts +30 -74
- package/dest/tx/proven_tx.d.ts.map +1 -1
- package/dest/tx/proven_tx.js +6 -0
- package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/public_call_request_with_calldata.js +6 -3
- package/dest/tx/simulated_tx.d.ts +68 -1144
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +17 -12
- package/dest/tx/state_reference.d.ts +30 -117
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +6 -4
- package/dest/tx/tree_snapshots.d.ts +27 -84
- package/dest/tx/tree_snapshots.d.ts.map +1 -1
- package/dest/tx/tree_snapshots.js +6 -4
- package/dest/tx/tx.d.ts +19 -17
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +48 -29
- package/dest/tx/tx_constant_data.d.ts +4 -3
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +6 -3
- package/dest/tx/tx_context.d.ts +32 -131
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_context.js +6 -6
- package/dest/tx/tx_hash.d.ts +6 -4
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_hash.js +13 -5
- package/dest/tx/tx_receipt.d.ts +145 -59
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +144 -58
- package/dest/tx/validator/error_texts.d.ts +8 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +9 -0
- package/dest/tx/validator/tx_validator.d.ts +5 -27
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/tx/validator/tx_validator.js +0 -4
- package/dest/types/shared.d.ts +4 -12
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/types/shared.js +6 -12
- package/dest/update-checker/dev_version.d.ts +3 -0
- package/dest/update-checker/dev_version.d.ts.map +1 -0
- package/dest/update-checker/dev_version.js +1 -0
- package/dest/update-checker/index.d.ts +4 -2
- package/dest/update-checker/index.d.ts.map +1 -1
- package/dest/update-checker/index.js +3 -1
- package/dest/update-checker/package_version.d.ts +6 -0
- package/dest/update-checker/package_version.d.ts.map +1 -0
- package/dest/update-checker/package_version.js +13 -0
- package/dest/update-checker/version_checker.d.ts +25 -0
- package/dest/update-checker/version_checker.d.ts.map +1 -0
- package/dest/update-checker/version_checker.js +50 -0
- package/dest/validators/errors.d.ts +6 -1
- package/dest/validators/errors.d.ts.map +1 -1
- package/dest/validators/errors.js +7 -0
- package/dest/validators/schemas.d.ts +147 -614
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +6 -4
- package/dest/validators/types.d.ts +20 -3
- package/dest/validators/types.d.ts.map +1 -1
- package/dest/versioning/versioning.d.ts +4 -2
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/versioning/versioning.js +5 -2
- package/dest/vks/verification_key.d.ts +4 -139
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/verification_key.js +5 -126
- package/dest/world-state/genesis_data.d.ts +13 -0
- package/dest/world-state/genesis_data.d.ts.map +1 -0
- package/dest/world-state/genesis_data.js +7 -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/dest/world-state/world_state_revision.d.ts +11 -39
- package/dest/world-state/world_state_revision.d.ts.map +1 -1
- package/dest/world-state/world_state_revision.js +7 -21
- package/package.json +14 -12
- package/src/abi/abi.ts +78 -21
- package/src/abi/authorization_selector.ts +2 -8
- package/src/abi/buffer.ts +25 -4
- package/src/abi/contract_artifact.ts +11 -6
- package/src/abi/decoder.ts +36 -79
- package/src/abi/encoder.ts +83 -7
- package/src/abi/event_metadata_definition.ts +2 -0
- package/src/abi/event_selector.ts +2 -8
- package/src/abi/function_selector.ts +4 -13
- package/src/abi/function_signature_decoder.ts +77 -0
- package/src/abi/index.ts +1 -0
- package/src/abi/note_selector.ts +3 -12
- package/src/abi/selector.ts +1 -1
- package/src/abi/utils.ts +31 -4
- package/src/avm/avm.ts +5 -0
- package/src/avm/message_pack.ts +12 -3
- package/src/avm/revert_code.ts +19 -39
- package/src/aztec-address/index.ts +15 -12
- package/src/block/attestation_info.ts +11 -11
- package/src/block/block_data.ts +3 -4
- package/src/block/block_hash.ts +21 -14
- package/src/block/block_parameter.ts +72 -4
- package/src/block/index.ts +0 -1
- package/src/block/l2_block.ts +13 -1
- package/src/block/l2_block_info.ts +8 -6
- package/src/block/l2_block_source.ts +213 -144
- package/src/block/l2_block_stream/interfaces.ts +6 -2
- package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
- package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
- package/src/block/proposal/attestations_and_signers.ts +32 -17
- package/src/block/test/l2_tips_store_test_suite.ts +10 -3
- package/src/checkpoint/checkpoint.ts +23 -4
- package/src/checkpoint/checkpoint_data.ts +44 -4
- package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
- package/src/checkpoint/digest.ts +28 -0
- package/src/checkpoint/index.ts +4 -0
- package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
- package/src/checkpoint/validate.ts +230 -0
- package/src/config/chain-config.ts +13 -16
- package/src/config/sequencer-config.ts +34 -6
- package/src/contract/complete_address.ts +7 -3
- package/src/contract/contract_address.ts +7 -7
- package/src/contract/contract_class_id.ts +2 -2
- package/src/contract/contract_instance.ts +11 -2
- package/src/contract/index.ts +0 -2
- package/src/contract/interfaces/contract_class.ts +2 -82
- package/src/contract/interfaces/contract_instance.ts +6 -2
- package/src/contract/private_function.ts +3 -1
- package/src/database-version/version_manager.ts +17 -0
- 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 +154 -0
- package/src/gas/fee_math.ts +120 -0
- package/src/gas/gas.ts +8 -3
- package/src/gas/gas_fees.ts +26 -13
- package/src/gas/gas_settings.ts +73 -15
- package/src/gas/index.ts +1 -0
- package/src/ha-signing/config.ts +56 -53
- package/src/ha-signing/index.ts +12 -1
- package/src/ha-signing/local_config.ts +46 -0
- package/src/ha-signing/types.ts +48 -34
- package/src/hash/hash.ts +63 -2
- package/src/interfaces/allowed_element.ts +28 -4
- package/src/interfaces/api_limit.ts +1 -1
- package/src/interfaces/archiver.ts +89 -92
- package/src/interfaces/aztec-node-admin.ts +35 -20
- package/src/interfaces/aztec-node-debug.ts +40 -0
- package/src/interfaces/aztec-node.ts +313 -245
- package/src/interfaces/block-builder.ts +58 -13
- package/src/interfaces/block_response.ts +92 -0
- package/src/interfaces/chain_tips.ts +24 -0
- package/src/interfaces/checkpoint_parameter.ts +20 -0
- package/src/interfaces/checkpoint_response.ts +84 -0
- package/src/interfaces/client.ts +7 -1
- package/src/interfaces/configs.ts +54 -4
- package/src/interfaces/l1_publish_info.ts +40 -0
- package/src/interfaces/l2_logs_source.ts +13 -39
- package/src/interfaces/merkle_tree_operations.ts +20 -22
- package/src/interfaces/p2p-bootstrap.ts +2 -2
- package/src/interfaces/p2p.ts +35 -15
- package/src/interfaces/private_kernel_prover.ts +88 -0
- package/src/interfaces/prover-agent.ts +1 -1
- package/src/interfaces/prover-client.ts +10 -5
- package/src/interfaces/prover-node.ts +7 -7
- package/src/interfaces/proving-job-source.ts +4 -4
- package/src/interfaces/proving-job.ts +3 -3
- package/src/interfaces/public_storage_override.ts +26 -0
- package/src/interfaces/server.ts +5 -0
- package/src/interfaces/slasher.ts +17 -10
- package/src/interfaces/tx_provider.ts +6 -0
- package/src/interfaces/validator.ts +78 -38
- package/src/interfaces/world_state.ts +5 -4
- package/src/kernel/hints/key_validation_request.ts +18 -16
- package/src/kernel/index.ts +4 -0
- package/src/kernel/log_hash.ts +29 -9
- package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
- package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
- package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
- package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +38 -14
- package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
- package/src/kernel/private_to_public_accumulated_data.ts +9 -3
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
- package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
- package/src/kernel/public_call_request.ts +22 -7
- package/src/keys/derivation.ts +21 -9
- package/src/keys/public_key.ts +26 -2
- package/src/keys/public_keys.ts +124 -110
- package/src/kv-store/config.ts +29 -0
- package/src/kv-store/index.ts +1 -0
- package/src/l1-contracts/index.ts +1 -1
- package/src/logs/app_tagging_secret.ts +137 -0
- package/src/logs/app_tagging_secret_kind.ts +21 -0
- package/src/logs/contract_class_log.ts +15 -5
- package/src/logs/index.ts +7 -6
- package/src/logs/log_cursor.ts +110 -0
- package/src/logs/log_result.ts +104 -0
- package/src/logs/logs_query.ts +138 -0
- package/src/logs/message_context.ts +22 -8
- package/src/logs/pending_tagged_log.ts +1 -3
- package/src/logs/pre_tag.ts +3 -6
- package/src/logs/private_log.ts +9 -3
- package/src/logs/public_log.ts +4 -2
- package/src/logs/query_all_logs_by_tags.ts +98 -0
- package/src/logs/shared_secret_derivation.ts +21 -10
- package/src/logs/siloed_tag.ts +20 -11
- package/src/logs/tag.ts +8 -8
- package/src/logs/tagging_index_range.ts +18 -0
- package/src/messaging/append_l1_to_l2_messages.ts +21 -0
- package/src/messaging/index.ts +1 -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 +189 -35
- package/src/messaging/l2_to_l1_message.ts +29 -9
- package/src/noir/index.ts +4 -2
- package/src/note/note_dao.ts +1 -4
- package/src/p2p/block_proposal.ts +111 -36
- package/src/p2p/checkpoint_attestation.ts +27 -31
- package/src/p2p/checkpoint_proposal.ts +126 -85
- package/src/p2p/consensus_payload.ts +59 -28
- package/src/p2p/gossipable.ts +4 -4
- package/src/p2p/peer_error.ts +7 -0
- package/src/p2p/signature_utils.ts +110 -25
- package/src/p2p/signed_txs.ts +46 -28
- package/src/parity/parity_base_private_inputs.ts +10 -4
- package/src/parity/parity_public_inputs.ts +9 -2
- package/src/proofs/chonk_proof.ts +132 -12
- package/src/rollup/block_headers_hash.ts +11 -2
- package/src/rollup/block_rollup_public_inputs.ts +13 -0
- package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
- package/src/schemas/schemas.ts +6 -1
- package/src/slashing/helpers.ts +13 -9
- package/src/slashing/index.ts +1 -2
- package/src/slashing/serialization.ts +1 -81
- package/src/slashing/types.ts +24 -49
- package/src/slashing/{tally.ts → votes.ts} +22 -4
- package/src/stats/stats.ts +4 -0
- package/src/tests/factories.ts +103 -111
- package/src/tests/mocks.ts +83 -76
- package/src/timetable/index.ts +251 -13
- package/src/trees/append_only_tree_snapshot.ts +8 -3
- package/src/trees/nullifier_leaf.ts +4 -0
- package/src/trees/nullifier_membership_witness.ts +2 -12
- package/src/tx/block_header.ts +16 -5
- package/src/tx/capsule.ts +10 -2
- package/src/tx/fee_provider.ts +10 -0
- package/src/tx/global_variable_builder.ts +2 -3
- package/src/tx/global_variables.ts +10 -18
- package/src/tx/hashed_values.ts +8 -3
- package/src/tx/index.ts +1 -0
- package/src/tx/indexed_tx_effect.ts +18 -6
- package/src/tx/partial_state_reference.ts +8 -3
- package/src/tx/private_execution_result.ts +5 -5
- package/src/tx/profiling.ts +15 -6
- package/src/tx/proven_tx.ts +6 -0
- package/src/tx/public_call_request_with_calldata.ts +8 -3
- package/src/tx/simulated_tx.ts +30 -22
- package/src/tx/state_reference.ts +9 -4
- package/src/tx/tree_snapshots.ts +9 -4
- package/src/tx/tx.ts +63 -35
- package/src/tx/tx_constant_data.ts +8 -3
- package/src/tx/tx_context.ts +8 -3
- package/src/tx/tx_hash.ts +20 -5
- package/src/tx/tx_receipt.ts +267 -82
- package/src/tx/validator/error_texts.ts +11 -0
- package/src/tx/validator/tx_validator.ts +1 -5
- package/src/types/shared.ts +8 -13
- package/src/update-checker/dev_version.ts +2 -0
- package/src/update-checker/index.ts +3 -1
- package/src/update-checker/package_version.ts +17 -0
- package/src/update-checker/version_checker.ts +65 -0
- package/src/validators/errors.ts +9 -0
- package/src/validators/schemas.ts +6 -4
- package/src/validators/types.ts +21 -2
- package/src/versioning/versioning.ts +5 -2
- package/src/vks/verification_key.ts +5 -184
- package/src/world-state/genesis_data.ts +27 -0
- package/src/world-state/index.ts +1 -0
- package/src/world-state/world_state_revision.ts +9 -34
- package/dest/abi/mocked_keys.d.ts +0 -2
- package/dest/abi/mocked_keys.d.ts.map +0 -1
- package/dest/abi/mocked_keys.js +0 -1
- package/dest/block/checkpointed_l2_block.d.ts +0 -150
- package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
- package/dest/block/checkpointed_l2_block.js +0 -46
- 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/interfaces/get_logs_response.d.ts +0 -97
- package/dest/interfaces/get_logs_response.d.ts.map +0 -1
- package/dest/interfaces/get_logs_response.js +0 -12
- 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/logs/extended_contract_class_log.d.ts +0 -51
- package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
- package/dest/logs/extended_contract_class_log.js +0 -67
- package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
- package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
- package/dest/logs/extended_directional_app_tagging_secret.js +0 -72
- package/dest/logs/extended_public_log.d.ts +0 -106
- package/dest/logs/extended_public_log.d.ts.map +0 -1
- package/dest/logs/extended_public_log.js +0 -73
- package/dest/logs/log_filter.d.ts +0 -22
- package/dest/logs/log_filter.d.ts.map +0 -1
- package/dest/logs/log_filter.js +0 -11
- package/dest/logs/log_id.d.ts +0 -85
- package/dest/logs/log_id.d.ts.map +0 -1
- package/dest/logs/log_id.js +0 -94
- package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
- package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
- package/dest/logs/tx_scoped_l2_log.js +0 -70
- 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/abi/mocked_keys.ts +0 -2
- package/src/block/checkpointed_l2_block.ts +0 -70
- package/src/contract/private_function_membership_proof.ts +0 -167
- package/src/contract/utility_function_membership_proof.ts +0 -118
- package/src/interfaces/get_logs_response.ts +0 -35
- package/src/l1-contracts/slash_factory.ts +0 -180
- package/src/logs/extended_contract_class_log.ts +0 -87
- package/src/logs/extended_directional_app_tagging_secret.ts +0 -87
- package/src/logs/extended_public_log.ts +0 -94
- package/src/logs/log_filter.ts +0 -31
- package/src/logs/log_id.ts +0 -125
- package/src/logs/tx_scoped_l2_log.ts +0 -98
- package/src/slashing/empire.ts +0 -104
- package/src/update-checker/update-checker.ts +0 -166
package/src/tx/tx.ts
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DA_GAS_PER_FIELD, TX_DA_GAS_OVERHEAD } from '@aztec/constants';
|
|
2
|
+
import { type BaseBuffer32, Buffer32 } from '@aztec/foundation/buffer';
|
|
2
3
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
4
|
import type { ZodFor } from '@aztec/foundation/schemas';
|
|
4
|
-
import {
|
|
5
|
-
|
|
5
|
+
import {
|
|
6
|
+
BufferReader,
|
|
7
|
+
BufferSink,
|
|
8
|
+
serializeArrayOfBufferableToVector,
|
|
9
|
+
serializeArrayToSink,
|
|
10
|
+
serializeToSink,
|
|
11
|
+
} from '@aztec/foundation/serialize';
|
|
12
|
+
import { type FieldsOf, unfreeze } from '@aztec/foundation/types';
|
|
6
13
|
|
|
7
14
|
import { z } from 'zod';
|
|
8
15
|
|
|
9
16
|
import type { GasSettings } from '../gas/gas_settings.js';
|
|
10
|
-
import type { GetPublicLogsResponse } from '../interfaces/get_logs_response.js';
|
|
11
|
-
import type { L2LogsSource } from '../interfaces/l2_logs_source.js';
|
|
12
17
|
import type { PublicCallRequest } from '../kernel/index.js';
|
|
13
18
|
import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
|
|
14
19
|
import { ContractClassLog, ContractClassLogFields } from '../logs/contract_class_log.js';
|
|
@@ -20,6 +25,14 @@ import { HashedValues } from './hashed_values.js';
|
|
|
20
25
|
import { PublicCallRequestWithCalldata } from './public_call_request_with_calldata.js';
|
|
21
26
|
import { TxHash } from './tx_hash.js';
|
|
22
27
|
|
|
28
|
+
// Static presize hint for the BufferSink the no-sink Tx.toBuffer() path allocates. Empirically a
|
|
29
|
+
// public-with-enqueued-calls Tx serialized by the bootstrapped bench (yarn-project/stdlib/src/tx/
|
|
30
|
+
// tx_bench.test.ts) is ~129128 bytes; a private-only Tx is ~81763 bytes. 128 KiB covers both shapes
|
|
31
|
+
// without a single doubling-growth `ensure()` resize on the cold path. Real-world Txs that happen to
|
|
32
|
+
// exceed this still serialize correctly — the sink falls back to its standard doubling growth — just
|
|
33
|
+
// with the existing cost.
|
|
34
|
+
const TX_SINK_PRESIZE_BYTES = 131072;
|
|
35
|
+
|
|
23
36
|
/**
|
|
24
37
|
* The interface of an L2 transaction.
|
|
25
38
|
*/
|
|
@@ -63,7 +76,7 @@ export class Tx extends Gossipable {
|
|
|
63
76
|
// docs:end:tx_class
|
|
64
77
|
|
|
65
78
|
// Gossipable method
|
|
66
|
-
override generateP2PMessageIdentifier(): Promise<
|
|
79
|
+
override generateP2PMessageIdentifier(): Promise<BaseBuffer32> {
|
|
67
80
|
return Promise.resolve(new Buffer32(this.getTxHash().toBuffer()));
|
|
68
81
|
}
|
|
69
82
|
|
|
@@ -126,14 +139,15 @@ export class Tx extends Gossipable {
|
|
|
126
139
|
* Serializes the Tx object into a Buffer.
|
|
127
140
|
* @returns Buffer representation of the Tx object.
|
|
128
141
|
*/
|
|
129
|
-
toBuffer()
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
this
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
142
|
+
toBuffer(): Buffer;
|
|
143
|
+
toBuffer(sink: BufferSink): void;
|
|
144
|
+
toBuffer(sink?: BufferSink): Buffer | void {
|
|
145
|
+
if (!sink) {
|
|
146
|
+
return BufferSink.serialize(this, TX_SINK_PRESIZE_BYTES);
|
|
147
|
+
}
|
|
148
|
+
serializeToSink(sink, this.txHash, this.data, this.chonkProof);
|
|
149
|
+
serializeArrayToSink(sink, this.contractClassLogFields, 1);
|
|
150
|
+
serializeArrayToSink(sink, this.publicFunctionCalldata, 1);
|
|
137
151
|
}
|
|
138
152
|
|
|
139
153
|
static get schema(): ZodFor<Tx> {
|
|
@@ -179,15 +193,6 @@ export class Tx extends Gossipable {
|
|
|
179
193
|
return this.txHash.equals(expectedHash);
|
|
180
194
|
}
|
|
181
195
|
|
|
182
|
-
/**
|
|
183
|
-
* Gets public logs emitted by this tx.
|
|
184
|
-
* @param logsSource - An instance of `L2LogsSource` which can be used to obtain the logs.
|
|
185
|
-
* @returns The requested logs.
|
|
186
|
-
*/
|
|
187
|
-
public getPublicLogs(logsSource: L2LogsSource): Promise<GetPublicLogsResponse> {
|
|
188
|
-
return logsSource.getPublicLogs({ txHash: this.getTxHash() });
|
|
189
|
-
}
|
|
190
|
-
|
|
191
196
|
getContractClassLogs(): ContractClassLog[] {
|
|
192
197
|
const logHashes = this.data.getNonEmptyContractClassLogsHashes();
|
|
193
198
|
return logHashes.map((logHash, i) =>
|
|
@@ -264,16 +269,24 @@ export class Tx extends Gossipable {
|
|
|
264
269
|
}
|
|
265
270
|
|
|
266
271
|
/**
|
|
267
|
-
*
|
|
268
|
-
*
|
|
272
|
+
* Returns the number of fields this tx's effects will occupy in the blob,
|
|
273
|
+
* based on its private side effects only. Accurate for txs without public calls.
|
|
274
|
+
* For txs with public calls, the actual size will be larger due to public execution outputs.
|
|
269
275
|
*/
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
);
|
|
276
|
+
getPrivateTxEffectsSizeInFields(): number {
|
|
277
|
+
// 3 fields overhead: tx_start_marker, tx_hash, tx_fee.
|
|
278
|
+
// TX_DA_GAS_OVERHEAD is defined as N * DA_GAS_PER_FIELD, so this division is always exact.
|
|
279
|
+
const overheadFields = TX_DA_GAS_OVERHEAD / DA_GAS_PER_FIELD;
|
|
280
|
+
const noteHashes = this.data.getNonEmptyNoteHashes().length;
|
|
281
|
+
const nullifiers = this.data.getNonEmptyNullifiers().length;
|
|
282
|
+
const l2ToL1Msgs = this.data.getNonEmptyL2ToL1Msgs().length;
|
|
283
|
+
// Each private log occupies (emittedLength + 1) fields: content + length field
|
|
284
|
+
const privateLogFields = this.data.getNonEmptyPrivateLogs().reduce((acc, log) => acc + log.emittedLength + 1, 0);
|
|
285
|
+
// Each contract class log occupies (length + 1) fields: content + contract address
|
|
286
|
+
const contractClassLogFields = this.data
|
|
287
|
+
.getNonEmptyContractClassLogsHashes()
|
|
288
|
+
.reduce((acc, log) => acc + log.logHash.length + 1, 0);
|
|
289
|
+
return overheadFields + noteHashes + nullifiers + l2ToL1Msgs + privateLogFields + contractClassLogFields;
|
|
277
290
|
}
|
|
278
291
|
|
|
279
292
|
/**
|
|
@@ -292,6 +305,16 @@ export class Tx extends Gossipable {
|
|
|
292
305
|
return clonedTx;
|
|
293
306
|
}
|
|
294
307
|
|
|
308
|
+
/**
|
|
309
|
+
* Returns a copy of this tx with its proof stripped (replaced by an empty {@link ChonkProof}). Used when archiving
|
|
310
|
+
* txs or shipping a pending tx over RPC where the proof is not needed. Note that {@link Tx.clone} with
|
|
311
|
+
* `cloneProof = false` does not strip the proof; it shares the original.
|
|
312
|
+
* @returns A new tx with an empty proof.
|
|
313
|
+
*/
|
|
314
|
+
withoutProof(): Tx {
|
|
315
|
+
return new Tx(this.txHash, this.data, ChonkProof.empty(), this.contractClassLogFields, this.publicFunctionCalldata);
|
|
316
|
+
}
|
|
317
|
+
|
|
295
318
|
/**
|
|
296
319
|
* Creates a random tx.
|
|
297
320
|
* @param randomProof - Whether to create a random proof - this will be random bytes of the full size.
|
|
@@ -309,7 +332,7 @@ export class Tx extends Gossipable {
|
|
|
309
332
|
|
|
310
333
|
/** Recomputes the tx hash. Used for testing purposes only when a property of the tx was mutated. */
|
|
311
334
|
public async recomputeHash(): Promise<TxHash> {
|
|
312
|
-
(this
|
|
335
|
+
unfreeze(this).txHash = await Tx.computeTxHash(this);
|
|
313
336
|
return this.txHash;
|
|
314
337
|
}
|
|
315
338
|
|
|
@@ -336,7 +359,12 @@ export class TxArray extends Array<Tx> {
|
|
|
336
359
|
}
|
|
337
360
|
}
|
|
338
361
|
|
|
339
|
-
public toBuffer(): Buffer
|
|
340
|
-
|
|
362
|
+
public toBuffer(): Buffer;
|
|
363
|
+
public toBuffer(sink: BufferSink): void;
|
|
364
|
+
public toBuffer(sink?: BufferSink): Buffer | void {
|
|
365
|
+
if (!sink) {
|
|
366
|
+
return serializeArrayOfBufferableToVector(this);
|
|
367
|
+
}
|
|
368
|
+
serializeArrayToSink(sink, [...this]);
|
|
341
369
|
}
|
|
342
370
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TX_CONSTANT_DATA_LENGTH } from '@aztec/constants';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
-
import { BufferReader,
|
|
3
|
+
import { BufferReader, BufferSink, FieldReader, serializeToFields, serializeToSink } from '@aztec/foundation/serialize';
|
|
4
4
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
5
5
|
|
|
6
6
|
import { BlockHeader } from './block_header.js';
|
|
@@ -57,8 +57,13 @@ export class TxConstantData {
|
|
|
57
57
|
);
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
toBuffer()
|
|
61
|
-
|
|
60
|
+
toBuffer(): Buffer;
|
|
61
|
+
toBuffer(sink: BufferSink): void;
|
|
62
|
+
toBuffer(sink?: BufferSink): Buffer | void {
|
|
63
|
+
if (!sink) {
|
|
64
|
+
return BufferSink.serialize(this);
|
|
65
|
+
}
|
|
66
|
+
serializeToSink(sink, ...TxConstantData.getFields(this));
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
static empty() {
|
package/src/tx/tx_context.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TX_CONTEXT_LENGTH } from '@aztec/constants';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { schemas } from '@aztec/foundation/schemas';
|
|
4
|
-
import { BufferReader,
|
|
4
|
+
import { BufferReader, BufferSink, FieldReader, serializeToFields, serializeToSink } from '@aztec/foundation/serialize';
|
|
5
5
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
6
|
|
|
7
7
|
import { z } from 'zod';
|
|
@@ -49,8 +49,13 @@ export class TxContext {
|
|
|
49
49
|
* Serialize as a buffer.
|
|
50
50
|
* @returns The buffer.
|
|
51
51
|
*/
|
|
52
|
-
toBuffer()
|
|
53
|
-
|
|
52
|
+
toBuffer(): Buffer;
|
|
53
|
+
toBuffer(sink: BufferSink): void;
|
|
54
|
+
toBuffer(sink?: BufferSink): Buffer | void {
|
|
55
|
+
if (!sink) {
|
|
56
|
+
return BufferSink.serialize(this);
|
|
57
|
+
}
|
|
58
|
+
serializeToSink(sink, ...TxContext.getFields(this));
|
|
54
59
|
}
|
|
55
60
|
|
|
56
61
|
static fromFields(fields: Fr[] | FieldReader): TxContext {
|
package/src/tx/tx_hash.ts
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
BufferReader,
|
|
4
|
+
type BufferSink,
|
|
5
|
+
serializeArrayOfBufferableToVector,
|
|
6
|
+
serializeArrayToSink,
|
|
7
|
+
} from '@aztec/foundation/serialize';
|
|
3
8
|
|
|
4
9
|
import { schemas } from '../schemas/index.js';
|
|
5
10
|
|
|
@@ -34,8 +39,13 @@ export class TxHash {
|
|
|
34
39
|
return new TxHash(value);
|
|
35
40
|
}
|
|
36
41
|
|
|
37
|
-
public toBuffer()
|
|
38
|
-
|
|
42
|
+
public toBuffer(): Buffer;
|
|
43
|
+
public toBuffer(sink: BufferSink): void;
|
|
44
|
+
public toBuffer(sink?: BufferSink): Buffer | void {
|
|
45
|
+
if (!sink) {
|
|
46
|
+
return this.hash.toBuffer();
|
|
47
|
+
}
|
|
48
|
+
this.hash.toBuffer(sink);
|
|
39
49
|
}
|
|
40
50
|
|
|
41
51
|
public toString() {
|
|
@@ -82,7 +92,12 @@ export class TxHashArray extends Array<TxHash> {
|
|
|
82
92
|
}
|
|
83
93
|
}
|
|
84
94
|
|
|
85
|
-
public toBuffer(): Buffer
|
|
86
|
-
|
|
95
|
+
public toBuffer(): Buffer;
|
|
96
|
+
public toBuffer(sink: BufferSink): void;
|
|
97
|
+
public toBuffer(sink?: BufferSink): Buffer | void {
|
|
98
|
+
if (!sink) {
|
|
99
|
+
return serializeArrayOfBufferableToVector([...this]);
|
|
100
|
+
}
|
|
101
|
+
serializeArrayToSink(sink, [...this]);
|
|
87
102
|
}
|
|
88
103
|
}
|
package/src/tx/tx_receipt.ts
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
BlockNumber,
|
|
3
|
+
BlockNumberSchema,
|
|
4
|
+
EpochNumber,
|
|
5
|
+
EpochNumberSchema,
|
|
6
|
+
SlotNumber,
|
|
7
|
+
SlotNumberSchema,
|
|
8
|
+
} from '@aztec/foundation/branded-types';
|
|
9
|
+
import type { DefineIfFlag, FieldsOf, PickDefined } from '@aztec/foundation/types';
|
|
2
10
|
|
|
3
11
|
import { z } from 'zod';
|
|
4
12
|
|
|
@@ -6,6 +14,8 @@ import { RevertCode } from '../avm/revert_code.js';
|
|
|
6
14
|
import { BlockHash } from '../block/block_hash.js';
|
|
7
15
|
import { DebugLog } from '../logs/debug_log.js';
|
|
8
16
|
import { type ZodFor, schemas } from '../schemas/schemas.js';
|
|
17
|
+
import { Tx } from './tx.js';
|
|
18
|
+
import { TxEffect } from './tx_effect.js';
|
|
9
19
|
import { TxHash } from './tx_hash.js';
|
|
10
20
|
|
|
11
21
|
/** Block inclusion/finalization status. */
|
|
@@ -15,7 +25,7 @@ export enum TxStatus {
|
|
|
15
25
|
PROPOSED = 'proposed',
|
|
16
26
|
CHECKPOINTED = 'checkpointed',
|
|
17
27
|
PROVEN = 'proven',
|
|
18
|
-
FINALIZED = 'finalized',
|
|
28
|
+
FINALIZED = 'finalized',
|
|
19
29
|
}
|
|
20
30
|
|
|
21
31
|
/** Tx status sorted by finalization progress. */
|
|
@@ -28,126 +38,301 @@ export const SortedTxStatuses: TxStatus[] = [
|
|
|
28
38
|
TxStatus.FINALIZED,
|
|
29
39
|
];
|
|
30
40
|
|
|
41
|
+
/** The four statuses a mined transaction can hold, ordered by finalization progress. */
|
|
42
|
+
export const MinedTxStatuses = [TxStatus.PROPOSED, TxStatus.CHECKPOINTED, TxStatus.PROVEN, TxStatus.FINALIZED] as const;
|
|
43
|
+
|
|
44
|
+
/** Block finalization status of a mined transaction. */
|
|
45
|
+
export type MinedTxStatus = (typeof MinedTxStatuses)[number];
|
|
46
|
+
|
|
31
47
|
/** Execution result - only set when tx is in a block. */
|
|
32
48
|
export enum TxExecutionResult {
|
|
33
49
|
SUCCESS = 'success',
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
50
|
+
REVERTED = 'reverted',
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/** Returned from a `getTxReceipt` call to the node RPC API. */
|
|
54
|
+
export interface TxReceiptInterface {
|
|
55
|
+
/** The transaction's block finalization status. */
|
|
56
|
+
status: TxStatus;
|
|
57
|
+
/** The execution result of the transaction, only set when the tx is in a block. */
|
|
58
|
+
executionResult?: TxExecutionResult;
|
|
59
|
+
/** Description of the transaction error, if any. */
|
|
60
|
+
error?: string;
|
|
61
|
+
/** The transaction fee paid for the transaction. */
|
|
62
|
+
transactionFee?: bigint;
|
|
63
|
+
/** The hash of the block containing the transaction. */
|
|
64
|
+
blockHash?: BlockHash;
|
|
65
|
+
/** The block number in which the transaction was included. */
|
|
66
|
+
blockNumber?: BlockNumber;
|
|
67
|
+
/** The slot number in which the transaction's block was built. */
|
|
68
|
+
slotNumber?: SlotNumber;
|
|
69
|
+
/** The epoch number in which the transaction was included. */
|
|
70
|
+
epochNumber?: EpochNumber;
|
|
71
|
+
/** The index of the transaction within its block. */
|
|
72
|
+
txIndexInBlock?: number;
|
|
73
|
+
/** The full transaction effect, attached when requested via `includeTxEffect`. */
|
|
74
|
+
txEffect?: TxEffect;
|
|
75
|
+
/** The pending transaction, attached when requested via `includePendingTx`. */
|
|
76
|
+
tx?: Tx;
|
|
77
|
+
/**
|
|
78
|
+
* Debug logs collected during public function execution. Served only when the node is in test mode and placed on
|
|
79
|
+
* the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
|
|
80
|
+
* tx receipt is obtained).
|
|
81
|
+
*/
|
|
82
|
+
debugLogs?: DebugLog[];
|
|
83
|
+
|
|
84
|
+
/** Returns true (and narrows) if the transaction has been included in a block. */
|
|
85
|
+
isMined(): this is MinedTxReceipt;
|
|
86
|
+
|
|
87
|
+
/** Returns true (and narrows) if the transaction is pending. */
|
|
88
|
+
isPending(): this is PendingTxReceipt;
|
|
89
|
+
|
|
90
|
+
/** Returns true (and narrows) if the transaction was dropped. */
|
|
91
|
+
isDropped(): this is DroppedTxReceipt;
|
|
92
|
+
|
|
93
|
+
/** Returns true if the transaction was executed successfully. */
|
|
94
|
+
hasExecutionSucceeded(): boolean;
|
|
95
|
+
|
|
96
|
+
/** Returns true if the transaction execution reverted. */
|
|
97
|
+
hasExecutionReverted(): boolean;
|
|
37
98
|
}
|
|
38
99
|
|
|
39
100
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
101
|
+
* Common surface shared by every transaction receipt variant ({@link PendingTxReceipt}, {@link DroppedTxReceipt},
|
|
102
|
+
* {@link MinedTxReceipt}).
|
|
103
|
+
*
|
|
104
|
+
* Every cross-variant field is declared once here, optional except for `txHash` (always present) and `status`
|
|
105
|
+
* (abstract, narrowed by each subclass). Declaring the fields optional on the base lets callers read a bare
|
|
106
|
+
* {@link TxReceipt} union (without first narrowing) and keep compiling. Use the `is*` guards to narrow to the strong
|
|
107
|
+
* variant type and gain access to its required fields.
|
|
44
108
|
*/
|
|
45
|
-
|
|
109
|
+
abstract class TxReceiptBase {
|
|
110
|
+
/** The transaction's block finalization status. */
|
|
111
|
+
public abstract readonly status: TxStatus;
|
|
112
|
+
/** Description of the transaction error, if any. */
|
|
113
|
+
public readonly error?: string;
|
|
114
|
+
|
|
46
115
|
constructor(
|
|
47
116
|
/** A unique identifier for a transaction. */
|
|
48
|
-
public txHash: TxHash,
|
|
49
|
-
/** The transaction's block finalization status. */
|
|
50
|
-
public status: TxStatus,
|
|
51
|
-
/** The execution result of the transaction, only set when tx is in a block. */
|
|
52
|
-
public executionResult: TxExecutionResult | undefined,
|
|
53
|
-
/** Description of transaction error, if any. */
|
|
54
|
-
public error: string | undefined,
|
|
55
|
-
/** The transaction fee paid for the transaction. */
|
|
56
|
-
public transactionFee?: bigint,
|
|
57
|
-
/** The hash of the block containing the transaction. */
|
|
58
|
-
public blockHash?: BlockHash,
|
|
59
|
-
/** The block number in which the transaction was included. */
|
|
60
|
-
public blockNumber?: BlockNumber,
|
|
61
|
-
/**
|
|
62
|
-
* Debug logs collected during public function execution. Served only when the node is in test mode and placed on
|
|
63
|
-
* the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
|
|
64
|
-
* tx receipt is obtained).
|
|
65
|
-
*/
|
|
66
|
-
public debugLogs?: DebugLog[],
|
|
117
|
+
public readonly txHash: TxHash,
|
|
67
118
|
) {}
|
|
68
119
|
|
|
120
|
+
/** Returns true (and narrows) if the transaction has been included in a block. */
|
|
121
|
+
public isMined(): this is MinedTxReceipt {
|
|
122
|
+
return this instanceof MinedTxReceipt;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/** Returns true (and narrows) if the transaction is pending. */
|
|
126
|
+
public isPending(): this is PendingTxReceipt {
|
|
127
|
+
return this instanceof PendingTxReceipt;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/** Returns true (and narrows) if the transaction was dropped. */
|
|
131
|
+
public isDropped(): this is DroppedTxReceipt {
|
|
132
|
+
return this instanceof DroppedTxReceipt;
|
|
133
|
+
}
|
|
134
|
+
|
|
69
135
|
/** Returns true if the transaction was executed successfully. */
|
|
70
|
-
hasExecutionSucceeded(): boolean {
|
|
71
|
-
return
|
|
136
|
+
public hasExecutionSucceeded(): boolean {
|
|
137
|
+
return false;
|
|
72
138
|
}
|
|
73
139
|
|
|
74
140
|
/** Returns true if the transaction execution reverted. */
|
|
75
|
-
hasExecutionReverted(): boolean {
|
|
76
|
-
return
|
|
141
|
+
public hasExecutionReverted(): boolean {
|
|
142
|
+
return false;
|
|
77
143
|
}
|
|
144
|
+
}
|
|
78
145
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
146
|
+
abstract class UnminedTxReceipt extends TxReceiptBase {
|
|
147
|
+
public readonly executionResult: undefined = undefined;
|
|
148
|
+
public readonly transactionFee: undefined = undefined;
|
|
149
|
+
public readonly blockHash: undefined = undefined;
|
|
150
|
+
public readonly blockNumber: undefined = undefined;
|
|
151
|
+
public readonly slotNumber: undefined = undefined;
|
|
152
|
+
public readonly txIndexInBlock: undefined = undefined;
|
|
153
|
+
public readonly epochNumber: undefined = undefined;
|
|
154
|
+
public readonly txEffect: undefined = undefined;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Receipt for a transaction that is in the mempool but not yet included in a block.
|
|
159
|
+
*/
|
|
160
|
+
export class PendingTxReceipt<Opts extends GetTxReceiptOptions = GetTxReceiptOptions>
|
|
161
|
+
extends UnminedTxReceipt
|
|
162
|
+
implements TxReceiptInterface
|
|
163
|
+
{
|
|
164
|
+
public override readonly status = TxStatus.PENDING;
|
|
165
|
+
|
|
166
|
+
constructor(
|
|
167
|
+
txHash: TxHash,
|
|
168
|
+
/** The pending transaction, attached when requested via `includePendingTx`. */
|
|
169
|
+
public readonly tx: DefineIfFlag<Opts, 'includePendingTx', Tx>,
|
|
170
|
+
) {
|
|
171
|
+
super(txHash);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
static empty(): PendingTxReceipt {
|
|
175
|
+
return new PendingTxReceipt(TxHash.zero(), undefined);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
static from(fields: PickDefined<FieldsOf<PendingTxReceipt>>): PendingTxReceipt {
|
|
179
|
+
return new PendingTxReceipt(fields.txHash, fields.tx);
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
static get schema(): ZodFor<PendingTxReceipt> {
|
|
183
|
+
return z
|
|
184
|
+
.object({
|
|
185
|
+
txHash: TxHash.schema,
|
|
186
|
+
status: z.literal(TxStatus.PENDING),
|
|
187
|
+
tx: Tx.schema.optional(),
|
|
188
|
+
})
|
|
189
|
+
.transform(fields => PendingTxReceipt.from({ tx: undefined, ...fields }));
|
|
87
190
|
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* Receipt for a transaction that was dropped from the mempool without being mined.
|
|
195
|
+
*/
|
|
196
|
+
export class DroppedTxReceipt extends UnminedTxReceipt implements TxReceiptInterface {
|
|
197
|
+
public override readonly status = TxStatus.DROPPED;
|
|
198
|
+
|
|
199
|
+
public tx: undefined = undefined;
|
|
88
200
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
201
|
+
constructor(
|
|
202
|
+
txHash: TxHash,
|
|
203
|
+
public override readonly error?: string,
|
|
204
|
+
) {
|
|
205
|
+
super(txHash);
|
|
92
206
|
}
|
|
93
207
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
return this.status === TxStatus.DROPPED;
|
|
208
|
+
static empty(): DroppedTxReceipt {
|
|
209
|
+
return new DroppedTxReceipt(TxHash.zero());
|
|
97
210
|
}
|
|
98
211
|
|
|
99
|
-
static
|
|
100
|
-
return new
|
|
212
|
+
static from(fields: PickDefined<FieldsOf<DroppedTxReceipt>>): DroppedTxReceipt {
|
|
213
|
+
return new DroppedTxReceipt(fields.txHash, fields.error);
|
|
101
214
|
}
|
|
102
215
|
|
|
103
|
-
static get schema(): ZodFor<
|
|
216
|
+
static get schema(): ZodFor<DroppedTxReceipt> {
|
|
104
217
|
return z
|
|
105
218
|
.object({
|
|
106
219
|
txHash: TxHash.schema,
|
|
107
|
-
status: z.
|
|
108
|
-
executionResult: z.nativeEnum(TxExecutionResult).optional(),
|
|
220
|
+
status: z.literal(TxStatus.DROPPED),
|
|
109
221
|
error: z.string().optional(),
|
|
110
|
-
blockHash: BlockHash.schema.optional(),
|
|
111
|
-
blockNumber: BlockNumberSchema.optional(),
|
|
112
|
-
transactionFee: schemas.BigInt.optional(),
|
|
113
|
-
debugLogs: z.array(DebugLog.schema).optional(),
|
|
114
222
|
})
|
|
115
|
-
.transform(
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
223
|
+
.transform(DroppedTxReceipt.from);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* Receipt for a transaction that has been included in a block (proposed, checkpointed, proven, or finalized).
|
|
229
|
+
* All block-related fields are required for this variant.
|
|
230
|
+
*/
|
|
231
|
+
export class MinedTxReceipt<Opts extends GetTxReceiptOptions = GetTxReceiptOptions>
|
|
232
|
+
extends TxReceiptBase
|
|
233
|
+
implements TxReceiptInterface
|
|
234
|
+
{
|
|
235
|
+
public override readonly status: MinedTxStatus;
|
|
236
|
+
|
|
237
|
+
public readonly tx = undefined;
|
|
238
|
+
|
|
239
|
+
constructor(
|
|
240
|
+
txHash: TxHash,
|
|
241
|
+
status: MinedTxStatus,
|
|
242
|
+
public readonly executionResult: TxExecutionResult,
|
|
243
|
+
public readonly transactionFee: bigint,
|
|
244
|
+
public readonly blockHash: BlockHash,
|
|
245
|
+
public readonly blockNumber: BlockNumber,
|
|
246
|
+
public readonly slotNumber: SlotNumber,
|
|
247
|
+
public readonly txIndexInBlock: number,
|
|
248
|
+
public readonly epochNumber: EpochNumber,
|
|
249
|
+
public readonly txEffect: DefineIfFlag<Opts, 'includeTxEffect', TxEffect>,
|
|
250
|
+
public debugLogs?: DebugLog[],
|
|
251
|
+
) {
|
|
252
|
+
super(txHash);
|
|
253
|
+
this.status = status;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
public override hasExecutionSucceeded(): boolean {
|
|
257
|
+
return this.executionResult === TxExecutionResult.SUCCESS;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
public override hasExecutionReverted(): boolean {
|
|
261
|
+
return this.executionResult !== TxExecutionResult.SUCCESS;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
static from(fields: PickDefined<FieldsOf<MinedTxReceipt>>): MinedTxReceipt {
|
|
265
|
+
return new MinedTxReceipt(
|
|
129
266
|
fields.txHash,
|
|
130
267
|
fields.status,
|
|
131
268
|
fields.executionResult,
|
|
132
|
-
fields.error,
|
|
133
269
|
fields.transactionFee,
|
|
134
270
|
fields.blockHash,
|
|
135
271
|
fields.blockNumber,
|
|
272
|
+
fields.slotNumber,
|
|
273
|
+
fields.txIndexInBlock,
|
|
274
|
+
fields.epochNumber,
|
|
275
|
+
fields.txEffect,
|
|
136
276
|
fields.debugLogs,
|
|
137
277
|
);
|
|
138
278
|
}
|
|
139
279
|
|
|
280
|
+
static get schema(): ZodFor<MinedTxReceipt> {
|
|
281
|
+
return z
|
|
282
|
+
.object({
|
|
283
|
+
txHash: TxHash.schema,
|
|
284
|
+
status: z.enum([TxStatus.PROPOSED, TxStatus.CHECKPOINTED, TxStatus.PROVEN, TxStatus.FINALIZED]),
|
|
285
|
+
executionResult: z.nativeEnum(TxExecutionResult),
|
|
286
|
+
transactionFee: schemas.BigInt,
|
|
287
|
+
blockHash: BlockHash.schema,
|
|
288
|
+
blockNumber: BlockNumberSchema,
|
|
289
|
+
slotNumber: SlotNumberSchema,
|
|
290
|
+
txIndexInBlock: schemas.Integer,
|
|
291
|
+
epochNumber: EpochNumberSchema,
|
|
292
|
+
txEffect: TxEffect.schema.optional(),
|
|
293
|
+
debugLogs: z.array(DebugLog.schema).optional(),
|
|
294
|
+
})
|
|
295
|
+
.transform(fields => MinedTxReceipt.from({ txEffect: undefined, ...fields }));
|
|
296
|
+
}
|
|
297
|
+
|
|
140
298
|
public static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult {
|
|
141
|
-
|
|
142
|
-
return TxExecutionResult.SUCCESS;
|
|
143
|
-
} else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
|
|
144
|
-
return TxExecutionResult.APP_LOGIC_REVERTED;
|
|
145
|
-
} else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
|
|
146
|
-
return TxExecutionResult.TEARDOWN_REVERTED;
|
|
147
|
-
} else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
|
|
148
|
-
return TxExecutionResult.BOTH_REVERTED;
|
|
149
|
-
} else {
|
|
150
|
-
throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
|
|
151
|
-
}
|
|
299
|
+
return revertCode.isOK() ? TxExecutionResult.SUCCESS : TxExecutionResult.REVERTED;
|
|
152
300
|
}
|
|
153
301
|
}
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* A transaction receipt summarizing the lifecycle of a transaction in the Aztec network. Discriminated over the
|
|
305
|
+
* transaction's status: {@link PendingTxReceipt} while in the mempool, {@link DroppedTxReceipt} once dropped, and
|
|
306
|
+
* {@link MinedTxReceipt} once included in a block.
|
|
307
|
+
*/
|
|
308
|
+
export type TxReceipt<Opts extends GetTxReceiptOptions = GetTxReceiptOptions> =
|
|
309
|
+
| PendingTxReceipt<Opts>
|
|
310
|
+
| DroppedTxReceipt
|
|
311
|
+
| MinedTxReceipt<Opts>;
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* Zod schema for {@link TxReceipt}. Each member constrains its `status` field so the union routes
|
|
315
|
+
* unambiguously, giving a deterministic serialization round-trip.
|
|
316
|
+
*/
|
|
317
|
+
export const TxReceiptSchema: ZodFor<TxReceipt> = z.union([
|
|
318
|
+
PendingTxReceipt.schema,
|
|
319
|
+
DroppedTxReceipt.schema,
|
|
320
|
+
MinedTxReceipt.schema,
|
|
321
|
+
]) as ZodFor<TxReceipt>;
|
|
322
|
+
|
|
323
|
+
/** Options controlling which optional data is attached to a {@link TxReceipt}. */
|
|
324
|
+
export type GetTxReceiptOptions = {
|
|
325
|
+
/** Attach the full {@link TxEffect} (mined txs only). */
|
|
326
|
+
includeTxEffect?: boolean;
|
|
327
|
+
/** Attach the pending {@link Tx} (pending txs only). */
|
|
328
|
+
includePendingTx?: boolean;
|
|
329
|
+
/** Keep the proof on the attached pending {@link Tx}; only meaningful alongside `includePendingTx`. */
|
|
330
|
+
includeProof?: boolean;
|
|
331
|
+
};
|
|
332
|
+
|
|
333
|
+
/** Zod schema for {@link GetTxReceiptOptions}. */
|
|
334
|
+
export const GetTxReceiptOptionsSchema: ZodFor<GetTxReceiptOptions> = z.object({
|
|
335
|
+
includeTxEffect: z.boolean().optional(),
|
|
336
|
+
includePendingTx: z.boolean().optional(),
|
|
337
|
+
includeProof: z.boolean().optional(),
|
|
338
|
+
});
|