@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
|
@@ -15,13 +15,14 @@ const VERSION = 1 as const;
|
|
|
15
15
|
export interface ContractClass {
|
|
16
16
|
/** Version of the contract class. */
|
|
17
17
|
version: typeof VERSION;
|
|
18
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* Hash of the contract artifact. The specification of this hash is not enforced by the protocol. Should include
|
|
20
|
+
* commitments to code of utility functions and compilation metadata. Intended to be used by clients to verify that
|
|
21
|
+
* an offchain fetched artifact matches a registered class.
|
|
22
|
+
*/
|
|
19
23
|
artifactHash: Fr;
|
|
20
24
|
/** List of individual private functions, constructors included. */
|
|
21
25
|
privateFunctions: PrivateFunction[];
|
|
22
|
-
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/8985): Remove public functions.
|
|
23
|
-
/** Contains the public_dispatch function (and only that) if there's any public code in the contract. */
|
|
24
|
-
publicFunctions: PublicFunction[];
|
|
25
26
|
/** Bytecode for the public_dispatch function, or empty. */
|
|
26
27
|
packedBytecode: Buffer;
|
|
27
28
|
}
|
|
@@ -49,38 +50,25 @@ const ExecutablePrivateFunctionSchema = PrivateFunctionSchema.and(
|
|
|
49
50
|
z.object({ bytecode: schemas.Buffer }),
|
|
50
51
|
) satisfies ZodFor<ExecutablePrivateFunction>;
|
|
51
52
|
|
|
52
|
-
/**
|
|
53
|
-
export interface
|
|
54
|
-
/** Selector of the function. Calculated as the hash of the method name and parameters. The specification of this is not enforced by the protocol. */
|
|
55
|
-
selector: FunctionSelector;
|
|
56
|
-
/** Public bytecode. */
|
|
57
|
-
bytecode: Buffer;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export const PublicFunctionSchema = z.object({
|
|
61
|
-
selector: FunctionSelector.schema,
|
|
62
|
-
bytecode: schemas.Buffer,
|
|
63
|
-
}) satisfies ZodFor<PublicFunction>;
|
|
64
|
-
|
|
65
|
-
/** Unconstrained function definition. */
|
|
66
|
-
export interface UnconstrainedFunction {
|
|
53
|
+
/** Utility function definition. */
|
|
54
|
+
export interface UtilityFunction {
|
|
67
55
|
/** Selector of the function. Calculated as the hash of the method name and parameters. The specification of this is not enforced by the protocol. */
|
|
68
56
|
selector: FunctionSelector;
|
|
69
57
|
/** Brillig. */
|
|
70
58
|
bytecode: Buffer;
|
|
71
59
|
}
|
|
72
60
|
|
|
73
|
-
const
|
|
61
|
+
const UtilityFunctionSchema = z.object({
|
|
74
62
|
/** lala */
|
|
75
63
|
selector: FunctionSelector.schema,
|
|
76
64
|
bytecode: schemas.Buffer,
|
|
77
|
-
}) satisfies ZodFor<
|
|
65
|
+
}) satisfies ZodFor<UtilityFunction>;
|
|
78
66
|
|
|
79
67
|
/** Sibling paths and sibling commitments for proving membership of a private function within a contract class. */
|
|
80
68
|
export type PrivateFunctionMembershipProof = {
|
|
81
69
|
artifactMetadataHash: Fr;
|
|
82
70
|
functionMetadataHash: Fr;
|
|
83
|
-
|
|
71
|
+
utilityFunctionsTreeRoot: Fr;
|
|
84
72
|
privateFunctionTreeSiblingPath: Fr[];
|
|
85
73
|
privateFunctionTreeLeafIndex: number;
|
|
86
74
|
artifactTreeSiblingPath: Fr[];
|
|
@@ -90,18 +78,18 @@ export type PrivateFunctionMembershipProof = {
|
|
|
90
78
|
const PrivateFunctionMembershipProofSchema = z.object({
|
|
91
79
|
artifactMetadataHash: schemas.Fr,
|
|
92
80
|
functionMetadataHash: schemas.Fr,
|
|
93
|
-
|
|
81
|
+
utilityFunctionsTreeRoot: schemas.Fr,
|
|
94
82
|
privateFunctionTreeSiblingPath: z.array(schemas.Fr),
|
|
95
83
|
privateFunctionTreeLeafIndex: schemas.Integer,
|
|
96
84
|
artifactTreeSiblingPath: z.array(schemas.Fr),
|
|
97
85
|
artifactTreeLeafIndex: schemas.Integer,
|
|
98
86
|
}) satisfies ZodFor<PrivateFunctionMembershipProof>;
|
|
99
87
|
|
|
100
|
-
/** A private function with a
|
|
88
|
+
/** A private function with a membership proof. */
|
|
101
89
|
export type ExecutablePrivateFunctionWithMembershipProof = ExecutablePrivateFunction & PrivateFunctionMembershipProof;
|
|
102
90
|
|
|
103
|
-
/** Sibling paths and commitments for proving membership of
|
|
104
|
-
export type
|
|
91
|
+
/** Sibling paths and commitments for proving membership of a utility function within a contract class. */
|
|
92
|
+
export type UtilityFunctionMembershipProof = {
|
|
105
93
|
artifactMetadataHash: Fr;
|
|
106
94
|
functionMetadataHash: Fr;
|
|
107
95
|
privateFunctionsArtifactTreeRoot: Fr;
|
|
@@ -109,22 +97,21 @@ export type UnconstrainedFunctionMembershipProof = {
|
|
|
109
97
|
artifactTreeLeafIndex: number;
|
|
110
98
|
};
|
|
111
99
|
|
|
112
|
-
const
|
|
100
|
+
const UtilityFunctionMembershipProofSchema = z.object({
|
|
113
101
|
artifactMetadataHash: schemas.Fr,
|
|
114
102
|
functionMetadataHash: schemas.Fr,
|
|
115
103
|
privateFunctionsArtifactTreeRoot: schemas.Fr,
|
|
116
104
|
artifactTreeSiblingPath: z.array(schemas.Fr),
|
|
117
105
|
artifactTreeLeafIndex: schemas.Integer,
|
|
118
|
-
}) satisfies ZodFor<
|
|
106
|
+
}) satisfies ZodFor<UtilityFunctionMembershipProof>;
|
|
119
107
|
|
|
120
|
-
/**
|
|
121
|
-
export type
|
|
108
|
+
/** A utility function with a membership proof. */
|
|
109
|
+
export type UtilityFunctionWithMembershipProof = UtilityFunction & UtilityFunctionMembershipProof;
|
|
122
110
|
|
|
123
111
|
export const ContractClassSchema = z.object({
|
|
124
112
|
version: z.literal(VERSION),
|
|
125
113
|
artifactHash: schemas.Fr,
|
|
126
114
|
privateFunctions: z.array(PrivateFunctionSchema),
|
|
127
|
-
publicFunctions: z.array(PublicFunctionSchema),
|
|
128
115
|
packedBytecode: schemas.Buffer,
|
|
129
116
|
}) satisfies ZodFor<ContractClass>;
|
|
130
117
|
|
|
@@ -145,13 +132,14 @@ export const ContractClassWithIdSchema = ContractClassSchema.extend({
|
|
|
145
132
|
id: schemas.Fr,
|
|
146
133
|
}) satisfies ZodFor<ContractClassWithId>;
|
|
147
134
|
|
|
148
|
-
/** A contract class with public bytecode information, and optional private and
|
|
135
|
+
/** A contract class with public bytecode information, and optional private and utility functions. */
|
|
149
136
|
export type ContractClassPublic = {
|
|
150
137
|
privateFunctions: ExecutablePrivateFunctionWithMembershipProof[];
|
|
151
|
-
|
|
138
|
+
utilityFunctions: UtilityFunctionWithMembershipProof[];
|
|
152
139
|
} & Pick<ContractClassCommitments, 'id' | 'privateFunctionsRoot'> &
|
|
153
140
|
Omit<ContractClass, 'privateFunctions'>;
|
|
154
|
-
|
|
141
|
+
|
|
142
|
+
export type ContractClassPublicWithCommitment = ContractClassPublic &
|
|
155
143
|
Pick<ContractClassCommitments, 'publicBytecodeCommitment'>;
|
|
156
144
|
|
|
157
145
|
export const ContractClassPublicSchema = z
|
|
@@ -159,7 +147,7 @@ export const ContractClassPublicSchema = z
|
|
|
159
147
|
id: schemas.Fr,
|
|
160
148
|
privateFunctionsRoot: schemas.Fr,
|
|
161
149
|
privateFunctions: z.array(ExecutablePrivateFunctionSchema.and(PrivateFunctionMembershipProofSchema)),
|
|
162
|
-
|
|
150
|
+
utilityFunctions: z.array(UtilityFunctionSchema.and(UtilityFunctionMembershipProofSchema)),
|
|
163
151
|
})
|
|
164
152
|
.and(ContractClassSchema.omit({ privateFunctions: true })) satisfies ZodFor<ContractClassPublic>;
|
|
165
153
|
|
|
@@ -1,19 +1,12 @@
|
|
|
1
1
|
import type { Fr } from '@aztec/foundation/fields';
|
|
2
2
|
|
|
3
|
-
import { FunctionSelector } from '../../abi/index.js';
|
|
3
|
+
import type { FunctionSelector } from '../../abi/index.js';
|
|
4
4
|
import type { AztecAddress } from '../../aztec-address/index.js';
|
|
5
|
-
import type {
|
|
5
|
+
import type { UInt64 } from '../../types/shared.js';
|
|
6
|
+
import type { ContractClassPublic } from './contract_class.js';
|
|
6
7
|
import type { ContractInstanceWithAddress } from './contract_instance.js';
|
|
7
8
|
|
|
8
9
|
export interface ContractDataSource {
|
|
9
|
-
/**
|
|
10
|
-
* Returns a contract's encoded public function, given its function selector.
|
|
11
|
-
* @param address - The contract aztec address.
|
|
12
|
-
* @param selector - The function's selector.
|
|
13
|
-
* @returns The function's data.
|
|
14
|
-
*/
|
|
15
|
-
getPublicFunction(address: AztecAddress, selector: FunctionSelector): Promise<PublicFunction | undefined>;
|
|
16
|
-
|
|
17
10
|
/**
|
|
18
11
|
* Gets the number of the latest L2 block processed by the implementation.
|
|
19
12
|
* @returns The number of the latest L2 block processed by the implementation.
|
|
@@ -28,25 +21,23 @@ export interface ContractDataSource {
|
|
|
28
21
|
|
|
29
22
|
getBytecodeCommitment(id: Fr): Promise<Fr | undefined>;
|
|
30
23
|
|
|
31
|
-
/**
|
|
32
|
-
* Adds a contract class to the database.
|
|
33
|
-
* TODO(#10007): Remove this method
|
|
34
|
-
*/
|
|
35
|
-
addContractClass(contractClass: ContractClassPublic): Promise<void>;
|
|
36
|
-
|
|
37
24
|
/**
|
|
38
25
|
* Returns a publicly deployed contract instance given its address.
|
|
39
26
|
* @param address - Address of the deployed contract.
|
|
27
|
+
* @param timestamp - Timestamp at which to retrieve the contract instance. If not provided, the latest block should
|
|
28
|
+
* be used.
|
|
29
|
+
* TODO(#15170): Fix the implementations ignoring the timestamp param and make timestamp required.
|
|
40
30
|
*/
|
|
41
|
-
getContract(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
31
|
+
getContract(address: AztecAddress, timestamp?: UInt64): Promise<ContractInstanceWithAddress | undefined>;
|
|
42
32
|
|
|
43
33
|
/**
|
|
44
34
|
* Returns the list of all class ids known.
|
|
45
35
|
*/
|
|
46
36
|
getContractClassIds(): Promise<Fr[]>;
|
|
47
37
|
|
|
48
|
-
/** Returns a function's name */
|
|
49
|
-
|
|
38
|
+
/** Returns a function's name. It's only available if provided by calling `registerContractFunctionSignatures`. */
|
|
39
|
+
getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
40
|
+
|
|
50
41
|
/** Registers a function names. Useful for debugging. */
|
|
51
|
-
registerContractFunctionSignatures(
|
|
42
|
+
registerContractFunctionSignatures(signatures: string[]): Promise<void>;
|
|
52
43
|
}
|
|
@@ -4,6 +4,7 @@ import { z } from 'zod';
|
|
|
4
4
|
|
|
5
5
|
import type { AztecAddress } from '../../aztec-address/index.js';
|
|
6
6
|
import { type ZodFor, schemas } from '../../schemas/index.js';
|
|
7
|
+
import type { UInt64 } from '../../types/shared.js';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* An update to a contract instance, changing its contract class.
|
|
@@ -13,8 +14,8 @@ export interface ContractInstanceUpdate {
|
|
|
13
14
|
prevContractClassId: Fr;
|
|
14
15
|
/** Identifier of the new contract class for this instance. */
|
|
15
16
|
newContractClassId: Fr;
|
|
16
|
-
/** The
|
|
17
|
-
|
|
17
|
+
/** The timestamp at which the contract class in use will be the new one */
|
|
18
|
+
timestampOfChange: UInt64;
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
export type ContractInstanceUpdateWithAddress = ContractInstanceUpdate & { address: AztecAddress };
|
|
@@ -22,7 +23,7 @@ export type ContractInstanceUpdateWithAddress = ContractInstanceUpdate & { addre
|
|
|
22
23
|
export const ContractInstanceUpdateSchema = z.object({
|
|
23
24
|
prevContractClassId: schemas.Fr,
|
|
24
25
|
newContractClassId: schemas.Fr,
|
|
25
|
-
|
|
26
|
+
timestampOfChange: schemas.BigInt,
|
|
26
27
|
}) satisfies ZodFor<ContractInstanceUpdate>;
|
|
27
28
|
|
|
28
29
|
export const ContractInstanceUpdateWithAddressSchema = ContractInstanceUpdateSchema.and(
|
|
@@ -11,8 +11,8 @@ export interface NodeInfo {
|
|
|
11
11
|
nodeVersion: string;
|
|
12
12
|
/** L1 chain id. */
|
|
13
13
|
l1ChainId: number;
|
|
14
|
-
/**
|
|
15
|
-
|
|
14
|
+
/** Rollup version. */
|
|
15
|
+
rollupVersion: number;
|
|
16
16
|
/** The node's ENR. */
|
|
17
17
|
enr: string | undefined;
|
|
18
18
|
/** The deployed l1 contract addresses */
|
|
@@ -25,7 +25,7 @@ export const NodeInfoSchema: ZodFor<NodeInfo> = z
|
|
|
25
25
|
.object({
|
|
26
26
|
nodeVersion: z.string(),
|
|
27
27
|
l1ChainId: z.number().int().nonnegative(),
|
|
28
|
-
|
|
28
|
+
rollupVersion: z.number().int().nonnegative(),
|
|
29
29
|
enr: z.string().optional(),
|
|
30
30
|
l1ContractAddresses: L1ContractAddressesSchema,
|
|
31
31
|
protocolContractAddresses: ProtocolContractAddressesSchema,
|
|
@@ -3,23 +3,18 @@ import { z } from 'zod';
|
|
|
3
3
|
import type { AztecAddress } from '../../aztec-address/index.js';
|
|
4
4
|
import { schemas } from '../../schemas/index.js';
|
|
5
5
|
|
|
6
|
-
export const ProtocolContractsNames = [
|
|
7
|
-
'classRegisterer',
|
|
8
|
-
'feeJuice',
|
|
9
|
-
'instanceDeployer',
|
|
10
|
-
'multiCallEntrypoint',
|
|
11
|
-
] as const;
|
|
6
|
+
export const ProtocolContractsNames = ['classRegistry', 'feeJuice', 'instanceRegistry', 'multiCallEntrypoint'] as const;
|
|
12
7
|
|
|
13
8
|
export type ProtocolContractAddresses = {
|
|
14
|
-
|
|
9
|
+
classRegistry: AztecAddress;
|
|
15
10
|
feeJuice: AztecAddress;
|
|
16
|
-
|
|
11
|
+
instanceRegistry: AztecAddress;
|
|
17
12
|
multiCallEntrypoint: AztecAddress;
|
|
18
13
|
};
|
|
19
14
|
|
|
20
15
|
export const ProtocolContractAddressesSchema = z.object({
|
|
21
|
-
|
|
16
|
+
classRegistry: schemas.AztecAddress,
|
|
22
17
|
feeJuice: schemas.AztecAddress,
|
|
23
|
-
|
|
18
|
+
instanceRegistry: schemas.AztecAddress,
|
|
24
19
|
multiCallEntrypoint: schemas.AztecAddress,
|
|
25
20
|
});
|
|
@@ -36,11 +36,13 @@ export async function computePrivateFunctionLeaf(fn: PrivateFunction): Promise<B
|
|
|
36
36
|
|
|
37
37
|
async function getPrivateFunctionTreeCalculator(): Promise<MerkleTreeCalculator> {
|
|
38
38
|
if (!privateFunctionTreeCalculator) {
|
|
39
|
-
const functionTreeZeroLeaf = (
|
|
39
|
+
const functionTreeZeroLeaf = (
|
|
40
|
+
await pedersenHash(new Array(PRIVATE_FUNCTION_SIZE).fill(0))
|
|
41
|
+
).toBuffer() as Buffer<ArrayBuffer>;
|
|
40
42
|
privateFunctionTreeCalculator = await MerkleTreeCalculator.create(
|
|
41
43
|
FUNCTION_TREE_HEIGHT,
|
|
42
44
|
functionTreeZeroLeaf,
|
|
43
|
-
async (left, right) => (await poseidon2Hash([left, right])).toBuffer()
|
|
45
|
+
async (left, right) => (await poseidon2Hash([left, right])).toBuffer() as Buffer<ArrayBuffer>,
|
|
44
46
|
);
|
|
45
47
|
}
|
|
46
48
|
return privateFunctionTreeCalculator;
|
|
@@ -51,7 +51,7 @@ export async function createPrivateFunctionMembershipProof(
|
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
// Compute preimage for the artifact hash
|
|
54
|
-
const {
|
|
54
|
+
const { utilityFunctionRoot: utilityFunctionsTreeRoot, metadataHash: artifactMetadataHash } =
|
|
55
55
|
await computeArtifactHashPreimage(artifact);
|
|
56
56
|
|
|
57
57
|
// We need two sibling paths because private function information is split across two trees:
|
|
@@ -74,7 +74,7 @@ export async function createPrivateFunctionMembershipProof(
|
|
|
74
74
|
functionLeaf: '0x' + functionLeaf.toString('hex'),
|
|
75
75
|
artifactMetadataHash,
|
|
76
76
|
privateFunctionsTreeRoot: '0x' + functionsTree.root.toString('hex'),
|
|
77
|
-
|
|
77
|
+
utilityFunctionsTreeRoot,
|
|
78
78
|
artifactFunctionTreeSiblingPath: artifactTreeSiblingPath.map(fr => fr.toString()).join(','),
|
|
79
79
|
privateFunctionTreeSiblingPath: functionsTreeSiblingPath.map(fr => fr.toString()).join(','),
|
|
80
80
|
});
|
|
@@ -84,14 +84,14 @@ export async function createPrivateFunctionMembershipProof(
|
|
|
84
84
|
artifactTreeLeafIndex,
|
|
85
85
|
artifactMetadataHash,
|
|
86
86
|
functionMetadataHash,
|
|
87
|
-
|
|
87
|
+
utilityFunctionsTreeRoot,
|
|
88
88
|
privateFunctionTreeSiblingPath: functionsTreeSiblingPath,
|
|
89
89
|
privateFunctionTreeLeafIndex: functionsTreeLeafIndex,
|
|
90
90
|
};
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/**
|
|
94
|
-
* Verifies that a private function with a membership proof as emitted by the
|
|
94
|
+
* Verifies that a private function with a membership proof as emitted by the ClassRegistry contract is valid,
|
|
95
95
|
* as defined in the protocol specs at contract-deployment/classes:
|
|
96
96
|
*
|
|
97
97
|
* ```
|
|
@@ -106,7 +106,7 @@ export async function createPrivateFunctionMembershipProof(
|
|
|
106
106
|
* // Compute artifact leaf and assert it belongs to the artifact
|
|
107
107
|
* artifact_function_leaf = sha256(selector, metadata_hash, sha256(bytecode))
|
|
108
108
|
* computed_artifact_private_function_tree_root = compute_root(artifact_function_leaf, artifact_function_tree_sibling_path)
|
|
109
|
-
* computed_artifact_hash = sha256(computed_artifact_private_function_tree_root,
|
|
109
|
+
* computed_artifact_hash = sha256(computed_artifact_private_function_tree_root, utility_functions_artifact_tree_root, artifact_metadata_hash)
|
|
110
110
|
* assert computed_artifact_hash == contract_class.artifact_hash
|
|
111
111
|
* ```
|
|
112
112
|
* @param fn - Function to check membership proof for.
|
|
@@ -147,7 +147,7 @@ export async function isValidPrivateFunctionMembershipProof(
|
|
|
147
147
|
const computedArtifactPrivateFunctionTreeRoot = Fr.fromBuffer(computedArtifactPrivateFunctionTreeRootBuffer);
|
|
148
148
|
const computedArtifactHash = await computeArtifactHash({
|
|
149
149
|
privateFunctionRoot: computedArtifactPrivateFunctionTreeRoot,
|
|
150
|
-
|
|
150
|
+
utilityFunctionRoot: fn.utilityFunctionsTreeRoot,
|
|
151
151
|
metadataHash: fn.artifactMetadataHash,
|
|
152
152
|
});
|
|
153
153
|
if (!contractClass.artifactHash.equals(computedArtifactHash)) {
|
|
@@ -156,7 +156,7 @@ export async function isValidPrivateFunctionMembershipProof(
|
|
|
156
156
|
computedArtifactHash,
|
|
157
157
|
computedFunctionArtifactHash: functionArtifactHash,
|
|
158
158
|
computedArtifactPrivateFunctionTreeRoot,
|
|
159
|
-
|
|
159
|
+
utilityFunctionRoot: fn.utilityFunctionsTreeRoot,
|
|
160
160
|
metadataHash: fn.artifactMetadataHash,
|
|
161
161
|
artifactFunctionTreeSiblingPath: fn.artifactTreeSiblingPath.map(fr => fr.toString()).join(','),
|
|
162
162
|
});
|
|
@@ -13,29 +13,29 @@ import {
|
|
|
13
13
|
} from './artifact_hash.js';
|
|
14
14
|
import type {
|
|
15
15
|
ContractClassPublic,
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
UtilityFunctionMembershipProof,
|
|
17
|
+
UtilityFunctionWithMembershipProof,
|
|
18
18
|
} from './interfaces/index.js';
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
|
-
* Creates a membership proof for
|
|
21
|
+
* Creates a membership proof for a utility function in a contract class, to be verified via `isValidUtilityFunctionMembershipProof`.
|
|
22
22
|
* @param selector - Selector of the function to create the proof for.
|
|
23
23
|
* @param artifact - Artifact of the contract class where the function is defined.
|
|
24
24
|
*/
|
|
25
|
-
export async function
|
|
25
|
+
export async function createUtilityFunctionMembershipProof(
|
|
26
26
|
selector: FunctionSelector,
|
|
27
27
|
artifact: ContractArtifact,
|
|
28
|
-
): Promise<
|
|
28
|
+
): Promise<UtilityFunctionMembershipProof> {
|
|
29
29
|
const log = createLogger('circuits:function_membership_proof');
|
|
30
30
|
|
|
31
31
|
// Locate function artifact
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
|
|
32
|
+
const utilityFunctions = artifact.functions.filter(fn => fn.functionType === FunctionType.UTILITY);
|
|
33
|
+
const utilityFunctionsAndSelectors = await Promise.all(
|
|
34
|
+
utilityFunctions.map(async fn => ({ fn, selector: await FunctionSelector.fromNameAndParameters(fn) })),
|
|
35
35
|
);
|
|
36
|
-
const fn =
|
|
36
|
+
const fn = utilityFunctionsAndSelectors.find(fnAndSelector => selector.equals(fnAndSelector.selector))?.fn;
|
|
37
37
|
if (!fn) {
|
|
38
|
-
throw new Error(`
|
|
38
|
+
throw new Error(`Utility function with selector ${selector.toString()} not found`);
|
|
39
39
|
}
|
|
40
40
|
// Compute preimage for the artifact hash
|
|
41
41
|
const { privateFunctionRoot: privateFunctionsArtifactTreeRoot, metadataHash: artifactMetadataHash } =
|
|
@@ -44,11 +44,11 @@ export async function createUnconstrainedFunctionMembershipProof(
|
|
|
44
44
|
// Compute the sibling path for the "artifact tree"
|
|
45
45
|
const functionMetadataHash = computeFunctionMetadataHash(fn);
|
|
46
46
|
const functionArtifactHash = await computeFunctionArtifactHash({ ...fn, functionMetadataHash });
|
|
47
|
-
const artifactTree = (await computeArtifactFunctionTree(artifact, FunctionType.
|
|
47
|
+
const artifactTree = (await computeArtifactFunctionTree(artifact, FunctionType.UTILITY))!;
|
|
48
48
|
const artifactTreeLeafIndex = artifactTree.getIndex(functionArtifactHash.toBuffer());
|
|
49
49
|
const artifactTreeSiblingPath = artifactTree.getSiblingPath(artifactTreeLeafIndex).map(Fr.fromBuffer);
|
|
50
50
|
|
|
51
|
-
log.debug(`Computed proof for
|
|
51
|
+
log.debug(`Computed proof for utility function with selector ${selector.toString()}`, {
|
|
52
52
|
functionArtifactHash,
|
|
53
53
|
functionMetadataHash,
|
|
54
54
|
artifactMetadataHash,
|
|
@@ -66,7 +66,7 @@ export async function createUnconstrainedFunctionMembershipProof(
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
|
-
* Verifies that
|
|
69
|
+
* Verifies that a utility function with a membership proof as emitted by the ClassRegistry contract is valid,
|
|
70
70
|
* as defined in the protocol specs at contract-deployment/classes:
|
|
71
71
|
*
|
|
72
72
|
* ```
|
|
@@ -75,15 +75,15 @@ export async function createUnconstrainedFunctionMembershipProof(
|
|
|
75
75
|
*
|
|
76
76
|
* // Compute artifact leaf and assert it belongs to the artifact
|
|
77
77
|
* artifact_function_leaf = sha256(selector, metadata_hash, sha256(bytecode))
|
|
78
|
-
*
|
|
79
|
-
* computed_artifact_hash = sha256(private_functions_artifact_tree_root,
|
|
78
|
+
* computed_artifact_utility_function_tree_root = compute_root(artifact_function_leaf, artifact_function_tree_sibling_path, artifact_function_tree_leaf_index)
|
|
79
|
+
* computed_artifact_hash = sha256(private_functions_artifact_tree_root, computed_artifact_utility_function_tree_root, artifact_metadata_hash)
|
|
80
80
|
* assert computed_artifact_hash == contract_class.artifact_hash
|
|
81
81
|
* ```
|
|
82
82
|
* @param fn - Function to check membership proof for.
|
|
83
83
|
* @param contractClass - In which contract class the function is expected to be.
|
|
84
84
|
*/
|
|
85
|
-
export async function
|
|
86
|
-
fn:
|
|
85
|
+
export async function isValidUtilityFunctionMembershipProof(
|
|
86
|
+
fn: UtilityFunctionWithMembershipProof,
|
|
87
87
|
contractClass: Pick<ContractClassPublic, 'artifactHash'>,
|
|
88
88
|
) {
|
|
89
89
|
const log = createLogger('circuits:function_membership_proof');
|
|
@@ -98,7 +98,7 @@ export async function isValidUnconstrainedFunctionMembershipProof(
|
|
|
98
98
|
const computedArtifactFunctionTreeRoot = Fr.fromBuffer(computedArtifactFunctionTreeRootBuffer);
|
|
99
99
|
const computedArtifactHash = await computeArtifactHash({
|
|
100
100
|
privateFunctionRoot: fn.privateFunctionsArtifactTreeRoot,
|
|
101
|
-
|
|
101
|
+
utilityFunctionRoot: computedArtifactFunctionTreeRoot,
|
|
102
102
|
metadataHash: fn.artifactMetadataHash,
|
|
103
103
|
});
|
|
104
104
|
if (!contractClass.artifactHash.equals(computedArtifactHash)) {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
2
|
-
import {
|
|
3
|
-
import { createLogger } from '@aztec/foundation/log';
|
|
2
|
+
import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
|
|
3
|
+
import { type Logger, createLogger } from '@aztec/foundation/log';
|
|
4
4
|
|
|
5
5
|
import fs from 'fs/promises';
|
|
6
|
+
import { inspect } from 'node:util';
|
|
6
7
|
import { join } from 'path';
|
|
7
8
|
import { z } from 'zod';
|
|
8
9
|
|
|
@@ -10,7 +11,12 @@ import { z } from 'zod';
|
|
|
10
11
|
* Represents a version record for storing in a version file.
|
|
11
12
|
*/
|
|
12
13
|
export class DatabaseVersion {
|
|
13
|
-
constructor(
|
|
14
|
+
constructor(
|
|
15
|
+
/** The version of the data on disk. Used to perform upgrades */
|
|
16
|
+
public readonly schemaVersion: number,
|
|
17
|
+
/** The rollup the data pertains to */
|
|
18
|
+
public readonly rollupAddress: EthAddress,
|
|
19
|
+
) {}
|
|
14
20
|
|
|
15
21
|
public toBuffer(): Buffer {
|
|
16
22
|
return Buffer.from(jsonStringify(this));
|
|
@@ -18,7 +24,7 @@ export class DatabaseVersion {
|
|
|
18
24
|
|
|
19
25
|
public static fromBuffer(buf: Buffer): DatabaseVersion {
|
|
20
26
|
try {
|
|
21
|
-
return
|
|
27
|
+
return jsonParseWithSchema(buf.toString('utf-8'), DatabaseVersion.schema);
|
|
22
28
|
} catch (err) {
|
|
23
29
|
throw new Error(`Failed to deserialize version information: ${err}`, { cause: err });
|
|
24
30
|
}
|
|
@@ -59,6 +65,15 @@ export class DatabaseVersion {
|
|
|
59
65
|
.transform(({ schemaVersion, rollupAddress }) => new DatabaseVersion(schemaVersion, rollupAddress));
|
|
60
66
|
}
|
|
61
67
|
|
|
68
|
+
/** Allows for better introspection. */
|
|
69
|
+
public [inspect.custom](): string {
|
|
70
|
+
return this.toString();
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
public toString(): string {
|
|
74
|
+
return `DatabaseVersion{schemaVersion=${this.schemaVersion},rollupAddress=${this.rollupAddress}"}`;
|
|
75
|
+
}
|
|
76
|
+
|
|
62
77
|
/**
|
|
63
78
|
* Returns an empty instance
|
|
64
79
|
*/
|
|
@@ -69,17 +84,35 @@ export class DatabaseVersion {
|
|
|
69
84
|
|
|
70
85
|
export type DatabaseVersionManagerFs = Pick<typeof fs, 'readFile' | 'writeFile' | 'rm' | 'mkdir'>;
|
|
71
86
|
|
|
87
|
+
export const DATABASE_VERSION_FILE_NAME = 'db_version';
|
|
88
|
+
|
|
89
|
+
export type DatabaseVersionManagerOptions<T> = {
|
|
90
|
+
schemaVersion: number;
|
|
91
|
+
rollupAddress: EthAddress;
|
|
92
|
+
dataDirectory: string;
|
|
93
|
+
onOpen: (dataDir: string) => Promise<T>;
|
|
94
|
+
onUpgrade?: (dataDir: string, currentVersion: number, latestVersion: number) => Promise<void>;
|
|
95
|
+
fileSystem?: DatabaseVersionManagerFs;
|
|
96
|
+
log?: Logger;
|
|
97
|
+
};
|
|
98
|
+
|
|
72
99
|
/**
|
|
73
100
|
* A manager for handling database versioning and migrations.
|
|
74
101
|
* This class will check the version of data in a directory and either
|
|
75
102
|
* reset or upgrade based on version compatibility.
|
|
76
103
|
*/
|
|
77
104
|
export class DatabaseVersionManager<T> {
|
|
78
|
-
public static readonly VERSION_FILE =
|
|
105
|
+
public static readonly VERSION_FILE = DATABASE_VERSION_FILE_NAME;
|
|
79
106
|
|
|
80
107
|
private readonly versionFile: string;
|
|
81
108
|
private readonly currentVersion: DatabaseVersion;
|
|
82
109
|
|
|
110
|
+
private dataDirectory: string;
|
|
111
|
+
private onOpen: (dataDir: string) => Promise<T>;
|
|
112
|
+
private onUpgrade?: (dataDir: string, currentVersion: number, latestVersion: number) => Promise<void>;
|
|
113
|
+
private fileSystem: DatabaseVersionManagerFs;
|
|
114
|
+
private log: Logger;
|
|
115
|
+
|
|
83
116
|
/**
|
|
84
117
|
* Create a new version manager
|
|
85
118
|
*
|
|
@@ -92,21 +125,32 @@ export class DatabaseVersionManager<T> {
|
|
|
92
125
|
* @param log - Optional custom logger
|
|
93
126
|
* @param options - Configuration options
|
|
94
127
|
*/
|
|
95
|
-
constructor(
|
|
96
|
-
schemaVersion
|
|
97
|
-
rollupAddress
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
) {
|
|
128
|
+
constructor({
|
|
129
|
+
schemaVersion,
|
|
130
|
+
rollupAddress,
|
|
131
|
+
dataDirectory,
|
|
132
|
+
onOpen,
|
|
133
|
+
onUpgrade,
|
|
134
|
+
fileSystem = fs,
|
|
135
|
+
log = createLogger(`foundation:version-manager`),
|
|
136
|
+
}: DatabaseVersionManagerOptions<T>) {
|
|
104
137
|
if (schemaVersion < 1) {
|
|
105
138
|
throw new TypeError(`Invalid schema version received: ${schemaVersion}`);
|
|
106
139
|
}
|
|
107
140
|
|
|
108
|
-
this.versionFile = join(
|
|
141
|
+
this.versionFile = join(dataDirectory, DatabaseVersionManager.VERSION_FILE);
|
|
109
142
|
this.currentVersion = new DatabaseVersion(schemaVersion, rollupAddress);
|
|
143
|
+
|
|
144
|
+
this.dataDirectory = dataDirectory;
|
|
145
|
+
this.onOpen = onOpen;
|
|
146
|
+
this.onUpgrade = onUpgrade;
|
|
147
|
+
this.fileSystem = fileSystem;
|
|
148
|
+
this.log = log;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
static async writeVersion(version: DatabaseVersion, dataDir: string, fileSystem: DatabaseVersionManagerFs = fs) {
|
|
152
|
+
await fileSystem.mkdir(dataDir, { recursive: true });
|
|
153
|
+
return fileSystem.writeFile(join(dataDir, DatabaseVersionManager.VERSION_FILE), version.toBuffer());
|
|
110
154
|
}
|
|
111
155
|
|
|
112
156
|
/**
|
|
@@ -120,6 +164,8 @@ export class DatabaseVersionManager<T> {
|
|
|
120
164
|
public async open(): Promise<[T, boolean]> {
|
|
121
165
|
// const storedVersion = await DatabaseVersion.readVersion(this.versionFile);
|
|
122
166
|
let storedVersion: DatabaseVersion;
|
|
167
|
+
// a flag to suppress logs about 'resetting the data dir' when starting from an empty state
|
|
168
|
+
let shouldLogDataReset = true;
|
|
123
169
|
|
|
124
170
|
try {
|
|
125
171
|
const versionBuf = await this.fileSystem.readFile(this.versionFile);
|
|
@@ -127,6 +173,8 @@ export class DatabaseVersionManager<T> {
|
|
|
127
173
|
} catch (err) {
|
|
128
174
|
if (err && (err as Error & { code: string }).code === 'ENOENT') {
|
|
129
175
|
storedVersion = DatabaseVersion.empty();
|
|
176
|
+
// only turn off these logs if the data dir didn't exist before
|
|
177
|
+
shouldLogDataReset = false;
|
|
130
178
|
} else {
|
|
131
179
|
this.log.warn(`Failed to read stored version information: ${err}. Defaulting to empty version`);
|
|
132
180
|
storedVersion = DatabaseVersion.empty();
|
|
@@ -147,13 +195,21 @@ export class DatabaseVersionManager<T> {
|
|
|
147
195
|
needsReset = true;
|
|
148
196
|
}
|
|
149
197
|
} else if (cmp !== 0) {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
198
|
+
if (shouldLogDataReset) {
|
|
199
|
+
this.log.info(
|
|
200
|
+
`Can't upgrade from version ${storedVersion} to ${this.currentVersion}. Resetting database at ${this.dataDirectory}`,
|
|
201
|
+
);
|
|
202
|
+
}
|
|
153
203
|
needsReset = true;
|
|
154
204
|
}
|
|
155
205
|
} else {
|
|
156
|
-
|
|
206
|
+
if (shouldLogDataReset) {
|
|
207
|
+
this.log.warn('Rollup address has changed, resetting data directory', {
|
|
208
|
+
versionFile: this.versionFile,
|
|
209
|
+
storedVersion,
|
|
210
|
+
currentVersion: this.currentVersion,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
157
213
|
needsReset = true;
|
|
158
214
|
}
|
|
159
215
|
|
|
@@ -171,17 +227,14 @@ export class DatabaseVersionManager<T> {
|
|
|
171
227
|
/**
|
|
172
228
|
* Writes the current version to the version file
|
|
173
229
|
*/
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
await this.fileSystem.mkdir(this.dataDirectory, { recursive: true });
|
|
177
|
-
// Write the version file
|
|
178
|
-
await this.fileSystem.writeFile(this.versionFile, this.currentVersion.toBuffer());
|
|
230
|
+
public writeVersion(dir?: string): Promise<void> {
|
|
231
|
+
return DatabaseVersionManager.writeVersion(this.currentVersion, dir ?? this.dataDirectory, this.fileSystem);
|
|
179
232
|
}
|
|
180
233
|
|
|
181
234
|
/**
|
|
182
235
|
* Resets the data directory by deleting it and recreating it
|
|
183
236
|
*/
|
|
184
|
-
|
|
237
|
+
public async resetDataDirectory(): Promise<void> {
|
|
185
238
|
try {
|
|
186
239
|
await this.fileSystem.rm(this.dataDirectory, { recursive: true, force: true, maxRetries: 3 });
|
|
187
240
|
await this.fileSystem.mkdir(this.dataDirectory, { recursive: true });
|