@aztec/stdlib 0.0.1-commit.7d4e6cd → 0.0.1-commit.87a0206
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/abi/function_call.d.ts +47 -9
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +20 -3
- package/dest/abi/utils.d.ts +7 -1
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +7 -0
- package/dest/auth_witness/auth_witness.d.ts +2 -1
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/avm/avm.d.ts +62 -62
- package/dest/avm/avm_accumulated_data.d.ts +30 -3
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
- package/dest/avm/avm_proving_request.d.ts +299 -299
- package/dest/avm/contract_storage_read.d.ts +13 -1
- package/dest/avm/contract_storage_read.d.ts.map +1 -1
- package/dest/avm/contract_storage_update_request.d.ts +13 -1
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
- package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
- package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
- package/dest/avm/public_data_read.d.ts +10 -1
- package/dest/avm/public_data_read.d.ts.map +1 -1
- package/dest/avm/public_data_update_request.d.ts +10 -1
- package/dest/avm/public_data_update_request.d.ts.map +1 -1
- package/dest/avm/public_data_write.d.ts +7 -1
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/public_inner_call_request.d.ts +4 -1
- package/dest/avm/public_inner_call_request.d.ts.map +1 -1
- package/dest/avm/revert_code.d.ts +4 -4
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/block/block_hash.d.ts +18 -14
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +22 -20
- package/dest/block/block_parameter.d.ts +4 -3
- package/dest/block/block_parameter.d.ts.map +1 -1
- package/dest/block/block_parameter.js +2 -0
- package/dest/block/body.d.ts +1 -1
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +2 -1
- package/dest/block/checkpointed_l2_block.d.ts +20 -137
- package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
- package/dest/block/checkpointed_l2_block.js +7 -45
- package/dest/block/in_block.d.ts +9 -9
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/in_block.js +5 -5
- package/dest/block/index.d.ts +1 -3
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +0 -2
- package/dest/block/l2_block.d.ts +56 -59
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +64 -110
- package/dest/block/l2_block_source.d.ts +65 -39
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +2 -1
- package/dest/block/l2_block_stream/interfaces.d.ts +9 -6
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -3
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.js +37 -34
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +3 -3
- package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
- package/dest/block/test/l2_tips_store_test_suite.js +2 -7
- package/dest/block/validate_block_result.d.ts +1 -1
- package/dest/block/validate_block_result.d.ts.map +1 -1
- package/dest/block/validate_block_result.js +5 -4
- package/dest/checkpoint/checkpoint.d.ts +30 -20
- package/dest/checkpoint/checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/checkpoint.js +18 -6
- package/dest/checkpoint/published_checkpoint.d.ts +17 -15
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
- package/dest/checkpoint/published_checkpoint.js +4 -3
- package/dest/config/node-rpc-config.js +1 -1
- package/dest/contract/complete_address.d.ts +4 -1
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/contract_address.js +1 -1
- package/dest/contract/contract_class_id.d.ts +1 -1
- package/dest/contract/contract_class_id.js +1 -1
- package/dest/contract/contract_deployment_data.d.ts +5 -5
- package/dest/contract/index.d.ts +1 -3
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +0 -2
- package/dest/contract/interfaces/contract_instance.d.ts +16 -16
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function.js +2 -3
- package/dest/contract/private_function_membership_proof.d.ts +1 -1
- package/dest/contract/private_function_membership_proof.js +1 -1
- package/dest/database-version/database_version.d.ts +58 -0
- package/dest/database-version/database_version.d.ts.map +1 -0
- package/dest/database-version/database_version.js +69 -0
- package/dest/database-version/version_manager.d.ts +3 -49
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/database-version/version_manager.js +1 -66
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
- package/dest/deserialization/index.d.ts +11 -0
- package/dest/deserialization/index.d.ts.map +1 -0
- package/dest/deserialization/index.js +10 -0
- package/dest/epoch-helpers/index.d.ts +3 -1
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +5 -1
- package/dest/errors/proving_error.d.ts +2 -2
- package/dest/errors/proving_error.d.ts.map +1 -1
- package/dest/hash/hash.js +2 -2
- package/dest/hash/map_slot.d.ts +1 -1
- package/dest/hash/map_slot.d.ts.map +1 -1
- package/dest/hash/map_slot.js +4 -3
- package/dest/interfaces/api_limit.d.ts +2 -1
- package/dest/interfaces/api_limit.d.ts.map +1 -1
- package/dest/interfaces/api_limit.js +1 -0
- package/dest/interfaces/archiver.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +18 -15
- package/dest/interfaces/aztec-node-admin.d.ts +66 -27
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node-admin.js +3 -1
- package/dest/interfaces/aztec-node.d.ts +65 -68
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +10 -16
- package/dest/interfaces/block-builder.d.ts +22 -14
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +7 -0
- package/dest/interfaces/configs.d.ts +8 -8
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/get_logs_response.d.ts +16 -9
- package/dest/interfaces/get_logs_response.d.ts.map +1 -1
- package/dest/interfaces/l2_logs_source.d.ts +14 -5
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +2 -2
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/prover-broker.d.ts +16 -1
- package/dest/interfaces/prover-broker.d.ts.map +1 -1
- package/dest/interfaces/prover-broker.js +4 -1
- package/dest/interfaces/prover-client.d.ts +15 -1
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +12 -1
- package/dest/interfaces/proving-job.d.ts +48 -48
- package/dest/interfaces/slasher.d.ts +5 -1
- package/dest/interfaces/slasher.d.ts.map +1 -1
- package/dest/interfaces/slasher.js +1 -0
- package/dest/interfaces/tx_provider.d.ts +3 -3
- package/dest/interfaces/tx_provider.d.ts.map +1 -1
- package/dest/interfaces/validator.d.ts +106 -15
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +3 -2
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
- 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 +16 -6
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
- package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +2 -1
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
- package/dest/kernel/hints/read_request.d.ts +7 -1
- package/dest/kernel/hints/read_request.d.ts.map +1 -1
- package/dest/kernel/hints/read_request_hints.d.ts +7 -1
- package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
- package/dest/kernel/private_accumulated_data.d.ts +23 -1
- package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.d.ts +25 -1
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_request.d.ts +16 -1
- package/dest/kernel/private_call_request.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts +74 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_data.d.ts +7 -1
- package/dest/kernel/private_kernel_data.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_validation_requests.d.ts +10 -1
- package/dest/kernel/private_validation_requests.d.ts.map +1 -1
- package/dest/kernel/public_call_request.d.ts +22 -1
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/utils/optional_number.d.ts +7 -1
- package/dest/kernel/utils/optional_number.d.ts.map +1 -1
- package/dest/keys/derivation.d.ts +3 -3
- package/dest/keys/derivation.js +8 -8
- package/dest/keys/key_types.d.ts +1 -1
- package/dest/keys/public_keys.d.ts +5 -1
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/utils.d.ts +1 -1
- package/dest/keys/utils.d.ts.map +1 -1
- package/dest/keys/utils.js +7 -3
- package/dest/l1-contracts/slash_factory.d.ts +1 -1
- package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
- package/dest/l1-contracts/slash_factory.js +1 -0
- package/dest/logs/extended_contract_class_log.d.ts +3 -1
- package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
- package/dest/logs/extended_public_log.d.ts +17 -9
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/log_id.d.ts +21 -14
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_id.js +20 -17
- package/dest/logs/siloed_tag.d.ts +1 -1
- package/dest/logs/siloed_tag.d.ts.map +1 -1
- package/dest/logs/siloed_tag.js +4 -3
- package/dest/messaging/inbox_leaf.d.ts +3 -1
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/l1_actor.d.ts +7 -1
- package/dest/messaging/l1_actor.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.d.ts +6 -1
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l2_actor.d.ts +7 -1
- package/dest/messaging/l2_actor.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts +3 -3
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +8 -6
- package/dest/messaging/out_hash.d.ts +41 -4
- package/dest/messaging/out_hash.d.ts.map +1 -1
- package/dest/messaging/out_hash.js +52 -26
- package/dest/note/note_dao.d.ts +36 -5
- package/dest/note/note_dao.d.ts.map +1 -1
- package/dest/note/note_dao.js +15 -12
- package/dest/p2p/block_proposal.d.ts +23 -8
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +25 -7
- package/dest/p2p/checkpoint_attestation.d.ts +5 -1
- package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.d.ts +27 -7
- package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
- package/dest/p2p/checkpoint_proposal.js +26 -5
- package/dest/p2p/consensus_payload.d.ts +4 -3
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +0 -3
- package/dest/p2p/constants.d.ts +3 -0
- package/dest/p2p/constants.d.ts.map +1 -0
- package/dest/p2p/constants.js +2 -0
- package/dest/p2p/index.d.ts +2 -1
- package/dest/p2p/index.d.ts.map +1 -1
- package/dest/p2p/index.js +1 -0
- package/dest/p2p/message_validator.d.ts +18 -3
- package/dest/p2p/message_validator.d.ts.map +1 -1
- package/dest/p2p/message_validator.js +2 -1
- package/dest/p2p/signed_txs.d.ts +3 -1
- package/dest/p2p/signed_txs.d.ts.map +1 -1
- package/dest/p2p/signed_txs.js +6 -1
- package/dest/p2p/topic_type.js +2 -1
- package/dest/parity/parity_base_private_inputs.d.ts +3 -1
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.d.ts +4 -1
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_root_private_inputs.d.ts +2 -1
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.d.ts +1 -1
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +9 -4
- package/dest/proofs/proof.d.ts +4 -1
- package/dest/proofs/proof.d.ts.map +1 -1
- package/dest/proofs/recursive_proof.d.ts +10 -1
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.d.ts +34 -1
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.d.ts +12 -1
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.js +1 -1
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +44 -3
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +2 -2
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.d.ts +29 -2
- package/dest/rollup/checkpoint_header.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.js +21 -5
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +45 -10
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -7
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
- package/dest/rollup/epoch_constant_data.d.ts +16 -1
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +17 -7
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.js +7 -4
- package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
- package/dest/schemas/schemas.d.ts +1 -1
- package/dest/slashing/empire.d.ts +1 -1
- package/dest/slashing/empire.d.ts.map +1 -1
- package/dest/slashing/empire.js +1 -0
- package/dest/slashing/helpers.d.ts +2 -2
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +3 -0
- package/dest/slashing/tally.d.ts +2 -1
- package/dest/slashing/tally.d.ts.map +1 -1
- package/dest/slashing/tally.js +6 -2
- package/dest/slashing/types.d.ts +5 -3
- package/dest/slashing/types.d.ts.map +1 -1
- package/dest/slashing/types.js +7 -1
- package/dest/stats/stats.d.ts +1 -3
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +2 -4
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +8 -17
- package/dest/tests/jest.js +1 -1
- package/dest/tests/mocks.d.ts +20 -14
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +45 -27
- package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.d.ts +13 -1
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.d.ts +10 -1
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.d.ts +16 -1
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_witness.d.ts +11 -1
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/tx/block_header.d.ts +14 -2
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +5 -1
- package/dest/tx/call_context.d.ts +13 -1
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +4 -1
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/execution_payload.d.ts +9 -1
- package/dest/tx/execution_payload.d.ts.map +1 -1
- package/dest/tx/function_data.d.ts +4 -2
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +9 -1
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/hashed_values.d.ts +7 -1
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/in_tx.d.ts +4 -4
- package/dest/tx/indexed_tx_effect.d.ts +5 -5
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
- package/dest/tx/indexed_tx_effect.js +3 -2
- package/dest/tx/partial_state_reference.d.ts +4 -1
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/private_execution_result.d.ts +23 -2
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +1 -1
- package/dest/tx/private_tx_constant_data.d.ts +16 -1
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
- package/dest/tx/profiling.d.ts +149 -26
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +44 -7
- package/dest/tx/protocol_contracts.d.ts +1 -1
- package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/state_reference.d.ts +3 -1
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/tx.d.ts +24 -1
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +6 -3
- package/dest/tx/tx_context.d.ts +2 -1
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_effect.d.ts +32 -6
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +0 -7
- package/dest/tx/tx_execution_request.d.ts +30 -1
- package/dest/tx/tx_execution_request.d.ts.map +1 -1
- package/dest/tx/tx_hash.d.ts +2 -1
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_receipt.d.ts +47 -13
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +46 -15
- package/dest/tx/tx_request.d.ts +6 -1
- package/dest/tx/tx_request.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.d.ts +2 -1
- package/dest/tx/validator/error_texts.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.js +2 -0
- package/dest/types/shared.d.ts +4 -1
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/validators/schemas.d.ts +8 -8
- package/dest/vks/verification_key.d.ts +22 -1
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/vk_data.d.ts +7 -1
- package/dest/vks/vk_data.d.ts.map +1 -1
- package/dest/zkpassport/index.d.ts +3 -4
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/dest/zkpassport/index.js +9 -9
- package/package.json +25 -12
- package/src/abi/function_call.ts +25 -3
- package/src/abi/utils.ts +17 -0
- package/src/block/block_hash.ts +26 -25
- package/src/block/block_parameter.ts +4 -2
- package/src/block/body.ts +2 -1
- package/src/block/checkpointed_l2_block.ts +8 -58
- package/src/block/in_block.ts +6 -6
- package/src/block/index.ts +0 -2
- package/src/block/l2_block.ts +102 -150
- package/src/block/l2_block_source.ts +71 -42
- package/src/block/l2_block_stream/interfaces.ts +8 -5
- package/src/block/l2_block_stream/l2_block_stream.ts +45 -37
- package/src/block/l2_block_stream/l2_tips_store_base.ts +2 -2
- package/src/block/test/l2_tips_store_test_suite.ts +4 -9
- package/src/block/validate_block_result.ts +5 -4
- package/src/checkpoint/checkpoint.ts +33 -11
- package/src/checkpoint/published_checkpoint.ts +4 -3
- package/src/config/node-rpc-config.ts +1 -1
- package/src/contract/contract_address.ts +1 -1
- package/src/contract/contract_class_id.ts +1 -1
- package/src/contract/index.ts +0 -2
- package/src/contract/private_function.ts +2 -3
- package/src/contract/private_function_membership_proof.ts +1 -1
- package/src/database-version/database_version.ts +87 -0
- package/src/database-version/version_manager.ts +1 -77
- package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
- package/src/deserialization/index.ts +21 -0
- package/src/epoch-helpers/index.ts +10 -1
- package/src/hash/hash.ts +2 -2
- package/src/hash/map_slot.ts +3 -2
- package/src/interfaces/api_limit.ts +1 -0
- package/src/interfaces/archiver.ts +18 -24
- package/src/interfaces/aztec-node-admin.ts +3 -2
- package/src/interfaces/aztec-node.ts +85 -134
- package/src/interfaces/block-builder.ts +40 -23
- package/src/interfaces/configs.ts +1 -3
- package/src/interfaces/l2_logs_source.ts +17 -4
- package/src/interfaces/p2p.ts +1 -1
- package/src/interfaces/prover-broker.ts +22 -0
- package/src/interfaces/prover-client.ts +22 -0
- package/src/interfaces/slasher.ts +2 -0
- package/src/interfaces/tx_provider.ts +2 -2
- package/src/interfaces/validator.ts +11 -12
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +17 -6
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
- package/src/keys/derivation.ts +8 -8
- package/src/keys/key_types.ts +1 -1
- package/src/keys/utils.ts +7 -3
- package/src/l1-contracts/slash_factory.ts +1 -0
- package/src/logs/log_id.ts +22 -18
- package/src/logs/siloed_tag.ts +3 -2
- package/src/messaging/l2_to_l1_membership.ts +8 -6
- package/src/messaging/out_hash.ts +60 -29
- package/src/note/note_dao.ts +18 -13
- package/src/p2p/block_proposal.ts +36 -13
- package/src/p2p/checkpoint_proposal.ts +39 -11
- package/src/p2p/consensus_payload.ts +0 -5
- package/src/p2p/constants.ts +3 -0
- package/src/p2p/index.ts +1 -0
- package/src/p2p/message_validator.ts +14 -2
- package/src/p2p/signed_txs.ts +6 -1
- package/src/p2p/topic_type.ts +1 -1
- package/src/proofs/chonk_proof.ts +9 -5
- package/src/rollup/block_headers_hash.ts +1 -1
- package/src/rollup/block_rollup_public_inputs.ts +2 -2
- package/src/rollup/checkpoint_header.ts +20 -0
- package/src/rollup/checkpoint_rollup_public_inputs.ts +16 -10
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
- package/src/rollup/root_rollup_public_inputs.ts +11 -8
- package/src/slashing/empire.ts +2 -1
- package/src/slashing/helpers.ts +4 -0
- package/src/slashing/tally.ts +8 -2
- package/src/slashing/types.ts +7 -0
- package/src/stats/stats.ts +0 -2
- package/src/tests/factories.ts +11 -31
- package/src/tests/jest.ts +1 -1
- package/src/tests/mocks.ts +62 -42
- package/src/tx/block_header.ts +11 -3
- package/src/tx/indexed_tx_effect.ts +3 -2
- package/src/tx/private_execution_result.ts +1 -1
- package/src/tx/profiling.ts +46 -4
- package/src/tx/tx.ts +8 -9
- package/src/tx/tx_effect.ts +0 -9
- package/src/tx/tx_receipt.ts +75 -18
- package/src/tx/validator/error_texts.ts +3 -0
- package/src/zkpassport/index.ts +11 -12
- package/dest/block/l2_block_code_to_purge.d.ts +0 -11
- package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
- package/dest/block/l2_block_code_to_purge.js +0 -55
- package/dest/block/l2_block_header.d.ts +0 -94
- package/dest/block/l2_block_header.d.ts.map +0 -1
- package/dest/block/l2_block_header.js +0 -160
- package/dest/block/l2_block_new.d.ts +0 -134
- package/dest/block/l2_block_new.d.ts.map +0 -1
- package/dest/block/l2_block_new.js +0 -155
- package/dest/contract/contract_class_metadata.d.ts +0 -8
- package/dest/contract/contract_class_metadata.d.ts.map +0 -1
- package/dest/contract/contract_class_metadata.js +0 -1
- package/dest/contract/contract_metadata.d.ts +0 -7
- package/dest/contract/contract_metadata.d.ts.map +0 -1
- package/dest/contract/contract_metadata.js +0 -1
- package/dest/database-version/index.d.ts +0 -2
- package/dest/database-version/index.d.ts.map +0 -1
- package/dest/database-version/index.js +0 -1
- package/src/block/l2_block_code_to_purge.ts +0 -80
- package/src/block/l2_block_header.ts +0 -255
- package/src/block/l2_block_new.ts +0 -211
- package/src/contract/contract_class_metadata.ts +0 -8
- package/src/contract/contract_metadata.ts +0 -7
- package/src/database-version/index.ts +0 -1
package/src/tx/tx.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
2
|
-
import { arraySerializedSizeOfNonEmpty } from '@aztec/foundation/collection';
|
|
3
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
3
|
import type { ZodFor } from '@aztec/foundation/schemas';
|
|
5
4
|
import { BufferReader, serializeArrayOfBufferableToVector, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
@@ -247,7 +246,7 @@ export class Tx extends Gossipable {
|
|
|
247
246
|
contractClassLogSize: this.data.getEmittedContractClassLogsLength(),
|
|
248
247
|
|
|
249
248
|
proofSize: this.chonkProof.fields.length,
|
|
250
|
-
size: this.
|
|
249
|
+
size: this.getSize(),
|
|
251
250
|
|
|
252
251
|
feePaymentMethod:
|
|
253
252
|
// needsSetup? then we pay through a fee payment contract
|
|
@@ -255,13 +254,13 @@ export class Tx extends Gossipable {
|
|
|
255
254
|
};
|
|
256
255
|
}
|
|
257
256
|
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
257
|
+
private sizeCache: number | undefined;
|
|
258
|
+
|
|
259
|
+
getSize(): number {
|
|
260
|
+
if (this.sizeCache == undefined) {
|
|
261
|
+
this.sizeCache = this.toBuffer().length;
|
|
262
|
+
}
|
|
263
|
+
return this.sizeCache;
|
|
265
264
|
}
|
|
266
265
|
|
|
267
266
|
/**
|
package/src/tx/tx_effect.ts
CHANGED
|
@@ -28,7 +28,6 @@ import { RevertCode } from '../avm/revert_code.js';
|
|
|
28
28
|
import { ContractClassLog } from '../logs/contract_class_log.js';
|
|
29
29
|
import { PrivateLog } from '../logs/private_log.js';
|
|
30
30
|
import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
|
|
31
|
-
import { computeTxOutHash } from '../messaging/out_hash.js';
|
|
32
31
|
import { TxHash } from './tx_hash.js';
|
|
33
32
|
|
|
34
33
|
export class TxEffect {
|
|
@@ -184,14 +183,6 @@ export class TxEffect {
|
|
|
184
183
|
);
|
|
185
184
|
}
|
|
186
185
|
|
|
187
|
-
/**
|
|
188
|
-
* Computes txOutHash of this tx effect.
|
|
189
|
-
* @dev Follows new_sha in unbalanced_merkle_tree.nr
|
|
190
|
-
*/
|
|
191
|
-
txOutHash(): Fr {
|
|
192
|
-
return computeTxOutHash(this.l2ToL1Msgs);
|
|
193
|
-
}
|
|
194
|
-
|
|
195
186
|
static async random({
|
|
196
187
|
numNoteHashes,
|
|
197
188
|
numNullifiers,
|
package/src/tx/tx_receipt.ts
CHANGED
|
@@ -1,19 +1,34 @@
|
|
|
1
1
|
import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
|
|
2
|
-
import type { FieldsOf } from '@aztec/foundation/types';
|
|
3
2
|
|
|
4
3
|
import { z } from 'zod';
|
|
5
4
|
|
|
6
5
|
import { RevertCode } from '../avm/revert_code.js';
|
|
7
|
-
import {
|
|
6
|
+
import { BlockHash } from '../block/block_hash.js';
|
|
8
7
|
import { type ZodFor, schemas } from '../schemas/schemas.js';
|
|
9
8
|
import { TxHash } from './tx_hash.js';
|
|
10
9
|
|
|
11
|
-
/**
|
|
12
|
-
* Possible status of a transaction.
|
|
13
|
-
*/
|
|
10
|
+
/** Block inclusion/finalization status. */
|
|
14
11
|
export enum TxStatus {
|
|
15
12
|
DROPPED = 'dropped',
|
|
16
13
|
PENDING = 'pending',
|
|
14
|
+
PROPOSED = 'proposed',
|
|
15
|
+
CHECKPOINTED = 'checkpointed',
|
|
16
|
+
PROVEN = 'proven',
|
|
17
|
+
FINALIZED = 'finalized', // TODO(#13569): Implement finalized status properly
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** Tx status sorted by finalization progress. */
|
|
21
|
+
export const SortedTxStatuses: TxStatus[] = [
|
|
22
|
+
TxStatus.DROPPED,
|
|
23
|
+
TxStatus.PENDING,
|
|
24
|
+
TxStatus.PROPOSED,
|
|
25
|
+
TxStatus.CHECKPOINTED,
|
|
26
|
+
TxStatus.PROVEN,
|
|
27
|
+
TxStatus.FINALIZED,
|
|
28
|
+
];
|
|
29
|
+
|
|
30
|
+
/** Execution result - only set when tx is in a block. */
|
|
31
|
+
export enum TxExecutionResult {
|
|
17
32
|
SUCCESS = 'success',
|
|
18
33
|
APP_LOGIC_REVERTED = 'app_logic_reverted',
|
|
19
34
|
TEARDOWN_REVERTED = 'teardown_reverted',
|
|
@@ -30,20 +45,52 @@ export class TxReceipt {
|
|
|
30
45
|
constructor(
|
|
31
46
|
/** A unique identifier for a transaction. */
|
|
32
47
|
public txHash: TxHash,
|
|
33
|
-
/** The transaction's status. */
|
|
48
|
+
/** The transaction's block finalization status. */
|
|
34
49
|
public status: TxStatus,
|
|
50
|
+
/** The execution result of the transaction, only set when tx is in a block. */
|
|
51
|
+
public executionResult: TxExecutionResult | undefined,
|
|
35
52
|
/** Description of transaction error, if any. */
|
|
36
|
-
public error: string,
|
|
53
|
+
public error: string | undefined,
|
|
37
54
|
/** The transaction fee paid for the transaction. */
|
|
38
55
|
public transactionFee?: bigint,
|
|
39
56
|
/** The hash of the block containing the transaction. */
|
|
40
|
-
public blockHash?:
|
|
57
|
+
public blockHash?: BlockHash,
|
|
41
58
|
/** The block number in which the transaction was included. */
|
|
42
59
|
public blockNumber?: BlockNumber,
|
|
43
60
|
) {}
|
|
44
61
|
|
|
62
|
+
/** Returns true if the transaction was executed successfully. */
|
|
63
|
+
hasExecutionSucceeded(): boolean {
|
|
64
|
+
return this.executionResult === TxExecutionResult.SUCCESS;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/** Returns true if the transaction execution reverted. */
|
|
68
|
+
hasExecutionReverted(): boolean {
|
|
69
|
+
return this.executionResult !== undefined && this.executionResult !== TxExecutionResult.SUCCESS;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/** Returns true if the transaction has been included in a block (proposed, checkpointed, proven, or finalized). */
|
|
73
|
+
isMined(): boolean {
|
|
74
|
+
return (
|
|
75
|
+
this.status === TxStatus.PROPOSED ||
|
|
76
|
+
this.status === TxStatus.CHECKPOINTED ||
|
|
77
|
+
this.status === TxStatus.PROVEN ||
|
|
78
|
+
this.status === TxStatus.FINALIZED
|
|
79
|
+
);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** Returns true if the transaction is pending. */
|
|
83
|
+
isPending(): boolean {
|
|
84
|
+
return this.status === TxStatus.PENDING;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/** Returns true if the transaction was dropped. */
|
|
88
|
+
isDropped(): boolean {
|
|
89
|
+
return this.status === TxStatus.DROPPED;
|
|
90
|
+
}
|
|
91
|
+
|
|
45
92
|
static empty() {
|
|
46
|
-
return new TxReceipt(TxHash.zero(), TxStatus.DROPPED,
|
|
93
|
+
return new TxReceipt(TxHash.zero(), TxStatus.DROPPED, undefined, undefined);
|
|
47
94
|
}
|
|
48
95
|
|
|
49
96
|
static get schema(): ZodFor<TxReceipt> {
|
|
@@ -51,18 +98,28 @@ export class TxReceipt {
|
|
|
51
98
|
.object({
|
|
52
99
|
txHash: TxHash.schema,
|
|
53
100
|
status: z.nativeEnum(TxStatus),
|
|
54
|
-
|
|
55
|
-
|
|
101
|
+
executionResult: z.nativeEnum(TxExecutionResult).optional(),
|
|
102
|
+
error: z.string().optional(),
|
|
103
|
+
blockHash: BlockHash.schema.optional(),
|
|
56
104
|
blockNumber: BlockNumberSchema.optional(),
|
|
57
105
|
transactionFee: schemas.BigInt.optional(),
|
|
58
106
|
})
|
|
59
|
-
.transform(TxReceipt.from);
|
|
107
|
+
.transform(fields => TxReceipt.from(fields));
|
|
60
108
|
}
|
|
61
109
|
|
|
62
|
-
static from(fields:
|
|
110
|
+
static from(fields: {
|
|
111
|
+
txHash: TxHash;
|
|
112
|
+
status: TxStatus;
|
|
113
|
+
executionResult?: TxExecutionResult;
|
|
114
|
+
error?: string;
|
|
115
|
+
transactionFee?: bigint;
|
|
116
|
+
blockHash?: BlockHash;
|
|
117
|
+
blockNumber?: BlockNumber;
|
|
118
|
+
}) {
|
|
63
119
|
return new TxReceipt(
|
|
64
120
|
fields.txHash,
|
|
65
121
|
fields.status,
|
|
122
|
+
fields.executionResult,
|
|
66
123
|
fields.error,
|
|
67
124
|
fields.transactionFee,
|
|
68
125
|
fields.blockHash,
|
|
@@ -70,15 +127,15 @@ export class TxReceipt {
|
|
|
70
127
|
);
|
|
71
128
|
}
|
|
72
129
|
|
|
73
|
-
public static
|
|
130
|
+
public static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult {
|
|
74
131
|
if (revertCode.equals(RevertCode.OK)) {
|
|
75
|
-
return
|
|
132
|
+
return TxExecutionResult.SUCCESS;
|
|
76
133
|
} else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
|
|
77
|
-
return
|
|
134
|
+
return TxExecutionResult.APP_LOGIC_REVERTED;
|
|
78
135
|
} else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
|
|
79
|
-
return
|
|
136
|
+
return TxExecutionResult.TEARDOWN_REVERTED;
|
|
80
137
|
} else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
|
|
81
|
-
return
|
|
138
|
+
return TxExecutionResult.BOTH_REVERTED;
|
|
82
139
|
} else {
|
|
83
140
|
throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
|
|
84
141
|
}
|
|
@@ -31,6 +31,9 @@ export const TX_ERROR_CONTRACT_CLASS_LOGS = 'Mismatched contract class logs';
|
|
|
31
31
|
export const TX_ERROR_CONTRACT_CLASS_LOG_SORTING = 'Incorrectly sorted contract class logs';
|
|
32
32
|
export const TX_ERROR_INCORRECT_HASH = 'Incorrect tx hash';
|
|
33
33
|
|
|
34
|
+
// Size
|
|
35
|
+
export const TX_ERROR_SIZE_ABOVE_LIMIT = 'Transaction size above size limit';
|
|
36
|
+
|
|
34
37
|
// Block header
|
|
35
38
|
export const TX_ERROR_BLOCK_HEADER = 'Block header not found';
|
|
36
39
|
|
package/src/zkpassport/index.ts
CHANGED
|
@@ -5,14 +5,13 @@ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
|
5
5
|
import { withoutHexPrefix } from '@aztec/foundation/string';
|
|
6
6
|
|
|
7
7
|
export type ViemZkPassportProofParams = {
|
|
8
|
+
version: `0x${string}`;
|
|
8
9
|
proofVerificationData: {
|
|
9
10
|
vkeyHash: `0x${string}`;
|
|
10
11
|
proof: `0x${string}`;
|
|
11
12
|
publicInputs: `0x${string}`[];
|
|
12
13
|
};
|
|
13
|
-
|
|
14
|
-
committedInputs: `0x${string}`;
|
|
15
|
-
};
|
|
14
|
+
committedInputs: `0x${string}`;
|
|
16
15
|
serviceConfig: {
|
|
17
16
|
validityPeriodInSeconds: bigint;
|
|
18
17
|
domain: string;
|
|
@@ -91,7 +90,7 @@ export class ZkPassportProofParams {
|
|
|
91
90
|
Buffer32.fromString(params.proofVerificationData.vkeyHash),
|
|
92
91
|
Buffer.from(withoutHexPrefix(params.proofVerificationData.proof), 'hex'),
|
|
93
92
|
params.proofVerificationData.publicInputs.map(input => Fr.fromString(input)),
|
|
94
|
-
Buffer.from(withoutHexPrefix(params.
|
|
93
|
+
Buffer.from(withoutHexPrefix(params.committedInputs), 'hex'),
|
|
95
94
|
params.serviceConfig.validityPeriodInSeconds,
|
|
96
95
|
params.serviceConfig.domain,
|
|
97
96
|
params.serviceConfig.scope,
|
|
@@ -99,20 +98,20 @@ export class ZkPassportProofParams {
|
|
|
99
98
|
}
|
|
100
99
|
|
|
101
100
|
toViem(): ViemZkPassportProofParams {
|
|
101
|
+
// Version is set to bytes32(0) as per zkpassport library convention
|
|
102
102
|
return {
|
|
103
|
-
|
|
104
|
-
devMode: this.devMode,
|
|
105
|
-
validityPeriodInSeconds: this.validityPeriodInSeconds,
|
|
106
|
-
domain: this.domain,
|
|
107
|
-
scope: this.scope,
|
|
108
|
-
},
|
|
103
|
+
version: '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
109
104
|
proofVerificationData: {
|
|
110
105
|
vkeyHash: this.vkeyHash.toString(),
|
|
111
106
|
proof: `0x${this.proof.toString('hex')}`,
|
|
112
107
|
publicInputs: this.publicInputs.map(input => input.toString()),
|
|
113
108
|
},
|
|
114
|
-
|
|
115
|
-
|
|
109
|
+
committedInputs: `0x${this.committedInputs.toString('hex')}`,
|
|
110
|
+
serviceConfig: {
|
|
111
|
+
devMode: this.devMode,
|
|
112
|
+
validityPeriodInSeconds: this.validityPeriodInSeconds,
|
|
113
|
+
domain: this.domain,
|
|
114
|
+
scope: this.scope,
|
|
116
115
|
},
|
|
117
116
|
};
|
|
118
117
|
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { FieldsOf } from '@aztec/foundation/types';
|
|
2
|
-
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
3
|
-
import { L2BlockHeader } from './l2_block_header.js';
|
|
4
|
-
export declare function makeL2BlockHeader(seed?: number, blockNumber?: number, slotNumber?: number, overrides?: Partial<FieldsOf<L2BlockHeader>>): L2BlockHeader;
|
|
5
|
-
/**
|
|
6
|
-
* Makes arbitrary append only tree snapshot.
|
|
7
|
-
* @param seed - The seed to use for generating the append only tree snapshot.
|
|
8
|
-
* @returns An append only tree snapshot.
|
|
9
|
-
*/
|
|
10
|
-
export declare function makeAppendOnlyTreeSnapshot(seed?: number): AppendOnlyTreeSnapshot;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfY29kZV90b19wdXJnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2NvZGVfdG9fcHVyZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJL0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELHdCQUFnQixpQkFBaUIsQ0FDL0IsSUFBSSxTQUFJLEVBQ1IsV0FBVyxDQUFDLEVBQUUsTUFBTSxFQUNwQixVQUFVLENBQUMsRUFBRSxNQUFNLEVBQ25CLFNBQVMsR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQWdCakQ7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLElBQUksU0FBSSxHQUFHLHNCQUFzQixDQUUzRSJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"l2_block_code_to_purge.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_code_to_purge.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,iBAAiB,CAC/B,IAAI,SAAI,EACR,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAgBjD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,SAAI,GAAG,sBAAsB,CAE3E"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
-
import { compact } from '@aztec/foundation/collection';
|
|
3
|
-
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
|
-
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
5
|
-
import { AztecAddress } from '../aztec-address/index.js';
|
|
6
|
-
import { GasFees } from '../gas/gas_fees.js';
|
|
7
|
-
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
8
|
-
import { GlobalVariables } from '../tx/global_variables.js';
|
|
9
|
-
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
10
|
-
import { StateReference } from '../tx/state_reference.js';
|
|
11
|
-
import { L2BlockHeader } from './l2_block_header.js';
|
|
12
|
-
export function makeL2BlockHeader(seed = 0, blockNumber, slotNumber, overrides = {}) {
|
|
13
|
-
return new L2BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), overrides.blobsHash ?? new Fr(seed + 0x200), overrides.inHash ?? new Fr(seed + 0x300), overrides.state ?? makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
|
|
14
|
-
...blockNumber ? {
|
|
15
|
-
blockNumber: BlockNumber(blockNumber)
|
|
16
|
-
} : {},
|
|
17
|
-
...slotNumber ? {
|
|
18
|
-
slotNumber: SlotNumber(slotNumber)
|
|
19
|
-
} : {}
|
|
20
|
-
}), new Fr(seed + 0x300), new Fr(seed + 0x800), new Fr(seed + 0x900), new Fr(seed + 0xa00));
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Makes arbitrary append only tree snapshot.
|
|
24
|
-
* @param seed - The seed to use for generating the append only tree snapshot.
|
|
25
|
-
* @returns An append only tree snapshot.
|
|
26
|
-
*/ export function makeAppendOnlyTreeSnapshot(seed = 1) {
|
|
27
|
-
return new AppendOnlyTreeSnapshot(new Fr(seed), seed);
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Makes arbitrary state reference.
|
|
31
|
-
* @param seed - The seed to use for generating the state reference.
|
|
32
|
-
* @returns A state reference.
|
|
33
|
-
*/ function makeStateReference(seed = 0) {
|
|
34
|
-
return new StateReference(makeAppendOnlyTreeSnapshot(seed), makePartialStateReference(seed + 1));
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Makes arbitrary partial state reference.
|
|
38
|
-
* @param seed - The seed to use for generating the partial state reference.
|
|
39
|
-
* @returns A partial state reference.
|
|
40
|
-
*/ function makePartialStateReference(seed = 0) {
|
|
41
|
-
return new PartialStateReference(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), makeAppendOnlyTreeSnapshot(seed + 2));
|
|
42
|
-
}
|
|
43
|
-
function makeGlobalVariables(seed = 1, overrides = {}) {
|
|
44
|
-
return GlobalVariables.from({
|
|
45
|
-
chainId: new Fr(seed),
|
|
46
|
-
version: new Fr(seed + 1),
|
|
47
|
-
blockNumber: BlockNumber(seed + 2),
|
|
48
|
-
slotNumber: SlotNumber(seed + 3),
|
|
49
|
-
timestamp: BigInt(seed + 4),
|
|
50
|
-
coinbase: EthAddress.fromField(new Fr(seed + 5)),
|
|
51
|
-
feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
|
|
52
|
-
gasFees: new GasFees(seed + 7, seed + 8),
|
|
53
|
-
...compact(overrides)
|
|
54
|
-
});
|
|
55
|
-
}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
-
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
-
import { type ZodFor } from '@aztec/foundation/schemas';
|
|
4
|
-
import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
5
|
-
import type { FieldsOf } from '@aztec/foundation/types';
|
|
6
|
-
import { inspect } from 'util';
|
|
7
|
-
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
8
|
-
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
9
|
-
import { BlockHeader, GlobalVariables, StateReference } from '../tx/index.js';
|
|
10
|
-
/**
|
|
11
|
-
* TO BE DELETED
|
|
12
|
-
*
|
|
13
|
-
* A header of an L2 block combining the block header and the checkpoint header.
|
|
14
|
-
* This is a temporary workaround to avoid changing too many things before building in chunks is properly implemented.
|
|
15
|
-
* This works for now because we only have one block per checkpoint.
|
|
16
|
-
*
|
|
17
|
-
* @deprecated Use BlockHeader or CheckpointHeader instead.
|
|
18
|
-
*/
|
|
19
|
-
export declare class L2BlockHeader {
|
|
20
|
-
lastArchive: AppendOnlyTreeSnapshot;
|
|
21
|
-
blobsHash: Fr;
|
|
22
|
-
inHash: Fr;
|
|
23
|
-
state: StateReference;
|
|
24
|
-
globalVariables: GlobalVariables;
|
|
25
|
-
totalFees: Fr;
|
|
26
|
-
totalManaUsed: Fr;
|
|
27
|
-
spongeBlobHash: Fr;
|
|
28
|
-
blockHeadersHash: Fr;
|
|
29
|
-
constructor(
|
|
30
|
-
/** Snapshot of archive before the block is applied. */
|
|
31
|
-
lastArchive: AppendOnlyTreeSnapshot, blobsHash: Fr, inHash: Fr,
|
|
32
|
-
/** State reference. */
|
|
33
|
-
state: StateReference,
|
|
34
|
-
/** Global variables of an L2 block. */
|
|
35
|
-
globalVariables: GlobalVariables,
|
|
36
|
-
/** Total fees in the block, computed by the root rollup circuit */
|
|
37
|
-
totalFees: Fr,
|
|
38
|
-
/** Total mana used in the block, computed by the root rollup circuit */
|
|
39
|
-
totalManaUsed: Fr,
|
|
40
|
-
/** Hash of the sponge blob of the block. */
|
|
41
|
-
spongeBlobHash: Fr,
|
|
42
|
-
/** Hash of the block headers in the checkpoint. */
|
|
43
|
-
blockHeadersHash: Fr);
|
|
44
|
-
static get schema(): ZodFor<L2BlockHeader>;
|
|
45
|
-
static getFields(fields: FieldsOf<L2BlockHeader>): readonly [AppendOnlyTreeSnapshot, Fr, Fr, StateReference, GlobalVariables, Fr, Fr, Fr, Fr];
|
|
46
|
-
static from(fields: FieldsOf<L2BlockHeader>): L2BlockHeader;
|
|
47
|
-
getSlot(): SlotNumber;
|
|
48
|
-
getBlockNumber(): import("@aztec/foundation/branded-types").BlockNumber;
|
|
49
|
-
getSize(): number;
|
|
50
|
-
toBuffer(): Buffer<ArrayBufferLike>;
|
|
51
|
-
toFields(): Fr[];
|
|
52
|
-
clone(): L2BlockHeader;
|
|
53
|
-
static fromBuffer(buffer: Buffer | BufferReader): L2BlockHeader;
|
|
54
|
-
static fromFields(fields: Fr[] | FieldReader): L2BlockHeader;
|
|
55
|
-
static empty(fields?: Partial<FieldsOf<L2BlockHeader>>): L2BlockHeader;
|
|
56
|
-
isEmpty(): boolean;
|
|
57
|
-
/**
|
|
58
|
-
* Serializes this instance into a string.
|
|
59
|
-
* @returns Encoded string.
|
|
60
|
-
*/
|
|
61
|
-
toString(): `0x${string}`;
|
|
62
|
-
static fromString(str: string): L2BlockHeader;
|
|
63
|
-
toCheckpointHeader(): CheckpointHeader;
|
|
64
|
-
toBlockHeader(): BlockHeader;
|
|
65
|
-
toInspect(): {
|
|
66
|
-
lastArchive: `0x${string}`;
|
|
67
|
-
blobsHash: `0x${string}`;
|
|
68
|
-
inHash: `0x${string}`;
|
|
69
|
-
state: {
|
|
70
|
-
l1ToL2MessageTree: `0x${string}`;
|
|
71
|
-
noteHashTree: `0x${string}`;
|
|
72
|
-
nullifierTree: `0x${string}`;
|
|
73
|
-
publicDataTree: `0x${string}`;
|
|
74
|
-
};
|
|
75
|
-
globalVariables: {
|
|
76
|
-
chainId: number;
|
|
77
|
-
version: number;
|
|
78
|
-
blockNumber: import("@aztec/foundation/branded-types").BlockNumber;
|
|
79
|
-
slotNumber: SlotNumber;
|
|
80
|
-
timestamp: bigint;
|
|
81
|
-
coinbase: `0x${string}`;
|
|
82
|
-
feeRecipient: `0x${string}`;
|
|
83
|
-
feePerDaGas: number;
|
|
84
|
-
feePerL2Gas: number;
|
|
85
|
-
};
|
|
86
|
-
totalFees: bigint;
|
|
87
|
-
totalManaUsed: bigint;
|
|
88
|
-
spongeBlobHash: `0x${string}`;
|
|
89
|
-
blockHeadersHash: `0x${string}`;
|
|
90
|
-
};
|
|
91
|
-
[inspect.custom](): string;
|
|
92
|
-
equals(other: this): boolean;
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaGVhZGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfaGVhZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFFOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RTs7Ozs7Ozs7R0FRRztBQUNILHFCQUFhLGFBQWE7SUFHZixXQUFXLEVBQUUsc0JBQXNCO0lBQ25DLFNBQVMsRUFBRSxFQUFFO0lBQ2IsTUFBTSxFQUFFLEVBQUU7SUFFVixLQUFLLEVBQUUsY0FBYztJQUVyQixlQUFlLEVBQUUsZUFBZTtJQUVoQyxTQUFTLEVBQUUsRUFBRTtJQUViLGFBQWEsRUFBRSxFQUFFO0lBRWpCLGNBQWMsRUFBRSxFQUFFO0lBRWxCLGdCQUFnQixFQUFFLEVBQUU7SUFoQjdCO0lBQ0UsdURBQXVEO0lBQ2hELFdBQVcsRUFBRSxzQkFBc0IsRUFDbkMsU0FBUyxFQUFFLEVBQUUsRUFDYixNQUFNLEVBQUUsRUFBRTtJQUNqQix1QkFBdUI7SUFDaEIsS0FBSyxFQUFFLGNBQWM7SUFDNUIsdUNBQXVDO0lBQ2hDLGVBQWUsRUFBRSxlQUFlO0lBQ3ZDLG1FQUFtRTtJQUM1RCxTQUFTLEVBQUUsRUFBRTtJQUNwQix3RUFBd0U7SUFDakUsYUFBYSxFQUFFLEVBQUU7SUFDeEIsNENBQTRDO0lBQ3JDLGNBQWMsRUFBRSxFQUFFO0lBQ3pCLG1EQUFtRDtJQUM1QyxnQkFBZ0IsRUFBRSxFQUFFLEVBQ3pCO0lBRUosTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLENBY3pDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyw4RkFZL0M7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLGlCQUUxQztJQUVELE9BQU8sSUFBSSxVQUFVLENBRXBCO0lBRUQsY0FBYywwREFFYjtJQUVELE9BQU8sV0FZTjtJQUVELFFBQVEsNEJBRVA7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRCxLQUFLLGtCQUVKO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksaUJBYzlDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxpQkFjM0M7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFNLGlCQWF6RDtJQUVELE9BQU8sSUFBSSxPQUFPLENBWWpCO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxrQkFFZDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0saUJBRTVCO0lBRUQsa0JBQWtCLHFCQWFqQjtJQUVELGFBQWEsZ0JBU1o7SUFFRCxTQUFTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BWVI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FlZjtJQUVNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLE9BQU8sQ0FZbEM7Q0FDRiJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"l2_block_header.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAE9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9E;;;;;;;;GAQG;AACH,qBAAa,aAAa;IAGf,WAAW,EAAE,sBAAsB;IACnC,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,EAAE;IAEV,KAAK,EAAE,cAAc;IAErB,eAAe,EAAE,eAAe;IAEhC,SAAS,EAAE,EAAE;IAEb,aAAa,EAAE,EAAE;IAEjB,cAAc,EAAE,EAAE;IAElB,gBAAgB,EAAE,EAAE;IAhB7B;IACE,uDAAuD;IAChD,WAAW,EAAE,sBAAsB,EACnC,SAAS,EAAE,EAAE,EACb,MAAM,EAAE,EAAE;IACjB,uBAAuB;IAChB,KAAK,EAAE,cAAc;IAC5B,uCAAuC;IAChC,eAAe,EAAE,eAAe;IACvC,mEAAmE;IAC5D,SAAS,EAAE,EAAE;IACpB,wEAAwE;IACjE,aAAa,EAAE,EAAE;IACxB,4CAA4C;IACrC,cAAc,EAAE,EAAE;IACzB,mDAAmD;IAC5C,gBAAgB,EAAE,EAAE,EACzB;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,CAczC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,8FAY/C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,iBAE1C;IAED,OAAO,IAAI,UAAU,CAEpB;IAED,cAAc,0DAEb;IAED,OAAO,WAYN;IAED,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,kBAEJ;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,iBAc9C;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,iBAc3C;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,GAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAM,iBAazD;IAED,OAAO,IAAI,OAAO,CAYjB;IAED;;;OAGG;IACI,QAAQ,kBAEd;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,iBAE5B;IAED,kBAAkB,qBAajB;IAED,aAAa,gBASZ;IAED,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;MAYR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAef;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAYlC;CACF"}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
var _computedKey;
|
|
2
|
-
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
-
import { schemas } from '@aztec/foundation/schemas';
|
|
4
|
-
import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
5
|
-
import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
|
|
6
|
-
import { inspect } from 'util';
|
|
7
|
-
import { z } from 'zod';
|
|
8
|
-
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
9
|
-
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
10
|
-
import { BlockHeader, GlobalVariables, StateReference } from '../tx/index.js';
|
|
11
|
-
_computedKey = inspect.custom;
|
|
12
|
-
/**
|
|
13
|
-
* TO BE DELETED
|
|
14
|
-
*
|
|
15
|
-
* A header of an L2 block combining the block header and the checkpoint header.
|
|
16
|
-
* This is a temporary workaround to avoid changing too many things before building in chunks is properly implemented.
|
|
17
|
-
* This works for now because we only have one block per checkpoint.
|
|
18
|
-
*
|
|
19
|
-
* @deprecated Use BlockHeader or CheckpointHeader instead.
|
|
20
|
-
*/ export class L2BlockHeader {
|
|
21
|
-
lastArchive;
|
|
22
|
-
blobsHash;
|
|
23
|
-
inHash;
|
|
24
|
-
state;
|
|
25
|
-
globalVariables;
|
|
26
|
-
totalFees;
|
|
27
|
-
totalManaUsed;
|
|
28
|
-
spongeBlobHash;
|
|
29
|
-
blockHeadersHash;
|
|
30
|
-
constructor(/** Snapshot of archive before the block is applied. */ lastArchive, blobsHash, inHash, /** State reference. */ state, /** Global variables of an L2 block. */ globalVariables, /** Total fees in the block, computed by the root rollup circuit */ totalFees, /** Total mana used in the block, computed by the root rollup circuit */ totalManaUsed, /** Hash of the sponge blob of the block. */ spongeBlobHash, /** Hash of the block headers in the checkpoint. */ blockHeadersHash){
|
|
31
|
-
this.lastArchive = lastArchive;
|
|
32
|
-
this.blobsHash = blobsHash;
|
|
33
|
-
this.inHash = inHash;
|
|
34
|
-
this.state = state;
|
|
35
|
-
this.globalVariables = globalVariables;
|
|
36
|
-
this.totalFees = totalFees;
|
|
37
|
-
this.totalManaUsed = totalManaUsed;
|
|
38
|
-
this.spongeBlobHash = spongeBlobHash;
|
|
39
|
-
this.blockHeadersHash = blockHeadersHash;
|
|
40
|
-
}
|
|
41
|
-
static get schema() {
|
|
42
|
-
return z.object({
|
|
43
|
-
lastArchive: AppendOnlyTreeSnapshot.schema,
|
|
44
|
-
blobsHash: schemas.Fr,
|
|
45
|
-
inHash: schemas.Fr,
|
|
46
|
-
state: StateReference.schema,
|
|
47
|
-
globalVariables: GlobalVariables.schema,
|
|
48
|
-
totalFees: schemas.Fr,
|
|
49
|
-
totalManaUsed: schemas.Fr,
|
|
50
|
-
spongeBlobHash: schemas.Fr,
|
|
51
|
-
blockHeadersHash: schemas.Fr
|
|
52
|
-
}).transform(L2BlockHeader.from);
|
|
53
|
-
}
|
|
54
|
-
static getFields(fields) {
|
|
55
|
-
return [
|
|
56
|
-
fields.lastArchive,
|
|
57
|
-
fields.blobsHash,
|
|
58
|
-
fields.inHash,
|
|
59
|
-
fields.state,
|
|
60
|
-
fields.globalVariables,
|
|
61
|
-
fields.totalFees,
|
|
62
|
-
fields.totalManaUsed,
|
|
63
|
-
fields.spongeBlobHash,
|
|
64
|
-
fields.blockHeadersHash
|
|
65
|
-
];
|
|
66
|
-
}
|
|
67
|
-
static from(fields) {
|
|
68
|
-
return new L2BlockHeader(...L2BlockHeader.getFields(fields));
|
|
69
|
-
}
|
|
70
|
-
getSlot() {
|
|
71
|
-
return this.globalVariables.slotNumber;
|
|
72
|
-
}
|
|
73
|
-
getBlockNumber() {
|
|
74
|
-
return this.globalVariables.blockNumber;
|
|
75
|
-
}
|
|
76
|
-
getSize() {
|
|
77
|
-
return this.lastArchive.getSize() + this.blobsHash.size + this.inHash.size + this.state.getSize() + this.globalVariables.getSize() + this.totalFees.size + this.totalManaUsed.size + this.spongeBlobHash.size + this.blockHeadersHash.size;
|
|
78
|
-
}
|
|
79
|
-
toBuffer() {
|
|
80
|
-
return serializeToBuffer(...L2BlockHeader.getFields(this));
|
|
81
|
-
}
|
|
82
|
-
toFields() {
|
|
83
|
-
return serializeToFields(...L2BlockHeader.getFields(this));
|
|
84
|
-
}
|
|
85
|
-
clone() {
|
|
86
|
-
return L2BlockHeader.fromBuffer(this.toBuffer());
|
|
87
|
-
}
|
|
88
|
-
static fromBuffer(buffer) {
|
|
89
|
-
const reader = BufferReader.asReader(buffer);
|
|
90
|
-
return new L2BlockHeader(reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(StateReference), reader.readObject(GlobalVariables), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr), reader.readObject(Fr));
|
|
91
|
-
}
|
|
92
|
-
static fromFields(fields) {
|
|
93
|
-
const reader = FieldReader.asReader(fields);
|
|
94
|
-
return new L2BlockHeader(AppendOnlyTreeSnapshot.fromFields(reader), reader.readField(), reader.readField(), StateReference.fromFields(reader), GlobalVariables.fromFields(reader), reader.readField(), reader.readField(), reader.readField(), reader.readField());
|
|
95
|
-
}
|
|
96
|
-
static empty(fields = {}) {
|
|
97
|
-
return L2BlockHeader.from({
|
|
98
|
-
lastArchive: AppendOnlyTreeSnapshot.empty(),
|
|
99
|
-
blobsHash: Fr.ZERO,
|
|
100
|
-
inHash: Fr.ZERO,
|
|
101
|
-
state: StateReference.empty(),
|
|
102
|
-
globalVariables: GlobalVariables.empty(),
|
|
103
|
-
totalFees: Fr.ZERO,
|
|
104
|
-
totalManaUsed: Fr.ZERO,
|
|
105
|
-
spongeBlobHash: Fr.ZERO,
|
|
106
|
-
blockHeadersHash: Fr.ZERO,
|
|
107
|
-
...fields
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
isEmpty() {
|
|
111
|
-
return this.lastArchive.isEmpty() && this.blobsHash.isZero() && this.inHash.isZero() && this.state.isEmpty() && this.globalVariables.isEmpty() && this.totalFees.isZero() && this.totalManaUsed.isZero() && this.spongeBlobHash.isZero() && this.blockHeadersHash.isZero();
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Serializes this instance into a string.
|
|
115
|
-
* @returns Encoded string.
|
|
116
|
-
*/ toString() {
|
|
117
|
-
return bufferToHex(this.toBuffer());
|
|
118
|
-
}
|
|
119
|
-
static fromString(str) {
|
|
120
|
-
return L2BlockHeader.fromBuffer(hexToBuffer(str));
|
|
121
|
-
}
|
|
122
|
-
toCheckpointHeader() {
|
|
123
|
-
return new CheckpointHeader(this.lastArchive.root, this.blockHeadersHash, this.blobsHash, this.inHash, this.globalVariables.slotNumber, this.globalVariables.timestamp, this.globalVariables.coinbase, this.globalVariables.feeRecipient, this.globalVariables.gasFees, this.totalManaUsed);
|
|
124
|
-
}
|
|
125
|
-
toBlockHeader() {
|
|
126
|
-
return new BlockHeader(this.lastArchive, this.state, this.spongeBlobHash, this.globalVariables, this.totalFees, this.totalManaUsed);
|
|
127
|
-
}
|
|
128
|
-
toInspect() {
|
|
129
|
-
return {
|
|
130
|
-
lastArchive: this.lastArchive.root.toString(),
|
|
131
|
-
blobsHash: this.blobsHash.toString(),
|
|
132
|
-
inHash: this.inHash.toString(),
|
|
133
|
-
state: this.state.toInspect(),
|
|
134
|
-
globalVariables: this.globalVariables.toInspect(),
|
|
135
|
-
totalFees: this.totalFees.toBigInt(),
|
|
136
|
-
totalManaUsed: this.totalManaUsed.toBigInt(),
|
|
137
|
-
spongeBlobHash: this.spongeBlobHash.toString(),
|
|
138
|
-
blockHeadersHash: this.blockHeadersHash.toString()
|
|
139
|
-
};
|
|
140
|
-
}
|
|
141
|
-
[_computedKey]() {
|
|
142
|
-
return `L2BlockHeader {
|
|
143
|
-
lastArchive: ${inspect(this.lastArchive)},
|
|
144
|
-
blobsHash: ${inspect(this.blobsHash)},
|
|
145
|
-
inHash: ${inspect(this.inHash)},
|
|
146
|
-
state.l1ToL2MessageTree: ${inspect(this.state.l1ToL2MessageTree)},
|
|
147
|
-
state.noteHashTree: ${inspect(this.state.partial.noteHashTree)},
|
|
148
|
-
state.nullifierTree: ${inspect(this.state.partial.nullifierTree)},
|
|
149
|
-
state.publicDataTree: ${inspect(this.state.partial.publicDataTree)},
|
|
150
|
-
globalVariables: ${inspect(this.globalVariables)},
|
|
151
|
-
totalFees: ${this.totalFees},
|
|
152
|
-
totalManaUsed: ${this.totalManaUsed},
|
|
153
|
-
spongeBlobHash: ${this.spongeBlobHash},
|
|
154
|
-
blockHeadersHash: ${this.blockHeadersHash},
|
|
155
|
-
}`;
|
|
156
|
-
}
|
|
157
|
-
equals(other) {
|
|
158
|
-
return this.lastArchive.equals(other.lastArchive) && this.blobsHash.equals(other.blobsHash) && this.inHash.equals(other.inHash) && this.state.equals(other.state) && this.globalVariables.equals(other.globalVariables) && this.totalFees.equals(other.totalFees) && this.totalManaUsed.equals(other.totalManaUsed) && this.spongeBlobHash.equals(other.spongeBlobHash) && this.blockHeadersHash.equals(other.blockHeadersHash);
|
|
159
|
-
}
|
|
160
|
-
}
|