@aztec/stdlib 0.0.1-commit.24de95ac → 0.0.1-commit.5476d83
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 +92 -107
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +2 -2
- package/dest/abi/authorization_selector.d.ts +1 -1
- package/dest/abi/authorization_selector.d.ts.map +1 -1
- package/dest/abi/buffer.d.ts +1 -1
- package/dest/abi/contract_artifact.d.ts +1 -1
- package/dest/abi/contract_artifact.js +3 -3
- package/dest/abi/decoder.d.ts +1 -1
- package/dest/abi/decoder.d.ts.map +1 -1
- package/dest/abi/encoder.d.ts +1 -1
- package/dest/abi/event_metadata_definition.d.ts +1 -1
- package/dest/abi/event_selector.d.ts +1 -1
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_call.d.ts +1 -9
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_selector.d.ts +1 -1
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/index.d.ts +1 -1
- package/dest/abi/mocked_keys.d.ts +1 -1
- package/dest/abi/note_selector.d.ts +1 -1
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/selector.d.ts +1 -1
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/utils.d.ts +1 -1
- package/dest/auth_witness/auth_witness.d.ts +1 -2
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/auth_witness/index.d.ts +1 -1
- package/dest/avm/avm.d.ts +4189 -2057
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +375 -16
- package/dest/avm/avm_accumulated_data.d.ts +25 -36
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_accumulated_data.js +18 -0
- package/dest/avm/avm_circuit_public_inputs.d.ts +156 -146
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.js +9 -0
- package/dest/avm/avm_proving_request.d.ts +2023 -1503
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/contract_storage_read.d.ts +1 -13
- package/dest/avm/contract_storage_read.d.ts.map +1 -1
- package/dest/avm/contract_storage_update_request.d.ts +1 -13
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
- package/dest/avm/index.d.ts +1 -1
- package/dest/avm/message_pack.d.ts +2 -2
- package/dest/avm/message_pack.d.ts.map +1 -1
- package/dest/avm/message_pack.js +3 -0
- package/dest/avm/public_call_stack_item_compressed.d.ts +1 -3
- package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
- package/dest/avm/public_data_read.d.ts +1 -10
- package/dest/avm/public_data_read.d.ts.map +1 -1
- package/dest/avm/public_data_update_request.d.ts +1 -10
- package/dest/avm/public_data_update_request.d.ts.map +1 -1
- package/dest/avm/public_data_write.d.ts +13 -11
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/public_data_write.js +9 -0
- package/dest/avm/public_inner_call_request.d.ts +1 -4
- package/dest/avm/public_inner_call_request.d.ts.map +1 -1
- package/dest/avm/revert_code.d.ts +16 -7
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +24 -8
- package/dest/aztec-address/index.d.ts +10 -1
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +24 -2
- package/dest/block/attestation_info.d.ts +3 -1
- package/dest/block/attestation_info.d.ts.map +1 -1
- package/dest/block/attestation_info.js +4 -1
- package/dest/block/block_hash.d.ts +1 -1
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/body.d.ts +8 -8
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +11 -27
- package/dest/block/in_block.d.ts +3 -11
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/index.d.ts +2 -1
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +1 -0
- package/dest/block/l2_block.d.ts +15 -7
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +54 -4
- package/dest/block/l2_block_code_to_purge.d.ts +1 -1
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
- package/dest/block/l2_block_code_to_purge.js +4 -3
- package/dest/block/l2_block_header.d.ts +10 -12
- package/dest/block/l2_block_header.d.ts.map +1 -1
- package/dest/block/l2_block_header.js +18 -11
- package/dest/block/l2_block_info.d.ts +9 -9
- package/dest/block/l2_block_new.d.ts +108 -0
- package/dest/block/l2_block_new.d.ts.map +1 -0
- package/dest/block/l2_block_new.js +135 -0
- package/dest/block/l2_block_number.d.ts +1 -1
- package/dest/block/l2_block_source.d.ts +10 -9
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_stream/index.d.ts +1 -1
- package/dest/block/l2_block_stream/interfaces.d.ts +1 -1
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -6
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +1 -1
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
- package/dest/block/proposal/attestations_and_signers.d.ts +16 -5
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
- package/dest/block/proposal/attestations_and_signers.js +14 -0
- package/dest/block/proposal/committee_attestation.d.ts +1 -1
- package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
- package/dest/block/proposal/index.d.ts +1 -1
- package/dest/block/published_l2_block.d.ts +15 -28
- package/dest/block/published_l2_block.d.ts.map +1 -1
- package/dest/block/published_l2_block.js +12 -27
- package/dest/block/test/index.d.ts +1 -1
- package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
- package/dest/block/validate_block_result.d.ts +6 -178
- package/dest/block/validate_block_result.d.ts.map +1 -1
- package/dest/block/validate_block_result.js +4 -3
- package/dest/checkpoint/checkpoint.d.ts +121 -0
- package/dest/checkpoint/checkpoint.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint.js +62 -0
- package/dest/checkpoint/index.d.ts +3 -2
- package/dest/checkpoint/index.d.ts.map +1 -1
- package/dest/checkpoint/index.js +2 -1
- package/dest/checkpoint/published_checkpoint.d.ts +212 -0
- package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
- package/dest/checkpoint/published_checkpoint.js +71 -0
- package/dest/config/chain-config.d.ts +1 -1
- package/dest/config/index.d.ts +1 -1
- package/dest/config/node-rpc-config.d.ts +1 -1
- package/dest/contract/artifact_hash.d.ts +2 -2
- package/dest/contract/artifact_hash.d.ts.map +1 -1
- package/dest/contract/complete_address.d.ts +1 -4
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/contract_address.d.ts +1 -1
- package/dest/contract/contract_class.d.ts +1 -1
- package/dest/contract/contract_class_id.d.ts +1 -1
- package/dest/contract/contract_class_metadata.d.ts +1 -1
- package/dest/contract/contract_deployment_data.d.ts +119 -0
- package/dest/contract/contract_deployment_data.d.ts.map +1 -0
- package/dest/contract/contract_deployment_data.js +99 -0
- package/dest/contract/contract_function_dao.d.ts +1 -1
- package/dest/contract/contract_instance.d.ts +1 -1
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance_update.d.ts +1 -1
- package/dest/contract/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/contract_metadata.d.ts +1 -1
- package/dest/contract/deployment_info.d.ts +1 -1
- package/dest/contract/index.d.ts +2 -1
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +1 -0
- package/dest/contract/interfaces/contract_class.d.ts +41 -122
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_data_source.d.ts +1 -1
- package/dest/contract/interfaces/contract_instance.d.ts +11 -11
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance_update.d.ts +3 -3
- package/dest/contract/interfaces/index.d.ts +1 -1
- package/dest/contract/interfaces/node-info.d.ts +1 -1
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
- package/dest/contract/partial_address.d.ts +1 -1
- package/dest/contract/private_function.d.ts +1 -1
- package/dest/contract/private_function_membership_proof.d.ts +2 -2
- package/dest/contract/private_function_membership_proof.js +1 -1
- package/dest/contract/utility_function_membership_proof.d.ts +1 -1
- package/dest/database-version/index.d.ts +1 -1
- package/dest/database-version/version_manager.d.ts +6 -8
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +1 -1
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
- package/dest/delayed_public_mutable/index.d.ts +1 -1
- package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
- package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts +1 -1
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
- package/dest/epoch-helpers/index.d.ts +12 -11
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +10 -9
- package/dest/errors/index.d.ts +1 -1
- package/dest/errors/proving_error.d.ts +2 -2
- package/dest/errors/proving_error.d.ts.map +1 -1
- package/dest/errors/simulation_error.d.ts +1 -1
- package/dest/errors/simulation_error.d.ts.map +1 -1
- package/dest/fees/index.d.ts +1 -1
- package/dest/fees/transaction_fee.d.ts +1 -1
- package/dest/file-store/factory.d.ts +1 -1
- package/dest/file-store/gcs.d.ts +1 -1
- package/dest/file-store/gcs.d.ts.map +1 -1
- package/dest/file-store/http.d.ts +1 -1
- package/dest/file-store/http.d.ts.map +1 -1
- package/dest/file-store/http.js +8 -3
- package/dest/file-store/index.d.ts +1 -1
- package/dest/file-store/interface.d.ts +1 -1
- package/dest/file-store/local.d.ts +1 -1
- package/dest/file-store/local.d.ts.map +1 -1
- package/dest/file-store/s3.d.ts +1 -1
- package/dest/file-store/s3.d.ts.map +1 -1
- package/dest/file-store/s3.js +3 -7
- package/dest/gas/gas.d.ts +9 -1
- package/dest/gas/gas.d.ts.map +1 -1
- package/dest/gas/gas.js +12 -0
- package/dest/gas/gas_fees.d.ts +9 -1
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +12 -0
- package/dest/gas/gas_settings.d.ts +9 -1
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +12 -0
- package/dest/gas/gas_used.d.ts +13 -2
- package/dest/gas/gas_used.d.ts.map +1 -1
- package/dest/gas/gas_used.js +19 -1
- package/dest/gas/index.d.ts +1 -1
- package/dest/hash/hash.d.ts +11 -3
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +11 -1
- package/dest/hash/index.d.ts +1 -1
- package/dest/hash/map_slot.d.ts +1 -1
- package/dest/interfaces/allowed_element.d.ts +5 -5
- package/dest/interfaces/api_limit.d.ts +1 -1
- package/dest/interfaces/archiver.d.ts +6 -1
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +8 -6
- package/dest/interfaces/aztec-node-admin.d.ts +92 -85
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.d.ts +8 -2
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +2 -1
- package/dest/interfaces/block-builder.d.ts +1 -1
- package/dest/interfaces/client.d.ts +1 -1
- package/dest/interfaces/configs.d.ts +31 -21
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +3 -1
- package/dest/interfaces/epoch-prover.d.ts +5 -5
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/get_logs_response.d.ts +2 -2
- package/dest/interfaces/l2_logs_source.d.ts +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +3 -3
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
- package/dest/interfaces/p2p.d.ts +3 -2
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +1 -1
- package/dest/interfaces/private_kernel_prover.d.ts +1 -1
- package/dest/interfaces/processed-tx-handler.d.ts +1 -1
- package/dest/interfaces/prover-agent.d.ts +1 -1
- package/dest/interfaces/prover-broker.d.ts +1 -1
- package/dest/interfaces/prover-client.d.ts +5 -5
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-coordination.d.ts +1 -1
- package/dest/interfaces/prover-node.d.ts +1 -1
- package/dest/interfaces/proving-job-source.d.ts +1 -1
- package/dest/interfaces/proving-job.d.ts +1672 -1159
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +3 -2
- package/dest/interfaces/public_state_source.d.ts +1 -1
- package/dest/interfaces/server.d.ts +1 -1
- package/dest/interfaces/server_circuit_prover.d.ts +2 -3
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
- package/dest/interfaces/service.d.ts +1 -1
- package/dest/interfaces/slasher.d.ts +3 -3
- package/dest/interfaces/tx_provider.d.ts +1 -1
- package/dest/interfaces/validator.d.ts +27 -19
- package/dest/interfaces/validator.d.ts.map +1 -1
- package/dest/interfaces/validator.js +2 -1
- package/dest/interfaces/world_state.d.ts +1 -1
- package/dest/kernel/claimed_length_array.d.ts +1 -1
- package/dest/kernel/claimed_length_array.d.ts.map +1 -1
- package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
- package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +1 -1
- package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
- package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_transient_data_hints.js +2 -2
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
- package/dest/kernel/hints/index.d.ts +1 -1
- package/dest/kernel/hints/key_validation_hint.d.ts +1 -2
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request.d.ts +1 -2
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -6
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts +1 -1
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts +1 -1
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
- package/dest/kernel/hints/read_request.d.ts +1 -7
- package/dest/kernel/hints/read_request.d.ts.map +1 -1
- package/dest/kernel/hints/read_request_hints.d.ts +1 -7
- package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -1
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/scoped_value_cache.d.ts +1 -1
- package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
- package/dest/kernel/hints/transient_data_squashing_hint.d.ts +1 -1
- package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
- package/dest/kernel/hints/tree_leaf_read_request.d.ts +1 -1
- package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
- package/dest/kernel/index.d.ts +1 -1
- package/dest/kernel/log_hash.d.ts +1 -1
- package/dest/kernel/log_hash.d.ts.map +1 -1
- package/dest/kernel/note_hash.d.ts +1 -1
- package/dest/kernel/note_hash.d.ts.map +1 -1
- package/dest/kernel/nullifier.d.ts +1 -1
- package/dest/kernel/nullifier.d.ts.map +1 -1
- package/dest/kernel/padded_side_effects.d.ts +1 -1
- package/dest/kernel/padded_side_effects.d.ts.map +1 -1
- package/dest/kernel/private_accumulated_data.d.ts +1 -23
- package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.d.ts +62 -29
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.js +105 -4
- package/dest/kernel/private_call_request.d.ts +1 -16
- package/dest/kernel/private_call_request.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts +17 -74
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +17 -5
- package/dest/kernel/private_context_inputs.d.ts +1 -1
- package/dest/kernel/private_context_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -29
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +8 -4
- package/dest/kernel/private_kernel_data.d.ts +1 -7
- package/dest/kernel/private_kernel_data.d.ts.map +1 -1
- package/dest/kernel/private_kernel_data.js +0 -2
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +7 -20
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -3
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_prover_output.d.ts +10 -10
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
- package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
- package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
- 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 +1 -23
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_log_data.d.ts +1 -1
- package/dest/kernel/private_log_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +17 -1
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +18 -0
- package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +1 -1
- package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -17
- 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 +1 -16
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_validation_requests.d.ts +2 -24
- package/dest/kernel/private_validation_requests.d.ts.map +1 -1
- package/dest/kernel/private_validation_requests.js +5 -13
- package/dest/kernel/public_call_request.d.ts +22 -27
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/public_call_request.js +18 -0
- package/dest/kernel/utils/index.d.ts +1 -1
- package/dest/kernel/utils/interfaces.d.ts +1 -1
- package/dest/kernel/utils/optional_number.d.ts +1 -7
- package/dest/kernel/utils/optional_number.d.ts.map +1 -1
- package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
- package/dest/keys/derivation.d.ts +1 -1
- package/dest/keys/index.d.ts +1 -1
- package/dest/keys/key_types.d.ts +1 -1
- package/dest/keys/public_key.d.ts +1 -1
- package/dest/keys/public_keys.d.ts +9 -5
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +12 -0
- package/dest/keys/utils.d.ts +1 -1
- package/dest/l1-contracts/index.d.ts +1 -1
- package/dest/l1-contracts/slash_factory.d.ts +3 -3
- package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
- package/dest/logs/contract_class_log.d.ts +20 -4
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +24 -0
- package/dest/logs/debug_log.d.ts +10 -2
- package/dest/logs/debug_log.d.ts.map +1 -1
- package/dest/logs/debug_log.js +13 -0
- package/dest/logs/directional_app_tagging_secret.d.ts +1 -1
- package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
- package/dest/logs/extended_contract_class_log.d.ts +1 -3
- package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
- package/dest/logs/extended_public_log.d.ts +3 -5
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/index.d.ts +1 -1
- package/dest/logs/log_filter.d.ts +1 -1
- package/dest/logs/log_id.d.ts +1 -4
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_with_tx_data.d.ts +1 -1
- package/dest/logs/log_with_tx_data.d.ts.map +1 -1
- package/dest/logs/message_context.d.ts +1 -1
- package/dest/logs/message_context.d.ts.map +1 -1
- package/dest/logs/pending_tagged_log.d.ts +1 -1
- package/dest/logs/pending_tagged_log.d.ts.map +1 -1
- package/dest/logs/pre_tag.d.ts +1 -1
- package/dest/logs/private_log.d.ts +10 -2
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/private_log.js +14 -5
- package/dest/logs/public_log.d.ts +9 -1
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +9 -0
- package/dest/logs/shared_secret_derivation.d.ts +1 -1
- package/dest/logs/tx_scoped_l2_log.d.ts +8 -8
- package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
- package/dest/messaging/in_hash.d.ts +4 -0
- package/dest/messaging/in_hash.d.ts.map +1 -0
- package/dest/messaging/in_hash.js +8 -0
- package/dest/messaging/inbox_leaf.d.ts +1 -3
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/index.d.ts +3 -1
- package/dest/messaging/index.d.ts.map +1 -1
- package/dest/messaging/index.js +2 -0
- package/dest/messaging/l1_actor.d.ts +1 -7
- package/dest/messaging/l1_actor.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.d.ts +1 -6
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message_source.d.ts +1 -1
- package/dest/messaging/l2_actor.d.ts +1 -7
- package/dest/messaging/l2_actor.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.js +2 -2
- package/dest/messaging/l2_to_l1_message.d.ts +17 -1
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_message.js +18 -0
- package/dest/messaging/out_hash.d.ts +5 -0
- package/dest/messaging/out_hash.d.ts.map +1 -0
- package/dest/messaging/out_hash.js +28 -0
- package/dest/noir/index.d.ts +7 -7
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/noir/index.js +6 -6
- package/dest/note/comparator.d.ts +1 -1
- package/dest/note/index.d.ts +2 -2
- package/dest/note/index.d.ts.map +1 -1
- package/dest/note/index.js +1 -1
- package/dest/note/note.d.ts +2 -17
- package/dest/note/note.d.ts.map +1 -1
- package/dest/note/note_dao.d.ts +71 -0
- package/dest/note/note_dao.d.ts.map +1 -0
- package/dest/note/note_dao.js +101 -0
- package/dest/note/note_status.d.ts +1 -1
- package/dest/note/notes_filter.d.ts +1 -1
- package/dest/p2p/attestation_utils.d.ts +1 -1
- package/dest/p2p/block_attestation.d.ts +5 -12
- package/dest/p2p/block_attestation.d.ts.map +1 -1
- package/dest/p2p/block_proposal.d.ts +3 -6
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +1 -1
- package/dest/p2p/client_type.d.ts +1 -1
- package/dest/p2p/consensus_payload.d.ts +10 -188
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +16 -23
- package/dest/p2p/gossipable.d.ts +6 -5
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/gossipable.js +16 -10
- package/dest/p2p/index.d.ts +1 -1
- package/dest/p2p/interface.d.ts +1 -1
- package/dest/p2p/message_validator.d.ts +1 -1
- package/dest/p2p/peer_error.d.ts +1 -1
- package/dest/p2p/signature_utils.d.ts +1 -1
- package/dest/p2p/topic_type.d.ts +1 -1
- package/dest/parity/index.d.ts +1 -1
- package/dest/parity/parity_base_private_inputs.d.ts +1 -3
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
- package/dest/parity/parity_public_inputs.d.ts +1 -4
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_root_private_inputs.d.ts +1 -2
- 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/index.d.ts +1 -1
- package/dest/proofs/proof.d.ts +1 -4
- package/dest/proofs/proof.d.ts.map +1 -1
- package/dest/proofs/proof_data.d.ts +1 -1
- package/dest/proofs/proof_data.d.ts.map +1 -1
- package/dest/proofs/proving_request_type.d.ts +1 -1
- package/dest/proofs/recursive_proof.d.ts +2 -26
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.d.ts +1 -1
- package/dest/rollup/base_rollup_hints.d.ts +1 -34
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/block_constant_data.d.ts +1 -12
- package/dest/rollup/block_constant_data.d.ts.map +1 -1
- package/dest/rollup/block_headers_hash.d.ts +4 -0
- package/dest/rollup/block_headers_hash.d.ts.map +1 -0
- package/dest/rollup/block_headers_hash.js +9 -0
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts +1 -4
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.d.ts +8 -40
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/block_rollup_public_inputs.js +8 -2
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -76
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/block_root_rollup_private_inputs.js +1 -9
- package/dest/rollup/checkpoint_constant_data.d.ts +26 -13
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
- package/dest/rollup/checkpoint_constant_data.js +27 -3
- package/dest/rollup/checkpoint_header.d.ts +16 -14
- package/dest/rollup/checkpoint_header.d.ts.map +1 -1
- package/dest/rollup/checkpoint_header.js +40 -13
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +1 -4
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +1 -25
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -29
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +4 -4
- package/dest/rollup/epoch_constant_data.d.ts +1 -16
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
- package/dest/rollup/index.d.ts +2 -1
- package/dest/rollup/index.d.ts.map +1 -1
- package/dest/rollup/index.js +1 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +1 -1
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +1 -1
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +1 -1
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_private_inputs.d.ts +1 -6
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/root_rollup_public_inputs.d.ts +1 -3
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
- package/dest/rollup/tree_snapshot_diff_hints.d.ts +1 -24
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +1 -4
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
- package/dest/rollup/tx_rollup_public_inputs.d.ts +1 -29
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
- package/dest/schemas/index.d.ts +1 -1
- package/dest/schemas/schemas.d.ts +86 -15
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +12 -1
- package/dest/slashing/empire.d.ts +1 -1
- package/dest/slashing/empire.d.ts.map +1 -1
- package/dest/slashing/empire.js +5 -4
- package/dest/slashing/helpers.d.ts +7 -6
- package/dest/slashing/helpers.d.ts.map +1 -1
- package/dest/slashing/helpers.js +8 -6
- package/dest/slashing/index.d.ts +1 -1
- package/dest/slashing/interfaces.d.ts +3 -2
- package/dest/slashing/interfaces.d.ts.map +1 -1
- package/dest/slashing/serialization.d.ts +1 -1
- package/dest/slashing/tally.d.ts +1 -1
- package/dest/slashing/types.d.ts +10 -10
- package/dest/snapshots/download.d.ts +1 -1
- package/dest/snapshots/index.d.ts +1 -1
- package/dest/snapshots/types.d.ts +18 -18
- package/dest/snapshots/upload.d.ts +1 -1
- package/dest/stats/index.d.ts +1 -1
- package/dest/stats/stats.d.ts +1 -1
- package/dest/tests/factories.d.ts +34 -29
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +72 -147
- package/dest/tests/fixtures.d.ts +1 -1
- package/dest/tests/index.d.ts +1 -1
- package/dest/tests/jest.d.ts +1 -1
- package/dest/tests/mocks.d.ts +54 -23
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +133 -33
- package/dest/trees/append_only_tree_snapshot.d.ts +9 -16
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +9 -9
- package/dest/trees/database_public_state_source.d.ts +1 -1
- package/dest/trees/database_public_state_source.d.ts.map +1 -1
- package/dest/trees/index.d.ts +1 -1
- package/dest/trees/merkle_tree_id.d.ts +5 -5
- package/dest/trees/merkle_tree_id.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.d.ts +17 -13
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.js +24 -0
- package/dest/trees/nullifier_membership_witness.d.ts +4 -37
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.d.ts +28 -27
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +24 -0
- package/dest/trees/public_data_witness.d.ts +11 -45
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/tx/block_header.d.ts +5 -12
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +13 -2
- package/dest/tx/call_context.d.ts +6 -18
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +1 -4
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/content_commitment.d.ts +1 -1
- package/dest/tx/content_commitment.d.ts.map +1 -1
- package/dest/tx/execution_payload.d.ts +37 -0
- package/dest/tx/execution_payload.d.ts.map +1 -0
- package/dest/tx/execution_payload.js +40 -0
- package/dest/tx/function_data.d.ts +4 -6
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variable_builder.d.ts +3 -2
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +43 -24
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +48 -8
- package/dest/tx/hashed_values.d.ts +1 -7
- package/dest/tx/hashed_values.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 +2 -2
- package/dest/tx/indexed_tx_effect.js +3 -1
- package/dest/tx/offchain_effect.d.ts +1 -1
- package/dest/tx/partial_state_reference.d.ts +4 -7
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +10 -10
- package/dest/tx/private_execution_result.d.ts +14 -49
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +6 -3
- package/dest/tx/private_tx_constant_data.d.ts +1 -16
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
- package/dest/tx/processed_tx.d.ts +1 -1
- package/dest/tx/profiling.d.ts +38 -38
- package/dest/tx/profiling.d.ts.map +1 -1
- package/dest/tx/profiling.js +5 -4
- package/dest/tx/protocol_contracts.d.ts +10 -2
- package/dest/tx/protocol_contracts.d.ts.map +1 -1
- package/dest/tx/protocol_contracts.js +9 -0
- package/dest/tx/proven_tx.d.ts +18 -18
- package/dest/tx/proven_tx.d.ts.map +1 -1
- package/dest/tx/public_call_request_with_calldata.d.ts +9 -7
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
- package/dest/tx/public_call_request_with_calldata.js +12 -0
- package/dest/tx/public_simulation_output.d.ts +3 -1
- package/dest/tx/public_simulation_output.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.js +8 -1
- package/dest/tx/simulated_tx.d.ts +21 -21
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/state_reference.d.ts +10 -12
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +9 -9
- package/dest/tx/tree_snapshots.d.ts +15 -7
- package/dest/tx/tree_snapshots.d.ts.map +1 -1
- package/dest/tx/tree_snapshots.js +9 -0
- package/dest/tx/tx.d.ts +4 -18
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +6 -4
- package/dest/tx/tx_constant_data.d.ts +1 -1
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_context.d.ts +1 -2
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_effect.d.ts +20 -42
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +54 -59
- package/dest/tx/tx_execution_request.d.ts +1 -30
- package/dest/tx/tx_execution_request.d.ts.map +1 -1
- package/dest/tx/tx_hash.d.ts +1 -2
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_receipt.d.ts +1 -7
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_request.d.ts +1 -6
- package/dest/tx/tx_request.d.ts.map +1 -1
- package/dest/tx/validator/empty_validator.d.ts +1 -1
- package/dest/tx/validator/empty_validator.d.ts.map +1 -1
- package/dest/tx/validator/error_texts.d.ts +1 -1
- package/dest/tx/validator/tx_validator.d.ts +5 -5
- package/dest/types/index.d.ts +1 -1
- package/dest/types/shared.d.ts +1 -4
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/update-checker/index.d.ts +1 -1
- package/dest/update-checker/update-checker.d.ts +2 -3
- package/dest/update-checker/update-checker.d.ts.map +1 -1
- package/dest/validators/errors.d.ts +6 -7
- package/dest/validators/errors.d.ts.map +1 -1
- package/dest/validators/errors.js +2 -4
- package/dest/validators/index.d.ts +1 -1
- package/dest/validators/schemas.d.ts +266 -208
- package/dest/validators/schemas.d.ts.map +1 -1
- package/dest/validators/schemas.js +7 -7
- package/dest/validators/types.d.ts +10 -9
- package/dest/validators/types.d.ts.map +1 -1
- package/dest/versioning/index.d.ts +1 -1
- package/dest/versioning/versioning.d.ts +1 -1
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/vks/index.d.ts +1 -1
- package/dest/vks/verification_key.d.ts +10 -22
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/verification_key.js +20 -0
- package/dest/vks/vk_data.d.ts +1 -7
- package/dest/vks/vk_data.d.ts.map +1 -1
- package/dest/world-state/index.d.ts +1 -1
- package/dest/world-state/world_state_revision.d.ts +34 -2
- package/dest/world-state/world_state_revision.d.ts.map +1 -1
- package/dest/world-state/world_state_revision.js +24 -1
- package/dest/zkpassport/index.d.ts +1 -1
- package/dest/zkpassport/index.d.ts.map +1 -1
- package/package.json +12 -11
- package/src/abi/abi.ts +4 -4
- package/src/abi/contract_artifact.ts +3 -3
- package/src/avm/avm.ts +562 -6
- package/src/avm/avm_accumulated_data.ts +40 -0
- package/src/avm/avm_circuit_public_inputs.ts +40 -0
- package/src/avm/message_pack.ts +4 -1
- package/src/avm/public_data_write.ts +12 -1
- package/src/avm/revert_code.ts +29 -9
- package/src/aztec-address/index.ts +26 -2
- package/src/block/attestation_info.ts +8 -1
- package/src/block/body.ts +16 -39
- package/src/block/index.ts +1 -0
- package/src/block/l2_block.ts +62 -4
- package/src/block/l2_block_code_to_purge.ts +4 -2
- package/src/block/l2_block_header.ts +19 -5
- package/src/block/l2_block_new.ts +171 -0
- package/src/block/l2_block_source.ts +9 -8
- package/src/block/proposal/attestations_and_signers.ts +20 -1
- package/src/block/published_l2_block.ts +14 -31
- package/src/block/validate_block_result.ts +9 -7
- package/src/checkpoint/checkpoint.ts +88 -0
- package/src/checkpoint/index.ts +2 -1
- package/src/checkpoint/published_checkpoint.ts +91 -0
- package/src/contract/contract_deployment_data.ts +125 -0
- package/src/contract/index.ts +1 -0
- package/src/contract/private_function_membership_proof.ts +1 -1
- package/src/epoch-helpers/index.ts +28 -21
- package/src/file-store/http.ts +6 -3
- package/src/file-store/s3.ts +3 -7
- package/src/gas/gas.ts +14 -0
- package/src/gas/gas_fees.ts +14 -0
- package/src/gas/gas_settings.ts +19 -0
- package/src/gas/gas_used.ts +22 -1
- package/src/hash/hash.ts +13 -2
- package/src/interfaces/archiver.ts +10 -5
- package/src/interfaces/aztec-node.ts +12 -3
- package/src/interfaces/configs.ts +6 -0
- package/src/interfaces/epoch-prover.ts +3 -4
- package/src/interfaces/merkle_tree_operations.ts +2 -2
- package/src/interfaces/p2p.ts +4 -2
- package/src/interfaces/proving-job.ts +14 -5
- package/src/interfaces/validator.ts +5 -2
- package/src/kernel/hints/build_transient_data_hints.ts +2 -2
- package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
- package/src/kernel/private_call_data.ts +130 -3
- package/src/kernel/private_circuit_public_inputs.ts +29 -9
- package/src/kernel/private_kernel_circuit_public_inputs.ts +7 -0
- package/src/kernel/private_kernel_data.ts +0 -2
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +6 -0
- package/src/kernel/private_to_avm_accumulated_data.ts +35 -0
- package/src/kernel/private_validation_requests.ts +1 -13
- package/src/kernel/public_call_request.ts +27 -0
- package/src/keys/public_keys.ts +19 -0
- package/src/logs/contract_class_log.ts +32 -0
- package/src/logs/debug_log.ts +20 -1
- package/src/logs/private_log.ts +19 -3
- package/src/logs/public_log.ts +14 -0
- package/src/messaging/in_hash.ts +10 -0
- package/src/messaging/index.ts +2 -0
- package/src/messaging/l2_to_l1_membership.ts +2 -2
- package/src/messaging/l2_to_l1_message.ts +25 -0
- package/src/messaging/out_hash.ts +36 -0
- package/src/noir/index.ts +6 -6
- package/src/note/index.ts +1 -1
- package/src/note/note_dao.ts +151 -0
- package/src/p2p/block_attestation.ts +2 -1
- package/src/p2p/block_proposal.ts +3 -2
- package/src/p2p/consensus_payload.ts +16 -26
- package/src/p2p/gossipable.ts +17 -8
- package/src/rollup/block_headers_hash.ts +12 -0
- package/src/rollup/block_rollup_public_inputs.ts +8 -0
- package/src/rollup/block_root_rollup_private_inputs.ts +0 -9
- package/src/rollup/checkpoint_constant_data.ts +43 -4
- package/src/rollup/checkpoint_header.ts +46 -22
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +5 -5
- package/src/rollup/index.ts +1 -0
- package/src/schemas/schemas.ts +18 -0
- package/src/slashing/empire.ts +6 -4
- package/src/slashing/helpers.ts +17 -12
- package/src/slashing/interfaces.ts +3 -1
- package/src/tests/factories.ts +211 -227
- package/src/tests/mocks.ts +228 -50
- package/src/trees/append_only_tree_snapshot.ts +11 -12
- package/src/trees/nullifier_leaf.ts +32 -0
- package/src/trees/public_data_leaf.ts +32 -0
- package/src/tx/block_header.ts +16 -3
- package/src/tx/execution_payload.ts +60 -0
- package/src/tx/global_variable_builder.ts +2 -1
- package/src/tx/global_variables.ts +63 -9
- package/src/tx/index.ts +1 -0
- package/src/tx/indexed_tx_effect.ts +1 -1
- package/src/tx/partial_state_reference.ts +9 -17
- package/src/tx/private_execution_result.ts +5 -2
- package/src/tx/profiling.ts +4 -6
- package/src/tx/protocol_contracts.ts +16 -0
- package/src/tx/public_call_request_with_calldata.ts +17 -0
- package/src/tx/public_simulation_output.ts +18 -1
- package/src/tx/state_reference.ts +9 -15
- package/src/tx/tree_snapshots.ts +16 -0
- package/src/tx/tx.ts +7 -6
- package/src/tx/tx_effect.ts +84 -90
- package/src/validators/errors.ts +3 -4
- package/src/validators/schemas.ts +7 -7
- package/src/validators/types.ts +9 -8
- package/src/vks/verification_key.ts +25 -0
- package/src/world-state/world_state_revision.ts +47 -5
- package/dest/checkpoint/checkpoint_body.d.ts +0 -4
- package/dest/checkpoint/checkpoint_body.d.ts.map +0 -1
- package/dest/checkpoint/checkpoint_body.js +0 -9
- package/dest/note/unique_note.d.ts +0 -43
- package/dest/note/unique_note.d.ts.map +0 -1
- package/dest/note/unique_note.js +0 -67
- package/src/checkpoint/checkpoint_body.ts +0 -10
- package/src/note/unique_note.ts +0 -88
|
@@ -50,6 +50,12 @@ export class BlockRollupPublicInputs {
|
|
|
50
50
|
* Timestamp of the last block in this block range.
|
|
51
51
|
*/
|
|
52
52
|
public endTimestamp: UInt64,
|
|
53
|
+
/**
|
|
54
|
+
* Hash of the headers of all blocks in this block range. It will be combined with the `blockHeadersHash` from
|
|
55
|
+
* other blocks in the same checkpoint to form a wonky tree. The root of that tree becomes the final hash stored in
|
|
56
|
+
* the checkpoint header, enabling validation of the blocks included in a checkpoint given their headers.
|
|
57
|
+
*/
|
|
58
|
+
public blockHeadersHash: Fr,
|
|
53
59
|
/**
|
|
54
60
|
* SHA256 hash of l1 to l2 messages.
|
|
55
61
|
*/
|
|
@@ -84,6 +90,7 @@ export class BlockRollupPublicInputs {
|
|
|
84
90
|
Fr.fromBuffer(reader),
|
|
85
91
|
Fr.fromBuffer(reader),
|
|
86
92
|
Fr.fromBuffer(reader),
|
|
93
|
+
Fr.fromBuffer(reader),
|
|
87
94
|
);
|
|
88
95
|
}
|
|
89
96
|
|
|
@@ -98,6 +105,7 @@ export class BlockRollupPublicInputs {
|
|
|
98
105
|
this.endSpongeBlob,
|
|
99
106
|
bigintToUInt64BE(this.startTimestamp),
|
|
100
107
|
bigintToUInt64BE(this.endTimestamp),
|
|
108
|
+
this.blockHeadersHash,
|
|
101
109
|
this.inHash,
|
|
102
110
|
this.outHash,
|
|
103
111
|
this.accumulatedFees,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { SpongeBlob } from '@aztec/blob-lib/types';
|
|
2
1
|
import { ARCHIVE_HEIGHT, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH } from '@aztec/constants';
|
|
3
2
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
3
|
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
@@ -157,11 +156,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
|
|
|
157
156
|
* The constants of the checkpoint.
|
|
158
157
|
*/
|
|
159
158
|
public constants: CheckpointConstantData,
|
|
160
|
-
/**
|
|
161
|
-
* The start sponge blob of this block. No data has been absorbed into it yet, since it's the first block. But the
|
|
162
|
-
* number of expected fields must be set to the total number of fields in the entire checkpoint.
|
|
163
|
-
*/
|
|
164
|
-
public startSpongeBlob: SpongeBlob,
|
|
165
159
|
/**
|
|
166
160
|
* The timestamp of this block.
|
|
167
161
|
*/
|
|
@@ -186,7 +180,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
|
|
|
186
180
|
fields.previousArchive,
|
|
187
181
|
fields.previousState,
|
|
188
182
|
fields.constants,
|
|
189
|
-
fields.startSpongeBlob,
|
|
190
183
|
fields.timestamp,
|
|
191
184
|
fields.newL1ToL2MessageSubtreeRootSiblingPath,
|
|
192
185
|
fields.newArchiveSiblingPath,
|
|
@@ -199,7 +192,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
|
|
|
199
192
|
this.previousArchive,
|
|
200
193
|
this.previousState,
|
|
201
194
|
this.constants,
|
|
202
|
-
this.startSpongeBlob,
|
|
203
195
|
bigintToUInt64BE(this.timestamp),
|
|
204
196
|
this.newL1ToL2MessageSubtreeRootSiblingPath,
|
|
205
197
|
this.newArchiveSiblingPath,
|
|
@@ -213,7 +205,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
|
|
|
213
205
|
AppendOnlyTreeSnapshot.fromBuffer(reader),
|
|
214
206
|
StateReference.fromBuffer(reader),
|
|
215
207
|
CheckpointConstantData.fromBuffer(reader),
|
|
216
|
-
SpongeBlob.fromBuffer(reader),
|
|
217
208
|
reader.readUInt64(),
|
|
218
209
|
reader.readArray(L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr),
|
|
219
210
|
reader.readArray(ARCHIVE_HEIGHT, Fr),
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { SlotNumber } from '@aztec/foundation/branded-types';
|
|
1
2
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
3
4
|
import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
5
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
5
6
|
|
|
7
|
+
import { inspect } from 'util';
|
|
8
|
+
|
|
6
9
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
7
10
|
import { GasFees } from '../gas/gas_fees.js';
|
|
8
11
|
|
|
@@ -22,7 +25,7 @@ export class CheckpointConstantData {
|
|
|
22
25
|
/** Identifier of the prover. */
|
|
23
26
|
public proverId: Fr,
|
|
24
27
|
/** Slot number of the checkpoint. */
|
|
25
|
-
public slotNumber:
|
|
28
|
+
public slotNumber: SlotNumber,
|
|
26
29
|
/** Coinbase address of the rollup. */
|
|
27
30
|
public coinbase: EthAddress,
|
|
28
31
|
/** Address to receive fees. */
|
|
@@ -56,7 +59,7 @@ export class CheckpointConstantData {
|
|
|
56
59
|
Fr.ZERO,
|
|
57
60
|
Fr.ZERO,
|
|
58
61
|
Fr.ZERO,
|
|
59
|
-
|
|
62
|
+
SlotNumber.ZERO,
|
|
60
63
|
EthAddress.ZERO,
|
|
61
64
|
AztecAddress.ZERO,
|
|
62
65
|
GasFees.empty(),
|
|
@@ -64,7 +67,17 @@ export class CheckpointConstantData {
|
|
|
64
67
|
}
|
|
65
68
|
|
|
66
69
|
toBuffer() {
|
|
67
|
-
return serializeToBuffer(
|
|
70
|
+
return serializeToBuffer(
|
|
71
|
+
this.chainId,
|
|
72
|
+
this.version,
|
|
73
|
+
this.vkTreeRoot,
|
|
74
|
+
this.protocolContractsHash,
|
|
75
|
+
this.proverId,
|
|
76
|
+
new Fr(this.slotNumber),
|
|
77
|
+
this.coinbase,
|
|
78
|
+
this.feeRecipient,
|
|
79
|
+
this.gasFees,
|
|
80
|
+
);
|
|
68
81
|
}
|
|
69
82
|
|
|
70
83
|
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
@@ -75,10 +88,36 @@ export class CheckpointConstantData {
|
|
|
75
88
|
Fr.fromBuffer(reader),
|
|
76
89
|
Fr.fromBuffer(reader),
|
|
77
90
|
Fr.fromBuffer(reader),
|
|
78
|
-
Fr.fromBuffer(reader),
|
|
91
|
+
SlotNumber(Fr.fromBuffer(reader).toNumber()),
|
|
79
92
|
reader.readObject(EthAddress),
|
|
80
93
|
reader.readObject(AztecAddress),
|
|
81
94
|
reader.readObject(GasFees),
|
|
82
95
|
);
|
|
83
96
|
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Returns the slot number as a SlotNumber branded type.
|
|
100
|
+
* @deprecated Use slotNumber directly instead.
|
|
101
|
+
*/
|
|
102
|
+
getSlotNumber(): SlotNumber {
|
|
103
|
+
return this.slotNumber;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
toInspect() {
|
|
107
|
+
return {
|
|
108
|
+
chainId: this.chainId.toNumber(),
|
|
109
|
+
version: this.version.toNumber(),
|
|
110
|
+
vkTreeRoot: this.vkTreeRoot.toString(),
|
|
111
|
+
protocolContractsHash: this.protocolContractsHash.toString(),
|
|
112
|
+
proverId: this.proverId.toString(),
|
|
113
|
+
slotNumber: this.slotNumber,
|
|
114
|
+
coinbase: this.coinbase.toString(),
|
|
115
|
+
feeRecipient: this.feeRecipient.toString(),
|
|
116
|
+
gasFees: this.gasFees.toInspect(),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
[inspect.custom]() {
|
|
121
|
+
return `CheckpointConstantData ${inspect(this.toInspect())}`;
|
|
122
|
+
}
|
|
84
123
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ViemHeader } from '@aztec/ethereum';
|
|
2
|
+
import { SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
3
|
import { sha256ToField } from '@aztec/foundation/crypto';
|
|
3
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
5
|
import { Fr } from '@aztec/foundation/fields';
|
|
@@ -20,10 +21,12 @@ export class CheckpointHeader {
|
|
|
20
21
|
constructor(
|
|
21
22
|
/** Root of the archive tree before this block is added. */
|
|
22
23
|
public lastArchiveRoot: Fr,
|
|
24
|
+
/** Hash of the headers of all blocks in this checkpoint. */
|
|
25
|
+
public blockHeadersHash: Fr,
|
|
23
26
|
/** Content commitment of the L2 block. */
|
|
24
27
|
public contentCommitment: ContentCommitment,
|
|
25
28
|
/** Slot number of the L2 block */
|
|
26
|
-
public slotNumber:
|
|
29
|
+
public slotNumber: SlotNumber,
|
|
27
30
|
/** Timestamp of the L2 block. */
|
|
28
31
|
public timestamp: UInt64,
|
|
29
32
|
/** Recipient of block reward. */
|
|
@@ -40,8 +43,9 @@ export class CheckpointHeader {
|
|
|
40
43
|
return z
|
|
41
44
|
.object({
|
|
42
45
|
lastArchiveRoot: schemas.Fr,
|
|
46
|
+
blockHeadersHash: schemas.Fr,
|
|
43
47
|
contentCommitment: ContentCommitment.schema,
|
|
44
|
-
slotNumber: schemas.
|
|
48
|
+
slotNumber: schemas.SlotNumber,
|
|
45
49
|
timestamp: schemas.BigInt,
|
|
46
50
|
coinbase: schemas.EthAddress,
|
|
47
51
|
feeRecipient: schemas.AztecAddress,
|
|
@@ -54,6 +58,7 @@ export class CheckpointHeader {
|
|
|
54
58
|
static getFields(fields: FieldsOf<CheckpointHeader>) {
|
|
55
59
|
return [
|
|
56
60
|
fields.lastArchiveRoot,
|
|
61
|
+
fields.blockHeadersHash,
|
|
57
62
|
fields.contentCommitment,
|
|
58
63
|
fields.slotNumber,
|
|
59
64
|
fields.timestamp,
|
|
@@ -72,9 +77,10 @@ export class CheckpointHeader {
|
|
|
72
77
|
const reader = BufferReader.asReader(buffer);
|
|
73
78
|
|
|
74
79
|
return new CheckpointHeader(
|
|
80
|
+
reader.readObject(Fr),
|
|
75
81
|
reader.readObject(Fr),
|
|
76
82
|
reader.readObject(ContentCommitment),
|
|
77
|
-
Fr.fromBuffer(reader),
|
|
83
|
+
SlotNumber(Fr.fromBuffer(reader).toNumber()),
|
|
78
84
|
reader.readUInt64(),
|
|
79
85
|
reader.readObject(EthAddress),
|
|
80
86
|
reader.readObject(AztecAddress),
|
|
@@ -86,8 +92,9 @@ export class CheckpointHeader {
|
|
|
86
92
|
equals(other: CheckpointHeader) {
|
|
87
93
|
return (
|
|
88
94
|
this.lastArchiveRoot.equals(other.lastArchiveRoot) &&
|
|
95
|
+
this.blockHeadersHash.equals(other.blockHeadersHash) &&
|
|
89
96
|
this.contentCommitment.equals(other.contentCommitment) &&
|
|
90
|
-
this.slotNumber
|
|
97
|
+
this.slotNumber === other.slotNumber &&
|
|
91
98
|
this.timestamp === other.timestamp &&
|
|
92
99
|
this.coinbase.equals(other.coinbase) &&
|
|
93
100
|
this.feeRecipient.equals(other.feeRecipient) &&
|
|
@@ -100,8 +107,9 @@ export class CheckpointHeader {
|
|
|
100
107
|
// Note: The order here must match the order in the ProposedHeaderLib solidity library.
|
|
101
108
|
return serializeToBuffer([
|
|
102
109
|
this.lastArchiveRoot,
|
|
110
|
+
this.blockHeadersHash,
|
|
103
111
|
this.contentCommitment,
|
|
104
|
-
this.slotNumber,
|
|
112
|
+
new Fr(this.slotNumber),
|
|
105
113
|
bigintToUInt64BE(this.timestamp),
|
|
106
114
|
this.coinbase,
|
|
107
115
|
this.feeRecipient,
|
|
@@ -117,8 +125,9 @@ export class CheckpointHeader {
|
|
|
117
125
|
static empty(fields: Partial<FieldsOf<CheckpointHeader>> = {}) {
|
|
118
126
|
return CheckpointHeader.from({
|
|
119
127
|
lastArchiveRoot: Fr.ZERO,
|
|
128
|
+
blockHeadersHash: Fr.ZERO,
|
|
120
129
|
contentCommitment: ContentCommitment.empty(),
|
|
121
|
-
slotNumber:
|
|
130
|
+
slotNumber: SlotNumber.ZERO,
|
|
122
131
|
timestamp: 0n,
|
|
123
132
|
coinbase: EthAddress.ZERO,
|
|
124
133
|
feeRecipient: AztecAddress.ZERO,
|
|
@@ -128,24 +137,27 @@ export class CheckpointHeader {
|
|
|
128
137
|
});
|
|
129
138
|
}
|
|
130
139
|
|
|
131
|
-
static random(): CheckpointHeader {
|
|
132
|
-
return
|
|
133
|
-
Fr.random(),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
static random(overrides: Partial<FieldsOf<CheckpointHeader>> = {}): CheckpointHeader {
|
|
141
|
+
return CheckpointHeader.from({
|
|
142
|
+
lastArchiveRoot: Fr.random(),
|
|
143
|
+
blockHeadersHash: Fr.random(),
|
|
144
|
+
contentCommitment: ContentCommitment.random(),
|
|
145
|
+
slotNumber: SlotNumber(Math.floor(Math.random() * 1000) + 1),
|
|
146
|
+
timestamp: BigInt(Math.floor(Date.now() / 1000)),
|
|
147
|
+
coinbase: EthAddress.random(),
|
|
148
|
+
feeRecipient: new AztecAddress(Fr.random()),
|
|
149
|
+
gasFees: GasFees.random(),
|
|
150
|
+
totalManaUsed: new Fr(BigInt(Math.floor(Math.random() * 1000000))),
|
|
151
|
+
...overrides,
|
|
152
|
+
});
|
|
142
153
|
}
|
|
143
154
|
|
|
144
155
|
isEmpty(): boolean {
|
|
145
156
|
return (
|
|
146
157
|
this.lastArchiveRoot.isZero() &&
|
|
158
|
+
this.blockHeadersHash.isZero() &&
|
|
147
159
|
this.contentCommitment.isEmpty() &&
|
|
148
|
-
this.slotNumber
|
|
160
|
+
this.slotNumber === 0 &&
|
|
149
161
|
this.timestamp === 0n &&
|
|
150
162
|
this.coinbase.isZero() &&
|
|
151
163
|
this.feeRecipient.isZero() &&
|
|
@@ -169,8 +181,9 @@ export class CheckpointHeader {
|
|
|
169
181
|
static fromViem(header: ViemHeader) {
|
|
170
182
|
return new CheckpointHeader(
|
|
171
183
|
Fr.fromString(header.lastArchiveRoot),
|
|
184
|
+
Fr.fromString(header.blockHeadersHash),
|
|
172
185
|
ContentCommitment.fromViem(header.contentCommitment),
|
|
173
|
-
|
|
186
|
+
SlotNumber.fromBigInt(header.slotNumber),
|
|
174
187
|
header.timestamp,
|
|
175
188
|
new EthAddress(hexToBuffer(header.coinbase)),
|
|
176
189
|
new AztecAddress(hexToBuffer(header.feeRecipient)),
|
|
@@ -179,11 +192,20 @@ export class CheckpointHeader {
|
|
|
179
192
|
);
|
|
180
193
|
}
|
|
181
194
|
|
|
195
|
+
/**
|
|
196
|
+
* Returns the slot number as a SlotNumber branded type.
|
|
197
|
+
* @deprecated Use slotNumber directly instead.
|
|
198
|
+
*/
|
|
199
|
+
getSlotNumber(): SlotNumber {
|
|
200
|
+
return this.slotNumber;
|
|
201
|
+
}
|
|
202
|
+
|
|
182
203
|
toViem(): ViemHeader {
|
|
183
204
|
return {
|
|
184
205
|
lastArchiveRoot: this.lastArchiveRoot.toString(),
|
|
206
|
+
blockHeadersHash: this.blockHeadersHash.toString(),
|
|
185
207
|
contentCommitment: this.contentCommitment.toViem(),
|
|
186
|
-
slotNumber: this.slotNumber
|
|
208
|
+
slotNumber: BigInt(this.slotNumber),
|
|
187
209
|
timestamp: this.timestamp,
|
|
188
210
|
coinbase: this.coinbase.toString(),
|
|
189
211
|
feeRecipient: `0x${this.feeRecipient.toBuffer().toString('hex').padStart(64, '0')}`,
|
|
@@ -198,8 +220,9 @@ export class CheckpointHeader {
|
|
|
198
220
|
toInspect() {
|
|
199
221
|
return {
|
|
200
222
|
lastArchive: this.lastArchiveRoot.toString(),
|
|
223
|
+
blockHeadersHash: this.blockHeadersHash.toString(),
|
|
201
224
|
contentCommitment: this.contentCommitment.toInspect(),
|
|
202
|
-
slotNumber: this.slotNumber
|
|
225
|
+
slotNumber: this.slotNumber,
|
|
203
226
|
timestamp: this.timestamp,
|
|
204
227
|
coinbase: this.coinbase.toString(),
|
|
205
228
|
feeRecipient: this.feeRecipient.toString(),
|
|
@@ -212,8 +235,9 @@ export class CheckpointHeader {
|
|
|
212
235
|
const gasfees = `da:${this.gasFees.feePerDaGas}, l2:${this.gasFees.feePerL2Gas}`;
|
|
213
236
|
return `Header {
|
|
214
237
|
lastArchiveRoot: ${this.lastArchiveRoot.toString()},
|
|
238
|
+
blockHeadersHash: ${this.blockHeadersHash.toString()},
|
|
215
239
|
contentCommitment: ${inspect(this.contentCommitment)},
|
|
216
|
-
slotNumber: ${this.slotNumber
|
|
240
|
+
slotNumber: ${this.slotNumber},
|
|
217
241
|
timestamp: ${this.timestamp},
|
|
218
242
|
coinbase: ${this.coinbase.toString()},
|
|
219
243
|
feeRecipient: ${this.feeRecipient.toString()},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
|
|
2
|
-
import { ARCHIVE_HEIGHT,
|
|
2
|
+
import { ARCHIVE_HEIGHT, BLOBS_PER_CHECKPOINT, FIELDS_PER_BLOB } from '@aztec/constants';
|
|
3
3
|
import { BLS12Point, Fr } from '@aztec/foundation/fields';
|
|
4
4
|
import { bufferSchemaFor } from '@aztec/foundation/schemas';
|
|
5
5
|
import { BufferReader, type Tuple, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
@@ -31,13 +31,13 @@ export class CheckpointRootRollupHints {
|
|
|
31
31
|
/**
|
|
32
32
|
* Flat list of all tx effects which will be added to the blob.
|
|
33
33
|
* Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
|
|
34
|
-
* Tuple<Fr, FIELDS_PER_BLOB *
|
|
34
|
+
* Tuple<Fr, FIELDS_PER_BLOB * BLOBS_PER_CHECKPOINT>
|
|
35
35
|
*/
|
|
36
36
|
public blobFields: Fr[],
|
|
37
37
|
/**
|
|
38
38
|
* KZG commitments representing the blob (precomputed in ts, injected to use inside circuit).
|
|
39
39
|
*/
|
|
40
|
-
public blobCommitments: Tuple<BLS12Point, typeof
|
|
40
|
+
public blobCommitments: Tuple<BLS12Point, typeof BLOBS_PER_CHECKPOINT>,
|
|
41
41
|
/**
|
|
42
42
|
* The hash of eth blob hashes for this block
|
|
43
43
|
* See yarn-project/foundation/src/blob/index.ts or body.ts for calculation
|
|
@@ -74,8 +74,8 @@ export class CheckpointRootRollupHints {
|
|
|
74
74
|
reader.readObject(FinalBlobBatchingChallenges),
|
|
75
75
|
// Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
|
|
76
76
|
// reader.readArray(FIELDS_PER_BLOB, Fr),
|
|
77
|
-
Array.from({ length: FIELDS_PER_BLOB *
|
|
78
|
-
reader.readArray(
|
|
77
|
+
Array.from({ length: FIELDS_PER_BLOB * BLOBS_PER_CHECKPOINT }, () => Fr.fromBuffer(reader)),
|
|
78
|
+
reader.readArray(BLOBS_PER_CHECKPOINT, BLS12Point),
|
|
79
79
|
Fr.fromBuffer(reader),
|
|
80
80
|
);
|
|
81
81
|
}
|
package/src/rollup/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './avm_proof_data.js';
|
|
2
2
|
export * from './base_rollup_hints.js';
|
|
3
3
|
export * from './block_constant_data.js';
|
|
4
|
+
export * from './block_headers_hash.js';
|
|
4
5
|
export * from './block_merge_rollup_private_inputs.js';
|
|
5
6
|
export * from './block_rollup_public_inputs.js';
|
|
6
7
|
export * from './block_root_rollup_private_inputs.js';
|
package/src/schemas/schemas.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
1
2
|
import type { Buffer32 } from '@aztec/foundation/buffer';
|
|
2
3
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
4
|
import type { Fq, Fr, Point } from '@aztec/foundation/fields';
|
|
@@ -10,6 +11,7 @@ import { EventSelector } from '../abi/event_selector.js';
|
|
|
10
11
|
import { FunctionSelector } from '../abi/function_selector.js';
|
|
11
12
|
import { NoteSelector } from '../abi/note_selector.js';
|
|
12
13
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
14
|
+
import { Gas } from '../gas/gas.js';
|
|
13
15
|
|
|
14
16
|
/**
|
|
15
17
|
* Validation schemas for common types. Every schema must match its toJSON.
|
|
@@ -63,6 +65,19 @@ export const schemas = {
|
|
|
63
65
|
|
|
64
66
|
/** Accepts a hex string. */
|
|
65
67
|
EventSelector: EventSelector.schema,
|
|
68
|
+
|
|
69
|
+
/** Accepts a number, bigint, or string and coerces to SlotNumber. */
|
|
70
|
+
SlotNumber: foundationSchemas.SlotNumber as ZodFor<SlotNumber>,
|
|
71
|
+
|
|
72
|
+
/** Accepts a number, bigint, or string and coerces to EpochNumber. */
|
|
73
|
+
EpochNumber: foundationSchemas.EpochNumber as ZodFor<EpochNumber>,
|
|
74
|
+
|
|
75
|
+
GasUsed: z.object({
|
|
76
|
+
totalGas: Gas.schema,
|
|
77
|
+
teardownGas: Gas.schema,
|
|
78
|
+
publicGas: Gas.schema,
|
|
79
|
+
billedGas: Gas.schema,
|
|
80
|
+
}),
|
|
66
81
|
};
|
|
67
82
|
|
|
68
83
|
export const AbiDecodedSchema: ZodFor<AbiDecoded> = z.union([
|
|
@@ -73,6 +88,9 @@ export const AbiDecodedSchema: ZodFor<AbiDecoded> = z.union([
|
|
|
73
88
|
z.record(z.lazy(() => AbiDecodedSchema)),
|
|
74
89
|
]);
|
|
75
90
|
|
|
91
|
+
// C++ only supports null values, which we want to convert to undefined.
|
|
92
|
+
export const NullishToUndefined = (schema: ZodFor<any>) => schema.nullish().transform(x => x ?? undefined);
|
|
93
|
+
|
|
76
94
|
export {
|
|
77
95
|
type ZodFor,
|
|
78
96
|
bufferSchema,
|
package/src/slashing/empire.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
|
|
1
3
|
import { getRoundForSlot, getRoundsForEpoch } from './helpers.js';
|
|
2
4
|
import type { Offense, OffenseIdentifier, SlashPayload, SlashPayloadRound, ValidatorSlash } from './types.js';
|
|
3
5
|
import { OffenseType } from './types.js';
|
|
@@ -66,7 +68,7 @@ export function getFirstEligibleRoundForOffense(
|
|
|
66
68
|
// Inactivity is detected at the end of the epoch, so we flag it as detected in the first fresh round for the next epoch
|
|
67
69
|
case OffenseType.INACTIVITY: {
|
|
68
70
|
const epoch = offense.epochOrSlot;
|
|
69
|
-
const detectedEpoch = epoch + 1n;
|
|
71
|
+
const detectedEpoch = EpochNumber.fromBigInt(epoch + 1n);
|
|
70
72
|
return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
|
|
71
73
|
}
|
|
72
74
|
// These offenses are detected once an epoch is pruned, which happens after the proof submission window
|
|
@@ -74,7 +76,7 @@ export function getFirstEligibleRoundForOffense(
|
|
|
74
76
|
case OffenseType.DATA_WITHHOLDING: {
|
|
75
77
|
// TODO(palla/slash): Check for off-by-ones especially here
|
|
76
78
|
const epoch = offense.epochOrSlot;
|
|
77
|
-
const detectedEpoch = epoch + BigInt(constants.proofSubmissionEpochs);
|
|
79
|
+
const detectedEpoch = EpochNumber.fromBigInt(epoch + BigInt(constants.proofSubmissionEpochs));
|
|
78
80
|
return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
|
|
79
81
|
}
|
|
80
82
|
// These offenses are detected immediately in the slot they occur, so we assume they are detected in the first round for the following slot
|
|
@@ -83,13 +85,13 @@ export function getFirstEligibleRoundForOffense(
|
|
|
83
85
|
case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
|
|
84
86
|
case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL: {
|
|
85
87
|
const slot = offense.epochOrSlot;
|
|
86
|
-
const detectedSlot = slot + 1n;
|
|
88
|
+
const detectedSlot = SlotNumber.fromBigInt(slot + 1n);
|
|
87
89
|
return getRoundForSlot(detectedSlot, constants).round + 1n;
|
|
88
90
|
}
|
|
89
91
|
// Assume these are epoch-based offenses, even though we should never have to process these
|
|
90
92
|
case OffenseType.UNKNOWN: {
|
|
91
93
|
const epoch = offense.epochOrSlot;
|
|
92
|
-
const detectedEpoch = epoch + 1n;
|
|
94
|
+
const detectedEpoch = EpochNumber.fromBigInt(epoch + 1n);
|
|
93
95
|
return getRoundsForEpoch(detectedEpoch, constants)[0] + 1n;
|
|
94
96
|
}
|
|
95
97
|
default: {
|
package/src/slashing/helpers.ts
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
|
+
import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
|
|
1
3
|
import { type L1RollupConstants, getEpochAtSlot, getSlotRangeForEpoch } from '../epoch-helpers/index.js';
|
|
2
4
|
import type { SlasherConfig } from '../interfaces/slasher.js';
|
|
3
5
|
import { type Offense, OffenseType } from './types.js';
|
|
4
6
|
|
|
5
7
|
/** Returns the voting round number and voting slot within the round for a given L2 slot. */
|
|
6
8
|
export function getRoundForSlot(
|
|
7
|
-
slot:
|
|
9
|
+
slot: SlotNumber,
|
|
8
10
|
constants: { slashingRoundSize: number },
|
|
9
|
-
): { round: bigint; votingSlot:
|
|
11
|
+
): { round: bigint; votingSlot: SlotNumber } {
|
|
10
12
|
const roundSize = BigInt(constants.slashingRoundSize);
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
+
const slotBigInt = BigInt(slot);
|
|
14
|
+
const round = slotBigInt / roundSize;
|
|
15
|
+
const votingSlot = SlotNumber.fromBigInt(slotBigInt % roundSize);
|
|
13
16
|
return { round, votingSlot };
|
|
14
17
|
}
|
|
15
18
|
|
|
16
19
|
/** Returns the voting round(s) lower and upper bounds (inclusive) covered by the given epoch */
|
|
17
20
|
export function getRoundsForEpoch(
|
|
18
|
-
epoch:
|
|
21
|
+
epoch: EpochNumber,
|
|
19
22
|
constants: { slashingRoundSize: number; epochDuration: number },
|
|
20
23
|
): [bigint, bigint] {
|
|
21
24
|
const [start, end] = getSlotRangeForEpoch(epoch, constants);
|
|
@@ -28,13 +31,13 @@ export function getRoundsForEpoch(
|
|
|
28
31
|
export function getEpochsForRound(
|
|
29
32
|
round: bigint,
|
|
30
33
|
constants: { slashingRoundSize: number; epochDuration: number },
|
|
31
|
-
):
|
|
32
|
-
const epochs:
|
|
33
|
-
const firstSlot = round * BigInt(constants.slashingRoundSize);
|
|
34
|
-
const lastSlot = firstSlot +
|
|
34
|
+
): EpochNumber[] {
|
|
35
|
+
const epochs: EpochNumber[] = [];
|
|
36
|
+
const firstSlot = SlotNumber.fromBigInt(round * BigInt(constants.slashingRoundSize));
|
|
37
|
+
const lastSlot = SlotNumber(firstSlot + constants.slashingRoundSize - 1);
|
|
35
38
|
const startEpoch = getEpochAtSlot(firstSlot, constants);
|
|
36
39
|
const endEpoch = getEpochAtSlot(lastSlot, constants);
|
|
37
|
-
for (let epoch = startEpoch; epoch <= endEpoch; epoch
|
|
40
|
+
for (let epoch = startEpoch; epoch <= endEpoch; epoch = EpochNumber(epoch + 1)) {
|
|
38
41
|
epochs.push(epoch);
|
|
39
42
|
}
|
|
40
43
|
return epochs;
|
|
@@ -101,9 +104,11 @@ export function getTimeUnitForOffense(offense: OffenseType): 'epoch' | 'slot' {
|
|
|
101
104
|
export function getSlotForOffense(
|
|
102
105
|
offense: Pick<Offense, 'epochOrSlot' | 'offenseType'>,
|
|
103
106
|
constants: Pick<L1RollupConstants, 'epochDuration'>,
|
|
104
|
-
):
|
|
107
|
+
): SlotNumber {
|
|
105
108
|
const { epochOrSlot, offenseType } = offense;
|
|
106
|
-
return getTimeUnitForOffense(offenseType) === 'epoch'
|
|
109
|
+
return getTimeUnitForOffense(offenseType) === 'epoch'
|
|
110
|
+
? SlotNumber.fromBigInt(epochOrSlot * BigInt(constants.epochDuration))
|
|
111
|
+
: SlotNumber.fromBigInt(epochOrSlot);
|
|
107
112
|
}
|
|
108
113
|
|
|
109
114
|
/** Returns the epoch for a given offense. If the offense type or epoch is not defined, returns undefined. */
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
|
|
1
3
|
import type { ProposerSlashAction } from './types.js';
|
|
2
4
|
|
|
3
5
|
export interface ProposerSlashActionProvider {
|
|
@@ -7,5 +9,5 @@ export interface ProposerSlashActionProvider {
|
|
|
7
9
|
* @param slotNumber - The current slot number
|
|
8
10
|
* @returns The actions to take
|
|
9
11
|
*/
|
|
10
|
-
getProposerActions(slotNumber:
|
|
12
|
+
getProposerActions(slotNumber: SlotNumber): Promise<ProposerSlashAction[]>;
|
|
11
13
|
}
|