@aztec/stdlib 0.0.0-test.1 → 0.0.1-commit.b655e406
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 +316 -323
- package/dest/abi/abi.d.ts.map +1 -1
- package/dest/abi/abi.js +71 -37
- package/dest/abi/authorization_selector.d.ts +52 -0
- package/dest/abi/authorization_selector.d.ts.map +1 -0
- package/dest/abi/authorization_selector.js +70 -0
- package/dest/abi/buffer.d.ts +0 -2
- package/dest/abi/buffer.d.ts.map +1 -1
- package/dest/abi/contract_artifact.d.ts +17 -4
- package/dest/abi/contract_artifact.d.ts.map +1 -1
- package/dest/abi/contract_artifact.js +76 -53
- package/dest/abi/decoder.d.ts +1 -1
- package/dest/abi/decoder.d.ts.map +1 -1
- package/dest/abi/decoder.js +8 -10
- package/dest/abi/encoder.d.ts.map +1 -1
- package/dest/abi/encoder.js +68 -2
- package/dest/abi/event_metadata_definition.d.ts +8 -0
- package/dest/abi/event_metadata_definition.d.ts.map +1 -0
- package/dest/abi/event_selector.d.ts +0 -2
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/function_call.d.ts +7 -2
- package/dest/abi/function_call.d.ts.map +1 -1
- package/dest/abi/function_call.js +6 -2
- package/dest/abi/function_selector.d.ts +0 -2
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/index.d.ts +2 -0
- package/dest/abi/index.d.ts.map +1 -1
- package/dest/abi/index.js +2 -0
- package/dest/abi/note_selector.d.ts +0 -2
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/selector.d.ts +0 -3
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/utils.d.ts +6 -2
- package/dest/abi/utils.d.ts.map +1 -1
- package/dest/abi/utils.js +7 -0
- package/dest/auth_witness/auth_witness.d.ts +22 -3
- package/dest/auth_witness/auth_witness.d.ts.map +1 -1
- package/dest/auth_witness/auth_witness.js +29 -0
- package/dest/avm/avm.d.ts +8446 -2091
- package/dest/avm/avm.d.ts.map +1 -1
- package/dest/avm/avm.js +371 -131
- package/dest/avm/avm_accumulated_data.d.ts +78 -20
- package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
- package/dest/avm/avm_accumulated_data.js +91 -11
- package/dest/avm/avm_circuit_public_inputs.d.ts +276 -216
- package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
- package/dest/avm/avm_circuit_public_inputs.js +60 -9
- package/dest/avm/avm_proving_request.d.ts +4119 -1161
- package/dest/avm/avm_proving_request.d.ts.map +1 -1
- package/dest/avm/contract_storage_read.d.ts +1 -3
- package/dest/avm/contract_storage_read.d.ts.map +1 -1
- package/dest/avm/contract_storage_update_request.d.ts +1 -3
- package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
- package/dest/avm/index.d.ts +1 -1
- package/dest/avm/index.d.ts.map +1 -1
- package/dest/avm/index.js +1 -1
- package/dest/avm/message_pack.d.ts +1 -2
- package/dest/avm/message_pack.d.ts.map +1 -1
- package/dest/avm/message_pack.js +36 -6
- 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 -3
- package/dest/avm/public_data_read.d.ts.map +1 -1
- package/dest/avm/public_data_update_request.d.ts +1 -4
- package/dest/avm/public_data_update_request.d.ts.map +1 -1
- package/dest/avm/public_data_write.d.ts +5 -3
- package/dest/avm/public_data_write.d.ts.map +1 -1
- package/dest/avm/public_data_write.js +22 -1
- 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/public_inner_call_request.js +1 -1
- package/dest/avm/revert_code.d.ts +0 -3
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/aztec-address/index.d.ts +1 -4
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/block/attestation_info.d.ts +30 -0
- package/dest/block/attestation_info.d.ts.map +1 -0
- package/dest/block/attestation_info.js +39 -0
- package/dest/block/block_hash.d.ts +5 -3
- package/dest/block/block_hash.d.ts.map +1 -1
- package/dest/block/block_hash.js +11 -0
- package/dest/block/body.d.ts +7 -6
- package/dest/block/body.d.ts.map +1 -1
- package/dest/block/body.js +26 -27
- package/dest/block/in_block.d.ts +12 -11
- package/dest/block/in_block.d.ts.map +1 -1
- package/dest/block/in_block.js +4 -4
- package/dest/block/index.d.ts +7 -2
- package/dest/block/index.d.ts.map +1 -1
- package/dest/block/index.js +7 -2
- package/dest/block/l2_block.d.ts +24 -23
- package/dest/block/l2_block.d.ts.map +1 -1
- package/dest/block/l2_block.js +55 -49
- package/dest/block/l2_block_code_to_purge.d.ts +4 -16
- package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
- package/dest/block/l2_block_code_to_purge.js +26 -17
- package/dest/block/l2_block_header.d.ts +100 -0
- package/dest/block/l2_block_header.d.ts.map +1 -0
- package/dest/block/l2_block_header.js +146 -0
- package/dest/block/l2_block_info.d.ts +41 -0
- package/dest/block/l2_block_info.d.ts.map +1 -0
- package/dest/block/l2_block_info.js +40 -0
- package/dest/block/l2_block_source.d.ts +84 -15
- package/dest/block/l2_block_source.d.ts.map +1 -1
- package/dest/block/l2_block_source.js +11 -0
- package/dest/block/l2_block_stream/index.d.ts +4 -0
- package/dest/block/l2_block_stream/index.d.ts.map +1 -0
- package/dest/block/l2_block_stream/index.js +3 -0
- package/dest/block/l2_block_stream/interfaces.d.ts +26 -0
- package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -0
- package/dest/block/l2_block_stream/interfaces.js +1 -0
- package/dest/block/l2_block_stream/l2_block_stream.d.ts +35 -0
- package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -0
- package/dest/block/{l2_block_downloader → l2_block_stream}/l2_block_stream.js +70 -19
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +18 -0
- package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -0
- package/dest/block/l2_block_stream/l2_tips_memory_store.js +70 -0
- package/dest/block/proposal/attestations_and_signers.d.ts +48 -0
- package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
- package/dest/block/proposal/attestations_and_signers.js +99 -0
- package/dest/block/proposal/committee_attestation.d.ts +36 -0
- package/dest/block/proposal/committee_attestation.d.ts.map +1 -0
- package/dest/block/proposal/committee_attestation.js +101 -0
- package/dest/block/proposal/index.d.ts +3 -0
- package/dest/block/proposal/index.d.ts.map +1 -0
- package/dest/block/proposal/index.js +2 -0
- package/dest/block/published_l2_block.d.ts +143 -0
- package/dest/block/published_l2_block.d.ts.map +1 -0
- package/dest/block/published_l2_block.js +63 -0
- package/dest/block/test/index.d.ts +2 -0
- package/dest/block/test/index.d.ts.map +1 -0
- package/dest/block/test/index.js +1 -0
- package/dest/block/test/l2_tips_store_test_suite.d.ts +3 -0
- package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -0
- package/dest/block/test/l2_tips_store_test_suite.js +106 -0
- package/dest/block/validate_block_result.d.ts +222 -0
- package/dest/block/validate_block_result.d.ts.map +1 -0
- package/dest/block/validate_block_result.js +83 -0
- package/dest/checkpoint/checkpoint_body.d.ts +4 -0
- package/dest/checkpoint/checkpoint_body.d.ts.map +1 -0
- package/dest/checkpoint/checkpoint_body.js +9 -0
- package/dest/checkpoint/index.d.ts +2 -0
- package/dest/checkpoint/index.d.ts.map +1 -0
- package/dest/checkpoint/index.js +1 -0
- package/dest/config/{config.d.ts → chain-config.d.ts} +5 -4
- package/dest/config/chain-config.d.ts.map +1 -0
- package/dest/config/{config.js → chain-config.js} +4 -5
- package/dest/config/index.d.ts +2 -1
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +2 -1
- package/dest/config/node-rpc-config.d.ts +13 -0
- package/dest/config/node-rpc-config.d.ts.map +1 -0
- package/dest/config/node-rpc-config.js +24 -0
- package/dest/contract/artifact_hash.d.ts +6 -8
- package/dest/contract/artifact_hash.d.ts.map +1 -1
- package/dest/contract/artifact_hash.js +11 -10
- package/dest/contract/complete_address.d.ts +0 -2
- package/dest/contract/complete_address.d.ts.map +1 -1
- package/dest/contract/contract_address.d.ts +1 -1
- package/dest/contract/contract_address.js +1 -1
- package/dest/contract/contract_class.d.ts.map +1 -1
- package/dest/contract/contract_class.js +3 -19
- package/dest/contract/contract_class_id.d.ts +0 -2
- package/dest/contract/contract_class_id.d.ts.map +1 -1
- package/dest/contract/contract_class_id.js +6 -4
- package/dest/contract/contract_class_metadata.d.ts +8 -0
- package/dest/contract/contract_class_metadata.d.ts.map +1 -0
- package/dest/contract/contract_class_metadata.js +1 -0
- package/dest/contract/contract_instance.d.ts +13 -14
- package/dest/contract/contract_instance.d.ts.map +1 -1
- package/dest/contract/contract_instance.js +7 -7
- package/dest/contract/contract_instance_update.d.ts +3 -4
- package/dest/contract/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/contract_instance_update.js +6 -6
- package/dest/contract/contract_metadata.d.ts +7 -0
- package/dest/contract/contract_metadata.d.ts.map +1 -0
- package/dest/contract/contract_metadata.js +1 -0
- package/dest/contract/index.d.ts +3 -1
- package/dest/contract/index.d.ts.map +1 -1
- package/dest/contract/index.js +3 -1
- package/dest/contract/interfaces/contract_class.d.ts +46 -186
- package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_class.js +4 -9
- package/dest/contract/interfaces/contract_data_source.d.ts +10 -18
- package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance_update.d.ts +9 -8
- package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
- package/dest/contract/interfaces/contract_instance_update.js +1 -1
- package/dest/contract/interfaces/node-info.d.ts +2 -2
- package/dest/contract/interfaces/node-info.d.ts.map +1 -1
- package/dest/contract/interfaces/node-info.js +1 -1
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts +9 -9
- package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
- package/dest/contract/interfaces/protocol_contract_addresses.js +4 -4
- package/dest/contract/private_function.d.ts +0 -2
- package/dest/contract/private_function.d.ts.map +1 -1
- package/dest/contract/private_function_membership_proof.d.ts +2 -2
- package/dest/contract/private_function_membership_proof.js +7 -7
- package/dest/contract/utility_function_membership_proof.d.ts +27 -0
- package/dest/contract/utility_function_membership_proof.d.ts.map +1 -0
- package/dest/contract/{unconstrained_function_membership_proof.js → utility_function_membership_proof.js} +13 -13
- package/dest/database-version/version_manager.d.ts +29 -10
- package/dest/database-version/version_manager.d.ts.map +1 -1
- package/dest/database-version/version_manager.js +42 -21
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +20 -0
- package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -0
- package/dest/{shared_mutable/shared_mutable_values.js → delayed_public_mutable/delayed_public_mutable_values.js} +16 -16
- package/dest/{shared_mutable/shared_mutable_values_with_hash.d.ts → delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts} +6 -6
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -0
- package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +30 -0
- package/dest/delayed_public_mutable/index.d.ts +5 -0
- package/dest/delayed_public_mutable/index.d.ts.map +1 -0
- package/dest/delayed_public_mutable/index.js +4 -0
- package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +10 -0
- package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -0
- package/dest/{shared_mutable → delayed_public_mutable}/scheduled_delay_change.js +5 -5
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts +12 -0
- package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -0
- package/dest/{shared_mutable → delayed_public_mutable}/scheduled_value_change.js +7 -7
- package/dest/epoch-helpers/index.d.ts +24 -2
- package/dest/epoch-helpers/index.d.ts.map +1 -1
- package/dest/epoch-helpers/index.js +32 -2
- package/dest/errors/proving_error.d.ts.map +1 -1
- package/dest/errors/simulation_error.d.ts.map +1 -1
- package/dest/errors/simulation_error.js +2 -2
- package/dest/fees/transaction_fee.d.ts +5 -0
- package/dest/fees/transaction_fee.d.ts.map +1 -1
- package/dest/fees/transaction_fee.js +15 -5
- package/dest/file-store/factory.d.ts +7 -0
- package/dest/file-store/factory.d.ts.map +1 -0
- package/dest/file-store/factory.js +64 -0
- package/dest/file-store/gcs.d.ts +20 -0
- package/dest/file-store/gcs.d.ts.map +1 -0
- package/dest/file-store/gcs.js +115 -0
- package/dest/file-store/http.d.ts +14 -0
- package/dest/file-store/http.d.ts.map +1 -0
- package/dest/file-store/http.js +69 -0
- package/dest/file-store/index.d.ts +3 -0
- package/dest/file-store/index.d.ts.map +1 -0
- package/dest/file-store/index.js +2 -0
- package/dest/file-store/interface.d.ts +28 -0
- package/dest/file-store/interface.d.ts.map +1 -0
- package/dest/file-store/interface.js +1 -0
- package/dest/file-store/local.d.ts +14 -0
- package/dest/file-store/local.d.ts.map +1 -0
- package/dest/file-store/local.js +40 -0
- package/dest/file-store/s3.d.ts +26 -0
- package/dest/file-store/s3.d.ts.map +1 -0
- package/dest/file-store/s3.js +252 -0
- package/dest/gas/gas.d.ts +2 -4
- package/dest/gas/gas.d.ts.map +1 -1
- package/dest/gas/gas.js +4 -1
- package/dest/gas/gas_fees.d.ts +16 -18
- package/dest/gas/gas_fees.d.ts.map +1 -1
- package/dest/gas/gas_fees.js +17 -18
- package/dest/gas/gas_settings.d.ts +25 -27
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +6 -6
- package/dest/hash/hash.d.ts +27 -7
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +36 -24
- package/dest/interfaces/allowed_element.d.ts +53 -0
- package/dest/interfaces/allowed_element.d.ts.map +1 -0
- package/dest/interfaces/allowed_element.js +18 -0
- package/dest/interfaces/api_limit.d.ts +4 -0
- package/dest/interfaces/api_limit.d.ts.map +1 -0
- package/dest/interfaces/api_limit.js +3 -0
- package/dest/interfaces/archiver.d.ts +44 -2
- package/dest/interfaces/archiver.d.ts.map +1 -1
- package/dest/interfaces/archiver.js +33 -15
- package/dest/interfaces/aztec-node-admin.d.ts +289 -0
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -0
- package/dest/interfaces/aztec-node-admin.js +37 -0
- package/dest/interfaces/aztec-node.d.ts +93 -79
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.js +43 -32
- package/dest/interfaces/block-builder.d.ts +40 -4
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +1 -1
- package/dest/interfaces/client.d.ts +2 -1
- package/dest/interfaces/client.d.ts.map +1 -1
- package/dest/interfaces/client.js +2 -1
- package/dest/interfaces/configs.d.ts +59 -34
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +11 -18
- package/dest/interfaces/epoch-prover.d.ts +34 -15
- package/dest/interfaces/epoch-prover.d.ts.map +1 -1
- package/dest/interfaces/get_logs_response.d.ts +1 -1
- package/dest/interfaces/l2_logs_source.d.ts +2 -1
- package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
- package/dest/interfaces/merkle_tree_operations.d.ts +26 -10
- package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
- package/dest/interfaces/p2p.d.ts +15 -3
- package/dest/interfaces/p2p.d.ts.map +1 -1
- package/dest/interfaces/p2p.js +6 -2
- package/dest/interfaces/private_kernel_prover.d.ts +5 -6
- package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.d.ts +31 -6
- package/dest/interfaces/prover-agent.d.ts.map +1 -1
- package/dest/interfaces/prover-agent.js +15 -6
- package/dest/interfaces/prover-client.d.ts +5 -5
- package/dest/interfaces/prover-client.d.ts.map +1 -1
- package/dest/interfaces/prover-client.js +8 -6
- package/dest/interfaces/prover-coordination.d.ts +4 -9
- package/dest/interfaces/prover-coordination.d.ts.map +1 -1
- package/dest/interfaces/prover-coordination.js +1 -7
- package/dest/interfaces/prover-node.d.ts +5 -2
- package/dest/interfaces/prover-node.d.ts.map +1 -1
- package/dest/interfaces/prover-node.js +8 -3
- package/dest/interfaces/proving-job.d.ts +4422 -1342
- package/dest/interfaces/proving-job.d.ts.map +1 -1
- package/dest/interfaces/proving-job.js +136 -105
- package/dest/interfaces/public_state_source.d.ts +8 -0
- package/dest/interfaces/public_state_source.d.ts.map +1 -0
- package/dest/interfaces/public_state_source.js +1 -0
- package/dest/interfaces/server.d.ts +11 -5
- package/dest/interfaces/server.d.ts.map +1 -1
- package/dest/interfaces/server.js +11 -5
- package/dest/interfaces/server_circuit_prover.d.ts +46 -34
- package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
- package/dest/interfaces/service.d.ts +3 -2
- package/dest/interfaces/service.d.ts.map +1 -1
- package/dest/interfaces/slasher.d.ts +86 -0
- package/dest/interfaces/slasher.d.ts.map +1 -0
- package/dest/interfaces/slasher.js +23 -0
- package/dest/interfaces/tx_provider.d.ts +24 -0
- package/dest/interfaces/tx_provider.d.ts.map +1 -0
- package/dest/interfaces/tx_provider.js +1 -0
- package/dest/interfaces/validator.d.ts +163 -0
- package/dest/interfaces/validator.d.ts.map +1 -0
- package/dest/interfaces/validator.js +18 -0
- package/dest/interfaces/world_state.d.ts +23 -21
- package/dest/interfaces/world_state.d.ts.map +1 -1
- package/dest/interfaces/world_state.js +1 -1
- package/dest/kernel/claimed_length_array.d.ts +34 -0
- package/dest/kernel/claimed_length_array.d.ts.map +1 -0
- package/dest/kernel/claimed_length_array.js +58 -0
- package/dest/kernel/hiding_kernel_private_inputs.d.ts +19 -0
- package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -0
- package/dest/kernel/hiding_kernel_private_inputs.js +34 -0
- package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -6
- 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 +18 -20
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +10 -12
- package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_nullifier_read_request_hints.js +17 -32
- package/dest/kernel/hints/build_transient_data_hints.d.ts +4 -3
- package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
- package/dest/kernel/hints/build_transient_data_hints.js +9 -10
- package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -1
- package/dest/kernel/hints/index.d.ts +1 -2
- package/dest/kernel/hints/index.d.ts.map +1 -1
- package/dest/kernel/hints/index.js +1 -2
- package/dest/kernel/hints/key_validation_hint.d.ts +3 -9
- package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_hint.js +5 -7
- package/dest/kernel/hints/key_validation_request.d.ts +1 -3
- package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
- package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -3
- 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 +0 -2
- package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/note_hash_read_request_hints.js +4 -4
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts +4 -5
- package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/nullifier_read_request_hints.js +4 -4
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +9 -11
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.js +13 -9
- package/dest/kernel/hints/read_request.d.ts +0 -2
- package/dest/kernel/hints/read_request.d.ts.map +1 -1
- package/dest/kernel/hints/read_request_hints.d.ts +29 -31
- package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
- package/dest/kernel/hints/read_request_hints.js +28 -28
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -3
- package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
- package/dest/kernel/hints/{transient_data_index_hint.d.ts → transient_data_squashing_hint.d.ts} +5 -8
- package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -0
- package/dest/kernel/hints/{transient_data_index_hint.js → transient_data_squashing_hint.js} +5 -5
- package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -2
- package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
- package/dest/kernel/index.d.ts +4 -2
- package/dest/kernel/index.d.ts.map +1 -1
- package/dest/kernel/index.js +4 -2
- package/dest/kernel/log_hash.d.ts +27 -9
- package/dest/kernel/log_hash.d.ts.map +1 -1
- package/dest/kernel/log_hash.js +72 -13
- package/dest/kernel/note_hash.d.ts +0 -2
- package/dest/kernel/note_hash.d.ts.map +1 -1
- package/dest/kernel/nullifier.d.ts +2 -4
- package/dest/kernel/nullifier.d.ts.map +1 -1
- package/dest/kernel/nullifier.js +11 -11
- package/dest/kernel/padded_side_effects.d.ts +26 -0
- package/dest/kernel/padded_side_effects.d.ts.map +1 -0
- package/dest/kernel/padded_side_effects.js +51 -0
- package/dest/kernel/private_accumulated_data.d.ts +19 -20
- package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_accumulated_data.js +5 -5
- package/dest/kernel/private_call_data.d.ts +8 -30
- package/dest/kernel/private_call_data.d.ts.map +1 -1
- package/dest/kernel/private_call_data.js +6 -18
- package/dest/kernel/private_call_request.d.ts +1 -3
- package/dest/kernel/private_call_request.d.ts.map +1 -1
- package/dest/kernel/private_call_request.js +1 -1
- package/dest/kernel/private_circuit_public_inputs.d.ts +35 -36
- package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_circuit_public_inputs.js +45 -27
- package/dest/kernel/private_context_inputs.d.ts +2 -2
- package/dest/kernel/private_context_inputs.d.ts.map +1 -1
- package/dest/kernel/private_context_inputs.js +4 -4
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +14 -7
- package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_circuit_public_inputs.js +9 -5
- package/dest/kernel/private_kernel_data.d.ts +7 -28
- package/dest/kernel/private_kernel_data.d.ts.map +1 -1
- package/dest/kernel/private_kernel_data.js +10 -21
- package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +6 -7
- 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 -6
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -3
- package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_prover_output.d.ts +79 -0
- package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -0
- package/dest/kernel/private_kernel_prover_output.js +28 -0
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +9 -8
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +10 -6
- package/dest/kernel/private_kernel_reset_dimensions.d.ts +11 -13
- package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
- package/dest/kernel/private_kernel_reset_dimensions.js +29 -29
- package/dest/kernel/private_kernel_simulated_output.d.ts +6 -12
- package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +20 -4
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +14 -6
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +20 -12
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +28 -21
- package/dest/kernel/private_log_data.d.ts +1 -4
- package/dest/kernel/private_log_data.d.ts.map +1 -1
- package/dest/kernel/private_log_data.js +4 -2
- package/dest/kernel/private_to_avm_accumulated_data.d.ts +4 -13
- package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +11 -0
- package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -5
- package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -7
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +16 -10
- package/dest/kernel/private_to_rollup_accumulated_data.d.ts +3 -6
- 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 +13 -15
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
- package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +11 -12
- package/dest/kernel/private_validation_requests.d.ts +9 -24
- package/dest/kernel/private_validation_requests.d.ts.map +1 -1
- package/dest/kernel/private_validation_requests.js +10 -22
- package/dest/kernel/public_call_request.d.ts +70 -24
- package/dest/kernel/public_call_request.d.ts.map +1 -1
- package/dest/kernel/public_call_request.js +77 -20
- package/dest/kernel/utils/optional_number.d.ts +1 -3
- package/dest/kernel/utils/optional_number.d.ts.map +1 -1
- package/dest/kernel/utils/order_and_comparison.d.ts +0 -3
- package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -1
- package/dest/kernel/utils/order_and_comparison.js +0 -19
- package/dest/keys/derivation.d.ts +0 -2
- package/dest/keys/derivation.d.ts.map +1 -1
- package/dest/keys/derivation.js +2 -15
- package/dest/keys/public_keys.d.ts +0 -2
- package/dest/keys/public_keys.d.ts.map +1 -1
- package/dest/keys/public_keys.js +0 -1
- package/dest/l1-contracts/index.d.ts +2 -0
- package/dest/l1-contracts/index.d.ts.map +1 -0
- package/dest/l1-contracts/index.js +1 -0
- package/dest/l1-contracts/slash_factory.d.ts +44 -0
- package/dest/l1-contracts/slash_factory.d.ts.map +1 -0
- package/dest/l1-contracts/slash_factory.js +157 -0
- package/dest/logs/contract_class_log.d.ts +54 -16
- package/dest/logs/contract_class_log.d.ts.map +1 -1
- package/dest/logs/contract_class_log.js +110 -79
- package/dest/logs/debug_log.d.ts +13 -0
- package/dest/logs/debug_log.d.ts.map +1 -0
- package/dest/logs/debug_log.js +26 -0
- package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
- package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
- package/dest/logs/directional_app_tagging_secret.js +63 -0
- package/dest/logs/extended_contract_class_log.d.ts +0 -2
- package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
- package/dest/logs/extended_public_log.d.ts +1 -3
- package/dest/logs/extended_public_log.d.ts.map +1 -1
- package/dest/logs/index.d.ts +6 -2
- package/dest/logs/index.d.ts.map +1 -1
- package/dest/logs/index.js +6 -2
- package/dest/logs/log_id.d.ts +0 -2
- package/dest/logs/log_id.d.ts.map +1 -1
- package/dest/logs/log_with_tx_data.d.ts +12 -4
- package/dest/logs/log_with_tx_data.d.ts.map +1 -1
- package/dest/logs/log_with_tx_data.js +23 -10
- package/dest/logs/message_context.d.ts +29 -0
- package/dest/logs/message_context.d.ts.map +1 -0
- package/dest/logs/message_context.js +56 -0
- package/dest/logs/pending_tagged_log.d.ts +14 -0
- package/dest/logs/pending_tagged_log.d.ts.map +1 -0
- package/dest/logs/pending_tagged_log.js +34 -0
- package/dest/logs/pre_tag.d.ts +34 -0
- package/dest/logs/pre_tag.d.ts.map +1 -0
- package/dest/logs/pre_tag.js +7 -0
- package/dest/logs/private_log.d.ts +16 -8
- package/dest/logs/private_log.d.ts.map +1 -1
- package/dest/logs/private_log.js +50 -22
- package/dest/logs/public_log.d.ts +26 -12
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +128 -34
- package/dest/logs/{l1_payload/shared_secret_derivation.d.ts → shared_secret_derivation.d.ts} +4 -3
- package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
- package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +5 -9
- package/dest/logs/tx_scoped_l2_log.d.ts +28 -33
- package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
- package/dest/logs/tx_scoped_l2_log.js +36 -19
- package/dest/messaging/inbox_leaf.d.ts +8 -3
- package/dest/messaging/inbox_leaf.d.ts.map +1 -1
- package/dest/messaging/inbox_leaf.js +16 -2
- package/dest/messaging/index.d.ts +1 -0
- package/dest/messaging/index.d.ts.map +1 -1
- package/dest/messaging/index.js +1 -0
- package/dest/messaging/l1_actor.d.ts +0 -2
- package/dest/messaging/l1_actor.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message.d.ts +0 -2
- package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
- package/dest/messaging/l1_to_l2_message_source.d.ts +6 -1
- package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
- package/dest/messaging/l2_actor.d.ts +0 -2
- package/dest/messaging/l2_actor.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_membership.d.ts +14 -0
- package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -0
- package/dest/messaging/l2_to_l1_membership.js +63 -0
- package/dest/messaging/l2_to_l1_message.d.ts +110 -18
- package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
- package/dest/messaging/l2_to_l1_message.js +83 -37
- package/dest/noir/index.d.ts +19 -2
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/noir/index.js +1 -0
- package/dest/note/index.d.ts +1 -1
- package/dest/note/index.d.ts.map +1 -1
- package/dest/note/index.js +1 -1
- package/dest/note/note.d.ts +39 -6
- package/dest/note/note.d.ts.map +1 -1
- package/dest/note/note.js +51 -4
- package/dest/note/notes_filter.d.ts +5 -7
- package/dest/note/notes_filter.d.ts.map +1 -1
- package/dest/note/notes_filter.js +1 -4
- package/dest/note/unique_note.d.ts +43 -0
- package/dest/note/unique_note.d.ts.map +1 -0
- package/dest/note/unique_note.js +67 -0
- package/dest/p2p/attestation_utils.d.ts +10 -0
- package/dest/p2p/attestation_utils.d.ts.map +1 -0
- package/dest/p2p/attestation_utils.js +21 -0
- package/dest/p2p/block_attestation.d.ts +51 -13
- package/dest/p2p/block_attestation.d.ts.map +1 -1
- package/dest/p2p/block_attestation.js +45 -23
- package/dest/p2p/block_proposal.d.ts +26 -10
- package/dest/p2p/block_proposal.d.ts.map +1 -1
- package/dest/p2p/block_proposal.js +47 -20
- package/dest/p2p/consensus_payload.d.ts +216 -20
- package/dest/p2p/consensus_payload.d.ts.map +1 -1
- package/dest/p2p/consensus_payload.js +47 -25
- package/dest/p2p/gossipable.d.ts +18 -17
- package/dest/p2p/gossipable.d.ts.map +1 -1
- package/dest/p2p/gossipable.js +35 -4
- package/dest/p2p/index.d.ts +1 -0
- package/dest/p2p/index.d.ts.map +1 -1
- package/dest/p2p/index.js +1 -0
- package/dest/p2p/interface.d.ts +0 -13
- package/dest/p2p/interface.d.ts.map +1 -1
- package/dest/p2p/interface.js +1 -19
- package/dest/p2p/signature_utils.d.ts +5 -6
- package/dest/p2p/signature_utils.d.ts.map +1 -1
- package/dest/p2p/signature_utils.js +5 -4
- package/dest/p2p/topic_type.d.ts +6 -9
- package/dest/p2p/topic_type.d.ts.map +1 -1
- package/dest/p2p/topic_type.js +35 -15
- package/dest/parity/index.d.ts +2 -3
- package/dest/parity/index.d.ts.map +1 -1
- package/dest/parity/index.js +2 -3
- package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +9 -11
- package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
- package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +10 -6
- package/dest/parity/parity_public_inputs.d.ts +2 -4
- package/dest/parity/parity_public_inputs.d.ts.map +1 -1
- package/dest/parity/parity_root_private_inputs.d.ts +39 -0
- package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
- package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
- package/dest/proofs/chonk_proof.d.ts +28 -0
- package/dest/proofs/chonk_proof.d.ts.map +1 -0
- package/dest/proofs/chonk_proof.js +101 -0
- package/dest/proofs/index.d.ts +2 -1
- package/dest/proofs/index.d.ts.map +1 -1
- package/dest/proofs/index.js +2 -1
- package/dest/proofs/proof.d.ts +5 -6
- package/dest/proofs/proof.d.ts.map +1 -1
- package/dest/proofs/proof.js +28 -20
- package/dest/proofs/proof_data.d.ts +21 -0
- package/dest/proofs/proof_data.d.ts.map +1 -0
- package/dest/proofs/proof_data.js +22 -0
- package/dest/proofs/proving_request_type.d.ts +17 -12
- package/dest/proofs/proving_request_type.d.ts.map +1 -1
- package/dest/proofs/proving_request_type.js +17 -11
- package/dest/proofs/recursive_proof.d.ts +4 -6
- package/dest/proofs/recursive_proof.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.d.ts +5 -15
- package/dest/rollup/avm_proof_data.d.ts.map +1 -1
- package/dest/rollup/avm_proof_data.js +8 -24
- package/dest/rollup/base_rollup_hints.d.ts +35 -36
- package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
- package/dest/rollup/base_rollup_hints.js +41 -40
- package/dest/rollup/block_constant_data.d.ts +51 -0
- package/dest/rollup/block_constant_data.d.ts.map +1 -0
- package/dest/rollup/block_constant_data.js +50 -0
- package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +19 -14
- package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/block_rollup_public_inputs.d.ts +124 -0
- package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/block_rollup_public_inputs.js +85 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts +236 -0
- package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/block_root_rollup_private_inputs.js +257 -0
- package/dest/rollup/checkpoint_constant_data.d.ts +54 -0
- package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
- package/dest/rollup/checkpoint_constant_data.js +55 -0
- package/dest/rollup/checkpoint_header.d.ts +83 -0
- package/dest/rollup/checkpoint_header.d.ts.map +1 -0
- package/dest/rollup/checkpoint_header.js +154 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +106 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +123 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +178 -0
- package/dest/rollup/epoch_constant_data.d.ts +56 -0
- package/dest/rollup/epoch_constant_data.d.ts.map +1 -0
- package/dest/rollup/epoch_constant_data.js +53 -0
- package/dest/rollup/index.d.ts +19 -16
- package/dest/rollup/index.d.ts.map +1 -1
- package/dest/rollup/index.js +19 -16
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
- package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
- package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_private_inputs.js +69 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts +46 -0
- package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/root_rollup_public_inputs.js +71 -0
- package/dest/rollup/{state_diff_hints.d.ts → tree_snapshot_diff_hints.d.ts} +22 -40
- package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
- package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
- package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +13 -14
- package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
- package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
- package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +19 -30
- package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
- package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +16 -21
- package/dest/schemas/schemas.d.ts +6 -6
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +1 -0
- package/dest/slashing/empire.d.ts +31 -0
- package/dest/slashing/empire.d.ts.map +1 -0
- package/dest/slashing/empire.js +84 -0
- package/dest/slashing/helpers.d.ts +35 -0
- package/dest/slashing/helpers.d.ts.map +1 -0
- package/dest/slashing/helpers.js +89 -0
- package/dest/slashing/index.d.ts +7 -0
- package/dest/slashing/index.d.ts.map +1 -0
- package/dest/slashing/index.js +6 -0
- package/dest/slashing/interfaces.d.ts +11 -0
- package/dest/slashing/interfaces.d.ts.map +1 -0
- package/dest/slashing/interfaces.js +1 -0
- package/dest/slashing/serialization.d.ts +8 -0
- package/dest/slashing/serialization.d.ts.map +1 -0
- package/dest/slashing/serialization.js +78 -0
- package/dest/slashing/tally.d.ts +23 -0
- package/dest/slashing/tally.d.ts.map +1 -0
- package/dest/slashing/tally.js +60 -0
- package/dest/slashing/types.d.ts +162 -0
- package/dest/slashing/types.d.ts.map +1 -0
- package/dest/slashing/types.js +88 -0
- package/dest/snapshots/download.d.ts +9 -0
- package/dest/snapshots/download.d.ts.map +1 -0
- package/dest/snapshots/download.js +93 -0
- package/dest/snapshots/index.d.ts +4 -0
- package/dest/snapshots/index.d.ts.map +1 -0
- package/dest/snapshots/index.js +3 -0
- package/dest/snapshots/types.d.ts +120 -0
- package/dest/snapshots/types.d.ts.map +1 -0
- package/dest/snapshots/types.js +35 -0
- package/dest/snapshots/upload.d.ts +8 -0
- package/dest/snapshots/upload.d.ts.map +1 -0
- package/dest/snapshots/upload.js +42 -0
- package/dest/stats/stats.d.ts +9 -9
- package/dest/stats/stats.d.ts.map +1 -1
- package/dest/tests/factories.d.ts +81 -104
- package/dest/tests/factories.d.ts.map +1 -1
- package/dest/tests/factories.js +386 -303
- package/dest/tests/mocks.d.ts +33 -13
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +116 -82
- package/dest/trees/append_only_tree_snapshot.d.ts +7 -6
- package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
- package/dest/trees/append_only_tree_snapshot.js +17 -2
- package/dest/trees/database_public_state_source.d.ts +11 -0
- package/dest/trees/database_public_state_source.d.ts.map +1 -0
- package/dest/trees/database_public_state_source.js +18 -0
- package/dest/trees/index.d.ts +1 -1
- package/dest/trees/index.d.ts.map +1 -1
- package/dest/trees/index.js +1 -1
- package/dest/trees/merkle_tree_id.d.ts +12 -4
- package/dest/trees/merkle_tree_id.d.ts.map +1 -1
- package/dest/trees/merkle_tree_id.js +10 -0
- package/dest/trees/nullifier_leaf.d.ts +49 -17
- package/dest/trees/nullifier_leaf.d.ts.map +1 -1
- package/dest/trees/nullifier_leaf.js +45 -22
- package/dest/trees/nullifier_membership_witness.d.ts +41 -22
- package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
- package/dest/trees/nullifier_membership_witness.js +14 -1
- package/dest/trees/public_data_leaf.d.ts +60 -28
- package/dest/trees/public_data_leaf.d.ts.map +1 -1
- package/dest/trees/public_data_leaf.js +41 -30
- package/dest/trees/public_data_witness.d.ts +47 -30
- package/dest/trees/public_data_witness.d.ts.map +1 -1
- package/dest/trees/public_data_witness.js +20 -4
- package/dest/tx/block_header.d.ts +15 -17
- package/dest/tx/block_header.d.ts.map +1 -1
- package/dest/tx/block_header.js +20 -19
- package/dest/tx/call_context.d.ts +1 -4
- package/dest/tx/call_context.d.ts.map +1 -1
- package/dest/tx/capsule.d.ts +3 -3
- package/dest/tx/capsule.d.ts.map +1 -1
- package/dest/tx/capsule.js +2 -0
- package/dest/tx/content_commitment.d.ts +24 -81
- package/dest/tx/content_commitment.d.ts.map +1 -1
- package/dest/tx/content_commitment.js +39 -53
- package/dest/tx/function_data.d.ts +0 -2
- package/dest/tx/function_data.d.ts.map +1 -1
- package/dest/tx/global_variable_builder.d.ts +2 -2
- package/dest/tx/global_variable_builder.d.ts.map +1 -1
- package/dest/tx/global_variables.d.ts +29 -31
- package/dest/tx/global_variables.d.ts.map +1 -1
- package/dest/tx/global_variables.js +24 -16
- package/dest/tx/hashed_values.d.ts +17 -7
- package/dest/tx/hashed_values.d.ts.map +1 -1
- package/dest/tx/hashed_values.js +26 -9
- package/dest/tx/index.d.ts +8 -2
- package/dest/tx/index.d.ts.map +1 -1
- package/dest/tx/index.js +8 -2
- package/dest/tx/indexed_tx_effect.d.ts +27 -0
- package/dest/tx/indexed_tx_effect.d.ts.map +1 -0
- package/dest/tx/indexed_tx_effect.js +32 -0
- package/dest/tx/offchain_effect.d.ts +14 -0
- package/dest/tx/offchain_effect.d.ts.map +1 -0
- package/dest/tx/offchain_effect.js +4 -0
- package/dest/tx/partial_state_reference.d.ts +10 -3
- package/dest/tx/partial_state_reference.d.ts.map +1 -1
- package/dest/tx/partial_state_reference.js +22 -2
- package/dest/tx/private_execution_result.d.ts +55 -35
- package/dest/tx/private_execution_result.d.ts.map +1 -1
- package/dest/tx/private_execution_result.js +66 -78
- package/dest/tx/private_tx_constant_data.d.ts +60 -0
- package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
- package/dest/tx/private_tx_constant_data.js +69 -0
- package/dest/tx/processed_tx.d.ts +6 -8
- package/dest/tx/processed_tx.d.ts.map +1 -1
- package/dest/tx/processed_tx.js +24 -22
- package/dest/tx/profiling.d.ts +360 -0
- package/dest/tx/profiling.d.ts.map +1 -0
- package/dest/tx/profiling.js +129 -0
- package/dest/tx/protocol_contracts.d.ts +29 -0
- package/dest/tx/protocol_contracts.d.ts.map +1 -0
- package/dest/tx/protocol_contracts.js +49 -0
- package/dest/tx/proven_tx.d.ts +129 -0
- package/dest/tx/proven_tx.d.ts.map +1 -0
- package/dest/tx/proven_tx.js +45 -0
- package/dest/tx/public_call_request_with_calldata.d.ts +38 -0
- package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -0
- package/dest/tx/public_call_request_with_calldata.js +57 -0
- package/dest/tx/public_simulation_output.d.ts +3 -3
- package/dest/tx/public_simulation_output.d.ts.map +1 -1
- package/dest/tx/public_simulation_output.js +7 -7
- package/dest/tx/simulated_tx.d.ts +169 -45
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +52 -47
- package/dest/tx/state_reference.d.ts +10 -4
- package/dest/tx/state_reference.d.ts.map +1 -1
- package/dest/tx/state_reference.js +38 -5
- package/dest/tx/tree_snapshots.d.ts +11 -14
- package/dest/tx/tree_snapshots.d.ts.map +1 -1
- package/dest/tx/tree_snapshots.js +3 -3
- package/dest/tx/tx.d.ts +63 -89
- package/dest/tx/tx.d.ts.map +1 -1
- package/dest/tx/tx.js +147 -148
- package/dest/tx/tx_constant_data.d.ts +7 -41
- package/dest/tx/tx_constant_data.d.ts.map +1 -1
- package/dest/tx/tx_constant_data.js +11 -20
- package/dest/tx/tx_context.d.ts +33 -35
- package/dest/tx/tx_context.d.ts.map +1 -1
- package/dest/tx/tx_effect.d.ts +6 -42
- package/dest/tx/tx_effect.d.ts.map +1 -1
- package/dest/tx/tx_effect.js +75 -257
- package/dest/tx/tx_execution_request.d.ts +13 -6
- package/dest/tx/tx_execution_request.d.ts.map +1 -1
- package/dest/tx/tx_execution_request.js +16 -9
- package/dest/tx/tx_hash.d.ts +11 -4
- package/dest/tx/tx_hash.d.ts.map +1 -1
- package/dest/tx/tx_hash.js +24 -5
- package/dest/tx/tx_receipt.d.ts +1 -30
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +4 -14
- package/dest/tx/tx_request.d.ts +11 -9
- package/dest/tx/tx_request.d.ts.map +1 -1
- package/dest/tx/tx_request.js +11 -8
- package/dest/tx/validator/error_texts.d.ts +24 -0
- package/dest/tx/validator/error_texts.d.ts.map +1 -0
- package/dest/tx/validator/error_texts.js +31 -0
- package/dest/tx/validator/tx_validator.d.ts +6 -4
- package/dest/tx/validator/tx_validator.d.ts.map +1 -1
- package/dest/tx/validator/tx_validator.js +3 -0
- package/dest/types/shared.d.ts +9 -11
- package/dest/types/shared.d.ts.map +1 -1
- package/dest/types/shared.js +0 -8
- package/dest/update-checker/index.d.ts +2 -0
- package/dest/update-checker/index.d.ts.map +1 -0
- package/dest/update-checker/index.js +1 -0
- package/dest/update-checker/update-checker.d.ts +50 -0
- package/dest/update-checker/update-checker.d.ts.map +1 -0
- package/dest/update-checker/update-checker.js +130 -0
- package/dest/validators/errors.d.ts +34 -0
- package/dest/validators/errors.d.ts.map +1 -0
- package/dest/validators/errors.js +47 -0
- package/dest/validators/index.d.ts +4 -0
- package/dest/validators/index.d.ts.map +1 -0
- package/dest/validators/index.js +2 -0
- package/dest/validators/schemas.d.ts +592 -0
- package/dest/validators/schemas.d.ts.map +1 -0
- package/dest/validators/schemas.js +52 -0
- package/dest/validators/types.d.ts +52 -0
- package/dest/validators/types.d.ts.map +1 -0
- package/dest/validators/types.js +1 -0
- package/dest/versioning/versioning.d.ts +4 -4
- package/dest/versioning/versioning.d.ts.map +1 -1
- package/dest/versioning/versioning.js +23 -18
- package/dest/vks/index.d.ts +1 -1
- package/dest/vks/index.d.ts.map +1 -1
- package/dest/vks/index.js +1 -1
- package/dest/vks/verification_key.d.ts +8 -12
- package/dest/vks/verification_key.d.ts.map +1 -1
- package/dest/vks/verification_key.js +9 -11
- package/dest/vks/{vk_witness_data.d.ts → vk_data.d.ts} +9 -11
- package/dest/vks/vk_data.d.ts.map +1 -0
- package/dest/vks/{vk_witness_data.js → vk_data.js} +10 -10
- package/dest/world-state/index.d.ts +2 -0
- package/dest/world-state/index.d.ts.map +1 -0
- package/dest/world-state/index.js +1 -0
- package/dest/world-state/world_state_revision.d.ts +22 -0
- package/dest/world-state/world_state_revision.d.ts.map +1 -0
- package/dest/world-state/world_state_revision.js +21 -0
- package/dest/zkpassport/index.d.ts +35 -0
- package/dest/zkpassport/index.d.ts.map +1 -0
- package/dest/zkpassport/index.js +82 -0
- package/package.json +40 -23
- package/src/abi/abi.ts +96 -66
- package/src/abi/authorization_selector.ts +95 -0
- package/src/abi/contract_artifact.ts +90 -59
- package/src/abi/decoder.ts +18 -13
- package/src/abi/encoder.ts +88 -3
- package/src/abi/event_metadata_definition.ts +8 -0
- package/src/abi/function_call.ts +5 -1
- package/src/abi/index.ts +2 -0
- package/src/abi/utils.ts +15 -0
- package/src/auth_witness/auth_witness.ts +29 -0
- package/src/avm/avm.ts +452 -123
- package/src/avm/avm_accumulated_data.ts +129 -12
- package/src/avm/avm_circuit_public_inputs.ts +80 -3
- package/src/avm/index.ts +1 -1
- package/src/avm/message_pack.ts +33 -2
- package/src/avm/public_data_write.ts +25 -1
- package/src/avm/public_inner_call_request.ts +1 -1
- package/src/avm/revert_code.ts +5 -5
- package/src/block/attestation_info.ts +62 -0
- package/src/block/block_hash.ts +14 -0
- package/src/block/body.ts +41 -34
- package/src/block/in_block.ts +6 -6
- package/src/block/index.ts +7 -2
- package/src/block/l2_block.ts +59 -64
- package/src/block/l2_block_code_to_purge.ts +32 -49
- package/src/block/l2_block_header.ts +232 -0
- package/src/block/l2_block_info.ts +63 -0
- package/src/block/l2_block_source.ts +100 -13
- package/src/block/l2_block_stream/index.ts +3 -0
- package/src/block/l2_block_stream/interfaces.ts +33 -0
- package/src/block/{l2_block_downloader → l2_block_stream}/l2_block_stream.ts +81 -58
- package/src/block/l2_block_stream/l2_tips_memory_store.ts +75 -0
- package/src/block/proposal/attestations_and_signers.ts +121 -0
- package/src/block/proposal/committee_attestation.ts +120 -0
- package/src/block/proposal/index.ts +2 -0
- package/src/block/published_l2_block.ts +82 -0
- package/src/block/test/index.ts +1 -0
- package/src/block/test/l2_tips_store_test_suite.ts +87 -0
- package/src/block/validate_block_result.ts +122 -0
- package/src/checkpoint/checkpoint_body.ts +10 -0
- package/src/checkpoint/index.ts +1 -0
- package/src/config/{config.ts → chain-config.ts} +8 -7
- package/src/config/index.ts +2 -1
- package/src/config/node-rpc-config.ts +37 -0
- package/src/contract/artifact_hash.ts +14 -12
- package/src/contract/contract_address.ts +1 -1
- package/src/contract/contract_class.ts +7 -24
- package/src/contract/contract_class_id.ts +10 -4
- package/src/contract/contract_class_metadata.ts +8 -0
- package/src/contract/contract_instance.ts +26 -17
- package/src/contract/contract_instance_update.ts +7 -6
- package/src/contract/contract_metadata.ts +7 -0
- package/src/contract/index.ts +3 -1
- package/src/contract/interfaces/contract_class.ts +23 -35
- package/src/contract/interfaces/contract_data_source.ts +11 -20
- package/src/contract/interfaces/contract_instance_update.ts +4 -3
- package/src/contract/interfaces/node-info.ts +3 -3
- package/src/contract/interfaces/protocol_contract_addresses.ts +5 -10
- package/src/contract/private_function.ts +4 -2
- package/src/contract/private_function_membership_proof.ts +7 -7
- package/src/contract/{unconstrained_function_membership_proof.ts → utility_function_membership_proof.ts} +18 -18
- package/src/database-version/version_manager.ts +78 -25
- package/src/{shared_mutable/shared_mutable_values.ts → delayed_public_mutable/delayed_public_mutable_values.ts} +23 -20
- package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +38 -0
- package/src/delayed_public_mutable/index.ts +4 -0
- package/src/delayed_public_mutable/scheduled_delay_change.ts +17 -0
- package/src/{shared_mutable → delayed_public_mutable}/scheduled_value_change.ts +11 -5
- package/src/epoch-helpers/index.ts +61 -2
- package/src/errors/proving_error.ts +5 -1
- package/src/errors/simulation_error.ts +2 -2
- package/src/fees/transaction_fee.ts +28 -8
- package/src/file-store/factory.ts +76 -0
- package/src/file-store/gcs.ts +121 -0
- package/src/file-store/http.ts +67 -0
- package/src/file-store/index.ts +2 -0
- package/src/file-store/interface.ts +25 -0
- package/src/file-store/local.ts +46 -0
- package/src/file-store/s3.ts +254 -0
- package/src/gas/gas.ts +9 -2
- package/src/gas/gas_fees.ts +27 -23
- package/src/gas/gas_settings.ts +11 -9
- package/src/hash/hash.ts +45 -27
- package/src/interfaces/allowed_element.ts +21 -0
- package/src/interfaces/api_limit.ts +3 -0
- package/src/interfaces/archiver.ts +67 -25
- package/src/interfaces/aztec-node-admin.ts +99 -0
- package/src/interfaces/aztec-node.ts +196 -137
- package/src/interfaces/block-builder.ts +53 -8
- package/src/interfaces/client.ts +2 -1
- package/src/interfaces/configs.ts +29 -18
- package/src/interfaces/epoch-prover.ts +46 -16
- package/src/interfaces/l2_logs_source.ts +2 -1
- package/src/interfaces/merkle_tree_operations.ts +30 -8
- package/src/interfaces/p2p.ts +29 -4
- package/src/interfaces/private_kernel_prover.ts +13 -4
- package/src/interfaces/prover-agent.ts +9 -10
- package/src/interfaces/prover-client.ts +16 -11
- package/src/interfaces/prover-coordination.ts +6 -16
- package/src/interfaces/prover-node.ts +10 -2
- package/src/interfaces/proving-job.ts +230 -125
- package/src/interfaces/public_state_source.ts +9 -0
- package/src/interfaces/server.ts +11 -5
- package/src/interfaces/server_circuit_prover.ts +110 -58
- package/src/interfaces/service.ts +4 -2
- package/src/interfaces/slasher.ts +50 -0
- package/src/interfaces/tx_provider.ts +17 -0
- package/src/interfaces/validator.ts +95 -0
- package/src/interfaces/world_state.ts +27 -19
- package/src/kernel/claimed_length_array.ts +104 -0
- package/src/kernel/hiding_kernel_private_inputs.ts +37 -0
- package/src/kernel/hints/build_note_hash_read_request_hints.ts +28 -30
- package/src/kernel/hints/build_nullifier_read_request_hints.ts +31 -61
- package/src/kernel/hints/build_transient_data_hints.ts +12 -14
- package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +3 -3
- package/src/kernel/hints/index.ts +1 -2
- package/src/kernel/hints/key_validation_hint.ts +4 -6
- package/src/kernel/hints/note_hash_read_request_hints.ts +8 -17
- package/src/kernel/hints/nullifier_read_request_hints.ts +11 -20
- package/src/kernel/hints/private_kernel_reset_hints.ts +37 -46
- package/src/kernel/hints/read_request.ts +4 -1
- package/src/kernel/hints/read_request_hints.ts +59 -38
- package/src/kernel/hints/{transient_data_index_hint.ts → transient_data_squashing_hint.ts} +9 -6
- package/src/kernel/hints/tree_leaf_read_request.ts +4 -1
- package/src/kernel/index.ts +4 -2
- package/src/kernel/log_hash.ts +86 -14
- package/src/kernel/note_hash.ts +8 -2
- package/src/kernel/nullifier.ts +16 -9
- package/src/kernel/padded_side_effects.ts +73 -0
- package/src/kernel/private_accumulated_data.ts +25 -25
- package/src/kernel/private_call_data.ts +5 -24
- package/src/kernel/private_call_request.ts +1 -1
- package/src/kernel/private_circuit_public_inputs.ts +100 -76
- package/src/kernel/private_context_inputs.ts +2 -2
- package/src/kernel/private_kernel_circuit_public_inputs.ts +13 -5
- package/src/kernel/private_kernel_data.ts +9 -31
- package/src/kernel/private_kernel_init_circuit_private_inputs.ts +5 -4
- package/src/kernel/private_kernel_prover_output.ts +70 -0
- package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +16 -13
- package/src/kernel/private_kernel_reset_dimensions.ts +27 -27
- package/src/kernel/private_kernel_simulated_output.ts +7 -16
- package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +22 -5
- package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +41 -24
- package/src/kernel/private_log_data.ts +13 -4
- package/src/kernel/private_to_avm_accumulated_data.ts +18 -1
- package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +16 -7
- package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +16 -10
- package/src/kernel/private_validation_requests.ts +20 -51
- package/src/kernel/public_call_request.ts +92 -28
- package/src/kernel/utils/order_and_comparison.ts +0 -25
- package/src/keys/derivation.ts +2 -22
- package/src/keys/public_keys.ts +1 -1
- package/src/l1-contracts/index.ts +1 -0
- package/src/l1-contracts/slash_factory.ts +177 -0
- package/src/logs/contract_class_log.ts +134 -64
- package/src/logs/debug_log.ts +32 -0
- package/src/logs/directional_app_tagging_secret.ts +77 -0
- package/src/logs/index.ts +6 -2
- package/src/logs/log_with_tx_data.ts +19 -9
- package/src/logs/message_context.ts +62 -0
- package/src/logs/pending_tagged_log.ts +41 -0
- package/src/logs/pre_tag.ts +25 -0
- package/src/logs/private_log.ts +60 -24
- package/src/logs/public_log.ts +137 -37
- package/src/logs/{l1_payload/shared_secret_derivation.ts → shared_secret_derivation.ts} +6 -15
- package/src/logs/tx_scoped_l2_log.ts +37 -25
- package/src/messaging/inbox_leaf.ts +17 -2
- package/src/messaging/index.ts +1 -0
- package/src/messaging/l1_to_l2_message_source.ts +8 -1
- package/src/messaging/l2_to_l1_membership.ts +98 -0
- package/src/messaging/l2_to_l1_message.ts +105 -40
- package/src/noir/index.ts +19 -2
- package/src/note/index.ts +1 -1
- package/src/note/note.ts +61 -5
- package/src/note/notes_filter.ts +6 -10
- package/src/note/unique_note.ts +88 -0
- package/src/p2p/attestation_utils.ts +35 -0
- package/src/p2p/block_attestation.ts +54 -26
- package/src/p2p/block_proposal.ts +63 -19
- package/src/p2p/consensus_payload.ts +62 -29
- package/src/p2p/gossipable.ts +41 -15
- package/src/p2p/index.ts +1 -0
- package/src/p2p/interface.ts +0 -24
- package/src/p2p/signature_utils.ts +7 -9
- package/src/p2p/topic_type.ts +32 -13
- package/src/parity/index.ts +2 -3
- package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +13 -11
- package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
- package/src/proofs/chonk_proof.ts +118 -0
- package/src/proofs/index.ts +2 -1
- package/src/proofs/proof.ts +29 -21
- package/src/proofs/proof_data.ts +36 -0
- package/src/proofs/proving_request_type.ts +14 -9
- package/src/rollup/avm_proof_data.ts +8 -30
- package/src/rollup/base_rollup_hints.ts +42 -41
- package/src/rollup/block_constant_data.ts +73 -0
- package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
- package/src/rollup/block_rollup_public_inputs.ts +123 -0
- package/src/rollup/block_root_rollup_private_inputs.ts +312 -0
- package/src/rollup/checkpoint_constant_data.ts +84 -0
- package/src/rollup/checkpoint_header.ts +224 -0
- package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
- package/src/rollup/checkpoint_rollup_public_inputs.ts +139 -0
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +218 -0
- package/src/rollup/epoch_constant_data.ts +62 -0
- package/src/rollup/index.ts +19 -16
- package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
- package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
- package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
- package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
- package/src/rollup/root_rollup_private_inputs.ts +90 -0
- package/src/rollup/root_rollup_public_inputs.ts +99 -0
- package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +26 -41
- package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
- package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +17 -25
- package/src/schemas/schemas.ts +3 -0
- package/src/slashing/empire.ts +100 -0
- package/src/slashing/helpers.ts +136 -0
- package/src/slashing/index.ts +6 -0
- package/src/slashing/interfaces.ts +11 -0
- package/src/slashing/serialization.ts +103 -0
- package/src/slashing/tally.ts +87 -0
- package/src/slashing/types.ts +152 -0
- package/src/snapshots/download.ts +123 -0
- package/src/snapshots/index.ts +3 -0
- package/src/snapshots/types.ts +70 -0
- package/src/snapshots/upload.ts +64 -0
- package/src/stats/stats.ts +28 -19
- package/src/tests/factories.ts +647 -518
- package/src/tests/mocks.ts +186 -135
- package/src/trees/append_only_tree_snapshot.ts +18 -2
- package/src/trees/database_public_state_source.ts +30 -0
- package/src/trees/index.ts +1 -1
- package/src/trees/merkle_tree_id.ts +12 -0
- package/src/trees/nullifier_leaf.ts +48 -21
- package/src/trees/nullifier_membership_witness.ts +17 -1
- package/src/trees/public_data_leaf.ts +40 -29
- package/src/trees/public_data_witness.ts +23 -4
- package/src/tx/block_header.ts +23 -21
- package/src/tx/capsule.ts +2 -0
- package/src/tx/content_commitment.ts +48 -77
- package/src/tx/global_variable_builder.ts +2 -2
- package/src/tx/global_variables.ts +37 -22
- package/src/tx/hashed_values.ts +29 -9
- package/src/tx/index.ts +8 -2
- package/src/tx/indexed_tx_effect.ts +39 -0
- package/src/tx/offchain_effect.ts +20 -0
- package/src/tx/partial_state_reference.ts +37 -4
- package/src/tx/private_execution_result.ts +69 -88
- package/src/tx/private_tx_constant_data.ts +94 -0
- package/src/tx/processed_tx.ts +41 -35
- package/src/tx/profiling.ts +161 -0
- package/src/tx/protocol_contracts.ts +70 -0
- package/src/tx/proven_tx.ts +62 -0
- package/src/tx/public_call_request_with_calldata.ts +72 -0
- package/src/tx/public_simulation_output.ts +5 -5
- package/src/tx/simulated_tx.ts +66 -76
- package/src/tx/state_reference.ts +54 -5
- package/src/tx/tree_snapshots.ts +13 -13
- package/src/tx/tx.ts +161 -192
- package/src/tx/tx_constant_data.ts +8 -21
- package/src/tx/tx_effect.ts +128 -293
- package/src/tx/tx_execution_request.ts +14 -3
- package/src/tx/tx_hash.ts +26 -5
- package/src/tx/tx_receipt.ts +1 -37
- package/src/tx/tx_request.ts +16 -6
- package/src/tx/validator/error_texts.ts +38 -0
- package/src/tx/validator/tx_validator.ts +5 -0
- package/src/types/shared.ts +10 -9
- package/src/update-checker/index.ts +1 -0
- package/src/update-checker/update-checker.ts +165 -0
- package/src/validators/errors.ts +59 -0
- package/src/validators/index.ts +3 -0
- package/src/validators/schemas.ts +75 -0
- package/src/validators/types.ts +46 -0
- package/src/versioning/versioning.ts +28 -32
- package/src/vks/index.ts +1 -1
- package/src/vks/verification_key.ts +18 -18
- package/src/vks/{vk_witness_data.ts → vk_data.ts} +6 -6
- package/src/world-state/index.ts +1 -0
- package/src/world-state/world_state_revision.ts +21 -0
- package/src/zkpassport/index.ts +119 -0
- package/dest/avm/public_data_hint.d.ts +0 -18
- package/dest/avm/public_data_hint.d.ts.map +0 -1
- package/dest/avm/public_data_hint.js +0 -27
- package/dest/block/l2_block_downloader/index.d.ts +0 -3
- package/dest/block/l2_block_downloader/index.d.ts.map +0 -1
- package/dest/block/l2_block_downloader/index.js +0 -2
- package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +0 -58
- package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +0 -1
- package/dest/block/l2_block_downloader/l2_block_downloader.js +0 -124
- package/dest/block/l2_block_downloader/l2_block_stream.d.ts +0 -57
- package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +0 -1
- package/dest/block/nullifier_with_block_source.d.ts +0 -6
- package/dest/block/nullifier_with_block_source.d.ts.map +0 -1
- package/dest/config/config.d.ts.map +0 -1
- package/dest/contract/unconstrained_function_membership_proof.d.ts +0 -27
- package/dest/contract/unconstrained_function_membership_proof.d.ts.map +0 -1
- package/dest/event/event.d.ts +0 -24
- package/dest/event/event.d.ts.map +0 -1
- package/dest/event/event.js +0 -13
- package/dest/event/event_metadata.d.ts +0 -38
- package/dest/event/event_metadata.d.ts.map +0 -1
- package/dest/event/event_metadata.js +0 -45
- package/dest/event/index.d.ts +0 -4
- package/dest/event/index.d.ts.map +0 -1
- package/dest/event/index.js +0 -3
- package/dest/event/l1_event_payload.d.ts +0 -52
- package/dest/event/l1_event_payload.d.ts.map +0 -1
- package/dest/event/l1_event_payload.js +0 -64
- package/dest/interfaces/pxe.d.ts +0 -347
- package/dest/interfaces/pxe.d.ts.map +0 -1
- package/dest/interfaces/pxe.js +0 -104
- package/dest/kernel/combined_constant_data.d.ts +0 -73
- package/dest/kernel/combined_constant_data.d.ts.map +0 -1
- package/dest/kernel/combined_constant_data.js +0 -73
- package/dest/kernel/hints/rollup_validation_requests.d.ts +0 -40
- package/dest/kernel/hints/rollup_validation_requests.d.ts.map +0 -1
- package/dest/kernel/hints/rollup_validation_requests.js +0 -57
- package/dest/kernel/hints/transient_data_index_hint.d.ts.map +0 -1
- package/dest/kernel/private_kernel_prover_profile_result.d.ts +0 -25
- package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +0 -1
- package/dest/kernel/private_kernel_prover_profile_result.js +0 -7
- package/dest/logs/indexed_tagging_secret.d.ts +0 -28
- package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
- package/dest/logs/indexed_tagging_secret.js +0 -50
- package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
- package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
- package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
- package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
- package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
- package/dest/logs/l1_payload/encryption_util.js +0 -46
- package/dest/logs/l1_payload/index.d.ts +0 -3
- package/dest/logs/l1_payload/index.d.ts.map +0 -1
- package/dest/logs/l1_payload/index.js +0 -2
- package/dest/logs/l1_payload/l1_note_payload.d.ts +0 -82
- package/dest/logs/l1_payload/l1_note_payload.d.ts.map +0 -1
- package/dest/logs/l1_payload/l1_note_payload.js +0 -129
- package/dest/logs/l1_payload/payload.d.ts +0 -60
- package/dest/logs/l1_payload/payload.d.ts.map +0 -1
- package/dest/logs/l1_payload/payload.js +0 -61
- package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
- package/dest/network/index.d.ts +0 -32
- package/dest/network/index.d.ts.map +0 -1
- package/dest/network/index.js +0 -30
- package/dest/note/extended_note.d.ts +0 -124
- package/dest/note/extended_note.d.ts.map +0 -1
- package/dest/note/extended_note.js +0 -115
- package/dest/parity/base_parity_inputs.d.ts.map +0 -1
- package/dest/parity/root_parity_input.d.ts +0 -54
- package/dest/parity/root_parity_input.d.ts.map +0 -1
- package/dest/parity/root_parity_input.js +0 -50
- package/dest/parity/root_parity_inputs.d.ts +0 -39
- package/dest/parity/root_parity_inputs.d.ts.map +0 -1
- package/dest/proofs/client_ivc_proof.d.ts +0 -21
- package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
- package/dest/proofs/client_ivc_proof.js +0 -44
- package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -159
- package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
- package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -136
- package/dest/rollup/block_root_rollup.d.ts +0 -262
- package/dest/rollup/block_root_rollup.d.ts.map +0 -1
- package/dest/rollup/block_root_rollup.js +0 -293
- package/dest/rollup/constant_rollup_data.d.ts +0 -47
- package/dest/rollup/constant_rollup_data.d.ts.map +0 -1
- package/dest/rollup/constant_rollup_data.js +0 -45
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -54
- package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/empty_block_root_rollup_inputs.js +0 -68
- package/dest/rollup/merge_rollup.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_block_data.d.ts +0 -58
- package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_block_data.js +0 -42
- package/dest/rollup/previous_rollup_data.d.ts +0 -58
- package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
- package/dest/rollup/previous_rollup_data.js +0 -42
- package/dest/rollup/private_base_rollup_inputs.d.ts +0 -23
- package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/private_base_rollup_inputs.js +0 -44
- package/dest/rollup/private_tube_data.d.ts +0 -17
- package/dest/rollup/private_tube_data.d.ts.map +0 -1
- package/dest/rollup/private_tube_data.js +0 -25
- package/dest/rollup/public_base_rollup_inputs.d.ts +0 -25
- package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
- package/dest/rollup/public_base_rollup_inputs.js +0 -48
- package/dest/rollup/public_tube_data.d.ts +0 -17
- package/dest/rollup/public_tube_data.d.ts.map +0 -1
- package/dest/rollup/public_tube_data.js +0 -25
- package/dest/rollup/root_rollup.d.ts +0 -112
- package/dest/rollup/root_rollup.d.ts.map +0 -1
- package/dest/rollup/root_rollup.js +0 -158
- package/dest/rollup/state_diff_hints.d.ts.map +0 -1
- package/dest/rollup/state_diff_hints.js +0 -85
- package/dest/rollup/tube_inputs.d.ts +0 -40
- package/dest/rollup/tube_inputs.d.ts.map +0 -1
- package/dest/rollup/tube_inputs.js +0 -57
- package/dest/shared_mutable/index.d.ts +0 -5
- package/dest/shared_mutable/index.d.ts.map +0 -1
- package/dest/shared_mutable/index.js +0 -4
- package/dest/shared_mutable/scheduled_delay_change.d.ts +0 -10
- package/dest/shared_mutable/scheduled_delay_change.d.ts.map +0 -1
- package/dest/shared_mutable/scheduled_value_change.d.ts +0 -11
- package/dest/shared_mutable/scheduled_value_change.d.ts.map +0 -1
- package/dest/shared_mutable/shared_mutable_values.d.ts +0 -22
- package/dest/shared_mutable/shared_mutable_values.d.ts.map +0 -1
- package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +0 -1
- package/dest/shared_mutable/shared_mutable_values_with_hash.js +0 -30
- package/dest/trees/protocol_contract_leaf.d.ts +0 -87
- package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
- package/dest/trees/protocol_contract_leaf.js +0 -103
- package/dest/tx/max_block_number.d.ts +0 -55
- package/dest/tx/max_block_number.d.ts.map +0 -1
- package/dest/tx/max_block_number.js +0 -65
- package/dest/tx/public_execution_request.d.ts +0 -45
- package/dest/tx/public_execution_request.d.ts.map +0 -1
- package/dest/tx/public_execution_request.js +0 -72
- package/dest/vks/vk_witness_data.d.ts.map +0 -1
- package/src/avm/public_data_hint.ts +0 -38
- package/src/block/l2_block_downloader/index.ts +0 -2
- package/src/block/l2_block_downloader/l2_block_downloader.ts +0 -149
- package/src/block/nullifier_with_block_source.ts +0 -7
- package/src/event/event.ts +0 -16
- package/src/event/event_metadata.ts +0 -56
- package/src/event/index.ts +0 -3
- package/src/event/l1_event_payload.ts +0 -87
- package/src/interfaces/pxe.ts +0 -536
- package/src/kernel/combined_constant_data.ts +0 -128
- package/src/kernel/hints/rollup_validation_requests.ts +0 -73
- package/src/kernel/private_kernel_prover_profile_result.ts +0 -7
- package/src/logs/indexed_tagging_secret.ts +0 -45
- package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
- package/src/logs/l1_payload/encryption_util.ts +0 -54
- package/src/logs/l1_payload/index.ts +0 -2
- package/src/logs/l1_payload/l1_note_payload.ts +0 -182
- package/src/logs/l1_payload/payload.ts +0 -73
- package/src/network/index.ts +0 -32
- package/src/note/extended_note.ts +0 -168
- package/src/parity/root_parity_input.ts +0 -71
- package/src/proofs/client_ivc_proof.ts +0 -61
- package/src/rollup/block_root_or_block_merge_public_inputs.ts +0 -175
- package/src/rollup/block_root_rollup.ts +0 -362
- package/src/rollup/constant_rollup_data.ts +0 -54
- package/src/rollup/empty_block_root_rollup_inputs.ts +0 -85
- package/src/rollup/previous_rollup_block_data.ts +0 -54
- package/src/rollup/previous_rollup_data.ts +0 -54
- package/src/rollup/private_base_rollup_inputs.ts +0 -50
- package/src/rollup/private_tube_data.ts +0 -35
- package/src/rollup/public_base_rollup_inputs.ts +0 -59
- package/src/rollup/public_tube_data.ts +0 -35
- package/src/rollup/root_rollup.ts +0 -206
- package/src/rollup/tube_inputs.ts +0 -70
- package/src/shared_mutable/index.ts +0 -4
- package/src/shared_mutable/scheduled_delay_change.ts +0 -13
- package/src/shared_mutable/shared_mutable_values_with_hash.ts +0 -38
- package/src/trees/protocol_contract_leaf.ts +0 -132
- package/src/tx/max_block_number.ts +0 -79
- package/src/tx/public_execution_request.ts +0 -97
- /package/dest/{block/nullifier_with_block_source.js → abi/event_metadata_definition.js} +0 -0
package/src/tests/factories.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { makeBatchedBlobAccumulator, makeSpongeBlob } from '@aztec/blob-lib/testing';
|
|
2
2
|
import {
|
|
3
3
|
ARCHIVE_HEIGHT,
|
|
4
|
-
|
|
4
|
+
AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
|
|
5
5
|
AZTEC_MAX_EPOCH_DURATION,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
FIELDS_PER_BLOB,
|
|
6
|
+
CHONK_PROOF_LENGTH,
|
|
7
|
+
CONTRACT_CLASS_LOG_SIZE_IN_FIELDS,
|
|
9
8
|
FIXED_DA_GAS,
|
|
10
9
|
FIXED_L2_GAS,
|
|
11
10
|
GeneratorIndex,
|
|
12
|
-
|
|
11
|
+
L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
|
|
13
12
|
MAX_CONTRACT_CLASS_LOGS_PER_TX,
|
|
14
13
|
MAX_ENQUEUED_CALLS_PER_CALL,
|
|
15
14
|
MAX_ENQUEUED_CALLS_PER_TX,
|
|
@@ -25,29 +24,27 @@ import {
|
|
|
25
24
|
MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL,
|
|
26
25
|
MAX_PRIVATE_LOGS_PER_CALL,
|
|
27
26
|
MAX_PRIVATE_LOGS_PER_TX,
|
|
28
|
-
|
|
27
|
+
MAX_PROTOCOL_CONTRACTS,
|
|
28
|
+
MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
|
|
29
29
|
MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
|
|
30
|
-
NESTED_RECURSIVE_PROOF_LENGTH,
|
|
31
30
|
NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
|
|
32
|
+
NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
|
|
34
33
|
NULLIFIER_TREE_HEIGHT,
|
|
34
|
+
NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP,
|
|
35
35
|
NUM_BASE_PARITY_PER_ROOT_PARITY,
|
|
36
36
|
NUM_MSGS_PER_BASE_PARITY,
|
|
37
37
|
PRIVATE_LOG_SIZE_IN_FIELDS,
|
|
38
38
|
PUBLIC_DATA_TREE_HEIGHT,
|
|
39
|
-
|
|
40
|
-
RECURSIVE_PROOF_LENGTH,
|
|
41
|
-
TUBE_PROOF_LENGTH,
|
|
39
|
+
RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
42
40
|
VK_TREE_HEIGHT,
|
|
43
41
|
} from '@aztec/constants';
|
|
44
42
|
import { type FieldsOf, makeHalfFullTuple, makeTuple } from '@aztec/foundation/array';
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
47
|
-
import { SchnorrSignature, poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
|
|
43
|
+
import { compact, padArrayEnd } from '@aztec/foundation/collection';
|
|
44
|
+
import { Grumpkin, SchnorrSignature, poseidon2HashWithSeparator, sha256 } from '@aztec/foundation/crypto';
|
|
48
45
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
49
|
-
import { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
|
|
50
|
-
import type { Bufferable } from '@aztec/foundation/serialize';
|
|
46
|
+
import { Fq, Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
|
|
47
|
+
import type { Bufferable, Serializable, Tuple } from '@aztec/foundation/serialize';
|
|
51
48
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
52
49
|
|
|
53
50
|
import { FunctionSelector } from '../abi/function_selector.js';
|
|
@@ -55,42 +52,50 @@ import { ContractStorageRead } from '../avm/contract_storage_read.js';
|
|
|
55
52
|
import { ContractStorageUpdateRequest } from '../avm/contract_storage_update_request.js';
|
|
56
53
|
import {
|
|
57
54
|
AvmAccumulatedData,
|
|
58
|
-
|
|
55
|
+
AvmAccumulatedDataArrayLengths,
|
|
56
|
+
AvmAppendLeavesHint,
|
|
57
|
+
AvmBytecodeCommitmentHint,
|
|
59
58
|
AvmCircuitInputs,
|
|
60
59
|
AvmCircuitPublicInputs,
|
|
60
|
+
AvmCommitCheckpointHint,
|
|
61
61
|
AvmContractClassHint,
|
|
62
62
|
AvmContractInstanceHint,
|
|
63
|
-
|
|
63
|
+
AvmCreateCheckpointHint,
|
|
64
64
|
AvmExecutionHints,
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
AvmGetLeafPreimageHintNullifierTree,
|
|
66
|
+
AvmGetLeafPreimageHintPublicDataTree,
|
|
67
|
+
AvmGetLeafValueHint,
|
|
68
|
+
AvmGetPreviousValueIndexHint,
|
|
69
|
+
AvmGetSiblingPathHint,
|
|
70
|
+
AvmRevertCheckpointHint,
|
|
71
|
+
AvmSequentialInsertHintNullifierTree,
|
|
72
|
+
AvmSequentialInsertHintPublicDataTree,
|
|
73
|
+
AvmTxHint,
|
|
69
74
|
RevertCode,
|
|
70
75
|
} from '../avm/index.js';
|
|
71
|
-
import { PublicDataHint } from '../avm/public_data_hint.js';
|
|
72
76
|
import { PublicDataRead } from '../avm/public_data_read.js';
|
|
73
77
|
import { PublicDataWrite } from '../avm/public_data_write.js';
|
|
74
78
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
79
|
+
import { L2BlockHeader } from '../block/index.js';
|
|
75
80
|
import {
|
|
76
81
|
type ContractClassPublic,
|
|
77
82
|
type ContractInstanceWithAddress,
|
|
78
83
|
type ExecutablePrivateFunctionWithMembershipProof,
|
|
79
84
|
type PrivateFunction,
|
|
80
|
-
type PublicFunction,
|
|
81
85
|
SerializableContractInstance,
|
|
82
|
-
type
|
|
86
|
+
type UtilityFunctionWithMembershipProof,
|
|
83
87
|
computeContractClassId,
|
|
84
88
|
computePublicBytecodeCommitment,
|
|
85
89
|
} from '../contract/index.js';
|
|
90
|
+
import { computeEffectiveGasFees } from '../fees/transaction_fee.js';
|
|
86
91
|
import { Gas, GasFees, GasSettings, type GasUsed } from '../gas/index.js';
|
|
92
|
+
import { computeCalldataHash } from '../hash/hash.js';
|
|
87
93
|
import type { MerkleTreeReadOperations } from '../interfaces/merkle_tree_operations.js';
|
|
88
94
|
import { KeyValidationRequest } from '../kernel/hints/key_validation_request.js';
|
|
89
95
|
import { KeyValidationRequestAndGenerator } from '../kernel/hints/key_validation_request_and_generator.js';
|
|
90
96
|
import { ReadRequest } from '../kernel/hints/read_request.js';
|
|
91
|
-
import { RollupValidationRequests } from '../kernel/hints/rollup_validation_requests.js';
|
|
92
97
|
import {
|
|
93
|
-
|
|
98
|
+
ClaimedLengthArray,
|
|
94
99
|
PartialPrivateTailPublicInputsForPublic,
|
|
95
100
|
PartialPrivateTailPublicInputsForRollup,
|
|
96
101
|
PrivateKernelTailCircuitPublicInputs,
|
|
@@ -99,69 +104,71 @@ import {
|
|
|
99
104
|
PrivateToPublicAccumulatedData,
|
|
100
105
|
PrivateToPublicKernelCircuitPublicInputs,
|
|
101
106
|
PrivateToRollupAccumulatedData,
|
|
102
|
-
mergeAccumulatedData,
|
|
103
107
|
} from '../kernel/index.js';
|
|
104
|
-
import { LogHash, ScopedLogHash } from '../kernel/log_hash.js';
|
|
108
|
+
import { CountedLogHash, LogHash, ScopedLogHash } from '../kernel/log_hash.js';
|
|
105
109
|
import { NoteHash } from '../kernel/note_hash.js';
|
|
106
110
|
import { Nullifier } from '../kernel/nullifier.js';
|
|
107
111
|
import { PrivateCallRequest } from '../kernel/private_call_request.js';
|
|
108
112
|
import { PrivateCircuitPublicInputs } from '../kernel/private_circuit_public_inputs.js';
|
|
109
113
|
import { PrivateLogData } from '../kernel/private_log_data.js';
|
|
110
114
|
import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
|
|
111
|
-
import {
|
|
115
|
+
import {
|
|
116
|
+
CountedPublicCallRequest,
|
|
117
|
+
PublicCallRequest,
|
|
118
|
+
PublicCallRequestArrayLengths,
|
|
119
|
+
} from '../kernel/public_call_request.js';
|
|
112
120
|
import { PublicKeys, computeAddress } from '../keys/index.js';
|
|
113
|
-
import {
|
|
121
|
+
import { ContractClassLogFields } from '../logs/index.js';
|
|
114
122
|
import { PrivateLog } from '../logs/private_log.js';
|
|
115
|
-
import { PublicLog } from '../logs/public_log.js';
|
|
116
|
-
import { L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
|
|
117
|
-
import {
|
|
123
|
+
import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
|
|
124
|
+
import { CountedL2ToL1Message, L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
|
|
125
|
+
import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
|
|
118
126
|
import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
|
|
119
|
-
import {
|
|
120
|
-
import {
|
|
127
|
+
import { ParityRootPrivateInputs } from '../parity/parity_root_private_inputs.js';
|
|
128
|
+
import { ProofData } from '../proofs/index.js';
|
|
121
129
|
import { Proof } from '../proofs/proof.js';
|
|
122
130
|
import { ProvingRequestType } from '../proofs/proving_request_type.js';
|
|
123
131
|
import { makeRecursiveProof } from '../proofs/recursive_proof.js';
|
|
124
|
-
import { AvmProofData } from '../rollup/avm_proof_data.js';
|
|
125
|
-
import { BaseOrMergeRollupPublicInputs } from '../rollup/base_or_merge_rollup_public_inputs.js';
|
|
126
132
|
import { PrivateBaseRollupHints, PublicBaseRollupHints } from '../rollup/base_rollup_hints.js';
|
|
127
|
-
import {
|
|
128
|
-
import {
|
|
133
|
+
import { BlockConstantData } from '../rollup/block_constant_data.js';
|
|
134
|
+
import { BlockMergeRollupPrivateInputs } from '../rollup/block_merge_rollup_private_inputs.js';
|
|
135
|
+
import { BlockRollupPublicInputs } from '../rollup/block_rollup_public_inputs.js';
|
|
129
136
|
import {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
} from '../rollup/
|
|
135
|
-
import {
|
|
136
|
-
import {
|
|
137
|
-
import {
|
|
138
|
-
import {
|
|
139
|
-
import {
|
|
140
|
-
import {
|
|
141
|
-
import {
|
|
142
|
-
import {
|
|
143
|
-
import {
|
|
144
|
-
import { RootRollupInputs, RootRollupPublicInputs } from '../rollup/root_rollup.js';
|
|
145
|
-
import { PrivateBaseStateDiffHints } from '../rollup/state_diff_hints.js';
|
|
137
|
+
BlockRootFirstRollupPrivateInputs,
|
|
138
|
+
BlockRootSingleTxRollupPrivateInputs,
|
|
139
|
+
} from '../rollup/block_root_rollup_private_inputs.js';
|
|
140
|
+
import { CheckpointConstantData } from '../rollup/checkpoint_constant_data.js';
|
|
141
|
+
import { CheckpointHeader } from '../rollup/checkpoint_header.js';
|
|
142
|
+
import { CheckpointRollupPublicInputs, FeeRecipient } from '../rollup/checkpoint_rollup_public_inputs.js';
|
|
143
|
+
import { EpochConstantData } from '../rollup/epoch_constant_data.js';
|
|
144
|
+
import { PrivateTxBaseRollupPrivateInputs } from '../rollup/private_tx_base_rollup_private_inputs.js';
|
|
145
|
+
import { PublicChonkVerifierPublicInputs } from '../rollup/public_chonk_verifier_public_inputs.js';
|
|
146
|
+
import { PublicTxBaseRollupPrivateInputs } from '../rollup/public_tx_base_rollup_private_inputs.js';
|
|
147
|
+
import { RootRollupPublicInputs } from '../rollup/root_rollup_public_inputs.js';
|
|
148
|
+
import { TreeSnapshotDiffHints } from '../rollup/tree_snapshot_diff_hints.js';
|
|
149
|
+
import { TxMergeRollupPrivateInputs } from '../rollup/tx_merge_rollup_private_inputs.js';
|
|
150
|
+
import { TxRollupPublicInputs } from '../rollup/tx_rollup_public_inputs.js';
|
|
146
151
|
import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
|
|
147
|
-
import {
|
|
152
|
+
import { MerkleTreeId } from '../trees/merkle_tree_id.js';
|
|
153
|
+
import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
|
|
148
154
|
import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
|
|
149
155
|
import { BlockHeader } from '../tx/block_header.js';
|
|
150
156
|
import { CallContext } from '../tx/call_context.js';
|
|
151
|
-
import { ContentCommitment
|
|
157
|
+
import { ContentCommitment } from '../tx/content_commitment.js';
|
|
152
158
|
import { FunctionData } from '../tx/function_data.js';
|
|
153
159
|
import { GlobalVariables } from '../tx/global_variables.js';
|
|
154
|
-
import { MaxBlockNumber } from '../tx/max_block_number.js';
|
|
155
160
|
import { PartialStateReference } from '../tx/partial_state_reference.js';
|
|
156
161
|
import { makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/processed_tx.js';
|
|
162
|
+
import { ProtocolContracts } from '../tx/protocol_contracts.js';
|
|
163
|
+
import { PublicCallRequestWithCalldata } from '../tx/public_call_request_with_calldata.js';
|
|
157
164
|
import { StateReference } from '../tx/state_reference.js';
|
|
158
165
|
import { TreeSnapshots } from '../tx/tree_snapshots.js';
|
|
159
166
|
import { TxConstantData } from '../tx/tx_constant_data.js';
|
|
160
167
|
import { TxContext } from '../tx/tx_context.js';
|
|
161
168
|
import { TxRequest } from '../tx/tx_request.js';
|
|
162
|
-
import {
|
|
169
|
+
import { Vector } from '../types/index.js';
|
|
170
|
+
import { VkData } from '../vks/index.js';
|
|
163
171
|
import { VerificationKey, VerificationKeyAsFields, VerificationKeyData } from '../vks/verification_key.js';
|
|
164
|
-
import { VkWitnessData } from '../vks/vk_witness_data.js';
|
|
165
172
|
import { mockTx } from './mocks.js';
|
|
166
173
|
|
|
167
174
|
/**
|
|
@@ -170,7 +177,11 @@ import { mockTx } from './mocks.js';
|
|
|
170
177
|
* @returns A side effect object.
|
|
171
178
|
*/
|
|
172
179
|
function makeLogHash(seed: number) {
|
|
173
|
-
return new LogHash(fr(seed), seed + 1
|
|
180
|
+
return new LogHash(fr(seed), seed + 1);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
function makeCountedLogHash(seed: number) {
|
|
184
|
+
return new CountedLogHash(makeLogHash(seed), seed + 0x10);
|
|
174
185
|
}
|
|
175
186
|
|
|
176
187
|
function makeScopedLogHash(seed: number) {
|
|
@@ -182,19 +193,11 @@ function makeNoteHash(seed: number) {
|
|
|
182
193
|
}
|
|
183
194
|
|
|
184
195
|
function makeNullifier(seed: number) {
|
|
185
|
-
return new Nullifier(fr(seed), seed + 1,
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
function makeContractClassLog(seed: number) {
|
|
189
|
-
// The '* 1' removes the 'Type instantiation is excessively deep and possibly infinite. ts(2589)' err
|
|
190
|
-
return new ContractClassLog(
|
|
191
|
-
makeAztecAddress(seed),
|
|
192
|
-
makeTuple(CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS * 1, fr, seed + 1),
|
|
193
|
-
);
|
|
196
|
+
return new Nullifier(fr(seed), fr(seed + 1), seed + 2);
|
|
194
197
|
}
|
|
195
198
|
|
|
196
199
|
function makePrivateLog(seed: number) {
|
|
197
|
-
return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed));
|
|
200
|
+
return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed), PRIVATE_LOG_SIZE_IN_FIELDS);
|
|
198
201
|
}
|
|
199
202
|
|
|
200
203
|
function makePrivateLogData(seed: number) {
|
|
@@ -202,7 +205,10 @@ function makePrivateLogData(seed: number) {
|
|
|
202
205
|
}
|
|
203
206
|
|
|
204
207
|
function makePublicLog(seed: number) {
|
|
205
|
-
return new PublicLog(
|
|
208
|
+
return new PublicLog(
|
|
209
|
+
makeAztecAddress(seed),
|
|
210
|
+
new Array(10).fill(null).map((_, i) => new Fr(seed + i)),
|
|
211
|
+
);
|
|
206
212
|
}
|
|
207
213
|
|
|
208
214
|
/**
|
|
@@ -292,24 +298,10 @@ export function makeContractStorageRead(seed = 1): ContractStorageRead {
|
|
|
292
298
|
return new ContractStorageRead(fr(seed), fr(seed + 1), seed + 2);
|
|
293
299
|
}
|
|
294
300
|
|
|
295
|
-
export function makeRollupValidationRequests(seed = 1) {
|
|
296
|
-
return new RollupValidationRequests(new MaxBlockNumber(true, new Fr(seed + 0x31415)));
|
|
297
|
-
}
|
|
298
|
-
|
|
299
301
|
function makeTxConstantData(seed = 1) {
|
|
300
302
|
return new TxConstantData(makeHeader(seed), makeTxContext(seed + 0x100), new Fr(seed + 0x200), new Fr(seed + 0x201));
|
|
301
303
|
}
|
|
302
304
|
|
|
303
|
-
export function makeCombinedConstantData(seed = 1): CombinedConstantData {
|
|
304
|
-
return new CombinedConstantData(
|
|
305
|
-
makeHeader(seed),
|
|
306
|
-
makeTxContext(seed + 0x100),
|
|
307
|
-
new Fr(seed + 0x200),
|
|
308
|
-
new Fr(seed + 0x201),
|
|
309
|
-
makeGlobalVariables(seed + 0x300),
|
|
310
|
-
);
|
|
311
|
-
}
|
|
312
|
-
|
|
313
305
|
/**
|
|
314
306
|
* Creates arbitrary accumulated data.
|
|
315
307
|
* @param seed - The seed to use for generating the accumulated data.
|
|
@@ -355,11 +347,15 @@ function makeAvmAccumulatedData(seed = 1) {
|
|
|
355
347
|
makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
|
|
356
348
|
makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
|
|
357
349
|
makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
|
|
358
|
-
|
|
350
|
+
FlatPublicLogs.fromLogs(new Array(20).fill(null).map((_, i) => makePublicLog(seed + i * 256))),
|
|
359
351
|
makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, makePublicDataWrite, seed + 0x400),
|
|
360
352
|
);
|
|
361
353
|
}
|
|
362
354
|
|
|
355
|
+
function makeAvmAccumulatedDataArrayLengths(seed = 1) {
|
|
356
|
+
return new AvmAccumulatedDataArrayLengths(seed, seed + 1, seed + 2, seed + 3);
|
|
357
|
+
}
|
|
358
|
+
|
|
363
359
|
export function makeGas(seed = 1) {
|
|
364
360
|
return new Gas(seed, seed + 1);
|
|
365
361
|
}
|
|
@@ -400,26 +396,34 @@ export function makePrivateKernelTailCircuitPublicInputs(
|
|
|
400
396
|
: undefined;
|
|
401
397
|
return new PrivateKernelTailCircuitPublicInputs(
|
|
402
398
|
makeTxConstantData(seed + 0x300),
|
|
403
|
-
makeRollupValidationRequests(seed + 0x500),
|
|
404
399
|
makeGas(seed + 0x600),
|
|
405
400
|
makeAztecAddress(seed + 0x700),
|
|
401
|
+
BigInt(seed + 0x800),
|
|
406
402
|
forPublic,
|
|
407
403
|
forRollup,
|
|
408
404
|
);
|
|
409
405
|
}
|
|
410
406
|
|
|
411
|
-
function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
|
|
407
|
+
export function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
|
|
412
408
|
return new PrivateToPublicKernelCircuitPublicInputs(
|
|
413
409
|
makeTxConstantData(seed),
|
|
414
|
-
makeRollupValidationRequests(seed + 0x100),
|
|
415
410
|
makePrivateToPublicAccumulatedData(seed + 0x200),
|
|
416
411
|
makePrivateToPublicAccumulatedData(seed + 0x300),
|
|
417
412
|
makePublicCallRequest(seed + 0x400),
|
|
418
413
|
makeGas(seed + 0x500),
|
|
419
414
|
makeAztecAddress(seed + 0x600),
|
|
415
|
+
BigInt(seed + 0x700),
|
|
420
416
|
);
|
|
421
417
|
}
|
|
422
418
|
|
|
419
|
+
export function makePublicChonkVerifierPublicInputs(seed = 1) {
|
|
420
|
+
return new PublicChonkVerifierPublicInputs(makePrivateToPublicKernelCircuitPublicInputs(seed), fr(seed + 0x1000));
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
export function makeProtocolContracts(seed = 1) {
|
|
424
|
+
return new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed));
|
|
425
|
+
}
|
|
426
|
+
|
|
423
427
|
/**
|
|
424
428
|
* Creates arbitrary public kernel circuit public inputs.
|
|
425
429
|
* @param seed - The seed to use for generating the kernel circuit public inputs.
|
|
@@ -431,20 +435,24 @@ export function makePrivateToRollupKernelCircuitPublicInputs(
|
|
|
431
435
|
): PrivateToRollupKernelCircuitPublicInputs {
|
|
432
436
|
return new PrivateToRollupKernelCircuitPublicInputs(
|
|
433
437
|
makeTxConstantData(seed + 0x100),
|
|
434
|
-
makeRollupValidationRequests(seed),
|
|
435
438
|
makePrivateToRollupAccumulatedData(seed, fullAccumulatedData),
|
|
436
439
|
makeGas(seed + 0x600),
|
|
437
440
|
makeAztecAddress(seed + 0x700),
|
|
441
|
+
BigInt(seed + 0x800),
|
|
438
442
|
);
|
|
439
443
|
}
|
|
440
444
|
|
|
441
445
|
function makeAvmCircuitPublicInputs(seed = 1) {
|
|
442
446
|
return new AvmCircuitPublicInputs(
|
|
443
447
|
makeGlobalVariables(seed),
|
|
448
|
+
makeProtocolContracts(seed + 0x100),
|
|
444
449
|
makeTreeSnapshots(seed + 0x10),
|
|
445
450
|
makeGas(seed + 0x20),
|
|
446
451
|
makeGasSettings(),
|
|
452
|
+
makeGasFees(seed + 0x30),
|
|
447
453
|
makeAztecAddress(seed + 0x40),
|
|
454
|
+
fr(seed + 0x50),
|
|
455
|
+
makePublicCallRequestArrayLengths(seed + 0x60),
|
|
448
456
|
makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x100),
|
|
449
457
|
makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x200),
|
|
450
458
|
makePublicCallRequest(seed + 0x300),
|
|
@@ -454,6 +462,7 @@ function makeAvmCircuitPublicInputs(seed = 1) {
|
|
|
454
462
|
makePrivateToAvmAccumulatedData(seed + 0x600),
|
|
455
463
|
makeTreeSnapshots(seed + 0x700),
|
|
456
464
|
makeGas(seed + 0x750),
|
|
465
|
+
makeAvmAccumulatedDataArrayLengths(seed + 0x800),
|
|
457
466
|
makeAvmAccumulatedData(seed + 0x800),
|
|
458
467
|
fr(seed + 0x900),
|
|
459
468
|
false,
|
|
@@ -522,13 +531,11 @@ function makePrivateCallRequest(seed = 1): PrivateCallRequest {
|
|
|
522
531
|
}
|
|
523
532
|
|
|
524
533
|
export function makePublicCallRequest(seed = 1) {
|
|
525
|
-
return new PublicCallRequest(
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
fr(seed + 0x3),
|
|
531
|
-
);
|
|
534
|
+
return new PublicCallRequest(makeAztecAddress(seed), makeAztecAddress(seed + 1), false, fr(seed + 0x3));
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
export function makePublicCallRequestArrayLengths(seed = 1) {
|
|
538
|
+
return new PublicCallRequestArrayLengths(seed, seed + 1, seed % 2 === 0);
|
|
532
539
|
}
|
|
533
540
|
|
|
534
541
|
function makeCountedPublicCallRequest(seed = 1) {
|
|
@@ -546,9 +553,19 @@ export function makeTxRequest(seed = 1): TxRequest {
|
|
|
546
553
|
functionData: new FunctionData(makeSelector(seed + 0x100), /*isPrivate=*/ true),
|
|
547
554
|
argsHash: fr(seed + 0x200),
|
|
548
555
|
txContext: makeTxContext(seed + 0x400),
|
|
556
|
+
salt: fr(seed + 0x500),
|
|
549
557
|
});
|
|
550
558
|
}
|
|
551
559
|
|
|
560
|
+
function makeClaimedLengthArray<T extends Serializable, N extends number>(
|
|
561
|
+
arraySize: N,
|
|
562
|
+
makeItem: (seed: number) => T,
|
|
563
|
+
seed: number,
|
|
564
|
+
length = arraySize,
|
|
565
|
+
): ClaimedLengthArray<T, N> {
|
|
566
|
+
return new ClaimedLengthArray(makeTuple(arraySize, makeItem, seed) as Tuple<T, N>, length);
|
|
567
|
+
}
|
|
568
|
+
|
|
552
569
|
/**
|
|
553
570
|
* Makes arbitrary private circuit public inputs.
|
|
554
571
|
* @param seed - The seed to use for generating the private circuit public inputs.
|
|
@@ -556,29 +573,33 @@ export function makeTxRequest(seed = 1): TxRequest {
|
|
|
556
573
|
*/
|
|
557
574
|
export function makePrivateCircuitPublicInputs(seed = 0): PrivateCircuitPublicInputs {
|
|
558
575
|
return PrivateCircuitPublicInputs.from({
|
|
559
|
-
|
|
576
|
+
includeByTimestamp: BigInt(seed + 0x31415),
|
|
560
577
|
callContext: makeCallContext(seed, { isStaticCall: true }),
|
|
561
578
|
argsHash: fr(seed + 0x100),
|
|
562
579
|
returnsHash: fr(seed + 0x200),
|
|
563
580
|
minRevertibleSideEffectCounter: fr(0),
|
|
564
|
-
noteHashReadRequests:
|
|
565
|
-
nullifierReadRequests:
|
|
566
|
-
keyValidationRequestsAndGenerators:
|
|
581
|
+
noteHashReadRequests: makeClaimedLengthArray(MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x300),
|
|
582
|
+
nullifierReadRequests: makeClaimedLengthArray(MAX_NULLIFIER_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x310),
|
|
583
|
+
keyValidationRequestsAndGenerators: makeClaimedLengthArray(
|
|
567
584
|
MAX_KEY_VALIDATION_REQUESTS_PER_CALL,
|
|
568
585
|
makeKeyValidationRequestAndGenerators,
|
|
569
586
|
seed + 0x320,
|
|
570
587
|
),
|
|
571
|
-
noteHashes:
|
|
572
|
-
nullifiers:
|
|
573
|
-
privateCallRequests:
|
|
574
|
-
|
|
588
|
+
noteHashes: makeClaimedLengthArray(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
|
|
589
|
+
nullifiers: makeClaimedLengthArray(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
|
|
590
|
+
privateCallRequests: makeClaimedLengthArray(
|
|
591
|
+
MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL,
|
|
592
|
+
makePrivateCallRequest,
|
|
593
|
+
seed + 0x600,
|
|
594
|
+
),
|
|
595
|
+
publicCallRequests: makeClaimedLengthArray(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
|
|
575
596
|
publicTeardownCallRequest: makePublicCallRequest(seed + 0x800),
|
|
576
|
-
l2ToL1Msgs:
|
|
577
|
-
privateLogs:
|
|
578
|
-
contractClassLogsHashes:
|
|
597
|
+
l2ToL1Msgs: makeClaimedLengthArray(MAX_L2_TO_L1_MSGS_PER_CALL, makeCountedL2ToL1Message, seed + 0x800),
|
|
598
|
+
privateLogs: makeClaimedLengthArray(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
|
|
599
|
+
contractClassLogsHashes: makeClaimedLengthArray(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeCountedLogHash, seed + 0xa00),
|
|
579
600
|
startSideEffectCounter: fr(seed + 0x849),
|
|
580
601
|
endSideEffectCounter: fr(seed + 0x850),
|
|
581
|
-
|
|
602
|
+
anchorBlockHeader: makeHeader(seed + 0xd00, undefined),
|
|
582
603
|
txContext: makeTxContext(seed + 0x1400),
|
|
583
604
|
isFeePayer: false,
|
|
584
605
|
});
|
|
@@ -588,46 +609,24 @@ export function makeGlobalVariables(seed = 1, overrides: Partial<FieldsOf<Global
|
|
|
588
609
|
return GlobalVariables.from({
|
|
589
610
|
chainId: new Fr(seed),
|
|
590
611
|
version: new Fr(seed + 1),
|
|
591
|
-
blockNumber:
|
|
612
|
+
blockNumber: seed + 2,
|
|
592
613
|
slotNumber: new Fr(seed + 3),
|
|
593
|
-
timestamp:
|
|
614
|
+
timestamp: BigInt(seed + 4),
|
|
594
615
|
coinbase: EthAddress.fromField(new Fr(seed + 5)),
|
|
595
616
|
feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
|
|
596
|
-
gasFees: new GasFees(
|
|
617
|
+
gasFees: new GasFees(seed + 7, seed + 8),
|
|
597
618
|
...compact(overrides),
|
|
598
619
|
});
|
|
599
620
|
}
|
|
600
621
|
|
|
601
|
-
|
|
602
|
-
return new GasFees(
|
|
622
|
+
function makeGasFees(seed = 1) {
|
|
623
|
+
return new GasFees(seed, seed + 1);
|
|
603
624
|
}
|
|
604
625
|
|
|
605
|
-
|
|
626
|
+
function makeFeeRecipient(seed = 1) {
|
|
606
627
|
return new FeeRecipient(EthAddress.fromField(fr(seed)), fr(seed + 1));
|
|
607
628
|
}
|
|
608
629
|
|
|
609
|
-
/**
|
|
610
|
-
* Makes constant base rollup data.
|
|
611
|
-
* @param seed - The seed to use for generating the constant base rollup data.
|
|
612
|
-
* @param blockNumber - The block number to use for generating the global variables.
|
|
613
|
-
* @returns A constant base rollup data.
|
|
614
|
-
*/
|
|
615
|
-
export function makeConstantRollupData(
|
|
616
|
-
seed = 1,
|
|
617
|
-
globalVariables: GlobalVariables | undefined = undefined,
|
|
618
|
-
): ConstantRollupData {
|
|
619
|
-
return ConstantRollupData.from({
|
|
620
|
-
lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x300),
|
|
621
|
-
vkTreeRoot: fr(seed + 0x401),
|
|
622
|
-
protocolContractTreeRoot: fr(seed + 0x402),
|
|
623
|
-
globalVariables: globalVariables ?? makeGlobalVariables(seed + 0x500),
|
|
624
|
-
});
|
|
625
|
-
}
|
|
626
|
-
|
|
627
|
-
export function makeScopedL2ToL1Message(seed = 1): ScopedL2ToL1Message {
|
|
628
|
-
return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
|
|
629
|
-
}
|
|
630
|
-
|
|
631
630
|
/**
|
|
632
631
|
* Makes arbitrary append only tree snapshot.
|
|
633
632
|
* @param seed - The seed to use for generating the append only tree snapshot.
|
|
@@ -674,20 +673,48 @@ export function makeSchnorrSignature(seed = 1): SchnorrSignature {
|
|
|
674
673
|
return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
|
|
675
674
|
}
|
|
676
675
|
|
|
676
|
+
function makeBlockConstantData(seed = 1, globalVariables?: GlobalVariables) {
|
|
677
|
+
return new BlockConstantData(
|
|
678
|
+
makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
679
|
+
makeAppendOnlyTreeSnapshot(seed + 0x200),
|
|
680
|
+
fr(seed + 0x300),
|
|
681
|
+
fr(seed + 0x400),
|
|
682
|
+
globalVariables ?? makeGlobalVariables(seed + 0x500),
|
|
683
|
+
fr(seed + 0x600),
|
|
684
|
+
);
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
function makeCheckpointConstantData(seed = 1) {
|
|
688
|
+
return new CheckpointConstantData(
|
|
689
|
+
fr(seed),
|
|
690
|
+
fr(seed + 1),
|
|
691
|
+
fr(seed + 2),
|
|
692
|
+
fr(seed + 3),
|
|
693
|
+
fr(seed + 4),
|
|
694
|
+
fr(seed + 5),
|
|
695
|
+
makeEthAddress(seed + 6),
|
|
696
|
+
makeAztecAddress(seed + 7),
|
|
697
|
+
makeGasFees(seed + 8),
|
|
698
|
+
);
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
function makeEpochConstantData(seed = 1) {
|
|
702
|
+
return new EpochConstantData(fr(seed), fr(seed + 1), fr(seed + 2), fr(seed + 3), fr(seed + 4));
|
|
703
|
+
}
|
|
704
|
+
|
|
677
705
|
/**
|
|
678
706
|
* Makes arbitrary base or merge rollup circuit public inputs.
|
|
679
707
|
* @param seed - The seed to use for generating the base rollup circuit public inputs.
|
|
680
708
|
* @param blockNumber - The block number to use for generating the base rollup circuit public inputs.
|
|
681
709
|
* @returns A base or merge rollup circuit public inputs.
|
|
682
710
|
*/
|
|
683
|
-
export function
|
|
711
|
+
export function makeTxRollupPublicInputs(
|
|
684
712
|
seed = 0,
|
|
685
713
|
globalVariables: GlobalVariables | undefined = undefined,
|
|
686
|
-
):
|
|
687
|
-
return new
|
|
688
|
-
RollupTypes.Base,
|
|
714
|
+
): TxRollupPublicInputs {
|
|
715
|
+
return new TxRollupPublicInputs(
|
|
689
716
|
1,
|
|
690
|
-
|
|
717
|
+
makeBlockConstantData(seed + 0x200, globalVariables),
|
|
691
718
|
makePartialStateReference(seed + 0x300),
|
|
692
719
|
makePartialStateReference(seed + 0x400),
|
|
693
720
|
makeSpongeBlob(seed + 0x500),
|
|
@@ -704,147 +731,35 @@ export function makeBaseOrMergeRollupPublicInputs(
|
|
|
704
731
|
* @param blockNumber - The block number to use for generating the block merge or block root rollup circuit public inputs.
|
|
705
732
|
* @returns A block merge or block root rollup circuit public inputs.
|
|
706
733
|
*/
|
|
707
|
-
export function
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
): BlockRootOrBlockMergePublicInputs {
|
|
711
|
-
return new BlockRootOrBlockMergePublicInputs(
|
|
734
|
+
export function makeBlockRollupPublicInputs(seed = 0): BlockRollupPublicInputs {
|
|
735
|
+
return new BlockRollupPublicInputs(
|
|
736
|
+
makeCheckpointConstantData(seed + 0x100),
|
|
712
737
|
makeAppendOnlyTreeSnapshot(seed + 0x200),
|
|
713
738
|
makeAppendOnlyTreeSnapshot(seed + 0x300),
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
fr(seed +
|
|
721
|
-
fr(seed +
|
|
722
|
-
fr(seed +
|
|
723
|
-
|
|
724
|
-
);
|
|
725
|
-
}
|
|
726
|
-
|
|
727
|
-
/**
|
|
728
|
-
* Makes arbitrary previous rollup data.
|
|
729
|
-
* @param seed - The seed to use for generating the previous rollup data.
|
|
730
|
-
* @param globalVariables - The global variables to use when generating the previous rollup data.
|
|
731
|
-
* @returns A previous rollup data.
|
|
732
|
-
*/
|
|
733
|
-
export function makePreviousRollupData(
|
|
734
|
-
seed = 0,
|
|
735
|
-
globalVariables: GlobalVariables | undefined = undefined,
|
|
736
|
-
): PreviousRollupData {
|
|
737
|
-
return new PreviousRollupData(
|
|
738
|
-
makeBaseOrMergeRollupPublicInputs(seed, globalVariables),
|
|
739
|
-
makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
|
|
740
|
-
NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
741
|
-
seed + 0x50,
|
|
742
|
-
),
|
|
743
|
-
VerificationKeyAsFields.makeFakeHonk(),
|
|
744
|
-
makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
|
|
745
|
-
);
|
|
746
|
-
}
|
|
747
|
-
|
|
748
|
-
/**
|
|
749
|
-
* Makes arbitrary previous rollup block data.
|
|
750
|
-
* @param seed - The seed to use for generating the previous rollup block data.
|
|
751
|
-
* @param globalVariables - The global variables to use when generating the previous rollup block data.
|
|
752
|
-
* @returns A previous rollup block data.
|
|
753
|
-
*/
|
|
754
|
-
export function makePreviousRollupBlockData(
|
|
755
|
-
seed = 0,
|
|
756
|
-
globalVariables: GlobalVariables | undefined = undefined,
|
|
757
|
-
): PreviousRollupBlockData {
|
|
758
|
-
return new PreviousRollupBlockData(
|
|
759
|
-
makeBlockRootOrBlockMergeRollupPublicInputs(seed, globalVariables),
|
|
760
|
-
makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
|
|
761
|
-
NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
762
|
-
seed + 0x50,
|
|
763
|
-
),
|
|
764
|
-
VerificationKeyAsFields.makeFakeHonk(),
|
|
765
|
-
makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
|
|
766
|
-
);
|
|
767
|
-
}
|
|
768
|
-
|
|
769
|
-
/**
|
|
770
|
-
* Makes root rollup inputs.
|
|
771
|
-
* @param seed - The seed to use for generating the root rollup inputs.
|
|
772
|
-
* @param globalVariables - The global variables to use.
|
|
773
|
-
* @returns A root rollup inputs.
|
|
774
|
-
*/
|
|
775
|
-
export function makeRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): RootRollupInputs {
|
|
776
|
-
return new RootRollupInputs(
|
|
777
|
-
[makePreviousRollupBlockData(seed, globalVariables), makePreviousRollupBlockData(seed + 0x1000, globalVariables)],
|
|
778
|
-
fr(seed + 0x2000),
|
|
779
|
-
);
|
|
780
|
-
}
|
|
781
|
-
|
|
782
|
-
function makeBlockRootRollupData(seed = 0) {
|
|
783
|
-
return new BlockRootRollupData(
|
|
784
|
-
makeRootParityInput<typeof NESTED_RECURSIVE_PROOF_LENGTH>(NESTED_RECURSIVE_PROOF_LENGTH, seed + 0x2000),
|
|
785
|
-
makeTuple(L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, fr, 0x2100),
|
|
786
|
-
makeTuple(ARCHIVE_HEIGHT, fr, 0x2200),
|
|
787
|
-
makeHeader(seed + 0x2300),
|
|
788
|
-
fr(seed + 0x2400),
|
|
789
|
-
);
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
function makeBlockRootRollupBlobData(seed = 0) {
|
|
793
|
-
return new BlockRootRollupBlobData(
|
|
794
|
-
makeTuple(FIELDS_PER_BLOB * BLOBS_PER_BLOCK, fr, 0x2500),
|
|
795
|
-
makeTuple(BLOBS_PER_BLOCK, () => makeTuple(2, fr, 0x2600)),
|
|
796
|
-
fr(seed + 0x2700),
|
|
797
|
-
);
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
/**
|
|
801
|
-
* Makes block root rollup inputs.
|
|
802
|
-
* @param seed - The seed to use for generating the root rollup inputs.
|
|
803
|
-
* @param globalVariables - The global variables to use.
|
|
804
|
-
* @returns A block root rollup inputs.
|
|
805
|
-
*/
|
|
806
|
-
export function makeBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): BlockRootRollupInputs {
|
|
807
|
-
return new BlockRootRollupInputs(
|
|
808
|
-
[makePreviousRollupData(seed, globalVariables), makePreviousRollupData(seed + 0x1000, globalVariables)],
|
|
809
|
-
makeBlockRootRollupData(seed + 0x2000),
|
|
810
|
-
makeBlockRootRollupBlobData(seed + 0x4000),
|
|
811
|
-
);
|
|
812
|
-
}
|
|
813
|
-
|
|
814
|
-
export function makeSingleTxBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables) {
|
|
815
|
-
return new SingleTxBlockRootRollupInputs(
|
|
816
|
-
[makePreviousRollupData(seed, globalVariables)],
|
|
817
|
-
makeBlockRootRollupData(seed + 0x2000),
|
|
818
|
-
makeBlockRootRollupBlobData(seed + 0x4000),
|
|
819
|
-
);
|
|
820
|
-
}
|
|
821
|
-
|
|
822
|
-
/**
|
|
823
|
-
* Makes empty block root rollup inputs.
|
|
824
|
-
* @param seed - The seed to use for generating the root rollup inputs.
|
|
825
|
-
* @param globalVariables - The global variables to use.
|
|
826
|
-
* @returns A block root rollup inputs.
|
|
827
|
-
*/
|
|
828
|
-
export function makeEmptyBlockRootRollupInputs(
|
|
829
|
-
seed = 0,
|
|
830
|
-
globalVariables?: GlobalVariables,
|
|
831
|
-
): EmptyBlockRootRollupInputs {
|
|
832
|
-
return new EmptyBlockRootRollupInputs(
|
|
833
|
-
makeBlockRootRollupData(seed + 0x1000),
|
|
834
|
-
makeConstantRollupData(0x2500, globalVariables),
|
|
835
|
-
true,
|
|
739
|
+
makeStateReference(seed + 0x400),
|
|
740
|
+
makeStateReference(seed + 0x500),
|
|
741
|
+
makeSpongeBlob(seed + 0x600),
|
|
742
|
+
makeSpongeBlob(seed + 0x700),
|
|
743
|
+
BigInt(seed + 0x810),
|
|
744
|
+
BigInt(seed + 0x820),
|
|
745
|
+
fr(seed + 0x830),
|
|
746
|
+
fr(seed + 0x840),
|
|
747
|
+
fr(seed + 0x850),
|
|
748
|
+
fr(seed + 0x860),
|
|
836
749
|
);
|
|
837
750
|
}
|
|
838
751
|
|
|
839
|
-
export function
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
)
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
makeTuple(
|
|
847
|
-
|
|
752
|
+
export function makeCheckpointRollupPublicInputs(seed = 0) {
|
|
753
|
+
const startBlobAccumulator = makeBatchedBlobAccumulator(seed);
|
|
754
|
+
return new CheckpointRollupPublicInputs(
|
|
755
|
+
makeEpochConstantData(seed),
|
|
756
|
+
makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
757
|
+
makeAppendOnlyTreeSnapshot(seed + 0x200),
|
|
758
|
+
makeTuple(AZTEC_MAX_EPOCH_DURATION, () => fr(seed), 0x300),
|
|
759
|
+
makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x700),
|
|
760
|
+
startBlobAccumulator.toBlobAccumulator(),
|
|
761
|
+
makeBatchedBlobAccumulator(seed + 1).toBlobAccumulator(),
|
|
762
|
+
startBlobAccumulator.finalBlobChallenges,
|
|
848
763
|
);
|
|
849
764
|
}
|
|
850
765
|
|
|
@@ -856,17 +771,13 @@ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
|
|
|
856
771
|
);
|
|
857
772
|
}
|
|
858
773
|
|
|
859
|
-
export function
|
|
860
|
-
return new
|
|
774
|
+
export function makeParityBasePrivateInputs(seed = 0): ParityBasePrivateInputs {
|
|
775
|
+
return new ParityBasePrivateInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
|
|
861
776
|
}
|
|
862
777
|
|
|
863
|
-
export function
|
|
864
|
-
return new
|
|
865
|
-
makeTuple(
|
|
866
|
-
NUM_BASE_PARITY_PER_ROOT_PARITY,
|
|
867
|
-
() => makeRootParityInput<typeof RECURSIVE_PROOF_LENGTH>(RECURSIVE_PROOF_LENGTH),
|
|
868
|
-
seed + 0x4100,
|
|
869
|
-
),
|
|
778
|
+
export function makeParityRootPrivateInputs(seed = 0) {
|
|
779
|
+
return new ParityRootPrivateInputs(
|
|
780
|
+
makeTuple(NUM_BASE_PARITY_PER_ROOT_PARITY, () => makeProofData(seed, makeParityPublicInputs)),
|
|
870
781
|
);
|
|
871
782
|
}
|
|
872
783
|
|
|
@@ -878,18 +789,12 @@ export function makeRootParityInputs(seed = 0): RootParityInputs {
|
|
|
878
789
|
*/
|
|
879
790
|
export function makeRootRollupPublicInputs(seed = 0): RootRollupPublicInputs {
|
|
880
791
|
return new RootRollupPublicInputs(
|
|
881
|
-
makeAppendOnlyTreeSnapshot(seed + 0x200),
|
|
882
|
-
makeAppendOnlyTreeSnapshot(seed + 0x300),
|
|
883
|
-
fr(seed + 0x400),
|
|
884
|
-
fr(seed + 0x500),
|
|
885
|
-
fr(seed + 0x600),
|
|
886
|
-
fr(seed + 0x700),
|
|
887
|
-
fr(seed + 0x800),
|
|
888
|
-
makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x900),
|
|
889
792
|
fr(seed + 0x100),
|
|
890
|
-
fr(seed + 0x101),
|
|
891
793
|
fr(seed + 0x200),
|
|
892
|
-
makeTuple(AZTEC_MAX_EPOCH_DURATION, () =>
|
|
794
|
+
makeTuple(AZTEC_MAX_EPOCH_DURATION, () => fr(seed), 0x300),
|
|
795
|
+
makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x500),
|
|
796
|
+
makeEpochConstantData(seed + 0x600),
|
|
797
|
+
makeBatchedBlobAccumulator(seed).toFinalBlobAccumulator(),
|
|
893
798
|
);
|
|
894
799
|
}
|
|
895
800
|
|
|
@@ -897,12 +802,7 @@ export function makeRootRollupPublicInputs(seed = 0): RootRollupPublicInputs {
|
|
|
897
802
|
* Makes content commitment
|
|
898
803
|
*/
|
|
899
804
|
export function makeContentCommitment(seed = 0): ContentCommitment {
|
|
900
|
-
return new ContentCommitment(
|
|
901
|
-
new Fr(seed),
|
|
902
|
-
toBufferBE(BigInt(seed + 0x100), NUM_BYTES_PER_SHA256),
|
|
903
|
-
toBufferBE(BigInt(seed + 0x200), NUM_BYTES_PER_SHA256),
|
|
904
|
-
toBufferBE(BigInt(seed + 0x300), NUM_BYTES_PER_SHA256),
|
|
905
|
-
);
|
|
805
|
+
return new ContentCommitment(fr(seed + 0x100), fr(seed + 0x200), fr(seed + 0x300));
|
|
906
806
|
}
|
|
907
807
|
|
|
908
808
|
/**
|
|
@@ -912,35 +812,73 @@ export function makeHeader(
|
|
|
912
812
|
seed = 0,
|
|
913
813
|
blockNumber: number | undefined = undefined,
|
|
914
814
|
slotNumber: number | undefined = undefined,
|
|
815
|
+
overrides: Partial<FieldsOf<BlockHeader>> = {},
|
|
915
816
|
): BlockHeader {
|
|
916
|
-
return
|
|
817
|
+
return BlockHeader.from({
|
|
818
|
+
lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
819
|
+
state: makeStateReference(seed + 0x200),
|
|
820
|
+
spongeBlobHash: fr(seed + 0x300),
|
|
821
|
+
globalVariables: makeGlobalVariables((seed += 0x700), {
|
|
822
|
+
...(blockNumber ? { blockNumber } : {}),
|
|
823
|
+
...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
|
|
824
|
+
}),
|
|
825
|
+
totalFees: fr(seed + 0x800),
|
|
826
|
+
totalManaUsed: fr(seed + 0x900),
|
|
827
|
+
...overrides,
|
|
828
|
+
});
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
export function makeL2BlockHeader(
|
|
832
|
+
seed = 0,
|
|
833
|
+
blockNumber?: number,
|
|
834
|
+
slotNumber?: number,
|
|
835
|
+
overrides: Partial<FieldsOf<L2BlockHeader>> = {},
|
|
836
|
+
) {
|
|
837
|
+
return new L2BlockHeader(
|
|
917
838
|
makeAppendOnlyTreeSnapshot(seed + 0x100),
|
|
918
|
-
makeContentCommitment(seed + 0x200),
|
|
919
|
-
makeStateReference(seed + 0x600),
|
|
839
|
+
overrides?.contentCommitment ?? makeContentCommitment(seed + 0x200),
|
|
840
|
+
overrides?.state ?? makeStateReference(seed + 0x600),
|
|
920
841
|
makeGlobalVariables((seed += 0x700), {
|
|
921
|
-
...(blockNumber ? { blockNumber
|
|
842
|
+
...(blockNumber ? { blockNumber } : {}),
|
|
922
843
|
...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
|
|
923
844
|
}),
|
|
924
|
-
|
|
925
|
-
|
|
845
|
+
new Fr(seed + 0x800),
|
|
846
|
+
new Fr(seed + 0x900),
|
|
847
|
+
new Fr(seed + 0xa00),
|
|
926
848
|
);
|
|
927
849
|
}
|
|
928
850
|
|
|
851
|
+
export function makeCheckpointHeader(seed = 0) {
|
|
852
|
+
return CheckpointHeader.from({
|
|
853
|
+
lastArchiveRoot: fr(seed + 0x100),
|
|
854
|
+
contentCommitment: makeContentCommitment(seed + 0x200),
|
|
855
|
+
slotNumber: new Fr(seed + 0x300),
|
|
856
|
+
timestamp: BigInt(seed + 0x400),
|
|
857
|
+
coinbase: makeEthAddress(seed + 0x500),
|
|
858
|
+
feeRecipient: makeAztecAddress(seed + 0x600),
|
|
859
|
+
gasFees: makeGasFees(seed + 0x700),
|
|
860
|
+
totalManaUsed: fr(seed + 0x800),
|
|
861
|
+
});
|
|
862
|
+
}
|
|
863
|
+
|
|
929
864
|
/**
|
|
930
865
|
* Makes arbitrary state reference.
|
|
931
866
|
* @param seed - The seed to use for generating the state reference.
|
|
932
867
|
* @returns A state reference.
|
|
933
868
|
*/
|
|
934
869
|
export function makeStateReference(seed = 0): StateReference {
|
|
935
|
-
return new StateReference(
|
|
870
|
+
return new StateReference(
|
|
871
|
+
makeAppendOnlyTreeSnapshot(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP * seed),
|
|
872
|
+
makePartialStateReference(seed + 1),
|
|
873
|
+
);
|
|
936
874
|
}
|
|
937
875
|
|
|
938
876
|
function makeTreeSnapshots(seed = 0) {
|
|
939
877
|
return new TreeSnapshots(
|
|
940
|
-
makeAppendOnlyTreeSnapshot(seed),
|
|
941
|
-
makeAppendOnlyTreeSnapshot(seed + 0x10),
|
|
942
|
-
makeAppendOnlyTreeSnapshot(seed + 0x20),
|
|
943
|
-
makeAppendOnlyTreeSnapshot(seed + 0x30),
|
|
878
|
+
makeAppendOnlyTreeSnapshot(seed * NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP),
|
|
879
|
+
makeAppendOnlyTreeSnapshot((seed + 0x10) * MAX_NOTE_HASHES_PER_TX),
|
|
880
|
+
makeAppendOnlyTreeSnapshot((seed + 0x20) * MAX_NULLIFIERS_PER_TX),
|
|
881
|
+
makeAppendOnlyTreeSnapshot((seed + 0x30) * MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX),
|
|
944
882
|
);
|
|
945
883
|
}
|
|
946
884
|
|
|
@@ -953,7 +891,15 @@ export function makeL2ToL1Message(seed = 0): L2ToL1Message {
|
|
|
953
891
|
const recipient = EthAddress.fromField(new Fr(seed));
|
|
954
892
|
const content = new Fr(seed + 1);
|
|
955
893
|
|
|
956
|
-
return new L2ToL1Message(recipient, content
|
|
894
|
+
return new L2ToL1Message(recipient, content);
|
|
895
|
+
}
|
|
896
|
+
|
|
897
|
+
function makeCountedL2ToL1Message(seed = 0) {
|
|
898
|
+
return new CountedL2ToL1Message(makeL2ToL1Message(seed), seed + 2);
|
|
899
|
+
}
|
|
900
|
+
|
|
901
|
+
function makeScopedL2ToL1Message(seed = 1) {
|
|
902
|
+
return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
|
|
957
903
|
}
|
|
958
904
|
|
|
959
905
|
/**
|
|
@@ -963,19 +909,34 @@ export function makeL2ToL1Message(seed = 0): L2ToL1Message {
|
|
|
963
909
|
*/
|
|
964
910
|
export function makePartialStateReference(seed = 0): PartialStateReference {
|
|
965
911
|
return new PartialStateReference(
|
|
966
|
-
makeAppendOnlyTreeSnapshot(seed),
|
|
967
|
-
makeAppendOnlyTreeSnapshot(seed + 1),
|
|
968
|
-
makeAppendOnlyTreeSnapshot(seed + 2),
|
|
912
|
+
makeAppendOnlyTreeSnapshot(MAX_NOTE_HASHES_PER_TX * seed),
|
|
913
|
+
makeAppendOnlyTreeSnapshot(MAX_NULLIFIERS_PER_TX * (seed + 1)),
|
|
914
|
+
makeAppendOnlyTreeSnapshot(MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX * (seed + 2)),
|
|
969
915
|
);
|
|
970
916
|
}
|
|
971
917
|
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
918
|
+
export function makeTxMergeRollupPrivateInputs(seed = 0): TxMergeRollupPrivateInputs {
|
|
919
|
+
return new TxMergeRollupPrivateInputs([
|
|
920
|
+
makeProofData(seed, makeTxRollupPublicInputs),
|
|
921
|
+
makeProofData(seed + 0x1000, makeTxRollupPublicInputs),
|
|
922
|
+
]);
|
|
923
|
+
}
|
|
924
|
+
|
|
925
|
+
export function makeBlockRootFirstRollupPrivateInputs(seed = 0) {
|
|
926
|
+
return new BlockRootFirstRollupPrivateInputs(
|
|
927
|
+
makeProofData(seed, makeParityPublicInputs),
|
|
928
|
+
[makeProofData(seed + 0x1000, makeTxRollupPublicInputs), makeProofData(seed + 0x2000, makeTxRollupPublicInputs)],
|
|
929
|
+
makeAppendOnlyTreeSnapshot(seed + 0x3000),
|
|
930
|
+
makeSiblingPath(seed + 0x4000, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH),
|
|
931
|
+
makeSiblingPath(seed + 0x5000, ARCHIVE_HEIGHT),
|
|
932
|
+
);
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
export function makeBlockRootSingleTxRollupPrivateInputs(seed = 0) {
|
|
936
|
+
return new BlockRootSingleTxRollupPrivateInputs(
|
|
937
|
+
makeProofData(seed + 0x1000, makeTxRollupPublicInputs),
|
|
938
|
+
makeSiblingPath(seed + 0x4000, ARCHIVE_HEIGHT),
|
|
939
|
+
);
|
|
979
940
|
}
|
|
980
941
|
|
|
981
942
|
/**
|
|
@@ -983,8 +944,11 @@ export function makeMergeRollupInputs(seed = 0): MergeRollupInputs {
|
|
|
983
944
|
* @param seed - The seed to use for generating the merge rollup inputs.
|
|
984
945
|
* @returns A block merge rollup inputs.
|
|
985
946
|
*/
|
|
986
|
-
export function
|
|
987
|
-
return new
|
|
947
|
+
export function makeBlockMergeRollupPrivateInputs(seed = 0) {
|
|
948
|
+
return new BlockMergeRollupPrivateInputs([
|
|
949
|
+
makeProofData(seed, makeBlockRollupPublicInputs),
|
|
950
|
+
makeProofData(seed + 0x1000, makeBlockRollupPublicInputs),
|
|
951
|
+
]);
|
|
988
952
|
}
|
|
989
953
|
|
|
990
954
|
/**
|
|
@@ -996,24 +960,42 @@ export function makePublicDataTreeLeaf(seed = 0): PublicDataTreeLeaf {
|
|
|
996
960
|
return new PublicDataTreeLeaf(new Fr(seed), new Fr(seed + 1));
|
|
997
961
|
}
|
|
998
962
|
|
|
963
|
+
/**
|
|
964
|
+
* Makes arbitrary nullifier leaf.
|
|
965
|
+
* @param seed - The seed to use for generating the nullifier leaf.
|
|
966
|
+
* @returns A nullifier leaf.
|
|
967
|
+
*/
|
|
968
|
+
export function makeNullifierLeaf(seed = 0): NullifierLeaf {
|
|
969
|
+
return new NullifierLeaf(new Fr(seed));
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
/**
|
|
973
|
+
* Makes arbitrary nullifier leaf preimages.
|
|
974
|
+
* @param seed - The seed to use for generating the nullifier leaf preimage.
|
|
975
|
+
* @returns A nullifier leaf preimage.
|
|
976
|
+
*/
|
|
977
|
+
export function makeNullifierLeafPreimage(seed = 0): NullifierLeafPreimage {
|
|
978
|
+
return new NullifierLeafPreimage(makeNullifierLeaf(seed), new Fr(seed + 1), BigInt(seed + 2));
|
|
979
|
+
}
|
|
980
|
+
|
|
999
981
|
/**
|
|
1000
982
|
* Makes arbitrary public data tree leaf preimages.
|
|
1001
983
|
* @param seed - The seed to use for generating the public data tree leaf preimage.
|
|
1002
984
|
* @returns A public data tree leaf preimage.
|
|
1003
985
|
*/
|
|
1004
986
|
export function makePublicDataTreeLeafPreimage(seed = 0): PublicDataTreeLeafPreimage {
|
|
1005
|
-
return new PublicDataTreeLeafPreimage(
|
|
987
|
+
return new PublicDataTreeLeafPreimage(makePublicDataTreeLeaf(seed), new Fr(seed + 2), BigInt(seed + 3));
|
|
1006
988
|
}
|
|
1007
989
|
|
|
1008
990
|
/**
|
|
1009
|
-
* Creates an instance of
|
|
991
|
+
* Creates an instance of TreeSnapshotDiffHints with arbitrary values based on the provided seed.
|
|
1010
992
|
* @param seed - The seed to use for generating the hints.
|
|
1011
|
-
* @returns A
|
|
993
|
+
* @returns A TreeSnapshotDiffHints object.
|
|
1012
994
|
*/
|
|
1013
|
-
export function
|
|
995
|
+
export function makeTreeSnapshotDiffHints(seed = 1): TreeSnapshotDiffHints {
|
|
1014
996
|
const nullifierPredecessorPreimages = makeTuple(
|
|
1015
997
|
MAX_NULLIFIERS_PER_TX,
|
|
1016
|
-
x =>
|
|
998
|
+
x => makeNullifierLeafPreimage(x),
|
|
1017
999
|
seed + 0x1000,
|
|
1018
1000
|
);
|
|
1019
1001
|
|
|
@@ -1027,115 +1009,96 @@ export function makePrivateBaseStateDiffHints(seed = 1): PrivateBaseStateDiffHin
|
|
|
1027
1009
|
|
|
1028
1010
|
const sortedNullifierIndexes = makeTuple(MAX_NULLIFIERS_PER_TX, i => i, seed + 0x4000);
|
|
1029
1011
|
|
|
1030
|
-
const
|
|
1012
|
+
const noteHashSubtreeRootSiblingPath = makeTuple(NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
|
|
1031
1013
|
|
|
1032
|
-
const
|
|
1014
|
+
const nullifierSubtreeRootSiblingPath = makeTuple(NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
|
|
1033
1015
|
|
|
1034
|
-
const
|
|
1035
|
-
const feeWriteLowLeafMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
|
|
1036
|
-
const feeWriteSiblingPath = makeTuple(PUBLIC_DATA_TREE_HEIGHT, fr, seed + 0x9000);
|
|
1016
|
+
const feePayerBalanceMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
|
|
1037
1017
|
|
|
1038
|
-
return new
|
|
1018
|
+
return new TreeSnapshotDiffHints(
|
|
1019
|
+
noteHashSubtreeRootSiblingPath,
|
|
1039
1020
|
nullifierPredecessorPreimages,
|
|
1040
1021
|
nullifierPredecessorMembershipWitnesses,
|
|
1041
1022
|
sortedNullifiers,
|
|
1042
1023
|
sortedNullifierIndexes,
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
feeWriteLowLeafPreimage,
|
|
1046
|
-
feeWriteLowLeafMembershipWitness,
|
|
1047
|
-
feeWriteSiblingPath,
|
|
1024
|
+
nullifierSubtreeRootSiblingPath,
|
|
1025
|
+
feePayerBalanceMembershipWitness,
|
|
1048
1026
|
);
|
|
1049
1027
|
}
|
|
1050
1028
|
|
|
1051
|
-
function
|
|
1052
|
-
return new
|
|
1029
|
+
function makeVkData(seed = 1) {
|
|
1030
|
+
return new VkData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
|
|
1053
1031
|
}
|
|
1054
1032
|
|
|
1055
|
-
function
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1033
|
+
export function makeProofData<T extends Bufferable, PROOF_LENGTH extends number>(
|
|
1034
|
+
seed = 0,
|
|
1035
|
+
makePublicInputs: (seed: number) => T,
|
|
1036
|
+
proofSize: PROOF_LENGTH = NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH as PROOF_LENGTH,
|
|
1037
|
+
) {
|
|
1038
|
+
return new ProofData(
|
|
1039
|
+
makePublicInputs(seed),
|
|
1040
|
+
makeRecursiveProof<PROOF_LENGTH>(proofSize, seed + 0x100),
|
|
1041
|
+
makeVkData(seed + 0x200),
|
|
1060
1042
|
);
|
|
1061
1043
|
}
|
|
1062
1044
|
|
|
1045
|
+
function makeContractClassLogFields(seed = 1) {
|
|
1046
|
+
return new ContractClassLogFields(makeArray(CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, fr, seed));
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1063
1049
|
function makePrivateBaseRollupHints(seed = 1) {
|
|
1064
1050
|
const start = makePartialStateReference(seed + 0x100);
|
|
1065
1051
|
|
|
1066
1052
|
const startSpongeBlob = makeSpongeBlob(seed + 0x200);
|
|
1067
1053
|
|
|
1068
|
-
const
|
|
1054
|
+
const treeSnapshotDiffHints = makeTreeSnapshotDiffHints(seed + 0x600);
|
|
1069
1055
|
|
|
1070
|
-
const
|
|
1056
|
+
const anchorBlockArchiveSiblingPath = makeSiblingPath(seed + 0x9000, ARCHIVE_HEIGHT);
|
|
1071
1057
|
|
|
1072
|
-
const
|
|
1058
|
+
const contractClassLogsFields = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x800);
|
|
1073
1059
|
|
|
1074
|
-
const constants =
|
|
1060
|
+
const constants = makeBlockConstantData(0x100);
|
|
1075
1061
|
|
|
1076
|
-
const
|
|
1062
|
+
const feePayerBalanceLeafPreimage = PublicDataTreeLeafPreimage.empty();
|
|
1077
1063
|
|
|
1078
1064
|
return PrivateBaseRollupHints.from({
|
|
1079
1065
|
start,
|
|
1080
1066
|
startSpongeBlob,
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1067
|
+
treeSnapshotDiffHints,
|
|
1068
|
+
feePayerBalanceLeafPreimage,
|
|
1069
|
+
anchorBlockArchiveSiblingPath,
|
|
1070
|
+
contractClassLogsFields,
|
|
1085
1071
|
constants,
|
|
1086
1072
|
});
|
|
1087
1073
|
}
|
|
1088
1074
|
|
|
1089
1075
|
function makePublicBaseRollupHints(seed = 1) {
|
|
1090
|
-
const startSpongeBlob = makeSpongeBlob(seed + 0x200);
|
|
1091
|
-
|
|
1092
|
-
const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
|
|
1093
|
-
|
|
1094
|
-
const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
|
|
1095
|
-
|
|
1096
|
-
const constants = makeConstantRollupData(0x100);
|
|
1097
|
-
|
|
1098
1076
|
return PublicBaseRollupHints.from({
|
|
1099
|
-
startSpongeBlob,
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1077
|
+
startSpongeBlob: makeSpongeBlob(seed),
|
|
1078
|
+
lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x1000),
|
|
1079
|
+
anchorBlockArchiveSiblingPath: makeSiblingPath(seed + 0x2000, ARCHIVE_HEIGHT),
|
|
1080
|
+
contractClassLogsFields: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x3000),
|
|
1103
1081
|
});
|
|
1104
1082
|
}
|
|
1105
1083
|
|
|
1106
|
-
export function
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
return PrivateBaseRollupInputs.from({
|
|
1111
|
-
tubeData,
|
|
1112
|
-
hints,
|
|
1084
|
+
export function makePrivateTxBaseRollupPrivateInputs(seed = 0) {
|
|
1085
|
+
return PrivateTxBaseRollupPrivateInputs.from({
|
|
1086
|
+
hidingKernelProofData: makeProofData(seed, makePrivateToRollupKernelCircuitPublicInputs, CHONK_PROOF_LENGTH),
|
|
1087
|
+
hints: makePrivateBaseRollupHints(seed + 0x100),
|
|
1113
1088
|
});
|
|
1114
1089
|
}
|
|
1115
1090
|
|
|
1116
|
-
function
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1091
|
+
export function makePublicTxBaseRollupPrivateInputs(seed = 0) {
|
|
1092
|
+
const publicChonkVerifierProofData = makeProofData(
|
|
1093
|
+
seed,
|
|
1094
|
+
makePublicChonkVerifierPublicInputs,
|
|
1095
|
+
RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
1121
1096
|
);
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
function makeAvmProofData(seed = 1) {
|
|
1125
|
-
return new AvmProofData(
|
|
1126
|
-
makeAvmCircuitPublicInputs(seed),
|
|
1127
|
-
makeRecursiveProof<typeof AVM_PROOF_LENGTH_IN_FIELDS>(AVM_PROOF_LENGTH_IN_FIELDS, seed + 0x100),
|
|
1128
|
-
makeVkWitnessData(seed + 0x200),
|
|
1129
|
-
);
|
|
1130
|
-
}
|
|
1131
|
-
|
|
1132
|
-
export function makePublicBaseRollupInputs(seed = 0) {
|
|
1133
|
-
const tubeData = makePublicTubeData(seed);
|
|
1134
|
-
const avmProofData = makeAvmProofData(seed + 0x100);
|
|
1097
|
+
const avmProofData = makeProofData(seed + 0x100, makeAvmCircuitPublicInputs, AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED);
|
|
1135
1098
|
const hints = makePublicBaseRollupHints(seed + 0x200);
|
|
1136
1099
|
|
|
1137
|
-
return
|
|
1138
|
-
|
|
1100
|
+
return PublicTxBaseRollupPrivateInputs.from({
|
|
1101
|
+
publicChonkVerifierProofData,
|
|
1139
1102
|
avmProofData,
|
|
1140
1103
|
hints,
|
|
1141
1104
|
});
|
|
@@ -1153,12 +1116,12 @@ export function makeExecutablePrivateFunctionWithMembershipProof(
|
|
|
1153
1116
|
privateFunctionTreeLeafIndex: seed + 3,
|
|
1154
1117
|
artifactMetadataHash: fr(seed + 4),
|
|
1155
1118
|
functionMetadataHash: fr(seed + 5),
|
|
1156
|
-
|
|
1119
|
+
utilityFunctionsTreeRoot: fr(seed + 6),
|
|
1157
1120
|
vkHash: fr(seed + 7),
|
|
1158
1121
|
};
|
|
1159
1122
|
}
|
|
1160
1123
|
|
|
1161
|
-
export function
|
|
1124
|
+
export function makeUtilityFunctionWithMembershipProof(seed = 0): UtilityFunctionWithMembershipProof {
|
|
1162
1125
|
return {
|
|
1163
1126
|
selector: makeSelector(seed),
|
|
1164
1127
|
bytecode: makeBytes(100, seed + 1),
|
|
@@ -1170,16 +1133,10 @@ export function makeUnconstrainedFunctionWithMembershipProof(seed = 0): Unconstr
|
|
|
1170
1133
|
};
|
|
1171
1134
|
}
|
|
1172
1135
|
|
|
1173
|
-
export async function makeContractClassPublic(
|
|
1174
|
-
seed = 0,
|
|
1175
|
-
publicDispatchFunction?: PublicFunction,
|
|
1176
|
-
): Promise<ContractClassPublic> {
|
|
1136
|
+
export async function makeContractClassPublic(seed = 0, publicBytecode?: Buffer): Promise<ContractClassPublic> {
|
|
1177
1137
|
const artifactHash = fr(seed + 1);
|
|
1178
|
-
const publicFunctions = publicDispatchFunction
|
|
1179
|
-
? [publicDispatchFunction]
|
|
1180
|
-
: makeTuple(1, makeContractClassPublicFunction, seed + 2);
|
|
1181
1138
|
const privateFunctionsRoot = fr(seed + 3);
|
|
1182
|
-
const packedBytecode =
|
|
1139
|
+
const packedBytecode = publicBytecode ?? makeBytes(100, seed + 4);
|
|
1183
1140
|
const publicBytecodeCommitment = await computePublicBytecodeCommitment(packedBytecode);
|
|
1184
1141
|
const id = await computeContractClassId({ artifactHash, privateFunctionsRoot, publicBytecodeCommitment });
|
|
1185
1142
|
return {
|
|
@@ -1187,20 +1144,12 @@ export async function makeContractClassPublic(
|
|
|
1187
1144
|
artifactHash,
|
|
1188
1145
|
packedBytecode,
|
|
1189
1146
|
privateFunctionsRoot,
|
|
1190
|
-
publicFunctions,
|
|
1191
1147
|
privateFunctions: [],
|
|
1192
|
-
|
|
1148
|
+
utilityFunctions: [],
|
|
1193
1149
|
version: 1,
|
|
1194
1150
|
};
|
|
1195
1151
|
}
|
|
1196
1152
|
|
|
1197
|
-
function makeContractClassPublicFunction(seed = 0): PublicFunction {
|
|
1198
|
-
return {
|
|
1199
|
-
selector: FunctionSelector.fromField(fr(seed + 1)),
|
|
1200
|
-
bytecode: makeBytes(100, seed + 2),
|
|
1201
|
-
};
|
|
1202
|
-
}
|
|
1203
|
-
|
|
1204
1153
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1205
1154
|
function makeContractClassPrivateFunction(seed = 0): PrivateFunction {
|
|
1206
1155
|
return {
|
|
@@ -1237,13 +1186,10 @@ export async function makeMapAsync<T>(size: number, fn: (i: number) => Promise<[
|
|
|
1237
1186
|
return new Map(await makeArrayAsync(size, i => fn(i + offset)));
|
|
1238
1187
|
}
|
|
1239
1188
|
|
|
1240
|
-
export function makePublicKeys(seed = 0): PublicKeys {
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
new Point(new Fr(seed + 4), new Fr(seed + 5), false),
|
|
1245
|
-
new Point(new Fr(seed + 6), new Fr(seed + 7), false),
|
|
1246
|
-
);
|
|
1189
|
+
export async function makePublicKeys(seed = 0): Promise<PublicKeys> {
|
|
1190
|
+
const f = (offset: number) => Grumpkin.mul(Grumpkin.generator, new Fq(seed + offset));
|
|
1191
|
+
|
|
1192
|
+
return new PublicKeys(await f(0), await f(1), await f(2), await f(3));
|
|
1247
1193
|
}
|
|
1248
1194
|
|
|
1249
1195
|
export async function makeContractInstanceFromClassId(
|
|
@@ -1259,7 +1205,7 @@ export async function makeContractInstanceFromClassId(
|
|
|
1259
1205
|
const salt = new Fr(seed);
|
|
1260
1206
|
const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
|
|
1261
1207
|
const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
|
|
1262
|
-
const publicKeys = overrides?.publicKeys ?? makePublicKeys(seed + 3);
|
|
1208
|
+
const publicKeys = overrides?.publicKeys ?? (await makePublicKeys(seed + 3));
|
|
1263
1209
|
|
|
1264
1210
|
const saltedInitializationHash = await poseidon2HashWithSeparator(
|
|
1265
1211
|
[salt, initializationHash, deployer],
|
|
@@ -1281,51 +1227,138 @@ export async function makeContractInstanceFromClassId(
|
|
|
1281
1227
|
}).withAddress(address);
|
|
1282
1228
|
}
|
|
1283
1229
|
|
|
1284
|
-
export function
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1230
|
+
export function makeAvmGetSiblingPathHint(seed = 0): AvmGetSiblingPathHint {
|
|
1231
|
+
// We want a possibly large index, but non-random.
|
|
1232
|
+
const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
|
|
1233
|
+
return new AvmGetSiblingPathHint(
|
|
1234
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1235
|
+
/*treeId=*/ (seed + 1) % 5,
|
|
1236
|
+
/*index=*/ index,
|
|
1237
|
+
makeArray(seed % 64, i => new Fr(i), seed + 10),
|
|
1238
|
+
);
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1241
|
+
export function makeAvmGetPreviousValueIndexHint(seed = 0): AvmGetPreviousValueIndexHint {
|
|
1242
|
+
// We want a possibly large index, but non-random.
|
|
1243
|
+
const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
|
|
1244
|
+
const value = new Fr(BigInt(`0x${sha256(Buffer.from((seed + 2).toString())).toString('hex')}`) % (1n << 128n));
|
|
1245
|
+
return new AvmGetPreviousValueIndexHint(
|
|
1246
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1247
|
+
/*treeId=*/ (seed + 1) % 5,
|
|
1248
|
+
value,
|
|
1249
|
+
index,
|
|
1250
|
+
/*alreadyPresent=*/ index % 2n === 0n,
|
|
1251
|
+
);
|
|
1252
|
+
}
|
|
1253
|
+
|
|
1254
|
+
export function makeAvmGetLeafPreimageHintPublicDataTree(seed = 0): AvmGetLeafPreimageHintPublicDataTree {
|
|
1255
|
+
// We want a possibly large index, but non-random.
|
|
1256
|
+
const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
|
|
1257
|
+
return new AvmGetLeafPreimageHintPublicDataTree(
|
|
1258
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1259
|
+
/*index=*/ index,
|
|
1260
|
+
/*leafPreimage=*/ makePublicDataTreeLeafPreimage(seed + 3),
|
|
1261
|
+
);
|
|
1262
|
+
}
|
|
1263
|
+
|
|
1264
|
+
export function makeAvmGetLeafPreimageHintNullifierTree(seed = 0): AvmGetLeafPreimageHintNullifierTree {
|
|
1265
|
+
// We want a possibly large index, but non-random.
|
|
1266
|
+
const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
|
|
1267
|
+
return new AvmGetLeafPreimageHintNullifierTree(
|
|
1268
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1269
|
+
/*index=*/ index,
|
|
1270
|
+
/*leafPreimage=*/ makeNullifierLeafPreimage(seed + 3),
|
|
1271
|
+
);
|
|
1272
|
+
}
|
|
1273
|
+
|
|
1274
|
+
export function makeAvmGetLeafValueHint(seed = 0): AvmGetLeafValueHint {
|
|
1275
|
+
// We want a possibly large index, but non-random.
|
|
1276
|
+
const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
|
|
1277
|
+
return new AvmGetLeafValueHint(
|
|
1278
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1279
|
+
/*treeId=*/ (seed + 1) % 5,
|
|
1280
|
+
/*index=*/ index,
|
|
1281
|
+
/*value=*/ new Fr(seed + 3),
|
|
1282
|
+
);
|
|
1283
|
+
}
|
|
1284
|
+
|
|
1285
|
+
export function makeAvmSequentialInsertHintPublicDataTree(seed = 0): AvmSequentialInsertHintPublicDataTree {
|
|
1286
|
+
const lowLeavesWitnessData = {
|
|
1287
|
+
leaf: makePublicDataTreeLeafPreimage(seed + 3),
|
|
1288
|
+
index: BigInt(seed + 4),
|
|
1289
|
+
path: makeArray(seed % 64, i => new Fr(i), seed + 5),
|
|
1290
|
+
};
|
|
1291
|
+
const insertionWitnessData = {
|
|
1292
|
+
leaf: makePublicDataTreeLeafPreimage(seed + 6),
|
|
1293
|
+
index: BigInt(seed + 7),
|
|
1294
|
+
path: makeArray(seed % 64, i => new Fr(i), seed + 8),
|
|
1295
|
+
};
|
|
1296
|
+
|
|
1297
|
+
return new AvmSequentialInsertHintPublicDataTree(
|
|
1298
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1299
|
+
makeAppendOnlyTreeSnapshot(seed + 1),
|
|
1300
|
+
MerkleTreeId.PUBLIC_DATA_TREE,
|
|
1301
|
+
makePublicDataTreeLeaf(seed + 2),
|
|
1302
|
+
lowLeavesWitnessData,
|
|
1303
|
+
insertionWitnessData,
|
|
1289
1304
|
);
|
|
1290
1305
|
}
|
|
1291
1306
|
|
|
1292
|
-
export function
|
|
1293
|
-
const
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
new Fr(seed +
|
|
1297
|
-
|
|
1307
|
+
export function makeAvmSequentialInsertHintNullifierTree(seed = 0): AvmSequentialInsertHintNullifierTree {
|
|
1308
|
+
const lowLeavesWitnessData = {
|
|
1309
|
+
leaf: makeNullifierLeafPreimage(seed + 3),
|
|
1310
|
+
index: BigInt(seed + 4),
|
|
1311
|
+
path: makeArray(seed % 64, i => new Fr(i), seed + 5),
|
|
1312
|
+
};
|
|
1313
|
+
const insertionWitnessData = {
|
|
1314
|
+
leaf: makeNullifierLeafPreimage(seed + 6),
|
|
1315
|
+
index: BigInt(seed + 7),
|
|
1316
|
+
path: makeArray(seed % 64, i => new Fr(i), seed + 8),
|
|
1317
|
+
};
|
|
1318
|
+
|
|
1319
|
+
return new AvmSequentialInsertHintNullifierTree(
|
|
1320
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1321
|
+
makeAppendOnlyTreeSnapshot(seed + 1),
|
|
1322
|
+
MerkleTreeId.NULLIFIER_TREE,
|
|
1323
|
+
makeNullifierLeaf(seed + 2),
|
|
1324
|
+
lowLeavesWitnessData,
|
|
1325
|
+
insertionWitnessData,
|
|
1298
1326
|
);
|
|
1299
1327
|
}
|
|
1300
1328
|
|
|
1301
|
-
export function
|
|
1302
|
-
return new
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1329
|
+
export function makeAvmAppendLeavesHint(seed = 0): AvmAppendLeavesHint {
|
|
1330
|
+
return new AvmAppendLeavesHint(
|
|
1331
|
+
makeAppendOnlyTreeSnapshot(seed),
|
|
1332
|
+
makeAppendOnlyTreeSnapshot(seed + 1),
|
|
1333
|
+
// Use NOTE_HASH_TREE or L1_TO_L2_MESSAGE_TREE as mentioned in the comment on AvmAppendLeavesHint
|
|
1334
|
+
seed % 2 === 0 ? MerkleTreeId.NOTE_HASH_TREE : MerkleTreeId.L1_TO_L2_MESSAGE_TREE,
|
|
1335
|
+
makeArray((seed % 5) + 1, i => new Fr(seed + i + 2), 0),
|
|
1306
1336
|
);
|
|
1307
1337
|
}
|
|
1308
1338
|
|
|
1309
|
-
export function
|
|
1310
|
-
return new
|
|
1311
|
-
|
|
1312
|
-
|
|
1339
|
+
export function makeAvmCheckpointActionCreateCheckpointHint(seed = 0): AvmCreateCheckpointHint {
|
|
1340
|
+
return new AvmCreateCheckpointHint(
|
|
1341
|
+
/*actionCounter=*/ seed,
|
|
1342
|
+
/*oldCheckpointId=*/ seed + 1,
|
|
1343
|
+
/*newCheckpointId=*/ seed + 2,
|
|
1313
1344
|
);
|
|
1314
1345
|
}
|
|
1315
1346
|
|
|
1316
|
-
export function
|
|
1317
|
-
return new
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1347
|
+
export function makeAvmCheckpointActionCommitCheckpointHint(seed = 0): AvmCommitCheckpointHint {
|
|
1348
|
+
return new AvmCommitCheckpointHint(
|
|
1349
|
+
/*actionCounter=*/ seed,
|
|
1350
|
+
/*oldCheckpointId=*/ seed + 1,
|
|
1351
|
+
/*newCheckpointId=*/ seed + 2,
|
|
1321
1352
|
);
|
|
1322
1353
|
}
|
|
1323
1354
|
|
|
1324
|
-
export function
|
|
1325
|
-
return new
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1355
|
+
export function makeAvmCheckpointActionRevertCheckpointHint(seed = 0): AvmRevertCheckpointHint {
|
|
1356
|
+
return new AvmRevertCheckpointHint(
|
|
1357
|
+
/*actionCounter=*/ seed,
|
|
1358
|
+
/*oldCheckpointId=*/ seed + 1,
|
|
1359
|
+
/*newCheckpointId=*/ seed + 2,
|
|
1360
|
+
/*beforeState=*/ makeTreeSnapshots(seed + 3),
|
|
1361
|
+
/*afterState=*/ makeTreeSnapshots(seed + 7),
|
|
1329
1362
|
);
|
|
1330
1363
|
}
|
|
1331
1364
|
|
|
@@ -1337,7 +1370,6 @@ export function makeAvmStorageUpdateTreeHints(seed = 0): AvmPublicDataWriteTreeH
|
|
|
1337
1370
|
export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
|
|
1338
1371
|
return new AvmContractInstanceHint(
|
|
1339
1372
|
new AztecAddress(new Fr(seed)),
|
|
1340
|
-
true /* exists */,
|
|
1341
1373
|
new Fr(seed + 0x2),
|
|
1342
1374
|
new AztecAddress(new Fr(seed + 0x3)),
|
|
1343
1375
|
new Fr(seed + 0x4),
|
|
@@ -1349,8 +1381,6 @@ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
|
|
|
1349
1381
|
new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false),
|
|
1350
1382
|
new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false),
|
|
1351
1383
|
),
|
|
1352
|
-
makeAvmPublicDataReadTreeHints(seed + 0x2000),
|
|
1353
|
-
makeArray(4, i => new Fr(i), seed + 0x3000),
|
|
1354
1384
|
);
|
|
1355
1385
|
}
|
|
1356
1386
|
|
|
@@ -1358,22 +1388,49 @@ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
|
|
|
1358
1388
|
* @param seed - The seed to use for generating the state reference.
|
|
1359
1389
|
* @returns AvmContractClassHint.
|
|
1360
1390
|
*/
|
|
1361
|
-
export
|
|
1391
|
+
export function makeAvmContractClassHint(seed = 0): AvmContractClassHint {
|
|
1362
1392
|
const bytecode = makeBytes(32, seed + 0x5);
|
|
1363
|
-
return new AvmContractClassHint(
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
);
|
|
1393
|
+
return new AvmContractClassHint(new Fr(seed), new Fr(seed + 0x2), new Fr(seed + 0x3), bytecode);
|
|
1394
|
+
}
|
|
1395
|
+
|
|
1396
|
+
export async function makeAvmBytecodeCommitmentHint(seed = 0): Promise<AvmBytecodeCommitmentHint> {
|
|
1397
|
+
const classId = new Fr(seed + 2);
|
|
1398
|
+
const bytecode = makeBytes(32, seed + 0x5);
|
|
1399
|
+
return new AvmBytecodeCommitmentHint(classId, await computePublicBytecodeCommitment(bytecode));
|
|
1371
1400
|
}
|
|
1372
1401
|
|
|
1373
|
-
export function
|
|
1374
|
-
|
|
1402
|
+
export async function makePublicCallRequestWithCalldata(seed = 0): Promise<PublicCallRequestWithCalldata> {
|
|
1403
|
+
const calldata = makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x1000);
|
|
1404
|
+
const calldataHash = await computeCalldataHash(calldata);
|
|
1405
|
+
const publicCallRequest = new PublicCallRequest(
|
|
1375
1406
|
new AztecAddress(new Fr(seed)),
|
|
1376
|
-
|
|
1407
|
+
new AztecAddress(new Fr(seed + 1)),
|
|
1408
|
+
false /*isStatic*/,
|
|
1409
|
+
calldataHash,
|
|
1410
|
+
);
|
|
1411
|
+
return new PublicCallRequestWithCalldata(publicCallRequest, calldata);
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
export async function makeAvmTxHint(seed = 0): Promise<AvmTxHint> {
|
|
1415
|
+
return new AvmTxHint(
|
|
1416
|
+
`txhash-${seed}`,
|
|
1417
|
+
makeGasSettings(),
|
|
1418
|
+
makeGasFees(seed + 0x1000),
|
|
1419
|
+
{
|
|
1420
|
+
noteHashes: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x1000),
|
|
1421
|
+
nullifiers: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x2000),
|
|
1422
|
+
l2ToL1Messages: makeArray((seed % 20) + 4, i => makeScopedL2ToL1Message(i), seed + 0x3000),
|
|
1423
|
+
},
|
|
1424
|
+
{
|
|
1425
|
+
noteHashes: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x3000),
|
|
1426
|
+
nullifiers: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x4000),
|
|
1427
|
+
l2ToL1Messages: makeArray((seed % 20) + 4, i => makeScopedL2ToL1Message(i), seed + 0x5000),
|
|
1428
|
+
},
|
|
1429
|
+
await makeArrayAsync((seed % 20) + 4, i => makePublicCallRequestWithCalldata(i), seed + 0x5000), //setupEnqueuedCalls
|
|
1430
|
+
await makeArrayAsync((seed % 20) + 4, i => makePublicCallRequestWithCalldata(i), seed + 0x6000), // appLogicEnqueuedCalls
|
|
1431
|
+
await makePublicCallRequestWithCalldata(seed + 0x7000), // teardownEnqueuedCall
|
|
1432
|
+
makeGas(seed + 0x8000), // gasUsedByPrivate
|
|
1433
|
+
makeAztecAddress(seed + 0x9000), // feePayer
|
|
1377
1434
|
);
|
|
1378
1435
|
}
|
|
1379
1436
|
|
|
@@ -1391,30 +1448,58 @@ export async function makeAvmExecutionHints(
|
|
|
1391
1448
|
const baseLength = lengthOffset + (seed % lengthSeedMod);
|
|
1392
1449
|
|
|
1393
1450
|
const fields = {
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1451
|
+
globalVariables: makeGlobalVariables(seed + 0x4000),
|
|
1452
|
+
tx: await makeAvmTxHint(seed + 0x4100),
|
|
1453
|
+
protocolContracts: new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed + 0x4600)),
|
|
1454
|
+
contractInstances: makeArray(baseLength + 2, makeAvmContractInstanceHint, seed + 0x4700),
|
|
1455
|
+
contractClasses: makeArray(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
|
|
1456
|
+
bytecodeCommitments: await makeArrayAsync(baseLength + 5, makeAvmBytecodeCommitmentHint, seed + 0x4900),
|
|
1457
|
+
startingTreeRoots: makeTreeSnapshots(seed + 0x4900),
|
|
1458
|
+
getSiblingPathHints: makeArray(baseLength + 5, makeAvmGetSiblingPathHint, seed + 0x4b00),
|
|
1459
|
+
getPreviousValueIndexHints: makeArray(baseLength + 5, makeAvmGetPreviousValueIndexHint, seed + 0x4d00),
|
|
1460
|
+
getLeafPreimageHintPublicDataTree: makeArray(
|
|
1461
|
+
baseLength + 5,
|
|
1462
|
+
makeAvmGetLeafPreimageHintPublicDataTree,
|
|
1463
|
+
seed + 0x4f00,
|
|
1464
|
+
),
|
|
1465
|
+
getLeafPreimageHintNullifierTree: makeArray(baseLength + 5, makeAvmGetLeafPreimageHintNullifierTree, seed + 0x5100),
|
|
1466
|
+
getLeafValueHints: makeArray(baseLength + 5, makeAvmGetLeafValueHint, seed + 0x5300),
|
|
1467
|
+
sequentialInsertHintsPublicDataTree: makeArray(
|
|
1468
|
+
baseLength + 5,
|
|
1469
|
+
makeAvmSequentialInsertHintPublicDataTree,
|
|
1470
|
+
seed + 0x5500,
|
|
1471
|
+
),
|
|
1472
|
+
sequentialInsertHintsNullifierTree: makeArray(
|
|
1473
|
+
baseLength + 5,
|
|
1474
|
+
makeAvmSequentialInsertHintNullifierTree,
|
|
1475
|
+
seed + 0x5700,
|
|
1476
|
+
),
|
|
1477
|
+
appendLeavesHints: makeArray(baseLength + 5, makeAvmAppendLeavesHint, seed + 0x5800),
|
|
1478
|
+
createCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCreateCheckpointHint, seed + 0x5900),
|
|
1479
|
+
commitCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCommitCheckpointHint, seed + 0x5b00),
|
|
1480
|
+
revertCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionRevertCheckpointHint, seed + 0x5d00),
|
|
1404
1481
|
...overrides,
|
|
1405
1482
|
};
|
|
1406
1483
|
|
|
1407
1484
|
return new AvmExecutionHints(
|
|
1408
|
-
fields.
|
|
1485
|
+
fields.globalVariables,
|
|
1486
|
+
fields.tx,
|
|
1487
|
+
fields.protocolContracts,
|
|
1409
1488
|
fields.contractInstances,
|
|
1410
1489
|
fields.contractClasses,
|
|
1411
|
-
fields.
|
|
1412
|
-
fields.
|
|
1413
|
-
fields.
|
|
1414
|
-
fields.
|
|
1415
|
-
fields.
|
|
1416
|
-
fields.
|
|
1417
|
-
fields.
|
|
1490
|
+
fields.bytecodeCommitments,
|
|
1491
|
+
fields.startingTreeRoots,
|
|
1492
|
+
fields.getSiblingPathHints,
|
|
1493
|
+
fields.getPreviousValueIndexHints,
|
|
1494
|
+
fields.getLeafPreimageHintPublicDataTree,
|
|
1495
|
+
fields.getLeafPreimageHintNullifierTree,
|
|
1496
|
+
fields.getLeafValueHints,
|
|
1497
|
+
fields.sequentialInsertHintsPublicDataTree,
|
|
1498
|
+
fields.sequentialInsertHintsNullifierTree,
|
|
1499
|
+
fields.appendLeavesHints,
|
|
1500
|
+
fields.createCheckpointHints,
|
|
1501
|
+
fields.commitCheckpointHints,
|
|
1502
|
+
fields.revertCheckpointHints,
|
|
1418
1503
|
);
|
|
1419
1504
|
}
|
|
1420
1505
|
|
|
@@ -1428,14 +1513,12 @@ export async function makeAvmCircuitInputs(
|
|
|
1428
1513
|
overrides: Partial<FieldsOf<AvmCircuitInputs>> = {},
|
|
1429
1514
|
): Promise<AvmCircuitInputs> {
|
|
1430
1515
|
const fields = {
|
|
1431
|
-
|
|
1432
|
-
calldata: makeArray((seed % 100) + 10, i => new Fr(i), seed + 0x1000),
|
|
1433
|
-
avmHints: await makeAvmExecutionHints(seed + 0x3000),
|
|
1516
|
+
hints: await makeAvmExecutionHints(seed + 0x3000),
|
|
1434
1517
|
publicInputs: makeAvmCircuitPublicInputs(seed + 0x4000),
|
|
1435
1518
|
...overrides,
|
|
1436
1519
|
};
|
|
1437
1520
|
|
|
1438
|
-
return new AvmCircuitInputs(fields.
|
|
1521
|
+
return new AvmCircuitInputs(fields.hints, fields.publicInputs);
|
|
1439
1522
|
}
|
|
1440
1523
|
|
|
1441
1524
|
/**
|
|
@@ -1457,10 +1540,13 @@ export async function makeBloatedProcessedTx({
|
|
|
1457
1540
|
version = Fr.ZERO,
|
|
1458
1541
|
gasSettings = GasSettings.default({ maxFeesPerGas: new GasFees(10, 10) }),
|
|
1459
1542
|
vkTreeRoot = Fr.ZERO,
|
|
1460
|
-
|
|
1543
|
+
protocolContracts = makeProtocolContracts(seed + 0x100),
|
|
1461
1544
|
globalVariables = GlobalVariables.empty(),
|
|
1545
|
+
newL1ToL2Snapshot = AppendOnlyTreeSnapshot.empty(),
|
|
1462
1546
|
feePayer,
|
|
1463
1547
|
feePaymentPublicDataWrite,
|
|
1548
|
+
// The default gasUsed is the tx overhead.
|
|
1549
|
+
gasUsed = Gas.from({ daGas: FIXED_DA_GAS, l2Gas: FIXED_L2_GAS }),
|
|
1464
1550
|
privateOnly = false,
|
|
1465
1551
|
}: {
|
|
1466
1552
|
seed?: number;
|
|
@@ -1471,9 +1557,11 @@ export async function makeBloatedProcessedTx({
|
|
|
1471
1557
|
gasSettings?: GasSettings;
|
|
1472
1558
|
vkTreeRoot?: Fr;
|
|
1473
1559
|
globalVariables?: GlobalVariables;
|
|
1474
|
-
|
|
1560
|
+
newL1ToL2Snapshot?: AppendOnlyTreeSnapshot;
|
|
1561
|
+
protocolContracts?: ProtocolContracts;
|
|
1475
1562
|
feePayer?: AztecAddress;
|
|
1476
1563
|
feePaymentPublicDataWrite?: PublicDataWrite;
|
|
1564
|
+
gasUsed?: Gas;
|
|
1477
1565
|
privateOnly?: boolean;
|
|
1478
1566
|
} = {}) {
|
|
1479
1567
|
seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
|
|
@@ -1481,52 +1569,85 @@ export async function makeBloatedProcessedTx({
|
|
|
1481
1569
|
feePayer ??= await AztecAddress.random();
|
|
1482
1570
|
|
|
1483
1571
|
const txConstantData = TxConstantData.empty();
|
|
1484
|
-
txConstantData.
|
|
1572
|
+
txConstantData.anchorBlockHeader = header!;
|
|
1485
1573
|
txConstantData.txContext.chainId = chainId;
|
|
1486
1574
|
txConstantData.txContext.version = version;
|
|
1487
1575
|
txConstantData.txContext.gasSettings = gasSettings;
|
|
1488
1576
|
txConstantData.vkTreeRoot = vkTreeRoot;
|
|
1489
|
-
txConstantData.
|
|
1577
|
+
txConstantData.protocolContractsHash = await protocolContracts.hash();
|
|
1490
1578
|
|
|
1491
1579
|
const tx = !privateOnly
|
|
1492
|
-
? await mockTx(seed, { feePayer })
|
|
1580
|
+
? await mockTx(seed, { feePayer, gasUsed })
|
|
1493
1581
|
: await mockTx(seed, {
|
|
1494
1582
|
numberOfNonRevertiblePublicCallRequests: 0,
|
|
1495
1583
|
numberOfRevertiblePublicCallRequests: 0,
|
|
1496
1584
|
feePayer,
|
|
1585
|
+
gasUsed,
|
|
1497
1586
|
});
|
|
1498
1587
|
tx.data.constants = txConstantData;
|
|
1499
1588
|
|
|
1500
|
-
|
|
1501
|
-
tx.data.gasUsed = Gas.from({ daGas: FIXED_DA_GAS, l2Gas: FIXED_L2_GAS });
|
|
1589
|
+
const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
|
|
1502
1590
|
|
|
1503
1591
|
if (privateOnly) {
|
|
1504
1592
|
const data = makePrivateToRollupAccumulatedData(seed + 0x1000);
|
|
1593
|
+
clearContractClassLogs(data);
|
|
1505
1594
|
|
|
1506
|
-
const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
|
|
1507
1595
|
feePaymentPublicDataWrite ??= new PublicDataWrite(Fr.random(), Fr.random());
|
|
1508
1596
|
|
|
1509
|
-
clearLogs(data);
|
|
1510
|
-
|
|
1511
1597
|
tx.data.forRollup!.end = data;
|
|
1512
1598
|
|
|
1599
|
+
await tx.recomputeHash();
|
|
1513
1600
|
return makeProcessedTxFromPrivateOnlyTx(tx, transactionFee, feePaymentPublicDataWrite, globalVariables);
|
|
1514
1601
|
} else {
|
|
1515
|
-
const
|
|
1516
|
-
const revertibleData = makePrivateToPublicAccumulatedData(seed + 0x1000);
|
|
1517
|
-
|
|
1518
|
-
revertibleData.nullifiers[MAX_NULLIFIERS_PER_TX - 1] = Fr.ZERO; // Leave one space for the tx hash nullifier in nonRevertibleAccumulatedData.
|
|
1602
|
+
const dataFromPrivate = tx.data.forPublic!;
|
|
1519
1603
|
|
|
1520
|
-
|
|
1604
|
+
const nonRevertibleData = dataFromPrivate.nonRevertibleAccumulatedData;
|
|
1521
1605
|
|
|
1522
|
-
|
|
1606
|
+
// Create revertible data.
|
|
1607
|
+
const revertibleData = makePrivateToPublicAccumulatedData(seed + 0x1000);
|
|
1608
|
+
clearContractClassLogs(revertibleData);
|
|
1609
|
+
revertibleData.nullifiers[MAX_NULLIFIERS_PER_TX - 1] = Fr.ZERO; // Leave one space for the tx hash nullifier in nonRevertibleAccumulatedData.
|
|
1610
|
+
dataFromPrivate.revertibleAccumulatedData = revertibleData;
|
|
1523
1611
|
|
|
1612
|
+
// Create avm output.
|
|
1524
1613
|
const avmOutput = AvmCircuitPublicInputs.empty();
|
|
1614
|
+
// Assign data from hints.
|
|
1615
|
+
avmOutput.protocolContracts = protocolContracts;
|
|
1616
|
+
avmOutput.startTreeSnapshots.l1ToL2MessageTree = newL1ToL2Snapshot;
|
|
1617
|
+
avmOutput.endTreeSnapshots.l1ToL2MessageTree = newL1ToL2Snapshot;
|
|
1618
|
+
avmOutput.effectiveGasFees = computeEffectiveGasFees(globalVariables.gasFees, gasSettings);
|
|
1619
|
+
// Assign data from private.
|
|
1525
1620
|
avmOutput.globalVariables = globalVariables;
|
|
1621
|
+
avmOutput.startGasUsed = tx.data.gasUsed;
|
|
1622
|
+
avmOutput.gasSettings = gasSettings;
|
|
1623
|
+
avmOutput.feePayer = feePayer;
|
|
1624
|
+
avmOutput.publicCallRequestArrayLengths = new PublicCallRequestArrayLengths(
|
|
1625
|
+
tx.data.numberOfNonRevertiblePublicCallRequests(),
|
|
1626
|
+
tx.data.numberOfRevertiblePublicCallRequests(),
|
|
1627
|
+
tx.data.hasTeardownPublicCallRequest(),
|
|
1628
|
+
);
|
|
1629
|
+
avmOutput.publicSetupCallRequests = dataFromPrivate.nonRevertibleAccumulatedData.publicCallRequests;
|
|
1630
|
+
avmOutput.publicAppLogicCallRequests = dataFromPrivate.revertibleAccumulatedData.publicCallRequests;
|
|
1631
|
+
avmOutput.publicTeardownCallRequest = dataFromPrivate.publicTeardownCallRequest;
|
|
1632
|
+
avmOutput.previousNonRevertibleAccumulatedData = new PrivateToAvmAccumulatedData(
|
|
1633
|
+
dataFromPrivate.nonRevertibleAccumulatedData.noteHashes,
|
|
1634
|
+
dataFromPrivate.nonRevertibleAccumulatedData.nullifiers,
|
|
1635
|
+
dataFromPrivate.nonRevertibleAccumulatedData.l2ToL1Msgs,
|
|
1636
|
+
);
|
|
1637
|
+
avmOutput.previousNonRevertibleAccumulatedDataArrayLengths =
|
|
1638
|
+
avmOutput.previousNonRevertibleAccumulatedData.getArrayLengths();
|
|
1639
|
+
avmOutput.previousRevertibleAccumulatedData = new PrivateToAvmAccumulatedData(
|
|
1640
|
+
dataFromPrivate.revertibleAccumulatedData.noteHashes,
|
|
1641
|
+
dataFromPrivate.revertibleAccumulatedData.nullifiers,
|
|
1642
|
+
dataFromPrivate.revertibleAccumulatedData.l2ToL1Msgs,
|
|
1643
|
+
);
|
|
1644
|
+
avmOutput.previousRevertibleAccumulatedDataArrayLengths =
|
|
1645
|
+
avmOutput.previousRevertibleAccumulatedData.getArrayLengths();
|
|
1646
|
+
// Assign final data emitted from avm.
|
|
1526
1647
|
avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
|
|
1527
|
-
avmOutput.accumulatedData.nullifiers =
|
|
1528
|
-
nonRevertibleData.nullifiers,
|
|
1529
|
-
|
|
1648
|
+
avmOutput.accumulatedData.nullifiers = padArrayEnd(
|
|
1649
|
+
nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter(n => !n.isEmpty()),
|
|
1650
|
+
Fr.ZERO,
|
|
1530
1651
|
MAX_NULLIFIERS_PER_TX,
|
|
1531
1652
|
);
|
|
1532
1653
|
avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
|
|
@@ -1535,8 +1656,15 @@ export async function makeBloatedProcessedTx({
|
|
|
1535
1656
|
i => new PublicDataWrite(new Fr(i), new Fr(i + 10)),
|
|
1536
1657
|
seed + 0x2000,
|
|
1537
1658
|
);
|
|
1659
|
+
avmOutput.accumulatedDataArrayLengths = avmOutput.accumulatedData.getArrayLengths();
|
|
1660
|
+
avmOutput.gasSettings = gasSettings;
|
|
1661
|
+
// Note: The fee is computed from the tx's gas used, which only includes the gas used in private. But this shouldn't
|
|
1662
|
+
// be a problem for the tests.
|
|
1663
|
+
avmOutput.transactionFee = transactionFee;
|
|
1538
1664
|
|
|
1539
1665
|
const avmCircuitInputs = await makeAvmCircuitInputs(seed + 0x3000, { publicInputs: avmOutput });
|
|
1666
|
+
avmCircuitInputs.hints.startingTreeRoots.l1ToL2MessageTree = newL1ToL2Snapshot;
|
|
1667
|
+
|
|
1540
1668
|
const gasUsed = {
|
|
1541
1669
|
totalGas: Gas.empty(),
|
|
1542
1670
|
teardownGas: Gas.empty(),
|
|
@@ -1544,6 +1672,7 @@ export async function makeBloatedProcessedTx({
|
|
|
1544
1672
|
billedGas: Gas.empty(),
|
|
1545
1673
|
} satisfies GasUsed;
|
|
1546
1674
|
|
|
1675
|
+
await tx.recomputeHash();
|
|
1547
1676
|
return makeProcessedTxFromTxWithPublicCalls(
|
|
1548
1677
|
tx,
|
|
1549
1678
|
{
|
|
@@ -1557,8 +1686,8 @@ export async function makeBloatedProcessedTx({
|
|
|
1557
1686
|
}
|
|
1558
1687
|
}
|
|
1559
1688
|
|
|
1560
|
-
// Remove all
|
|
1561
|
-
|
|
1562
|
-
|
|
1689
|
+
// Remove all contract class log hashes from the data as they are not required for the current tests.
|
|
1690
|
+
// If they are needed one day, change this to create the random fields first and update the data with real hashes of those fields.
|
|
1691
|
+
function clearContractClassLogs(data: { contractClassLogsHashes: ScopedLogHash[] }) {
|
|
1563
1692
|
data.contractClassLogsHashes.forEach((_, i) => (data.contractClassLogsHashes[i] = ScopedLogHash.empty()));
|
|
1564
1693
|
}
|