@aztec/pxe 0.0.1-commit.f2ce05ee → 0.0.1-commit.f5a9928
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/bin/check_oracle_version.js +41 -112
- package/dest/bin/index.d.ts +2 -0
- package/dest/bin/index.d.ts.map +1 -0
- package/dest/bin/index.js +1 -0
- package/dest/bin/oracle_version_helpers.d.ts +34 -0
- package/dest/bin/oracle_version_helpers.d.ts.map +1 -0
- package/dest/bin/oracle_version_helpers.js +46 -0
- package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
- package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
- package/dest/block_synchronizer/block_stream_source.js +37 -0
- package/dest/block_synchronizer/block_synchronizer.d.ts +22 -16
- package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
- package/dest/block_synchronizer/block_synchronizer.js +71 -28
- package/dest/config/index.d.ts +9 -2
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +14 -15
- package/dest/config/package_info.js +1 -1
- package/dest/contract/contract_class_service.d.ts +24 -0
- package/dest/contract/contract_class_service.d.ts.map +1 -0
- package/dest/contract/contract_class_service.js +36 -0
- package/dest/contract/contract_sync_service.d.ts +48 -0
- package/dest/contract/contract_sync_service.d.ts.map +1 -0
- package/dest/contract/contract_sync_service.js +119 -0
- package/dest/contract/helpers.d.ts +7 -0
- package/dest/contract/helpers.d.ts.map +1 -0
- package/dest/contract/helpers.js +20 -0
- package/dest/contract/skip_sync_contracts.d.ts +11 -0
- package/dest/contract/skip_sync_contracts.d.ts.map +1 -0
- package/dest/contract/skip_sync_contracts.js +18 -0
- package/dest/contract_function_simulator/anchored_contract_data.d.ts +36 -0
- package/dest/contract_function_simulator/anchored_contract_data.d.ts.map +1 -0
- package/dest/contract_function_simulator/anchored_contract_data.js +54 -0
- package/dest/contract_function_simulator/contract_function_simulator.d.ts +72 -43
- package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
- package/dest/contract_function_simulator/contract_function_simulator.js +266 -114
- package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
- package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
- package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
- package/dest/contract_function_simulator/execution_note_cache.d.ts +4 -10
- package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
- package/dest/contract_function_simulator/execution_note_cache.js +10 -29
- package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -11
- package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
- package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -15
- package/dest/contract_function_simulator/index.d.ts +26 -5
- package/dest/contract_function_simulator/index.d.ts.map +1 -1
- package/dest/contract_function_simulator/index.js +11 -3
- package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +29 -0
- package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/bounded_vec.js +30 -0
- package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts +9 -0
- package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/contract_class_log_data.js +1 -0
- package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts +7 -0
- package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/embedded_curve_point.js +1 -0
- package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts +37 -0
- package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/ephemeral_array.js +59 -0
- package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +3 -4
- package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/event_validation_request.js +9 -10
- package/dest/contract_function_simulator/noir-structs/fact.d.ts +16 -0
- package/dest/contract_function_simulator/noir-structs/fact.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/fact.js +6 -0
- package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts +27 -0
- package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/fact_collection.js +31 -0
- package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +19 -10
- package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +12 -24
- package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +11 -9
- package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +2 -63
- package/dest/contract_function_simulator/noir-structs/note_data.d.ts +27 -0
- package/dest/contract_function_simulator/noir-structs/note_data.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/note_data.js +3 -0
- package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +3 -5
- package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/note_validation_request.js +8 -12
- package/dest/contract_function_simulator/noir-structs/option.d.ts +59 -0
- package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/option.js +67 -0
- package/dest/contract_function_simulator/noir-structs/origin_block.d.ts +11 -0
- package/dest/contract_function_simulator/noir-structs/origin_block.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/origin_block.js +5 -0
- package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts +11 -0
- package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/pending_tagged_log.js +4 -0
- package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +8 -0
- package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/provided_secret.js +1 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts +28 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.js +50 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts +19 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/resolved_tx.js +9 -0
- package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts +15 -0
- package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/tx_effect_data.js +5 -0
- package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +6 -11
- package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/utility_context.js +1 -20
- package/dest/contract_function_simulator/oracle/acir_callback.d.ts +21 -0
- package/dest/contract_function_simulator/oracle/acir_callback.d.ts.map +1 -0
- package/dest/contract_function_simulator/oracle/acir_callback.js +115 -0
- package/dest/contract_function_simulator/oracle/index.d.ts +2 -13
- package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/index.js +1 -1
- package/dest/contract_function_simulator/oracle/interfaces.d.ts +15 -98
- package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/interfaces.js +2 -2
- package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts +39 -0
- package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts.map +1 -0
- package/dest/contract_function_simulator/oracle/legacy_oracle_registry.js +107 -0
- package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +3 -14
- package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -24
- package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +2 -2
- package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/note_packing_utils.js +2 -2
- package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +139 -0
- package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
- package/dest/contract_function_simulator/oracle/oracle_registry.js +1016 -0
- package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +274 -0
- package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -0
- package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +1243 -0
- package/dest/contract_function_simulator/oracle/private_execution.d.ts +1 -1
- package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/private_execution.js +7 -6
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +82 -98
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/private_execution_oracle.js +263 -117
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +206 -83
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +688 -188
- package/dest/contract_function_simulator/pick_notes.d.ts +1 -1
- package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
- package/dest/contract_function_simulator/pick_notes.js +20 -3
- package/dest/contract_function_simulator/transient_array_service.d.ts +31 -0
- package/dest/contract_function_simulator/transient_array_service.d.ts.map +1 -0
- package/dest/contract_function_simulator/transient_array_service.js +62 -0
- package/dest/contract_logging.d.ts +27 -0
- package/dest/contract_logging.d.ts.map +1 -0
- package/dest/contract_logging.js +38 -0
- package/dest/debug/pxe_debug_utils.d.ts +5 -9
- package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
- package/dest/debug/pxe_debug_utils.js +4 -10
- package/dest/entrypoints/client/bundle/index.d.ts +4 -1
- package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
- package/dest/entrypoints/client/bundle/index.js +3 -0
- package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
- package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
- package/dest/entrypoints/client/bundle/utils.js +29 -8
- package/dest/entrypoints/client/lazy/index.d.ts +4 -1
- package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
- package/dest/entrypoints/client/lazy/index.js +3 -0
- package/dest/entrypoints/client/lazy/utils.d.ts +2 -2
- package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
- package/dest/entrypoints/client/lazy/utils.js +29 -8
- package/dest/entrypoints/client/store.d.ts +14 -0
- package/dest/entrypoints/client/store.d.ts.map +1 -0
- package/dest/entrypoints/client/store.js +42 -0
- package/dest/entrypoints/pxe_creation_options.d.ts +16 -2
- package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
- package/dest/entrypoints/pxe_creation_options.js +3 -1
- package/dest/entrypoints/server/index.d.ts +8 -3
- package/dest/entrypoints/server/index.d.ts.map +1 -1
- package/dest/entrypoints/server/index.js +6 -2
- package/dest/entrypoints/server/store.d.ts +18 -0
- package/dest/entrypoints/server/store.d.ts.map +1 -0
- package/dest/entrypoints/server/store.js +28 -0
- package/dest/entrypoints/server/utils.d.ts +4 -3
- package/dest/entrypoints/server/utils.d.ts.map +1 -1
- package/dest/entrypoints/server/utils.js +30 -8
- package/dest/error_enriching.d.ts +5 -3
- package/dest/error_enriching.d.ts.map +1 -1
- package/dest/error_enriching.js +15 -12
- package/dest/events/event_service.d.ts +21 -5
- package/dest/events/event_service.d.ts.map +1 -1
- package/dest/events/event_service.js +51 -17
- package/dest/events/private_event_filter_validator.d.ts +3 -2
- package/dest/events/private_event_filter_validator.d.ts.map +1 -1
- package/dest/events/private_event_filter_validator.js +15 -0
- package/dest/hooks/authorize_utility_call.d.ts +41 -0
- package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
- package/dest/hooks/authorize_utility_call.js +4 -0
- package/dest/hooks/execution_hooks.d.ts +62 -0
- package/dest/hooks/execution_hooks.d.ts.map +1 -0
- package/dest/hooks/execution_hooks.js +9 -0
- package/dest/hooks/index.d.ts +5 -0
- package/dest/hooks/index.d.ts.map +1 -0
- package/dest/hooks/index.js +2 -0
- package/dest/hooks/resolve_custom_request.d.ts +23 -0
- package/dest/hooks/resolve_custom_request.d.ts.map +1 -0
- package/dest/hooks/resolve_custom_request.js +3 -0
- package/dest/hooks/resolve_tagging_secret_strategy.d.ts +50 -0
- package/dest/hooks/resolve_tagging_secret_strategy.d.ts.map +1 -0
- package/dest/hooks/resolve_tagging_secret_strategy.js +3 -0
- package/dest/logs/log_service.d.ts +21 -10
- package/dest/logs/log_service.d.ts.map +1 -1
- package/dest/logs/log_service.js +184 -90
- package/dest/messages/tx_resolver_service.d.ts +28 -0
- package/dest/messages/tx_resolver_service.d.ts.map +1 -0
- package/dest/messages/tx_resolver_service.js +62 -0
- package/dest/node/benchmarked_node.d.ts +20 -0
- package/dest/node/benchmarked_node.d.ts.map +1 -0
- package/dest/node/benchmarked_node.js +94 -0
- package/dest/node/caching_aztec_node.d.ts +24 -0
- package/dest/node/caching_aztec_node.d.ts.map +1 -0
- package/dest/node/caching_aztec_node.js +268 -0
- package/dest/notes/note_service.d.ts +34 -6
- package/dest/notes/note_service.d.ts.map +1 -1
- package/dest/notes/note_service.js +85 -59
- package/dest/notes_filter.d.ts +24 -0
- package/dest/notes_filter.d.ts.map +1 -0
- package/dest/notes_filter.js +4 -0
- package/dest/oracle_version.d.ts +4 -3
- package/dest/oracle_version.d.ts.map +1 -1
- package/dest/oracle_version.js +20 -10
- package/dest/private_kernel/batch_planner.d.ts +47 -0
- package/dest/private_kernel/batch_planner.d.ts.map +1 -0
- package/dest/private_kernel/batch_planner.js +104 -0
- package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
- package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
- package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
- package/dest/private_kernel/hints/index.d.ts +1 -1
- package/dest/private_kernel/hints/index.js +1 -1
- package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
- package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
- package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +138 -72
- package/dest/private_kernel/hints/test_utils.d.ts +122 -0
- package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
- package/dest/private_kernel/hints/test_utils.js +202 -0
- package/dest/private_kernel/private_kernel_execution_prover.d.ts +6 -2
- package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
- package/dest/private_kernel/private_kernel_execution_prover.js +165 -82
- package/dest/private_kernel/private_kernel_oracle.d.ts +17 -11
- package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
- package/dest/private_kernel/private_kernel_oracle.js +47 -29
- package/dest/pxe.d.ts +219 -68
- package/dest/pxe.d.ts.map +1 -1
- package/dest/pxe.js +423 -243
- package/dest/storage/address_store/address_store.d.ts +1 -1
- package/dest/storage/address_store/address_store.d.ts.map +1 -1
- package/dest/storage/address_store/address_store.js +2 -1
- package/dest/storage/allowed_scopes.d.ts +6 -0
- package/dest/storage/allowed_scopes.d.ts.map +1 -0
- package/dest/storage/allowed_scopes.js +7 -0
- package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -6
- package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -1
- package/dest/storage/anchor_block_store/anchor_block_store.js +9 -7
- package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
- package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
- package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
- package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
- package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
- package/dest/storage/backwards_compatibility_tests/schema_tests.js +671 -0
- package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
- package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
- package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
- package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
- package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
- package/dest/storage/capsule_store/capsule_service.js +47 -0
- package/dest/storage/capsule_store/capsule_store.d.ts +9 -9
- package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -1
- package/dest/storage/capsule_store/capsule_store.js +37 -29
- package/dest/storage/capsule_store/index.d.ts +2 -1
- package/dest/storage/capsule_store/index.d.ts.map +1 -1
- package/dest/storage/capsule_store/index.js +1 -0
- package/dest/storage/contract_store/contract_store.d.ts +63 -33
- package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
- package/dest/storage/contract_store/contract_store.js +179 -130
- package/dest/storage/contract_store/private_functions_tree.d.ts +1 -1
- package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -1
- package/dest/storage/contract_store/private_functions_tree.js +2 -1
- package/dest/storage/fact_store/fact_service.d.ts +22 -0
- package/dest/storage/fact_store/fact_service.d.ts.map +1 -0
- package/dest/storage/fact_store/fact_service.js +45 -0
- package/dest/storage/fact_store/fact_store.d.ts +95 -0
- package/dest/storage/fact_store/fact_store.d.ts.map +1 -0
- package/dest/storage/fact_store/fact_store.js +411 -0
- package/dest/storage/fact_store/fact_store_keys.d.ts +34 -0
- package/dest/storage/fact_store/fact_store_keys.d.ts.map +1 -0
- package/dest/storage/fact_store/fact_store_keys.js +50 -0
- package/dest/storage/fact_store/index.d.ts +6 -0
- package/dest/storage/fact_store/index.d.ts.map +1 -0
- package/dest/storage/fact_store/index.js +4 -0
- package/dest/storage/fact_store/origin_state.d.ts +59 -0
- package/dest/storage/fact_store/origin_state.d.ts.map +1 -0
- package/dest/storage/fact_store/origin_state.js +60 -0
- package/dest/storage/fact_store/stored_fact.d.ts +32 -0
- package/dest/storage/fact_store/stored_fact.d.ts.map +1 -0
- package/dest/storage/fact_store/stored_fact.js +64 -0
- package/dest/storage/index.d.ts +3 -2
- package/dest/storage/index.d.ts.map +1 -1
- package/dest/storage/index.js +2 -1
- package/dest/storage/metadata.d.ts +2 -2
- package/dest/storage/metadata.d.ts.map +1 -1
- package/dest/storage/metadata.js +1 -1
- package/dest/storage/note_store/note_store.d.ts +44 -35
- package/dest/storage/note_store/note_store.d.ts.map +1 -1
- package/dest/storage/note_store/note_store.js +203 -174
- package/dest/storage/note_store/stored_note.d.ts +3 -8
- package/dest/storage/note_store/stored_note.d.ts.map +1 -1
- package/dest/storage/note_store/stored_note.js +4 -20
- package/dest/storage/open_pxe_stores.d.ts +35 -0
- package/dest/storage/open_pxe_stores.d.ts.map +1 -0
- package/dest/storage/open_pxe_stores.js +29 -0
- package/dest/storage/private_event_store/private_event_store.d.ts +13 -16
- package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
- package/dest/storage/private_event_store/private_event_store.js +48 -45
- package/dest/storage/private_event_store/stored_private_event.js +1 -1
- package/dest/storage/store_identity.d.ts +35 -0
- package/dest/storage/store_identity.d.ts.map +1 -0
- package/dest/storage/store_identity.js +44 -0
- package/dest/storage/tagging_store/index.d.ts +2 -2
- package/dest/storage/tagging_store/index.d.ts.map +1 -1
- package/dest/storage/tagging_store/index.js +1 -1
- package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
- package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
- package/dest/storage/tagging_store/sender_tagging_store.d.ts +63 -31
- package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
- package/dest/storage/tagging_store/sender_tagging_store.js +210 -129
- package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts +51 -0
- package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts.map +1 -0
- package/dest/storage/tagging_store/tagging_secret_sources_store.js +105 -0
- package/dest/tagging/constants.d.ts +11 -2
- package/dest/tagging/constants.d.ts.map +1 -1
- package/dest/tagging/constants.js +38 -10
- package/dest/tagging/get_all_logs_by_tags.d.ts +55 -10
- package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
- package/dest/tagging/get_all_logs_by_tags.js +65 -32
- package/dest/tagging/index.d.ts +8 -7
- package/dest/tagging/index.d.ts.map +1 -1
- package/dest/tagging/index.js +6 -5
- package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
- package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
- package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
- package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +74 -0
- package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
- package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +235 -0
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +3 -3
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -1
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +2 -2
- package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
- package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
- package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +8 -10
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +25 -22
- package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts +22 -0
- package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts.map +1 -0
- package/dest/tagging/sender_sync/utils/classify_pending_txs.js +62 -0
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +17 -9
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +53 -39
- package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts +29 -0
- package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts.map +1 -0
- package/dest/tagging/sender_sync/utils/resolve_pending_txs.js +42 -0
- package/dest/tagging/sender_sync/utils/test_utils.d.ts +16 -0
- package/dest/tagging/sender_sync/utils/test_utils.d.ts.map +1 -0
- package/dest/tagging/sender_sync/utils/test_utils.js +24 -0
- package/dest/tagging/testing/tag_query_test_utils.d.ts +6 -0
- package/dest/tagging/testing/tag_query_test_utils.d.ts.map +1 -0
- package/dest/tagging/testing/tag_query_test_utils.js +10 -0
- package/package.json +20 -17
- package/src/bin/check_oracle_version.ts +46 -135
- package/src/bin/index.ts +1 -0
- package/src/bin/oracle_version_helpers.ts +54 -0
- package/src/block_synchronizer/block_stream_source.ts +42 -0
- package/src/block_synchronizer/block_synchronizer.ts +86 -40
- package/src/config/index.ts +16 -9
- package/src/config/package_info.ts +1 -1
- package/src/contract/contract_class_service.ts +45 -0
- package/src/contract/contract_sync_service.ts +179 -0
- package/src/contract/helpers.ts +35 -0
- package/src/contract/skip_sync_contracts.ts +23 -0
- package/src/contract_function_simulator/anchored_contract_data.ts +74 -0
- package/src/contract_function_simulator/contract_function_simulator.ts +468 -180
- package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
- package/src/contract_function_simulator/execution_note_cache.ts +10 -30
- package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
- package/src/contract_function_simulator/index.ts +89 -4
- package/src/contract_function_simulator/noir-structs/bounded_vec.ts +43 -0
- package/src/contract_function_simulator/noir-structs/contract_class_log_data.ts +9 -0
- package/src/contract_function_simulator/noir-structs/embedded_curve_point.ts +4 -0
- package/src/contract_function_simulator/noir-structs/ephemeral_array.ts +66 -0
- package/src/contract_function_simulator/noir-structs/event_validation_request.ts +10 -9
- package/src/contract_function_simulator/noir-structs/fact.ts +13 -0
- package/src/contract_function_simulator/noir-structs/fact_collection.ts +64 -0
- package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +27 -20
- package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +14 -64
- package/src/contract_function_simulator/noir-structs/note_data.ts +27 -0
- package/src/contract_function_simulator/noir-structs/note_validation_request.ts +6 -11
- package/src/contract_function_simulator/noir-structs/option.ts +75 -0
- package/src/contract_function_simulator/noir-structs/origin_block.ts +8 -0
- package/src/contract_function_simulator/noir-structs/pending_tagged_log.ts +12 -0
- package/src/contract_function_simulator/noir-structs/provided_secret.ts +5 -0
- package/src/contract_function_simulator/noir-structs/resolved_tagging_strategy.ts +66 -0
- package/src/contract_function_simulator/noir-structs/resolved_tx.ts +19 -0
- package/src/contract_function_simulator/noir-structs/tx_effect_data.ts +16 -0
- package/src/contract_function_simulator/noir-structs/utility_context.ts +5 -17
- package/src/contract_function_simulator/oracle/acir_callback.ts +154 -0
- package/src/contract_function_simulator/oracle/index.ts +1 -15
- package/src/contract_function_simulator/oracle/interfaces.ts +11 -176
- package/src/contract_function_simulator/oracle/legacy_oracle_registry.ts +147 -0
- package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +6 -21
- package/src/contract_function_simulator/oracle/note_packing_utils.ts +3 -3
- package/src/contract_function_simulator/oracle/oracle_registry.ts +710 -0
- package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +1052 -0
- package/src/contract_function_simulator/oracle/private_execution.ts +6 -7
- package/src/contract_function_simulator/oracle/private_execution_oracle.ts +320 -210
- package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +1028 -268
- package/src/contract_function_simulator/pick_notes.ts +22 -3
- package/src/contract_function_simulator/transient_array_service.ts +91 -0
- package/src/contract_logging.ts +52 -0
- package/src/debug/pxe_debug_utils.ts +11 -17
- package/src/entrypoints/client/bundle/index.ts +3 -0
- package/src/entrypoints/client/bundle/utils.ts +35 -9
- package/src/entrypoints/client/lazy/index.ts +3 -0
- package/src/entrypoints/client/lazy/utils.ts +35 -9
- package/src/entrypoints/client/store.ts +54 -0
- package/src/entrypoints/pxe_creation_options.ts +21 -1
- package/src/entrypoints/server/index.ts +8 -2
- package/src/entrypoints/server/store.ts +47 -0
- package/src/entrypoints/server/utils.ts +46 -21
- package/src/error_enriching.ts +30 -13
- package/src/events/event_service.ts +85 -26
- package/src/events/private_event_filter_validator.ts +21 -1
- package/src/hooks/authorize_utility_call.ts +44 -0
- package/src/hooks/execution_hooks.ts +68 -0
- package/src/hooks/index.ts +13 -0
- package/src/hooks/resolve_custom_request.ts +24 -0
- package/src/hooks/resolve_tagging_secret_strategy.ts +60 -0
- package/src/logs/log_service.ts +231 -157
- package/src/messages/tx_resolver_service.ts +81 -0
- package/src/node/benchmarked_node.ts +140 -0
- package/src/node/caching_aztec_node.ts +407 -0
- package/src/notes/note_service.ts +128 -86
- package/src/notes_filter.ts +24 -0
- package/src/oracle_version.ts +20 -10
- package/src/private_kernel/batch_planner.ts +169 -0
- package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
- package/src/private_kernel/hints/index.ts +1 -1
- package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +179 -121
- package/src/private_kernel/hints/test_utils.ts +318 -0
- package/src/private_kernel/private_kernel_execution_prover.ts +252 -116
- package/src/private_kernel/private_kernel_oracle.ts +65 -36
- package/src/pxe.ts +698 -311
- package/src/storage/address_store/address_store.ts +2 -1
- package/src/storage/allowed_scopes.ts +14 -0
- package/src/storage/anchor_block_store/anchor_block_store.ts +9 -7
- package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/FactStore.json +40 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +40 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +56 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +26 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +30 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/TaggingSecretSourcesStore.json +30 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +117 -0
- package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
- package/src/storage/backwards_compatibility_tests/schema_tests.ts +803 -0
- package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
- package/src/storage/capsule_store/capsule_service.ts +85 -0
- package/src/storage/capsule_store/capsule_store.ts +45 -27
- package/src/storage/capsule_store/index.ts +1 -0
- package/src/storage/contract_store/contract_store.ts +238 -166
- package/src/storage/contract_store/private_functions_tree.ts +2 -1
- package/src/storage/fact_store/fact_service.ts +69 -0
- package/src/storage/fact_store/fact_store.ts +488 -0
- package/src/storage/fact_store/fact_store_keys.ts +75 -0
- package/src/storage/fact_store/index.ts +15 -0
- package/src/storage/fact_store/origin_state.ts +84 -0
- package/src/storage/fact_store/stored_fact.ts +80 -0
- package/src/storage/index.ts +2 -1
- package/src/storage/metadata.ts +1 -1
- package/src/storage/note_store/note_store.ts +236 -194
- package/src/storage/note_store/stored_note.ts +5 -27
- package/src/storage/open_pxe_stores.ts +52 -0
- package/src/storage/private_event_store/private_event_store.ts +55 -56
- package/src/storage/private_event_store/stored_private_event.ts +1 -1
- package/src/storage/store_identity.ts +72 -0
- package/src/storage/tagging_store/index.ts +1 -1
- package/src/storage/tagging_store/recipient_tagging_store.ts +5 -5
- package/src/storage/tagging_store/sender_tagging_store.ts +278 -158
- package/src/storage/tagging_store/tagging_secret_sources_store.ts +138 -0
- package/src/tagging/constants.ts +42 -10
- package/src/tagging/get_all_logs_by_tags.ts +125 -36
- package/src/tagging/index.ts +12 -6
- package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
- package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +356 -0
- package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +4 -4
- package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
- package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +32 -27
- package/src/tagging/sender_sync/utils/classify_pending_txs.ts +92 -0
- package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +57 -50
- package/src/tagging/sender_sync/utils/resolve_pending_txs.ts +65 -0
- package/src/tagging/sender_sync/utils/test_utils.ts +46 -0
- package/src/tagging/testing/tag_query_test_utils.ts +11 -0
- package/dest/contract_function_simulator/benchmarked_node.d.ts +0 -9
- package/dest/contract_function_simulator/benchmarked_node.d.ts.map +0 -1
- package/dest/contract_function_simulator/benchmarked_node.js +0 -77
- package/dest/contract_function_simulator/oracle/oracle.d.ts +0 -60
- package/dest/contract_function_simulator/oracle/oracle.d.ts.map +0 -1
- package/dest/contract_function_simulator/oracle/oracle.js +0 -368
- package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +0 -6
- package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +0 -1
- package/dest/contract_function_simulator/proxied_contract_data_source.js +0 -80
- package/dest/contract_sync/contract_sync_service.d.ts +0 -41
- package/dest/contract_sync/contract_sync_service.d.ts.map +0 -1
- package/dest/contract_sync/contract_sync_service.js +0 -82
- package/dest/contract_sync/helpers.d.ts +0 -28
- package/dest/contract_sync/helpers.d.ts.map +0 -1
- package/dest/contract_sync/helpers.js +0 -55
- package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
- package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
- package/dest/storage/tagging_store/sender_address_book_store.d.ts +0 -14
- package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +0 -1
- package/dest/storage/tagging_store/sender_address_book_store.js +0 -36
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +0 -15
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +0 -1
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +0 -99
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +0 -15
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +0 -1
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +0 -32
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +0 -11
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +0 -1
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +0 -29
- package/src/contract_function_simulator/benchmarked_node.ts +0 -103
- package/src/contract_function_simulator/oracle/oracle.ts +0 -637
- package/src/contract_function_simulator/proxied_contract_data_source.ts +0 -83
- package/src/contract_sync/contract_sync_service.ts +0 -129
- package/src/contract_sync/helpers.ts +0 -93
- package/src/storage/tagging_store/sender_address_book_store.ts +0 -48
- package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +0 -143
- package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +0 -49
- package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +0 -36
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import { MAX_KEY_VALIDATION_REQUESTS_PER_TX, MAX_NOTE_HASHES_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_TX, MAX_NULLIFIERS_PER_TX, MAX_NULLIFIER_READ_REQUESTS_PER_TX, MAX_PRIVATE_LOGS_PER_TX, NULLIFIER_TREE_HEIGHT } from '@aztec/constants';
|
|
2
2
|
import { makeTuple } from '@aztec/foundation/array';
|
|
3
3
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
4
|
+
import { allToCompletion } from '@aztec/foundation/promise';
|
|
4
5
|
import { assertLength } from '@aztec/foundation/serialize';
|
|
5
6
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
6
7
|
import { privateKernelResetDimensionsConfig } from '@aztec/noir-protocol-circuits-types/client';
|
|
7
|
-
import { KeyValidationHint, PaddedSideEffects, PrivateKernelData, PrivateKernelResetCircuitPrivateInputs, PrivateKernelResetDimensions, PrivateKernelResetHints, ReadRequestActionEnum, ReadRequestResetActions,
|
|
8
|
+
import { KeyValidationHint, PaddedSideEffects, PrivateKernelData, PrivateKernelResetCircuitPrivateInputs, PrivateKernelResetDimensions, PrivateKernelResetHints, ReadRequestActionEnum, ReadRequestResetActions, TransientDataSquashingHint, buildNoteHashReadRequestHintsFromResetActions, buildNullifierReadRequestHintsFromResetActions, buildTransientDataHints, countSquashedLogs, findPrivateKernelResetDimensions, getNoteHashReadRequestResetActions, getNullifierReadRequestResetActions, kernelStateIsForPublic, privateKernelResetDimensionNames } from '@aztec/stdlib/kernel';
|
|
8
9
|
import { collectNested } from '@aztec/stdlib/tx';
|
|
9
10
|
import { VkData } from '@aztec/stdlib/vks';
|
|
10
|
-
function collectNestedReadRequests(executionStack, extractReadRequests) {
|
|
11
|
-
return collectNested(executionStack, (executionResult)=>{
|
|
12
|
-
return extractReadRequests(executionResult).getActiveItems();
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
11
|
function getNullifierMembershipWitnessResolver(oracle) {
|
|
16
12
|
return async (nullifier)=>{
|
|
17
13
|
const res = await oracle.getNullifierMembershipWitness(nullifier);
|
|
@@ -25,10 +21,10 @@ function getNullifierMembershipWitnessResolver(oracle) {
|
|
|
25
21
|
};
|
|
26
22
|
};
|
|
27
23
|
}
|
|
28
|
-
async function
|
|
24
|
+
async function getMasterSecretKeysAndKeyTypeDomainSeparators(keyValidationRequests, numRequestsToVerify, oracle) {
|
|
29
25
|
const numRequestsToProcess = Math.min(keyValidationRequests.claimedLength, numRequestsToVerify);
|
|
30
|
-
const keysHints = await
|
|
31
|
-
const secretKeys = await oracle.getMasterSecretKey(request.request.
|
|
26
|
+
const keysHints = await allToCompletion(keyValidationRequests.array.slice(0, numRequestsToProcess).map(async ({ request })=>{
|
|
27
|
+
const secretKeys = await oracle.getMasterSecretKey(request.request.pkMHash);
|
|
32
28
|
return new KeyValidationHint(secretKeys);
|
|
33
29
|
}));
|
|
34
30
|
return padArrayEnd(keysHints, KeyValidationHint.empty(), MAX_KEY_VALIDATION_REQUESTS_PER_TX);
|
|
@@ -51,18 +47,21 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
51
47
|
this.executionStack = executionStack;
|
|
52
48
|
this.noteHashNullifierCounterMap = noteHashNullifierCounterMap;
|
|
53
49
|
this.splitCounter = splitCounter;
|
|
54
|
-
this.previousKernel = previousKernelOutput.publicInputs;
|
|
55
|
-
this.requestedDimensions = PrivateKernelResetDimensions.empty();
|
|
56
50
|
this.noteHashResetActions = ReadRequestResetActions.empty(MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
|
|
57
51
|
this.nullifierResetActions = ReadRequestResetActions.empty(MAX_NULLIFIER_READ_REQUESTS_PER_TX);
|
|
58
52
|
this.transientDataSquashingHints = makeTuple(MAX_NULLIFIERS_PER_TX, ()=>new TransientDataSquashingHint(MAX_NULLIFIERS_PER_TX, MAX_NOTE_HASHES_PER_TX));
|
|
53
|
+
this.requestedDimensions = PrivateKernelResetDimensions.empty();
|
|
54
|
+
this.previousKernel = previousKernelOutput.publicInputs;
|
|
59
55
|
this.nextIteration = executionStack[this.executionStack.length - 1]?.publicInputs;
|
|
60
56
|
}
|
|
57
|
+
getRequestedDimensions() {
|
|
58
|
+
return this.requestedDimensions;
|
|
59
|
+
}
|
|
61
60
|
needsReset() {
|
|
62
61
|
const fns = [
|
|
63
62
|
()=>this.needsResetNoteHashReadRequests(),
|
|
64
63
|
()=>this.needsResetNullifierReadRequests(),
|
|
65
|
-
()=>this.
|
|
64
|
+
()=>this.needsResetKeyValidationRequests(),
|
|
66
65
|
()=>this.needsResetTransientData()
|
|
67
66
|
];
|
|
68
67
|
if (this.nextIteration) {
|
|
@@ -87,21 +86,24 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
87
86
|
throw new Error('Reset is not required.');
|
|
88
87
|
}
|
|
89
88
|
const isInner = !!this.nextIteration;
|
|
90
|
-
// "final" reset must be done
|
|
91
|
-
// Because the code that silo note hashes can't be run repeatedly.
|
|
89
|
+
// "final" reset must be done exactly once, because siloing can't be run repeatedly.
|
|
92
90
|
// The dimensions found must be big enough to reset all values, i.e. empty remainder.
|
|
93
91
|
const allowRemainder = isInner;
|
|
94
|
-
|
|
92
|
+
// Terminal reset picks from the finalTail / finalTailToPublic catalogs; mid-tx resets always
|
|
93
|
+
// use the inner catalog. The public/private decision must match `kernelStateIsForPublic` - the
|
|
94
|
+
// same predicate the circuit inputs and the orchestrator use.
|
|
95
|
+
const mode = isInner ? 'inner' : kernelStateIsForPublic(this.previousKernel) ? 'finalTailToPublic' : 'finalTail';
|
|
96
|
+
const dimensions = findPrivateKernelResetDimensions(this.requestedDimensions, privateKernelResetDimensionsConfig, mode, allowRemainder);
|
|
95
97
|
this.reduceReadRequestActions(this.noteHashResetActions, dimensions.NOTE_HASH_PENDING_READ, dimensions.NOTE_HASH_SETTLED_READ);
|
|
96
98
|
this.reduceReadRequestActions(this.nullifierResetActions, dimensions.NULLIFIER_PENDING_READ, dimensions.NULLIFIER_SETTLED_READ);
|
|
97
99
|
// Execute all the expensive node querying operations in parallel.
|
|
98
|
-
const [previousVkMembershipWitness, noteHashReadRequestHints, nullifierReadRequestHints, keyValidationHints] = await
|
|
100
|
+
const [previousVkMembershipWitness, noteHashReadRequestHints, nullifierReadRequestHints, keyValidationHints] = await allToCompletion([
|
|
99
101
|
oracle.getVkMembershipWitness(this.previousKernelOutput.verificationKey.keyAsFields),
|
|
100
102
|
buildNoteHashReadRequestHintsFromResetActions(oracle, this.previousKernel.validationRequests.noteHashReadRequests, this.previousKernel.end.noteHashes, this.noteHashResetActions),
|
|
101
103
|
buildNullifierReadRequestHintsFromResetActions({
|
|
102
104
|
getNullifierMembershipWitness: getNullifierMembershipWitnessResolver(oracle)
|
|
103
105
|
}, this.previousKernel.validationRequests.nullifierReadRequests, this.nullifierResetActions),
|
|
104
|
-
|
|
106
|
+
getMasterSecretKeysAndKeyTypeDomainSeparators(this.previousKernel.validationRequests.scopedKeyValidationRequestsAndSeparators, dimensions.KEY_VALIDATION, oracle)
|
|
105
107
|
]);
|
|
106
108
|
const vkData = new VkData(this.previousKernelOutput.verificationKey, Number(previousVkMembershipWitness.leafIndex), previousVkMembershipWitness.siblingPath);
|
|
107
109
|
const previousKernelData = new PrivateKernelData(this.previousKernelOutput.publicInputs, vkData);
|
|
@@ -130,69 +132,112 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
130
132
|
}
|
|
131
133
|
resetActions.pendingReadHints = resetActions.pendingReadHints.slice(0, maxPending);
|
|
132
134
|
}
|
|
133
|
-
needsResetNoteHashReadRequests(
|
|
135
|
+
needsResetNoteHashReadRequests(forceReset = false) {
|
|
134
136
|
const numCurr = this.previousKernel.validationRequests.noteHashReadRequests.claimedLength;
|
|
135
137
|
const numNext = this.nextIteration ? this.nextIteration.noteHashReadRequests.claimedLength : 0;
|
|
136
|
-
const maxAmountToKeep = !this.nextIteration ||
|
|
138
|
+
const maxAmountToKeep = !this.nextIteration || forceReset ? 0 : MAX_NOTE_HASH_READ_REQUESTS_PER_TX;
|
|
137
139
|
if (numCurr + numNext <= maxAmountToKeep) {
|
|
138
140
|
return false;
|
|
139
141
|
}
|
|
140
|
-
const
|
|
141
|
-
return executionResult.publicInputs.noteHashes.getActiveItems().map((noteHash)=>new ScopedNoteHash(noteHash, executionResult.publicInputs.callContext.contractAddress));
|
|
142
|
-
});
|
|
143
|
-
const resetActions = getNoteHashReadRequestResetActions(this.previousKernel.validationRequests.noteHashReadRequests, this.previousKernel.end.noteHashes, futureNoteHashes);
|
|
142
|
+
const resetActions = getNoteHashReadRequestResetActions(this.previousKernel.validationRequests.noteHashReadRequests, this.previousKernel.end.noteHashes);
|
|
144
143
|
const numPendingReads = resetActions.pendingReadHints.length;
|
|
145
144
|
const numSettledReads = resetActions.actions.reduce((accum, action)=>accum + (action === ReadRequestActionEnum.READ_AS_SETTLED ? 1 : 0), 0);
|
|
145
|
+
const totalReadsToReset = numPendingReads + numSettledReads;
|
|
146
|
+
const minResetNeeded = numCurr + numNext - maxAmountToKeep;
|
|
147
|
+
if (totalReadsToReset < minResetNeeded) {
|
|
148
|
+
if (!this.nextIteration) {
|
|
149
|
+
// In the final reset, all note hashes have been emitted. So if we can't reset all requests, at least one
|
|
150
|
+
// pending read request doesn't match any of them.
|
|
151
|
+
throw new Error('No matching note hash found for note hash read request.');
|
|
152
|
+
} else if (!forceReset) {
|
|
153
|
+
// A pending read request can only be reset if its note hash has already been included (e.g. a parent call might
|
|
154
|
+
// be reading a note hash emitted by a child call. The read request of the parent call is included before the note
|
|
155
|
+
// hash of the child call).
|
|
156
|
+
// If we can't clear enough read requests to make room for the next iteration's reads, we're stuck.
|
|
157
|
+
throw new Error('Number of note hash read requests exceeds the limit.');
|
|
158
|
+
} else if (totalReadsToReset == 0) {
|
|
159
|
+
// It's transient data squashing asking for the read requests to be reset first (forceReset == true), and
|
|
160
|
+
// there's nothing to reset, returns false and let needsResetTransientData throw a more descriptive error.
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
// Otherwise, forceReset is true, we should proceed to reset as many as we can.
|
|
164
|
+
}
|
|
146
165
|
if (!this.nextIteration) {
|
|
166
|
+
// If there's no next iteration, we need to reset all the read requests.
|
|
147
167
|
this.noteHashResetActions = resetActions;
|
|
148
168
|
this.requestedDimensions.NOTE_HASH_PENDING_READ = numPendingReads;
|
|
149
169
|
this.requestedDimensions.NOTE_HASH_SETTLED_READ = numSettledReads;
|
|
150
170
|
} else {
|
|
151
|
-
//
|
|
171
|
+
// If there's a next iteration, only one dimension can be reset at a time.
|
|
172
|
+
// So we pick the dimension that has more read requests to reset.
|
|
152
173
|
if (numPendingReads > numSettledReads) {
|
|
174
|
+
// Reset the pending read requests.
|
|
175
|
+
const pendingOnlyActions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_PENDING ? action : ReadRequestActionEnum.SKIP), MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
|
|
176
|
+
this.noteHashResetActions = new ReadRequestResetActions(pendingOnlyActions, resetActions.pendingReadHints);
|
|
153
177
|
this.requestedDimensions.NOTE_HASH_PENDING_READ = numPendingReads;
|
|
154
|
-
this.noteHashResetActions.actions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_PENDING ? action : ReadRequestActionEnum.SKIP), MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
|
|
155
|
-
this.noteHashResetActions.pendingReadHints = resetActions.pendingReadHints;
|
|
156
178
|
} else {
|
|
179
|
+
// Reset the settled read requests.
|
|
180
|
+
const settledOnlyActions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_SETTLED ? action : ReadRequestActionEnum.SKIP), MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
|
|
181
|
+
this.noteHashResetActions = new ReadRequestResetActions(settledOnlyActions, []);
|
|
157
182
|
this.requestedDimensions.NOTE_HASH_SETTLED_READ = numSettledReads;
|
|
158
|
-
this.noteHashResetActions.actions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_SETTLED ? action : ReadRequestActionEnum.SKIP), MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
|
|
159
183
|
}
|
|
160
184
|
}
|
|
161
185
|
return true;
|
|
162
186
|
}
|
|
163
|
-
needsResetNullifierReadRequests(
|
|
187
|
+
needsResetNullifierReadRequests(forceReset = false) {
|
|
164
188
|
const numCurr = this.previousKernel.validationRequests.nullifierReadRequests.claimedLength;
|
|
165
189
|
const numNext = this.nextIteration ? this.nextIteration.nullifierReadRequests.claimedLength : 0;
|
|
166
|
-
const maxAmountToKeep = !this.nextIteration ||
|
|
190
|
+
const maxAmountToKeep = !this.nextIteration || forceReset ? 0 : MAX_NULLIFIER_READ_REQUESTS_PER_TX;
|
|
167
191
|
if (numCurr + numNext <= maxAmountToKeep) {
|
|
168
192
|
return false;
|
|
169
193
|
}
|
|
170
|
-
const
|
|
171
|
-
return executionResult.publicInputs.nullifiers.getActiveItems().map((nullifier)=>new ScopedNullifier(nullifier, executionResult.publicInputs.callContext.contractAddress));
|
|
172
|
-
});
|
|
173
|
-
const resetActions = getNullifierReadRequestResetActions(this.previousKernel.validationRequests.nullifierReadRequests, this.previousKernel.end.nullifiers, futureNullifiers);
|
|
194
|
+
const resetActions = getNullifierReadRequestResetActions(this.previousKernel.validationRequests.nullifierReadRequests, this.previousKernel.end.nullifiers);
|
|
174
195
|
const numPendingReads = resetActions.pendingReadHints.length;
|
|
175
196
|
const numSettledReads = resetActions.actions.reduce((accum, action)=>accum + (action === ReadRequestActionEnum.READ_AS_SETTLED ? 1 : 0), 0);
|
|
197
|
+
const totalReadsToReset = numPendingReads + numSettledReads;
|
|
198
|
+
const minResetNeeded = numCurr + numNext - maxAmountToKeep;
|
|
199
|
+
if (totalReadsToReset < minResetNeeded) {
|
|
200
|
+
if (!this.nextIteration) {
|
|
201
|
+
// In the final reset, all nullifiers have been emitted. So if we can't reset all requests, at least one pending
|
|
202
|
+
// read request doesn't match any of them.
|
|
203
|
+
throw new Error('No matching nullifier found for nullifier read request.');
|
|
204
|
+
} else if (!forceReset) {
|
|
205
|
+
// A pending read request can only be reset if its nullifier has already been included (e.g. a parent call might
|
|
206
|
+
// be reading a nullifier emitted by a child call. The read request of the parent call is included before the
|
|
207
|
+
// nullifier of the child call).
|
|
208
|
+
// If we can't clear enough read requests to make room for the next iteration's reads, we're stuck.
|
|
209
|
+
throw new Error('Number of nullifier read requests exceeds the limit.');
|
|
210
|
+
} else if (totalReadsToReset == 0) {
|
|
211
|
+
// It's transient data squashing asking for the read requests to be reset first (forceReset == true), and
|
|
212
|
+
// there's nothing to reset, returns false and let needsResetTransientData throw a more descriptive error.
|
|
213
|
+
return false;
|
|
214
|
+
}
|
|
215
|
+
// Otherwise, forceReset is true, we should proceed to reset as many as we can.
|
|
216
|
+
}
|
|
176
217
|
if (!this.nextIteration) {
|
|
218
|
+
// If there's no next iteration, we need to reset all the read requests.
|
|
177
219
|
this.nullifierResetActions = resetActions;
|
|
178
220
|
this.requestedDimensions.NULLIFIER_PENDING_READ = numPendingReads;
|
|
179
221
|
this.requestedDimensions.NULLIFIER_SETTLED_READ = numSettledReads;
|
|
180
222
|
} else {
|
|
181
|
-
//
|
|
223
|
+
// If there's a next iteration, we can only reset one dimension at a time.
|
|
182
224
|
if (numPendingReads > numSettledReads) {
|
|
225
|
+
// Reset the pending read requests.
|
|
226
|
+
const pendingOnlyActions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_PENDING ? action : ReadRequestActionEnum.SKIP), MAX_NULLIFIER_READ_REQUESTS_PER_TX);
|
|
227
|
+
this.nullifierResetActions = new ReadRequestResetActions(pendingOnlyActions, resetActions.pendingReadHints);
|
|
183
228
|
this.requestedDimensions.NULLIFIER_PENDING_READ = numPendingReads;
|
|
184
|
-
this.nullifierResetActions.actions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_PENDING ? action : ReadRequestActionEnum.SKIP), MAX_NULLIFIER_READ_REQUESTS_PER_TX);
|
|
185
|
-
this.nullifierResetActions.pendingReadHints = resetActions.pendingReadHints;
|
|
186
229
|
} else {
|
|
230
|
+
// Reset the settled read requests.
|
|
231
|
+
const settledOnlyActions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_SETTLED ? action : ReadRequestActionEnum.SKIP), MAX_NULLIFIER_READ_REQUESTS_PER_TX);
|
|
232
|
+
this.nullifierResetActions = new ReadRequestResetActions(settledOnlyActions, []);
|
|
187
233
|
this.requestedDimensions.NULLIFIER_SETTLED_READ = numSettledReads;
|
|
188
|
-
this.nullifierResetActions.actions = assertLength(resetActions.actions.map((action)=>action === ReadRequestActionEnum.READ_AS_SETTLED ? action : ReadRequestActionEnum.SKIP), MAX_NULLIFIER_READ_REQUESTS_PER_TX);
|
|
189
234
|
}
|
|
190
235
|
}
|
|
191
236
|
return true;
|
|
192
237
|
}
|
|
193
|
-
|
|
194
|
-
const numCurr = this.previousKernel.validationRequests.
|
|
195
|
-
const numNext = this.nextIteration ? this.nextIteration.
|
|
238
|
+
needsResetKeyValidationRequests() {
|
|
239
|
+
const numCurr = this.previousKernel.validationRequests.scopedKeyValidationRequestsAndSeparators.claimedLength;
|
|
240
|
+
const numNext = this.nextIteration ? this.nextIteration.keyValidationRequestsAndSeparators.claimedLength : 0;
|
|
196
241
|
const maxAmountToKeep = !this.nextIteration ? 0 : MAX_KEY_VALIDATION_REQUESTS_PER_TX;
|
|
197
242
|
if (numCurr + numNext <= maxAmountToKeep) {
|
|
198
243
|
return false;
|
|
@@ -201,8 +246,6 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
201
246
|
return true;
|
|
202
247
|
}
|
|
203
248
|
needsResetTransientData() {
|
|
204
|
-
// Initialize this to 0 so that needsSilo can be run.
|
|
205
|
-
this.numTransientData = 0;
|
|
206
249
|
const nextAccumNoteHashes = this.previousKernel.end.noteHashes.claimedLength + (this.nextIteration?.noteHashes.claimedLength ?? 0);
|
|
207
250
|
const noteHashWillOverflow = nextAccumNoteHashes > MAX_NOTE_HASHES_PER_TX;
|
|
208
251
|
const nextAccumNullifiers = this.previousKernel.end.nullifiers.claimedLength + (this.nextIteration?.nullifiers.claimedLength ?? 0);
|
|
@@ -212,27 +255,45 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
212
255
|
if (this.nextIteration && !noteHashWillOverflow && !nullifierWillOverflow && !logsWillOverflow) {
|
|
213
256
|
return false;
|
|
214
257
|
}
|
|
215
|
-
const futureNoteHashReads =
|
|
216
|
-
const futureNullifierReads =
|
|
217
|
-
|
|
218
|
-
// (i.e. none of the future logs are linked to the to-be-squashed note hashes).
|
|
258
|
+
const futureNoteHashReads = collectNested(this.executionStack, (executionResult)=>executionResult.publicInputs.noteHashReadRequests.getActiveItems());
|
|
259
|
+
const futureNullifierReads = collectNested(this.executionStack, (executionResult)=>executionResult.publicInputs.nullifierReadRequests.getActiveItems());
|
|
260
|
+
const futureLogs = collectNested(this.executionStack, (executionResult)=>executionResult.publicInputs.privateLogs.getActiveItems());
|
|
219
261
|
if (this.nextIteration) {
|
|
220
|
-
// If it's not the final reset, only one dimension will be reset at a time.
|
|
221
|
-
//
|
|
262
|
+
// If it's not the final reset, only one dimension will be reset at a time. Since we are resetting the transient
|
|
263
|
+
// data, the note hash and nullifier read requests in the previous kernel won't be squashed and need to be
|
|
264
|
+
// included in the future read requests.
|
|
222
265
|
futureNoteHashReads.push(...this.previousKernel.validationRequests.noteHashReadRequests.getActiveItems());
|
|
223
266
|
futureNullifierReads.push(...this.previousKernel.validationRequests.nullifierReadRequests.getActiveItems());
|
|
224
267
|
}
|
|
225
|
-
const { numTransientData, hints: transientDataSquashingHints } = buildTransientDataHints(this.previousKernel.end.noteHashes, this.previousKernel.end.nullifiers, futureNoteHashReads, futureNullifierReads, this.noteHashNullifierCounterMap, this.splitCounter);
|
|
226
|
-
if (this.nextIteration
|
|
227
|
-
const
|
|
228
|
-
const
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
268
|
+
const { numTransientData, hints: transientDataSquashingHints } = buildTransientDataHints(this.previousKernel.end.noteHashes, this.previousKernel.end.nullifiers, futureNoteHashReads, futureNullifierReads, futureLogs, this.noteHashNullifierCounterMap, this.splitCounter);
|
|
269
|
+
if (this.nextIteration) {
|
|
270
|
+
const noteHashOverflowBy = noteHashWillOverflow ? nextAccumNoteHashes - MAX_NOTE_HASHES_PER_TX - numTransientData : 0;
|
|
271
|
+
const nullifierOverflowBy = nullifierWillOverflow ? nextAccumNullifiers - MAX_NULLIFIERS_PER_TX - numTransientData : 0;
|
|
272
|
+
const numSquashedLogs = logsWillOverflow ? countSquashedLogs(this.previousKernel.end.noteHashes, this.previousKernel.end.privateLogs, transientDataSquashingHints.slice(0, numTransientData)) : 0;
|
|
273
|
+
const logsOverflowBy = logsWillOverflow ? nextAccumLogs - MAX_PRIVATE_LOGS_PER_TX - numSquashedLogs : 0;
|
|
274
|
+
if (noteHashOverflowBy > 0 || nullifierOverflowBy > 0 || logsOverflowBy > 0) {
|
|
275
|
+
// There's not enough transient data to squash to clear space for the overflow. It may be because some data is
|
|
276
|
+
// still required for read requests. Force a reset of the read requests first, and return to transient data
|
|
277
|
+
// squashing in the next round of reset.
|
|
278
|
+
// Note that clearing the read requests might not be enough to clear more space for the overflow. In this case,
|
|
279
|
+
// running the next reset will fail at the following check.
|
|
280
|
+
// Only one dimension can be reset at a time for an inner reset, so we try the note hash read requests first
|
|
281
|
+
// (which also helps with log overflow), then fall back to nullifier read requests.
|
|
282
|
+
const forceReset = true;
|
|
283
|
+
if ((noteHashOverflowBy > 0 || logsOverflowBy > 0) && this.needsResetNoteHashReadRequests(forceReset)) {
|
|
284
|
+
return true;
|
|
285
|
+
}
|
|
286
|
+
if (nullifierOverflowBy > 0 && this.needsResetNullifierReadRequests(forceReset)) {
|
|
287
|
+
return true;
|
|
288
|
+
}
|
|
289
|
+
if (noteHashWillOverflow) {
|
|
290
|
+
throw new Error('Number of note hashes exceeds the limit.');
|
|
291
|
+
}
|
|
292
|
+
if (nullifierWillOverflow) {
|
|
293
|
+
throw new Error('Number of nullifiers exceeds the limit.');
|
|
294
|
+
}
|
|
295
|
+
throw new Error('Number of private logs exceeds the limit.');
|
|
232
296
|
}
|
|
233
|
-
// Clearing the read requests might not be enough to squash the overflown data.
|
|
234
|
-
// In this case, the next iteration will fail at the above check.
|
|
235
|
-
return true;
|
|
236
297
|
}
|
|
237
298
|
this.numTransientData = numTransientData;
|
|
238
299
|
this.transientDataSquashingHints = transientDataSquashingHints;
|
|
@@ -243,8 +304,12 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
243
304
|
if (this.numTransientData === undefined) {
|
|
244
305
|
throw new Error('`needsResetTransientData` must be run before `needsSiloNoteHashes`.');
|
|
245
306
|
}
|
|
246
|
-
const
|
|
247
|
-
|
|
307
|
+
const noteHashes = this.previousKernel.end.noteHashes;
|
|
308
|
+
if (noteHashes.claimedLength > 0 && noteHashes.array[0].contractAddress.isZero()) {
|
|
309
|
+
// Already siloed.
|
|
310
|
+
return false;
|
|
311
|
+
}
|
|
312
|
+
const numToSilo = noteHashes.claimedLength - this.numTransientData;
|
|
248
313
|
this.requestedDimensions.NOTE_HASH_SILOING = numToSilo;
|
|
249
314
|
return numToSilo > 0;
|
|
250
315
|
}
|
|
@@ -252,13 +317,13 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
252
317
|
if (this.numTransientData === undefined) {
|
|
253
318
|
throw new Error('`needsResetTransientData` must be run before `needsSiloNullifiers`.');
|
|
254
319
|
}
|
|
255
|
-
const
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
const
|
|
261
|
-
this.requestedDimensions.NULLIFIER_SILOING =
|
|
320
|
+
const nullifiers = this.previousKernel.end.nullifiers;
|
|
321
|
+
if (nullifiers.claimedLength > 0 && nullifiers.array[0].contractAddress.isZero()) {
|
|
322
|
+
// Already siloed.
|
|
323
|
+
return false;
|
|
324
|
+
}
|
|
325
|
+
const numToSilo = nullifiers.claimedLength - this.numTransientData;
|
|
326
|
+
this.requestedDimensions.NULLIFIER_SILOING = numToSilo;
|
|
262
327
|
return numToSilo > 0;
|
|
263
328
|
}
|
|
264
329
|
needsSiloPrivateLogs() {
|
|
@@ -266,11 +331,12 @@ export class PrivateKernelResetPrivateInputsBuilder {
|
|
|
266
331
|
throw new Error('`needsResetTransientData` must be run before `needsSiloPrivateLogs`.');
|
|
267
332
|
}
|
|
268
333
|
const privateLogs = this.previousKernel.end.privateLogs;
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
const
|
|
334
|
+
if (privateLogs.claimedLength > 0 && privateLogs.array[0].contractAddress.isZero()) {
|
|
335
|
+
// Already siloed.
|
|
336
|
+
return false;
|
|
337
|
+
}
|
|
338
|
+
const numSquashedLogs = countSquashedLogs(this.previousKernel.end.noteHashes, privateLogs, this.transientDataSquashingHints.slice(0, this.numTransientData));
|
|
339
|
+
const numToSilo = privateLogs.claimedLength - numSquashedLogs;
|
|
274
340
|
this.requestedDimensions.PRIVATE_LOG_SILOING = numToSilo;
|
|
275
341
|
return numToSilo > 0;
|
|
276
342
|
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
3
|
+
import { PrivateCircuitPublicInputs, PrivateKernelCircuitPublicInputs, type PrivateKernelSimulateOutput } from '@aztec/stdlib/kernel';
|
|
4
|
+
import { PrivateCallExecutionResult } from '@aztec/stdlib/tx';
|
|
5
|
+
/** Builder for PrivateKernelCircuitPublicInputs with fluent API for adding side effects. */
|
|
6
|
+
export declare class PrivateKernelCircuitPublicInputsBuilder {
|
|
7
|
+
private contractAddress;
|
|
8
|
+
private noteHashes;
|
|
9
|
+
private nullifiers;
|
|
10
|
+
private noteHashReadRequests;
|
|
11
|
+
private nullifierReadRequests;
|
|
12
|
+
private keyValidationRequests;
|
|
13
|
+
private privateLogs;
|
|
14
|
+
private nextCounter;
|
|
15
|
+
constructor(contractAddress?: AztecAddress, startCounter?: number);
|
|
16
|
+
private getCounter;
|
|
17
|
+
/** Adds a note hash to the accumulated data. Defaults are generated randomly. */
|
|
18
|
+
addNoteHash(opts?: {
|
|
19
|
+
value?: Fr;
|
|
20
|
+
counter?: number;
|
|
21
|
+
contractAddress?: AztecAddress;
|
|
22
|
+
}): this;
|
|
23
|
+
/** Adds a nullifier to the accumulated data. Defaults are generated randomly. */
|
|
24
|
+
addNullifier(opts?: {
|
|
25
|
+
value?: Fr;
|
|
26
|
+
noteHash?: Fr;
|
|
27
|
+
counter?: number;
|
|
28
|
+
contractAddress?: AztecAddress;
|
|
29
|
+
}): this;
|
|
30
|
+
/** Adds a pending note hash read request (non-empty contract address, can match a pending note hash). */
|
|
31
|
+
addPendingNoteHashReadRequest(opts?: {
|
|
32
|
+
value?: Fr;
|
|
33
|
+
counter?: number;
|
|
34
|
+
contractAddress?: AztecAddress;
|
|
35
|
+
}): this;
|
|
36
|
+
/** Adds a settled note hash read request (empty contract address, resolved against the note hash tree). */
|
|
37
|
+
addSettledNoteHashReadRequest(opts?: {
|
|
38
|
+
value?: Fr;
|
|
39
|
+
counter?: number;
|
|
40
|
+
}): this;
|
|
41
|
+
/** Adds a pending nullifier read request (non-empty contract address, can match a pending nullifier). */
|
|
42
|
+
addPendingNullifierReadRequest(opts?: {
|
|
43
|
+
value?: Fr;
|
|
44
|
+
counter?: number;
|
|
45
|
+
contractAddress?: AztecAddress;
|
|
46
|
+
}): this;
|
|
47
|
+
/** Adds a settled nullifier read request (empty contract address, resolved against the nullifier tree). */
|
|
48
|
+
addSettledNullifierReadRequest(opts?: {
|
|
49
|
+
value?: Fr;
|
|
50
|
+
counter?: number;
|
|
51
|
+
}): this;
|
|
52
|
+
/** Adds a key validation request to validation requests. */
|
|
53
|
+
addKeyValidationRequest(opts?: {
|
|
54
|
+
contractAddress?: AztecAddress;
|
|
55
|
+
}): this;
|
|
56
|
+
/** Adds a private log to the accumulated data. Defaults are generated randomly. */
|
|
57
|
+
addPrivateLog(opts?: {
|
|
58
|
+
noteHashCounter?: number;
|
|
59
|
+
counter?: number;
|
|
60
|
+
contractAddress?: AztecAddress;
|
|
61
|
+
}): this;
|
|
62
|
+
/** Builds the PrivateKernelCircuitPublicInputs with all added side effects. */
|
|
63
|
+
build(): PrivateKernelCircuitPublicInputs;
|
|
64
|
+
}
|
|
65
|
+
/** Builder for PrivateCircuitPublicInputs (call-level) with fluent API for adding side effects. */
|
|
66
|
+
export declare class PrivateCircuitPublicInputsBuilder {
|
|
67
|
+
private contractAddress;
|
|
68
|
+
private noteHashes;
|
|
69
|
+
private nullifiers;
|
|
70
|
+
private noteHashReadRequests;
|
|
71
|
+
private nullifierReadRequests;
|
|
72
|
+
private keyValidationRequests;
|
|
73
|
+
private privateLogs;
|
|
74
|
+
private nextCounter;
|
|
75
|
+
constructor(contractAddress?: AztecAddress, startCounter?: number);
|
|
76
|
+
private getCounter;
|
|
77
|
+
/** Adds a note hash. Defaults are generated randomly. */
|
|
78
|
+
addNoteHash(opts?: {
|
|
79
|
+
value?: Fr;
|
|
80
|
+
counter?: number;
|
|
81
|
+
}): this;
|
|
82
|
+
/** Adds a nullifier. Defaults are generated randomly. */
|
|
83
|
+
addNullifier(opts?: {
|
|
84
|
+
value?: Fr;
|
|
85
|
+
noteHash?: Fr;
|
|
86
|
+
counter?: number;
|
|
87
|
+
}): this;
|
|
88
|
+
/** Adds a pending note hash read request (non-empty contract address, can match a pending note hash). */
|
|
89
|
+
addPendingNoteHashReadRequest(opts?: {
|
|
90
|
+
value?: Fr;
|
|
91
|
+
counter?: number;
|
|
92
|
+
}): this;
|
|
93
|
+
/** Adds a settled note hash read request (empty contract address, resolved against the note hash tree). */
|
|
94
|
+
addSettledNoteHashReadRequest(opts?: {
|
|
95
|
+
value?: Fr;
|
|
96
|
+
counter?: number;
|
|
97
|
+
}): this;
|
|
98
|
+
/** Adds a pending nullifier read request (non-empty contract address, can match a pending nullifier). */
|
|
99
|
+
addPendingNullifierReadRequest(opts?: {
|
|
100
|
+
value?: Fr;
|
|
101
|
+
counter?: number;
|
|
102
|
+
}): this;
|
|
103
|
+
/** Adds a settled nullifier read request (empty contract address, resolved against the nullifier tree). */
|
|
104
|
+
addSettledNullifierReadRequest(opts?: {
|
|
105
|
+
value?: Fr;
|
|
106
|
+
counter?: number;
|
|
107
|
+
}): this;
|
|
108
|
+
/** Adds a key validation request. */
|
|
109
|
+
addKeyValidationRequest(): this;
|
|
110
|
+
/** Adds a private log. Defaults are generated randomly. */
|
|
111
|
+
addPrivateLog(opts?: {
|
|
112
|
+
noteHashCounter?: number;
|
|
113
|
+
counter?: number;
|
|
114
|
+
}): this;
|
|
115
|
+
/** Builds the PrivateCircuitPublicInputs with all added side effects. */
|
|
116
|
+
build(): PrivateCircuitPublicInputs;
|
|
117
|
+
}
|
|
118
|
+
/** Wraps a PrivateKernelCircuitPublicInputs in a PrivateKernelSimulateOutput. */
|
|
119
|
+
export declare function makeKernelOutput(publicInputs?: PrivateKernelCircuitPublicInputs): PrivateKernelSimulateOutput<PrivateKernelCircuitPublicInputs>;
|
|
120
|
+
/** Wraps a PrivateCircuitPublicInputs in a PrivateCallExecutionResult. */
|
|
121
|
+
export declare function makeExecutionResult(publicInputs?: PrivateCircuitPublicInputs): PrivateCallExecutionResult;
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF91dGlscy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ByaXZhdGVfa2VybmVsL2hpbnRzL3Rlc3RfdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBTUwsMEJBQTBCLEVBQzFCLGdDQUFnQyxFQUNoQyxLQUFLLDJCQUEyQixFQU1qQyxNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBYTlELDRGQUE0RjtBQUM1RixxQkFBYSx1Q0FBdUM7SUFVaEQsT0FBTyxDQUFDLGVBQWU7SUFUekIsT0FBTyxDQUFDLFVBQVUsQ0FBd0I7SUFDMUMsT0FBTyxDQUFDLFVBQVUsQ0FBeUI7SUFDM0MsT0FBTyxDQUFDLG9CQUFvQixDQUEyQjtJQUN2RCxPQUFPLENBQUMscUJBQXFCLENBQTJCO0lBQ3hELE9BQU8sQ0FBQyxxQkFBcUIsQ0FBZ0Q7SUFDN0UsT0FBTyxDQUFDLFdBQVcsQ0FBOEI7SUFDakQsT0FBTyxDQUFDLFdBQVcsQ0FBUztJQUU1QixZQUNVLGVBQWUsR0FBRSxZQUF1QyxFQUNoRSxZQUFZLFNBQUksRUFHakI7SUFFRCxPQUFPLENBQUMsVUFBVTtJQVFsQixpRkFBaUY7SUFDakYsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQUMsZUFBZSxDQUFDLEVBQUUsWUFBWSxDQUFBO0tBQUUsR0FBRyxJQUFJLENBTXpGO0lBRUQsaUZBQWlGO0lBQ2pGLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUFDLFFBQVEs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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test_utils.d.ts","sourceRoot":"","sources":["../../../src/private_kernel/hints/test_utils.ts"],"names":[],"mappings":"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"}
|