@aztec/pxe 0.0.1-commit.fce3e4f → 0.0.1-commit.ffe5b04ea
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/access_scopes.d.ts +9 -0
- package/dest/access_scopes.d.ts.map +1 -0
- package/dest/access_scopes.js +6 -0
- package/dest/bin/check_oracle_version.js +105 -15
- package/dest/block_synchronizer/block_synchronizer.d.ts +45 -0
- package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
- package/dest/block_synchronizer/block_synchronizer.js +153 -0
- package/dest/block_synchronizer/index.d.ts +2 -0
- package/dest/block_synchronizer/index.d.ts.map +1 -0
- package/dest/block_synchronizer/index.js +1 -0
- package/dest/config/index.d.ts +7 -5
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +18 -1
- package/dest/config/package_info.js +1 -1
- package/dest/contract_function_simulator/benchmarked_node.d.ts +9 -0
- package/dest/contract_function_simulator/benchmarked_node.d.ts.map +1 -0
- package/dest/contract_function_simulator/benchmarked_node.js +77 -0
- package/dest/contract_function_simulator/contract_function_simulator.d.ts +76 -24
- package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
- package/dest/contract_function_simulator/contract_function_simulator.js +223 -78
- package/dest/contract_function_simulator/execution_note_cache.d.ts +21 -11
- package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
- package/dest/contract_function_simulator/execution_note_cache.js +49 -31
- package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +6 -6
- package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
- package/dest/contract_function_simulator/execution_tagging_index_cache.js +4 -4
- package/dest/contract_function_simulator/hashed_values_cache.d.ts +2 -2
- package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -1
- package/dest/contract_function_simulator/index.d.ts +2 -2
- package/dest/contract_function_simulator/index.d.ts.map +1 -1
- package/dest/contract_function_simulator/index.js +1 -1
- package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +5 -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 +7 -4
- package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +5 -4
- 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 +7 -6
- package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +2 -2
- 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 +1 -1
- package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +6 -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 +7 -4
- package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +4 -10
- package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
- package/dest/contract_function_simulator/noir-structs/utility_context.js +7 -18
- package/dest/contract_function_simulator/oracle/interfaces.d.ts +61 -50
- package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +4 -2
- 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 -1
- package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +11 -7
- package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/note_packing_utils.js +14 -10
- package/dest/contract_function_simulator/oracle/oracle.d.ts +44 -42
- package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/oracle.js +191 -113
- package/dest/contract_function_simulator/oracle/private_execution.d.ts +2 -27
- package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/private_execution.js +3 -39
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +69 -60
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/private_execution_oracle.js +131 -88
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +132 -54
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +231 -102
- package/dest/contract_function_simulator/pick_notes.d.ts +2 -2
- package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
- package/dest/contract_function_simulator/pick_notes.js +1 -1
- package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +4 -4
- package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
- package/dest/contract_function_simulator/proxied_contract_data_source.js +23 -5
- package/dest/contract_logging.d.ts +22 -0
- package/dest/contract_logging.d.ts.map +1 -0
- package/dest/contract_logging.js +23 -0
- package/dest/contract_sync/contract_sync_service.d.ts +43 -0
- package/dest/contract_sync/contract_sync_service.d.ts.map +1 -0
- package/dest/contract_sync/contract_sync_service.js +97 -0
- package/dest/contract_sync/helpers.d.ts +29 -0
- package/dest/contract_sync/helpers.d.ts.map +1 -0
- package/dest/contract_sync/helpers.js +55 -0
- package/dest/debug/pxe_debug_utils.d.ts +45 -0
- package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
- package/dest/debug/pxe_debug_utils.js +48 -0
- package/dest/entrypoints/client/bundle/index.d.ts +4 -2
- package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
- package/dest/entrypoints/client/bundle/index.js +3 -1
- package/dest/entrypoints/client/bundle/utils.d.ts +1 -1
- package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
- package/dest/entrypoints/client/bundle/utils.js +32 -9
- package/dest/entrypoints/client/lazy/index.d.ts +4 -2
- package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
- package/dest/entrypoints/client/lazy/index.js +3 -1
- 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 +33 -10
- package/dest/entrypoints/pxe_creation_options.d.ts +7 -3
- package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
- package/dest/entrypoints/server/index.d.ts +6 -2
- package/dest/entrypoints/server/index.d.ts.map +1 -1
- package/dest/entrypoints/server/index.js +5 -1
- package/dest/entrypoints/server/utils.d.ts +1 -1
- package/dest/entrypoints/server/utils.d.ts.map +1 -1
- package/dest/entrypoints/server/utils.js +39 -16
- package/dest/error_enriching.d.ts +4 -4
- package/dest/error_enriching.d.ts.map +1 -1
- package/dest/error_enriching.js +6 -6
- package/dest/events/event_service.d.ts +15 -0
- package/dest/events/event_service.d.ts.map +1 -0
- package/dest/events/event_service.js +44 -0
- package/dest/events/index.d.ts +2 -0
- package/dest/events/index.d.ts.map +1 -0
- package/dest/events/index.js +1 -0
- package/dest/events/private_event_filter_validator.d.ts +9 -0
- package/dest/events/private_event_filter_validator.d.ts.map +1 -0
- package/dest/events/private_event_filter_validator.js +38 -0
- package/dest/job_coordinator/job_coordinator.d.ts +75 -0
- package/dest/job_coordinator/job_coordinator.d.ts.map +1 -0
- package/dest/job_coordinator/job_coordinator.js +94 -0
- package/dest/logs/log_service.d.ts +29 -0
- package/dest/logs/log_service.d.ts.map +1 -0
- package/dest/logs/log_service.js +118 -0
- package/dest/notes/index.d.ts +2 -0
- package/dest/notes/index.d.ts.map +1 -0
- package/dest/notes/index.js +1 -0
- package/dest/notes/note_service.d.ts +49 -0
- package/dest/notes/note_service.d.ts.map +1 -0
- package/dest/notes/note_service.js +148 -0
- package/dest/notes_filter.d.ts +25 -0
- package/dest/notes_filter.d.ts.map +1 -0
- package/dest/notes_filter.js +4 -0
- package/dest/oracle_version.d.ts +3 -3
- package/dest/oracle_version.d.ts.map +1 -1
- package/dest/oracle_version.js +5 -4
- 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 +3 -3
- package/dest/private_kernel/hints/index.d.ts.map +1 -1
- package/dest/private_kernel/hints/index.js +2 -2
- package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +29 -0
- package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -0
- package/dest/private_kernel/hints/{build_private_kernel_reset_private_inputs.js → private_kernel_reset_private_inputs_builder.js} +141 -74
- 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 +203 -0
- package/dest/private_kernel/private_kernel_execution_prover.d.ts +3 -2
- package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
- package/dest/private_kernel/private_kernel_execution_prover.js +28 -21
- package/dest/private_kernel/private_kernel_oracle.d.ts +26 -25
- package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
- package/dest/private_kernel/private_kernel_oracle.js +94 -2
- package/dest/pxe.d.ts +114 -103
- package/dest/pxe.d.ts.map +1 -1
- package/dest/pxe.js +263 -256
- package/dest/storage/address_store/address_store.d.ts +11 -0
- package/dest/storage/address_store/address_store.d.ts.map +1 -0
- package/dest/storage/{address_data_provider/address_data_provider.js → address_store/address_store.js} +13 -12
- package/dest/storage/address_store/index.d.ts +2 -0
- package/dest/storage/address_store/index.d.ts.map +1 -0
- package/dest/storage/address_store/index.js +1 -0
- package/dest/storage/anchor_block_store/anchor_block_store.d.ts +17 -0
- package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -0
- package/dest/storage/{sync_data_provider/sync_data_provider.js → anchor_block_store/anchor_block_store.js} +10 -10
- package/dest/storage/{sync_data_provider → anchor_block_store}/index.d.ts +2 -2
- package/dest/storage/anchor_block_store/index.d.ts.map +1 -0
- package/dest/storage/anchor_block_store/index.js +1 -0
- package/dest/storage/capsule_store/capsule_store.d.ts +72 -0
- package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -0
- package/dest/storage/capsule_store/capsule_store.js +253 -0
- package/dest/storage/capsule_store/index.d.ts +2 -0
- package/dest/storage/capsule_store/index.d.ts.map +1 -0
- package/dest/storage/capsule_store/index.js +1 -0
- package/dest/storage/contract_store/contract_store.d.ts +93 -0
- package/dest/storage/contract_store/contract_store.d.ts.map +1 -0
- package/dest/storage/contract_store/contract_store.js +309 -0
- package/dest/storage/contract_store/index.d.ts +2 -0
- package/dest/storage/contract_store/index.d.ts.map +1 -0
- package/dest/storage/contract_store/index.js +1 -0
- package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.d.ts +1 -1
- package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -0
- package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.js +1 -1
- package/dest/storage/index.d.ts +8 -8
- package/dest/storage/index.d.ts.map +1 -1
- package/dest/storage/index.js +7 -7
- package/dest/storage/metadata.d.ts +1 -1
- package/dest/storage/metadata.js +1 -1
- package/dest/storage/note_store/index.d.ts +3 -0
- package/dest/storage/note_store/index.d.ts.map +1 -0
- package/dest/storage/note_store/index.js +2 -0
- package/dest/storage/note_store/note_store.d.ts +83 -0
- package/dest/storage/note_store/note_store.d.ts.map +1 -0
- package/dest/storage/note_store/note_store.js +343 -0
- package/dest/storage/note_store/stored_note.d.ts +16 -0
- package/dest/storage/note_store/stored_note.d.ts.map +1 -0
- package/dest/storage/note_store/stored_note.js +43 -0
- package/dest/storage/private_event_store/private_event_store.d.ts +91 -0
- package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -0
- package/dest/storage/private_event_store/private_event_store.js +273 -0
- package/dest/storage/private_event_store/stored_private_event.d.ts +23 -0
- package/dest/storage/private_event_store/stored_private_event.d.ts.map +1 -0
- package/dest/storage/private_event_store/stored_private_event.js +56 -0
- package/dest/storage/tagging_store/index.d.ts +4 -0
- package/dest/storage/tagging_store/index.d.ts.map +1 -0
- package/dest/storage/tagging_store/index.js +3 -0
- package/dest/storage/tagging_store/recipient_tagging_store.d.ts +28 -0
- package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -0
- package/dest/storage/tagging_store/recipient_tagging_store.js +111 -0
- package/dest/storage/tagging_store/sender_address_book_store.d.ts +14 -0
- package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +1 -0
- package/dest/storage/tagging_store/sender_address_book_store.js +36 -0
- package/dest/storage/tagging_store/sender_tagging_store.d.ts +77 -0
- package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -0
- package/dest/storage/tagging_store/sender_tagging_store.js +348 -0
- package/dest/tagging/constants.d.ts +2 -2
- package/dest/tagging/constants.d.ts.map +1 -1
- package/dest/tagging/constants.js +10 -2
- package/dest/tagging/get_all_logs_by_tags.d.ts +24 -0
- package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -0
- package/dest/tagging/get_all_logs_by_tags.js +60 -0
- package/dest/tagging/index.d.ts +16 -6
- package/dest/tagging/index.d.ts.map +1 -1
- package/dest/tagging/index.js +15 -5
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +14 -0
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -0
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +99 -0
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
- package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +14 -0
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -0
- package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +33 -0
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +17 -0
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -0
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +71 -0
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +11 -0
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -0
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +29 -0
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +18 -0
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +59 -0
- package/package.json +28 -19
- package/src/access_scopes.ts +9 -0
- package/src/bin/check_oracle_version.ts +131 -20
- package/src/block_synchronizer/block_synchronizer.ts +178 -0
- package/src/block_synchronizer/index.ts +1 -0
- package/src/config/index.ts +18 -4
- package/src/config/package_info.ts +1 -1
- package/src/contract_function_simulator/benchmarked_node.ts +103 -0
- package/src/contract_function_simulator/contract_function_simulator.ts +385 -110
- package/src/contract_function_simulator/execution_note_cache.ts +51 -28
- package/src/contract_function_simulator/execution_tagging_index_cache.ts +6 -6
- package/src/contract_function_simulator/hashed_values_cache.ts +1 -1
- package/src/contract_function_simulator/index.ts +1 -1
- package/src/contract_function_simulator/noir-structs/event_validation_request.ts +7 -3
- package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +6 -5
- package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +1 -1
- package/src/contract_function_simulator/noir-structs/note_validation_request.ts +6 -3
- package/src/contract_function_simulator/noir-structs/utility_context.ts +6 -25
- package/src/contract_function_simulator/oracle/interfaces.ts +70 -52
- package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +1 -1
- package/src/contract_function_simulator/oracle/note_packing_utils.ts +27 -13
- package/src/contract_function_simulator/oracle/oracle.ts +213 -131
- package/src/contract_function_simulator/oracle/private_execution.ts +3 -69
- package/src/contract_function_simulator/oracle/private_execution_oracle.ts +182 -122
- package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +366 -114
- package/src/contract_function_simulator/pick_notes.ts +1 -1
- package/src/contract_function_simulator/proxied_contract_data_source.ts +24 -7
- package/src/contract_logging.ts +39 -0
- package/src/contract_sync/contract_sync_service.ts +152 -0
- package/src/contract_sync/helpers.ts +98 -0
- package/src/debug/pxe_debug_utils.ts +93 -0
- package/src/entrypoints/client/bundle/index.ts +3 -1
- package/src/entrypoints/client/bundle/utils.ts +24 -17
- package/src/entrypoints/client/lazy/index.ts +3 -1
- package/src/entrypoints/client/lazy/utils.ts +25 -18
- package/src/entrypoints/pxe_creation_options.ts +6 -2
- package/src/entrypoints/server/index.ts +5 -1
- package/src/entrypoints/server/utils.ts +33 -41
- package/src/error_enriching.ts +7 -15
- package/src/events/event_service.ts +71 -0
- package/src/events/index.ts +1 -0
- package/src/events/private_event_filter_validator.ts +46 -0
- package/src/job_coordinator/job_coordinator.ts +150 -0
- package/src/logs/log_service.ts +213 -0
- package/src/notes/index.ts +1 -0
- package/src/notes/note_service.ts +196 -0
- package/src/notes_filter.ts +26 -0
- package/src/oracle_version.ts +5 -4
- 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 +2 -2
- package/src/private_kernel/hints/{build_private_kernel_reset_private_inputs.ts → private_kernel_reset_private_inputs_builder.ts} +197 -139
- package/src/private_kernel/hints/test_utils.ts +325 -0
- package/src/private_kernel/private_kernel_execution_prover.ts +32 -23
- package/src/private_kernel/private_kernel_oracle.ts +118 -37
- package/src/pxe.ts +403 -347
- package/src/storage/{address_data_provider/address_data_provider.ts → address_store/address_store.ts} +16 -16
- package/src/storage/address_store/index.ts +1 -0
- package/src/storage/{sync_data_provider/sync_data_provider.ts → anchor_block_store/anchor_block_store.ts} +10 -11
- package/src/storage/anchor_block_store/index.ts +1 -0
- package/src/storage/capsule_store/capsule_store.ts +315 -0
- package/src/storage/capsule_store/index.ts +1 -0
- package/src/storage/contract_store/contract_store.ts +429 -0
- package/src/storage/contract_store/index.ts +1 -0
- package/src/storage/{contract_data_provider → contract_store}/private_functions_tree.ts +1 -1
- package/src/storage/index.ts +7 -7
- package/src/storage/metadata.ts +1 -1
- package/src/storage/note_store/index.ts +2 -0
- package/src/storage/note_store/note_store.ts +418 -0
- package/src/storage/note_store/stored_note.ts +48 -0
- package/src/storage/private_event_store/private_event_store.ts +384 -0
- package/src/storage/private_event_store/stored_private_event.ts +73 -0
- package/src/storage/tagging_store/index.ts +3 -0
- package/src/storage/tagging_store/recipient_tagging_store.ts +143 -0
- package/src/storage/tagging_store/sender_address_book_store.ts +48 -0
- package/src/storage/tagging_store/sender_tagging_store.ts +429 -0
- package/src/tagging/constants.ts +10 -2
- package/src/tagging/get_all_logs_by_tags.ts +92 -0
- package/src/tagging/index.ts +18 -5
- package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +140 -0
- package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
- package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +44 -0
- package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +94 -0
- package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +36 -0
- package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +75 -0
- package/dest/contract_function_simulator/execution_data_provider.d.ts +0 -265
- package/dest/contract_function_simulator/execution_data_provider.d.ts.map +0 -1
- package/dest/contract_function_simulator/execution_data_provider.js +0 -14
- package/dest/contract_function_simulator/proxied_node.d.ts +0 -9
- package/dest/contract_function_simulator/proxied_node.d.ts.map +0 -1
- package/dest/contract_function_simulator/proxied_node.js +0 -27
- package/dest/contract_function_simulator/pxe_oracle_interface.d.ts +0 -122
- package/dest/contract_function_simulator/pxe_oracle_interface.d.ts.map +0 -1
- package/dest/contract_function_simulator/pxe_oracle_interface.js +0 -694
- package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
- package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
- 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/private_kernel/private_kernel_oracle_impl.d.ts +0 -45
- package/dest/private_kernel/private_kernel_oracle_impl.d.ts.map +0 -1
- package/dest/private_kernel/private_kernel_oracle_impl.js +0 -86
- package/dest/storage/address_data_provider/address_data_provider.d.ts +0 -11
- package/dest/storage/address_data_provider/address_data_provider.d.ts.map +0 -1
- package/dest/storage/address_data_provider/index.d.ts +0 -2
- package/dest/storage/address_data_provider/index.d.ts.map +0 -1
- package/dest/storage/address_data_provider/index.js +0 -1
- package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +0 -25
- package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +0 -1
- package/dest/storage/capsule_data_provider/capsule_data_provider.js +0 -118
- package/dest/storage/capsule_data_provider/index.d.ts +0 -2
- package/dest/storage/capsule_data_provider/index.d.ts.map +0 -1
- package/dest/storage/capsule_data_provider/index.js +0 -1
- package/dest/storage/contract_data_provider/contract_data_provider.d.ts +0 -64
- package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +0 -1
- package/dest/storage/contract_data_provider/contract_data_provider.js +0 -193
- package/dest/storage/contract_data_provider/index.d.ts +0 -2
- package/dest/storage/contract_data_provider/index.d.ts.map +0 -1
- package/dest/storage/contract_data_provider/index.js +0 -1
- package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +0 -1
- package/dest/storage/note_data_provider/index.d.ts +0 -3
- package/dest/storage/note_data_provider/index.d.ts.map +0 -1
- package/dest/storage/note_data_provider/index.js +0 -2
- package/dest/storage/note_data_provider/note_data_provider.d.ts +0 -83
- package/dest/storage/note_data_provider/note_data_provider.d.ts.map +0 -1
- package/dest/storage/note_data_provider/note_data_provider.js +0 -311
- package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts +0 -37
- package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts.map +0 -1
- package/dest/storage/private_event_data_provider/private_event_data_provider.js +0 -105
- package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
- package/dest/storage/sync_data_provider/index.js +0 -1
- package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -10
- package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
- package/dest/storage/tagging_data_provider/index.d.ts +0 -2
- package/dest/storage/tagging_data_provider/index.d.ts.map +0 -1
- package/dest/storage/tagging_data_provider/index.js +0 -1
- package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -40
- package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
- package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -89
- package/dest/synchronizer/index.d.ts +0 -2
- package/dest/synchronizer/index.d.ts.map +0 -1
- package/dest/synchronizer/index.js +0 -1
- package/dest/synchronizer/synchronizer.d.ts +0 -35
- package/dest/synchronizer/synchronizer.d.ts.map +0 -1
- package/dest/synchronizer/synchronizer.js +0 -101
- package/dest/tagging/siloed_tag.d.ts +0 -14
- package/dest/tagging/siloed_tag.d.ts.map +0 -1
- package/dest/tagging/siloed_tag.js +0 -20
- package/dest/tagging/tag.d.ts +0 -12
- package/dest/tagging/tag.d.ts.map +0 -1
- package/dest/tagging/tag.js +0 -17
- package/dest/tagging/utils.d.ts +0 -18
- package/dest/tagging/utils.d.ts.map +0 -1
- package/dest/tagging/utils.js +0 -24
- package/src/contract_function_simulator/execution_data_provider.ts +0 -333
- package/src/contract_function_simulator/proxied_node.ts +0 -33
- package/src/contract_function_simulator/pxe_oracle_interface.ts +0 -1008
- package/src/private_kernel/private_kernel_oracle_impl.ts +0 -132
- package/src/storage/address_data_provider/index.ts +0 -1
- package/src/storage/capsule_data_provider/capsule_data_provider.ts +0 -147
- package/src/storage/capsule_data_provider/index.ts +0 -1
- package/src/storage/contract_data_provider/contract_data_provider.ts +0 -277
- package/src/storage/contract_data_provider/index.ts +0 -1
- package/src/storage/note_data_provider/index.ts +0 -2
- package/src/storage/note_data_provider/note_data_provider.ts +0 -399
- package/src/storage/private_event_data_provider/private_event_data_provider.ts +0 -143
- package/src/storage/sync_data_provider/index.ts +0 -1
- package/src/storage/tagging_data_provider/index.ts +0 -1
- package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -120
- package/src/synchronizer/index.ts +0 -1
- package/src/synchronizer/synchronizer.ts +0 -120
- package/src/tagging/siloed_tag.ts +0 -22
- package/src/tagging/tag.ts +0 -16
- package/src/tagging/utils.ts +0 -31
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
+
import { Point } from '@aztec/foundation/curves/grumpkin';
|
|
2
4
|
import {
|
|
3
5
|
type ACIRCallback,
|
|
4
6
|
type ACVMField,
|
|
@@ -10,11 +12,11 @@ import {
|
|
|
10
12
|
} from '@aztec/simulator/client';
|
|
11
13
|
import { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
12
14
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
15
|
+
import { BlockHash } from '@aztec/stdlib/block';
|
|
13
16
|
import { ContractClassLog, ContractClassLogFields } from '@aztec/stdlib/logs';
|
|
14
|
-
import { MerkleTreeId } from '@aztec/stdlib/trees';
|
|
15
17
|
|
|
16
18
|
import type { IMiscOracle, IPrivateExecutionOracle, IUtilityExecutionOracle } from './interfaces.js';
|
|
17
|
-
import {
|
|
19
|
+
import { packAsHintedNote } from './note_packing_utils.js';
|
|
18
20
|
|
|
19
21
|
export class UnavailableOracleError extends Error {
|
|
20
22
|
constructor(oracleName: string) {
|
|
@@ -67,12 +69,12 @@ export class Oracle {
|
|
|
67
69
|
name => !excludedProps.includes(name as (typeof excludedProps)[number]),
|
|
68
70
|
);
|
|
69
71
|
|
|
70
|
-
// Validate oracle names - these must be prefixed with either "
|
|
72
|
+
// Validate oracle names - these must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate their scope
|
|
71
73
|
// and must correspond to a function on the Oracle class.
|
|
72
74
|
oracleNames.forEach(name => {
|
|
73
|
-
if (!name.startsWith('
|
|
75
|
+
if (!name.startsWith('aztec_prv_') && !name.startsWith('aztec_utl_')) {
|
|
74
76
|
throw new Error(
|
|
75
|
-
`Oracle function "${name}" must be prefixed with either "
|
|
77
|
+
`Oracle function "${name}" must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate its scope`,
|
|
76
78
|
);
|
|
77
79
|
}
|
|
78
80
|
|
|
@@ -90,41 +92,46 @@ export class Oracle {
|
|
|
90
92
|
}, {} as ACIRCallback);
|
|
91
93
|
}
|
|
92
94
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
+
// eslint-disable-next-line camelcase
|
|
96
|
+
aztec_utl_assertCompatibleOracleVersion([version]: ACVMField[]) {
|
|
97
|
+
this.handlerAsMisc().assertCompatibleOracleVersion(Fr.fromString(version).toNumber());
|
|
95
98
|
return Promise.resolve([]);
|
|
96
99
|
}
|
|
97
100
|
|
|
98
|
-
|
|
99
|
-
|
|
101
|
+
// eslint-disable-next-line camelcase
|
|
102
|
+
aztec_utl_getRandomField(): Promise<ACVMField[]> {
|
|
103
|
+
const val = this.handlerAsMisc().getRandomField();
|
|
100
104
|
return Promise.resolve([toACVMField(val)]);
|
|
101
105
|
}
|
|
102
106
|
|
|
103
|
-
|
|
104
|
-
|
|
107
|
+
// eslint-disable-next-line camelcase
|
|
108
|
+
aztec_prv_storeInExecutionCache(values: ACVMField[], [hash]: ACVMField[]): Promise<ACVMField[]> {
|
|
109
|
+
this.handlerAsPrivate().storeInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
|
|
105
110
|
return Promise.resolve([]);
|
|
106
111
|
}
|
|
107
112
|
|
|
108
|
-
|
|
109
|
-
|
|
113
|
+
// eslint-disable-next-line camelcase
|
|
114
|
+
async aztec_prv_loadFromExecutionCache([returnsHash]: ACVMField[]): Promise<ACVMField[][]> {
|
|
115
|
+
const values = await this.handlerAsPrivate().loadFromExecutionCache(Fr.fromString(returnsHash));
|
|
110
116
|
return [values.map(toACVMField)];
|
|
111
117
|
}
|
|
112
118
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
119
|
+
// eslint-disable-next-line camelcase
|
|
120
|
+
aztec_utl_getUtilityContext(): Promise<(ACVMField | ACVMField[])[]> {
|
|
121
|
+
const context = this.handlerAsUtility().getUtilityContext();
|
|
122
|
+
return Promise.resolve(context.toNoirRepresentation());
|
|
116
123
|
}
|
|
117
124
|
|
|
118
|
-
|
|
119
|
-
|
|
125
|
+
// eslint-disable-next-line camelcase
|
|
126
|
+
async aztec_utl_getKeyValidationRequest([pkMHash]: ACVMField[]): Promise<ACVMField[]> {
|
|
127
|
+
const keyValidationRequest = await this.handlerAsUtility().getKeyValidationRequest(Fr.fromString(pkMHash));
|
|
120
128
|
|
|
121
129
|
return keyValidationRequest.toFields().map(toACVMField);
|
|
122
130
|
}
|
|
123
131
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
);
|
|
132
|
+
// eslint-disable-next-line camelcase
|
|
133
|
+
async aztec_utl_getContractInstance([address]: ACVMField[]): Promise<ACVMField[]> {
|
|
134
|
+
const instance = await this.handlerAsUtility().getContractInstance(AztecAddress.fromField(Fr.fromString(address)));
|
|
128
135
|
|
|
129
136
|
return [
|
|
130
137
|
instance.salt,
|
|
@@ -135,106 +142,132 @@ export class Oracle {
|
|
|
135
142
|
].map(toACVMField);
|
|
136
143
|
}
|
|
137
144
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
[
|
|
141
|
-
[
|
|
145
|
+
// eslint-disable-next-line camelcase
|
|
146
|
+
async aztec_utl_getNoteHashMembershipWitness(
|
|
147
|
+
[anchorBlockHash]: ACVMField[],
|
|
148
|
+
[noteHash]: ACVMField[],
|
|
142
149
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
143
|
-
const
|
|
144
|
-
const
|
|
145
|
-
const parsedLeafValue = Fr.fromString(leafValue);
|
|
150
|
+
const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
|
|
151
|
+
const parsedNoteHash = Fr.fromString(noteHash);
|
|
146
152
|
|
|
147
|
-
const witness = await this.handlerAsUtility().
|
|
148
|
-
parsedBlockNumber,
|
|
149
|
-
parsedTreeId,
|
|
150
|
-
parsedLeafValue,
|
|
151
|
-
);
|
|
153
|
+
const witness = await this.handlerAsUtility().getNoteHashMembershipWitness(parsedAnchorBlockHash, parsedNoteHash);
|
|
152
154
|
if (!witness) {
|
|
153
155
|
throw new Error(
|
|
154
|
-
`
|
|
156
|
+
`Note hash ${noteHash} not found in the note hash tree at anchor block hash ${parsedAnchorBlockHash.toString()}.`,
|
|
155
157
|
);
|
|
156
158
|
}
|
|
157
|
-
return
|
|
159
|
+
return witness.toNoirRepresentation();
|
|
158
160
|
}
|
|
159
161
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
+
// eslint-disable-next-line camelcase
|
|
163
|
+
async aztec_utl_getBlockHashMembershipWitness(
|
|
164
|
+
[anchorBlockHash]: ACVMField[],
|
|
165
|
+
[blockHash]: ACVMField[],
|
|
166
|
+
): Promise<(ACVMField | ACVMField[])[]> {
|
|
167
|
+
const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
|
|
168
|
+
const parsedBlockHash = BlockHash.fromString(blockHash);
|
|
169
|
+
|
|
170
|
+
const witness = await this.handlerAsUtility().getBlockHashMembershipWitness(parsedAnchorBlockHash, parsedBlockHash);
|
|
171
|
+
if (!witness) {
|
|
172
|
+
throw new Error(
|
|
173
|
+
`Block hash ${parsedBlockHash.toString()} not found in the archive tree at anchor block ${parsedAnchorBlockHash.toString()}.`,
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
return witness.toNoirRepresentation();
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
// eslint-disable-next-line camelcase
|
|
180
|
+
async aztec_utl_getNullifierMembershipWitness(
|
|
181
|
+
[blockHash]: ACVMField[],
|
|
162
182
|
[nullifier]: ACVMField[], // nullifier, we try to find the witness for (to prove inclusion)
|
|
163
183
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
164
|
-
const
|
|
184
|
+
const parsedBlockHash = BlockHash.fromString(blockHash);
|
|
165
185
|
const parsedNullifier = Fr.fromString(nullifier);
|
|
166
186
|
|
|
167
|
-
const witness = await this.handlerAsUtility().
|
|
168
|
-
parsedBlockNumber,
|
|
169
|
-
parsedNullifier,
|
|
170
|
-
);
|
|
187
|
+
const witness = await this.handlerAsUtility().getNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
|
|
171
188
|
if (!witness) {
|
|
172
|
-
throw new Error(
|
|
189
|
+
throw new Error(
|
|
190
|
+
`Nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`,
|
|
191
|
+
);
|
|
173
192
|
}
|
|
174
193
|
return witness.toNoirRepresentation();
|
|
175
194
|
}
|
|
176
195
|
|
|
177
|
-
|
|
178
|
-
|
|
196
|
+
// eslint-disable-next-line camelcase
|
|
197
|
+
async aztec_utl_getLowNullifierMembershipWitness(
|
|
198
|
+
[blockHash]: ACVMField[],
|
|
179
199
|
[nullifier]: ACVMField[], // nullifier, we try to find the low nullifier witness for (to prove non-inclusion)
|
|
180
200
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
181
|
-
const
|
|
201
|
+
const parsedBlockHash = BlockHash.fromString(blockHash);
|
|
182
202
|
const parsedNullifier = Fr.fromString(nullifier);
|
|
183
203
|
|
|
184
|
-
const witness = await this.handlerAsUtility().
|
|
185
|
-
parsedBlockNumber,
|
|
186
|
-
parsedNullifier,
|
|
187
|
-
);
|
|
204
|
+
const witness = await this.handlerAsUtility().getLowNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
|
|
188
205
|
if (!witness) {
|
|
189
206
|
throw new Error(
|
|
190
|
-
`Low nullifier witness not found for nullifier ${parsedNullifier} at block ${
|
|
207
|
+
`Low nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`,
|
|
191
208
|
);
|
|
192
209
|
}
|
|
193
210
|
return witness.toNoirRepresentation();
|
|
194
211
|
}
|
|
195
212
|
|
|
196
|
-
|
|
197
|
-
|
|
213
|
+
// eslint-disable-next-line camelcase
|
|
214
|
+
async aztec_utl_getPublicDataWitness(
|
|
215
|
+
[blockHash]: ACVMField[],
|
|
198
216
|
[leafSlot]: ACVMField[],
|
|
199
217
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
200
|
-
const
|
|
218
|
+
const parsedBlockHash = BlockHash.fromString(blockHash);
|
|
201
219
|
const parsedLeafSlot = Fr.fromString(leafSlot);
|
|
202
220
|
|
|
203
|
-
const witness = await this.handlerAsUtility().
|
|
221
|
+
const witness = await this.handlerAsUtility().getPublicDataWitness(parsedBlockHash, parsedLeafSlot);
|
|
204
222
|
if (!witness) {
|
|
205
|
-
throw new Error(
|
|
223
|
+
throw new Error(
|
|
224
|
+
`Public data witness not found for slot ${parsedLeafSlot} at block hash ${parsedBlockHash.toString()}.`,
|
|
225
|
+
);
|
|
206
226
|
}
|
|
207
227
|
return witness.toNoirRepresentation();
|
|
208
228
|
}
|
|
209
229
|
|
|
210
|
-
|
|
230
|
+
// eslint-disable-next-line camelcase
|
|
231
|
+
async aztec_utl_getBlockHeader([blockNumber]: ACVMField[]): Promise<ACVMField[]> {
|
|
211
232
|
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
212
233
|
|
|
213
|
-
const header = await this.handlerAsUtility().
|
|
234
|
+
const header = await this.handlerAsUtility().getBlockHeader(BlockNumber(parsedBlockNumber));
|
|
214
235
|
if (!header) {
|
|
215
236
|
throw new Error(`Block header not found for block ${parsedBlockNumber}.`);
|
|
216
237
|
}
|
|
217
238
|
return header.toFields().map(toACVMField);
|
|
218
239
|
}
|
|
219
240
|
|
|
220
|
-
|
|
241
|
+
// eslint-disable-next-line camelcase
|
|
242
|
+
async aztec_utl_getAuthWitness([messageHash]: ACVMField[]): Promise<ACVMField[][]> {
|
|
221
243
|
const messageHashField = Fr.fromString(messageHash);
|
|
222
|
-
const witness = await this.handlerAsUtility().
|
|
244
|
+
const witness = await this.handlerAsUtility().getAuthWitness(messageHashField);
|
|
223
245
|
if (!witness) {
|
|
224
246
|
throw new Error(`Unknown auth witness for message hash ${messageHashField}`);
|
|
225
247
|
}
|
|
226
248
|
return [witness.map(toACVMField)];
|
|
227
249
|
}
|
|
228
250
|
|
|
229
|
-
|
|
251
|
+
// eslint-disable-next-line camelcase
|
|
252
|
+
async aztec_utl_tryGetPublicKeysAndPartialAddress([address]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]> {
|
|
230
253
|
const parsedAddress = AztecAddress.fromField(Fr.fromString(address));
|
|
231
|
-
const
|
|
232
|
-
await this.handlerAsUtility().utilityGetPublicKeysAndPartialAddress(parsedAddress);
|
|
254
|
+
const result = await this.handlerAsUtility().tryGetPublicKeysAndPartialAddress(parsedAddress);
|
|
233
255
|
|
|
234
|
-
return
|
|
256
|
+
// We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
|
|
257
|
+
// with two fields: `some` (a boolean) and `value` (a field array in this case).
|
|
258
|
+
if (result === undefined) {
|
|
259
|
+
// No data was found so we set `some` to 0 and pad `value` with zeros get the correct return size.
|
|
260
|
+
return [toACVMField(0), Array(13).fill(toACVMField(0))];
|
|
261
|
+
} else {
|
|
262
|
+
// Data was found so we set `some` to 1 and return it along with `value`.
|
|
263
|
+
return [toACVMField(1), [...result.publicKeys.toFields(), result.partialAddress].map(toACVMField)];
|
|
264
|
+
}
|
|
235
265
|
}
|
|
236
266
|
|
|
237
|
-
|
|
267
|
+
// eslint-disable-next-line camelcase
|
|
268
|
+
async aztec_utl_getNotes(
|
|
269
|
+
[ownerSome]: ACVMField[],
|
|
270
|
+
[ownerValue]: ACVMField[],
|
|
238
271
|
[storageSlot]: ACVMField[],
|
|
239
272
|
[numSelects]: ACVMField[],
|
|
240
273
|
selectByIndexes: ACVMField[],
|
|
@@ -250,9 +283,12 @@ export class Oracle {
|
|
|
250
283
|
[offset]: ACVMField[],
|
|
251
284
|
[status]: ACVMField[],
|
|
252
285
|
[maxNotes]: ACVMField[],
|
|
253
|
-
[
|
|
286
|
+
[packedHintedNoteLength]: ACVMField[],
|
|
254
287
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
255
|
-
|
|
288
|
+
// Parse Option<AztecAddress>: ownerSome is 0 for None, 1 for Some
|
|
289
|
+
const owner = Fr.fromString(ownerSome).toNumber() === 1 ? AztecAddress.fromString(ownerValue) : undefined;
|
|
290
|
+
const noteDatas = await this.handlerAsUtility().getNotes(
|
|
291
|
+
owner,
|
|
256
292
|
Fr.fromString(storageSlot),
|
|
257
293
|
+numSelects,
|
|
258
294
|
selectByIndexes.map(s => +s),
|
|
@@ -269,18 +305,30 @@ export class Oracle {
|
|
|
269
305
|
+status,
|
|
270
306
|
);
|
|
271
307
|
|
|
272
|
-
const
|
|
308
|
+
const returnDataAsArrayOfPackedHintedNotes = noteDatas.map(noteData =>
|
|
309
|
+
packAsHintedNote({
|
|
310
|
+
contractAddress: noteData.contractAddress,
|
|
311
|
+
owner: noteData.owner,
|
|
312
|
+
randomness: noteData.randomness,
|
|
313
|
+
storageSlot: noteData.storageSlot,
|
|
314
|
+
noteNonce: noteData.noteNonce,
|
|
315
|
+
isPending: noteData.isPending,
|
|
316
|
+
note: noteData.note,
|
|
317
|
+
}),
|
|
318
|
+
);
|
|
273
319
|
|
|
274
320
|
// Now we convert each sub-array to an array of ACVMField
|
|
275
|
-
const returnDataAsArrayOfACVMFieldArrays =
|
|
321
|
+
const returnDataAsArrayOfACVMFieldArrays = returnDataAsArrayOfPackedHintedNotes.map(subArray =>
|
|
276
322
|
subArray.map(toACVMField),
|
|
277
323
|
);
|
|
278
324
|
|
|
279
325
|
// At last we convert the array of arrays to a bounded vec of arrays
|
|
280
|
-
return arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfACVMFieldArrays, +maxNotes, +
|
|
326
|
+
return arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfACVMFieldArrays, +maxNotes, +packedHintedNoteLength);
|
|
281
327
|
}
|
|
282
328
|
|
|
283
|
-
|
|
329
|
+
// eslint-disable-next-line camelcase
|
|
330
|
+
aztec_prv_notifyCreatedNote(
|
|
331
|
+
[owner]: ACVMField[],
|
|
284
332
|
[storageSlot]: ACVMField[],
|
|
285
333
|
[randomness]: ACVMField[],
|
|
286
334
|
[noteTypeId]: ACVMField[],
|
|
@@ -288,7 +336,8 @@ export class Oracle {
|
|
|
288
336
|
[noteHash]: ACVMField[],
|
|
289
337
|
[counter]: ACVMField[],
|
|
290
338
|
): Promise<ACVMField[]> {
|
|
291
|
-
this.handlerAsPrivate().
|
|
339
|
+
this.handlerAsPrivate().notifyCreatedNote(
|
|
340
|
+
AztecAddress.fromString(owner),
|
|
292
341
|
Fr.fromString(storageSlot),
|
|
293
342
|
Fr.fromString(randomness),
|
|
294
343
|
NoteSelector.fromField(Fr.fromString(noteTypeId)),
|
|
@@ -299,35 +348,47 @@ export class Oracle {
|
|
|
299
348
|
return Promise.resolve([]);
|
|
300
349
|
}
|
|
301
350
|
|
|
302
|
-
|
|
351
|
+
// eslint-disable-next-line camelcase
|
|
352
|
+
async aztec_prv_notifyNullifiedNote(
|
|
303
353
|
[innerNullifier]: ACVMField[],
|
|
304
354
|
[noteHash]: ACVMField[],
|
|
305
355
|
[counter]: ACVMField[],
|
|
306
356
|
): Promise<ACVMField[]> {
|
|
307
|
-
await this.handlerAsPrivate().
|
|
308
|
-
Fr.fromString(innerNullifier),
|
|
309
|
-
Fr.fromString(noteHash),
|
|
310
|
-
+counter,
|
|
311
|
-
);
|
|
357
|
+
await this.handlerAsPrivate().notifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
|
|
312
358
|
return [];
|
|
313
359
|
}
|
|
314
360
|
|
|
315
|
-
|
|
316
|
-
|
|
361
|
+
// eslint-disable-next-line camelcase
|
|
362
|
+
async aztec_prv_notifyCreatedNullifier([innerNullifier]: ACVMField[]): Promise<ACVMField[]> {
|
|
363
|
+
await this.handlerAsPrivate().notifyCreatedNullifier(Fr.fromString(innerNullifier));
|
|
317
364
|
return [];
|
|
318
365
|
}
|
|
319
366
|
|
|
320
|
-
|
|
321
|
-
|
|
367
|
+
// eslint-disable-next-line camelcase
|
|
368
|
+
async aztec_prv_isNullifierPending(
|
|
369
|
+
[innerNullifier]: ACVMField[],
|
|
370
|
+
[contractAddress]: ACVMField[],
|
|
371
|
+
): Promise<ACVMField[]> {
|
|
372
|
+
const isPending = await this.handlerAsPrivate().isNullifierPending(
|
|
373
|
+
Fr.fromString(innerNullifier),
|
|
374
|
+
AztecAddress.fromString(contractAddress),
|
|
375
|
+
);
|
|
376
|
+
return [toACVMField(isPending)];
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
// eslint-disable-next-line camelcase
|
|
380
|
+
async aztec_utl_checkNullifierExists([innerNullifier]: ACVMField[]): Promise<ACVMField[]> {
|
|
381
|
+
const exists = await this.handlerAsUtility().checkNullifierExists(Fr.fromString(innerNullifier));
|
|
322
382
|
return [toACVMField(exists)];
|
|
323
383
|
}
|
|
324
384
|
|
|
325
|
-
|
|
385
|
+
// eslint-disable-next-line camelcase
|
|
386
|
+
async aztec_utl_getL1ToL2MembershipWitness(
|
|
326
387
|
[contractAddress]: ACVMField[],
|
|
327
388
|
[messageHash]: ACVMField[],
|
|
328
389
|
[secret]: ACVMField[],
|
|
329
390
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
330
|
-
const message = await this.handlerAsUtility().
|
|
391
|
+
const message = await this.handlerAsUtility().getL1ToL2MembershipWitness(
|
|
331
392
|
AztecAddress.fromString(contractAddress),
|
|
332
393
|
Fr.fromString(messageHash),
|
|
333
394
|
Fr.fromString(secret),
|
|
@@ -335,22 +396,24 @@ export class Oracle {
|
|
|
335
396
|
return message.toNoirRepresentation();
|
|
336
397
|
}
|
|
337
398
|
|
|
338
|
-
|
|
399
|
+
// eslint-disable-next-line camelcase
|
|
400
|
+
async aztec_utl_storageRead(
|
|
401
|
+
[blockHash]: ACVMField[],
|
|
339
402
|
[contractAddress]: ACVMField[],
|
|
340
403
|
[startStorageSlot]: ACVMField[],
|
|
341
|
-
[blockNumber]: ACVMField[],
|
|
342
404
|
[numberOfElements]: ACVMField[],
|
|
343
405
|
): Promise<ACVMField[][]> {
|
|
344
|
-
const values = await this.handlerAsUtility().
|
|
406
|
+
const values = await this.handlerAsUtility().storageRead(
|
|
407
|
+
BlockHash.fromString(blockHash),
|
|
345
408
|
new AztecAddress(Fr.fromString(contractAddress)),
|
|
346
409
|
Fr.fromString(startStorageSlot),
|
|
347
|
-
+blockNumber,
|
|
348
410
|
+numberOfElements,
|
|
349
411
|
);
|
|
350
412
|
return [values.map(toACVMField)];
|
|
351
413
|
}
|
|
352
414
|
|
|
353
|
-
|
|
415
|
+
// eslint-disable-next-line camelcase
|
|
416
|
+
aztec_prv_notifyCreatedContractClassLog(
|
|
354
417
|
[contractAddress]: ACVMField[],
|
|
355
418
|
message: ACVMField[],
|
|
356
419
|
[length]: ACVMField[],
|
|
@@ -359,11 +422,12 @@ export class Oracle {
|
|
|
359
422
|
const logFields = new ContractClassLogFields(message.map(Fr.fromString));
|
|
360
423
|
const log = new ContractClassLog(new AztecAddress(Fr.fromString(contractAddress)), logFields, +length);
|
|
361
424
|
|
|
362
|
-
this.handlerAsPrivate().
|
|
425
|
+
this.handlerAsPrivate().notifyCreatedContractClassLog(log, +counter);
|
|
363
426
|
return Promise.resolve([]);
|
|
364
427
|
}
|
|
365
428
|
|
|
366
|
-
|
|
429
|
+
// eslint-disable-next-line camelcase
|
|
430
|
+
async aztec_utl_log(
|
|
367
431
|
level: ACVMField[],
|
|
368
432
|
message: ACVMField[],
|
|
369
433
|
_ignoredFieldsSize: ACVMField[],
|
|
@@ -372,20 +436,21 @@ export class Oracle {
|
|
|
372
436
|
const levelFr = Fr.fromString(level[0]);
|
|
373
437
|
const messageStr = message.map(acvmField => String.fromCharCode(Fr.fromString(acvmField).toNumber())).join('');
|
|
374
438
|
const fieldsFr = fields.map(Fr.fromString);
|
|
375
|
-
this.handlerAsMisc().
|
|
376
|
-
return
|
|
439
|
+
await this.handlerAsMisc().log(levelFr.toNumber(), messageStr, fieldsFr);
|
|
440
|
+
return [];
|
|
377
441
|
}
|
|
378
442
|
|
|
379
443
|
// This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
|
|
380
444
|
// change the name here.
|
|
381
|
-
|
|
445
|
+
// eslint-disable-next-line camelcase
|
|
446
|
+
async aztec_prv_callPrivateFunction(
|
|
382
447
|
[contractAddress]: ACVMField[],
|
|
383
448
|
[functionSelector]: ACVMField[],
|
|
384
449
|
[argsHash]: ACVMField[],
|
|
385
450
|
[sideEffectCounter]: ACVMField[],
|
|
386
451
|
[isStaticCall]: ACVMField[],
|
|
387
452
|
): Promise<ACVMField[][]> {
|
|
388
|
-
const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().
|
|
453
|
+
const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().callPrivateFunction(
|
|
389
454
|
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
390
455
|
FunctionSelector.fromField(Fr.fromString(functionSelector)),
|
|
391
456
|
Fr.fromString(argsHash),
|
|
@@ -395,13 +460,14 @@ export class Oracle {
|
|
|
395
460
|
return [[endSideEffectCounter, returnsHash].map(toACVMField)];
|
|
396
461
|
}
|
|
397
462
|
|
|
398
|
-
|
|
463
|
+
// eslint-disable-next-line camelcase
|
|
464
|
+
async aztec_prv_notifyEnqueuedPublicFunctionCall(
|
|
399
465
|
[contractAddress]: ACVMField[],
|
|
400
466
|
[calldataHash]: ACVMField[],
|
|
401
467
|
[sideEffectCounter]: ACVMField[],
|
|
402
468
|
[isStaticCall]: ACVMField[],
|
|
403
469
|
): Promise<ACVMField[]> {
|
|
404
|
-
await this.handlerAsPrivate().
|
|
470
|
+
await this.handlerAsPrivate().notifyEnqueuedPublicFunctionCall(
|
|
405
471
|
AztecAddress.fromString(contractAddress),
|
|
406
472
|
Fr.fromString(calldataHash),
|
|
407
473
|
Fr.fromString(sideEffectCounter).toNumber(),
|
|
@@ -410,13 +476,14 @@ export class Oracle {
|
|
|
410
476
|
return [];
|
|
411
477
|
}
|
|
412
478
|
|
|
413
|
-
|
|
479
|
+
// eslint-disable-next-line camelcase
|
|
480
|
+
async aztec_prv_notifySetPublicTeardownFunctionCall(
|
|
414
481
|
[contractAddress]: ACVMField[],
|
|
415
482
|
[calldataHash]: ACVMField[],
|
|
416
483
|
[sideEffectCounter]: ACVMField[],
|
|
417
484
|
[isStaticCall]: ACVMField[],
|
|
418
485
|
): Promise<ACVMField[]> {
|
|
419
|
-
await this.handlerAsPrivate().
|
|
486
|
+
await this.handlerAsPrivate().notifySetPublicTeardownFunctionCall(
|
|
420
487
|
AztecAddress.fromString(contractAddress),
|
|
421
488
|
Fr.fromString(calldataHash),
|
|
422
489
|
Fr.fromString(sideEffectCounter).toNumber(),
|
|
@@ -425,41 +492,46 @@ export class Oracle {
|
|
|
425
492
|
return [];
|
|
426
493
|
}
|
|
427
494
|
|
|
428
|
-
|
|
495
|
+
// eslint-disable-next-line camelcase
|
|
496
|
+
async aztec_prv_notifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]: ACVMField[]): Promise<
|
|
429
497
|
ACVMField[]
|
|
430
498
|
> {
|
|
431
|
-
await this.handlerAsPrivate().
|
|
499
|
+
await this.handlerAsPrivate().notifySetMinRevertibleSideEffectCounter(
|
|
432
500
|
Fr.fromString(minRevertibleSideEffectCounter).toNumber(),
|
|
433
501
|
);
|
|
434
502
|
return Promise.resolve([]);
|
|
435
503
|
}
|
|
436
504
|
|
|
437
|
-
|
|
438
|
-
|
|
505
|
+
// eslint-disable-next-line camelcase
|
|
506
|
+
async aztec_prv_isSideEffectCounterRevertible([sideEffectCounter]: ACVMField[]): Promise<ACVMField[]> {
|
|
507
|
+
const isRevertible = await this.handlerAsPrivate().isSideEffectCounterRevertible(
|
|
439
508
|
Fr.fromString(sideEffectCounter).toNumber(),
|
|
440
509
|
);
|
|
441
510
|
return Promise.resolve([toACVMField(isRevertible)]);
|
|
442
511
|
}
|
|
443
512
|
|
|
444
|
-
|
|
445
|
-
|
|
513
|
+
// eslint-disable-next-line camelcase
|
|
514
|
+
async aztec_prv_getNextAppTagAsSender([sender]: ACVMField[], [recipient]: ACVMField[]): Promise<ACVMField[]> {
|
|
515
|
+
const tag = await this.handlerAsPrivate().getNextAppTagAsSender(
|
|
446
516
|
AztecAddress.fromString(sender),
|
|
447
517
|
AztecAddress.fromString(recipient),
|
|
448
518
|
);
|
|
449
519
|
return [toACVMField(tag.value)];
|
|
450
520
|
}
|
|
451
521
|
|
|
452
|
-
|
|
453
|
-
|
|
522
|
+
// eslint-disable-next-line camelcase
|
|
523
|
+
async aztec_utl_fetchTaggedLogs([pendingTaggedLogArrayBaseSlot]: ACVMField[]): Promise<ACVMField[]> {
|
|
524
|
+
await this.handlerAsUtility().fetchTaggedLogs(Fr.fromString(pendingTaggedLogArrayBaseSlot));
|
|
454
525
|
return [];
|
|
455
526
|
}
|
|
456
527
|
|
|
457
|
-
|
|
528
|
+
// eslint-disable-next-line camelcase
|
|
529
|
+
async aztec_utl_validateAndStoreEnqueuedNotesAndEvents(
|
|
458
530
|
[contractAddress]: ACVMField[],
|
|
459
531
|
[noteValidationRequestsArrayBaseSlot]: ACVMField[],
|
|
460
532
|
[eventValidationRequestsArrayBaseSlot]: ACVMField[],
|
|
461
533
|
): Promise<ACVMField[]> {
|
|
462
|
-
await this.handlerAsUtility().
|
|
534
|
+
await this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(
|
|
463
535
|
AztecAddress.fromString(contractAddress),
|
|
464
536
|
Fr.fromString(noteValidationRequestsArrayBaseSlot),
|
|
465
537
|
Fr.fromString(eventValidationRequestsArrayBaseSlot),
|
|
@@ -468,12 +540,13 @@ export class Oracle {
|
|
|
468
540
|
return [];
|
|
469
541
|
}
|
|
470
542
|
|
|
471
|
-
|
|
543
|
+
// eslint-disable-next-line camelcase
|
|
544
|
+
async aztec_utl_bulkRetrieveLogs(
|
|
472
545
|
[contractAddress]: ACVMField[],
|
|
473
546
|
[logRetrievalRequestsArrayBaseSlot]: ACVMField[],
|
|
474
547
|
[logRetrievalResponsesArrayBaseSlot]: ACVMField[],
|
|
475
548
|
): Promise<ACVMField[]> {
|
|
476
|
-
await this.handlerAsUtility().
|
|
549
|
+
await this.handlerAsUtility().bulkRetrieveLogs(
|
|
477
550
|
AztecAddress.fromString(contractAddress),
|
|
478
551
|
Fr.fromString(logRetrievalRequestsArrayBaseSlot),
|
|
479
552
|
Fr.fromString(logRetrievalResponsesArrayBaseSlot),
|
|
@@ -481,12 +554,13 @@ export class Oracle {
|
|
|
481
554
|
return [];
|
|
482
555
|
}
|
|
483
556
|
|
|
484
|
-
|
|
557
|
+
// eslint-disable-next-line camelcase
|
|
558
|
+
async aztec_utl_storeCapsule(
|
|
485
559
|
[contractAddress]: ACVMField[],
|
|
486
560
|
[slot]: ACVMField[],
|
|
487
561
|
capsule: ACVMField[],
|
|
488
562
|
): Promise<ACVMField[]> {
|
|
489
|
-
await this.handlerAsUtility().
|
|
563
|
+
await this.handlerAsUtility().storeCapsule(
|
|
490
564
|
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
491
565
|
Fr.fromString(slot),
|
|
492
566
|
capsule.map(Fr.fromString),
|
|
@@ -494,12 +568,13 @@ export class Oracle {
|
|
|
494
568
|
return [];
|
|
495
569
|
}
|
|
496
570
|
|
|
497
|
-
|
|
571
|
+
// eslint-disable-next-line camelcase
|
|
572
|
+
async aztec_utl_loadCapsule(
|
|
498
573
|
[contractAddress]: ACVMField[],
|
|
499
574
|
[slot]: ACVMField[],
|
|
500
575
|
[tSize]: ACVMField[],
|
|
501
576
|
): Promise<(ACVMField | ACVMField[])[]> {
|
|
502
|
-
const values = await this.handlerAsUtility().
|
|
577
|
+
const values = await this.handlerAsUtility().loadCapsule(
|
|
503
578
|
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
504
579
|
Fr.fromString(slot),
|
|
505
580
|
);
|
|
@@ -515,21 +590,23 @@ export class Oracle {
|
|
|
515
590
|
}
|
|
516
591
|
}
|
|
517
592
|
|
|
518
|
-
|
|
519
|
-
|
|
593
|
+
// eslint-disable-next-line camelcase
|
|
594
|
+
async aztec_utl_deleteCapsule([contractAddress]: ACVMField[], [slot]: ACVMField[]): Promise<ACVMField[]> {
|
|
595
|
+
await this.handlerAsUtility().deleteCapsule(
|
|
520
596
|
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
521
597
|
Fr.fromString(slot),
|
|
522
598
|
);
|
|
523
599
|
return [];
|
|
524
600
|
}
|
|
525
601
|
|
|
526
|
-
|
|
602
|
+
// eslint-disable-next-line camelcase
|
|
603
|
+
async aztec_utl_copyCapsule(
|
|
527
604
|
[contractAddress]: ACVMField[],
|
|
528
605
|
[srcSlot]: ACVMField[],
|
|
529
606
|
[dstSlot]: ACVMField[],
|
|
530
607
|
[numEntries]: ACVMField[],
|
|
531
608
|
): Promise<ACVMField[]> {
|
|
532
|
-
await this.handlerAsUtility().
|
|
609
|
+
await this.handlerAsUtility().copyCapsule(
|
|
533
610
|
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
534
611
|
Fr.fromString(srcSlot),
|
|
535
612
|
Fr.fromString(dstSlot),
|
|
@@ -538,7 +615,8 @@ export class Oracle {
|
|
|
538
615
|
return [];
|
|
539
616
|
}
|
|
540
617
|
|
|
541
|
-
|
|
618
|
+
// eslint-disable-next-line camelcase
|
|
619
|
+
async aztec_utl_aes128Decrypt(
|
|
542
620
|
ciphertextBVecStorage: ACVMField[],
|
|
543
621
|
[ciphertextLength]: ACVMField[],
|
|
544
622
|
iv: ACVMField[],
|
|
@@ -548,36 +626,40 @@ export class Oracle {
|
|
|
548
626
|
const ivBuffer = fromUintArray(iv, 8);
|
|
549
627
|
const symKeyBuffer = fromUintArray(symKey, 8);
|
|
550
628
|
|
|
551
|
-
const plaintext = await this.handlerAsUtility().
|
|
629
|
+
const plaintext = await this.handlerAsUtility().aes128Decrypt(ciphertext, ivBuffer, symKeyBuffer);
|
|
552
630
|
return bufferToBoundedVec(plaintext, ciphertextBVecStorage.length);
|
|
553
631
|
}
|
|
554
632
|
|
|
555
|
-
|
|
633
|
+
// eslint-disable-next-line camelcase
|
|
634
|
+
async aztec_utl_getSharedSecret(
|
|
556
635
|
[address]: ACVMField[],
|
|
557
636
|
[ephPKField0]: ACVMField[],
|
|
558
637
|
[ephPKField1]: ACVMField[],
|
|
559
638
|
[ephPKField2]: ACVMField[],
|
|
560
639
|
): Promise<ACVMField[]> {
|
|
561
|
-
const secret = await this.handlerAsUtility().
|
|
640
|
+
const secret = await this.handlerAsUtility().getSharedSecret(
|
|
562
641
|
AztecAddress.fromField(Fr.fromString(address)),
|
|
563
642
|
Point.fromFields([ephPKField0, ephPKField1, ephPKField2].map(Fr.fromString)),
|
|
564
643
|
);
|
|
565
644
|
return secret.toFields().map(toACVMField);
|
|
566
645
|
}
|
|
567
646
|
|
|
568
|
-
|
|
569
|
-
|
|
647
|
+
// eslint-disable-next-line camelcase
|
|
648
|
+
async aztec_utl_emitOffchainEffect(data: ACVMField[]) {
|
|
649
|
+
await this.handlerAsPrivate().emitOffchainEffect(data.map(Fr.fromString));
|
|
570
650
|
return [];
|
|
571
651
|
}
|
|
572
652
|
|
|
573
|
-
|
|
574
|
-
|
|
653
|
+
// eslint-disable-next-line camelcase
|
|
654
|
+
async aztec_prv_getSenderForTags(): Promise<ACVMField[]> {
|
|
655
|
+
const sender = await this.handlerAsPrivate().getSenderForTags();
|
|
575
656
|
// Return [1, address] for Some(address), [0, 0] for None
|
|
576
657
|
return sender ? [toACVMField(1n), toACVMField(sender)] : [toACVMField(0n), toACVMField(0n)];
|
|
577
658
|
}
|
|
578
659
|
|
|
579
|
-
|
|
580
|
-
|
|
660
|
+
// eslint-disable-next-line camelcase
|
|
661
|
+
async aztec_prv_setSenderForTags([senderForTags]: ACVMField[]): Promise<ACVMField[]> {
|
|
662
|
+
await this.handlerAsPrivate().setSenderForTags(AztecAddress.fromField(Fr.fromString(senderForTags)));
|
|
581
663
|
return [];
|
|
582
664
|
}
|
|
583
665
|
}
|