@aztec/pxe 0.0.1-commit.04852196a → 0.0.1-commit.04d373f
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.d.ts +12 -2
- package/dest/bin/check_oracle_version.d.ts.map +1 -1
- package/dest/bin/check_oracle_version.js +31 -25
- 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/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 +62 -0
- package/dest/block_synchronizer/block_synchronizer.d.ts +6 -2
- package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
- package/dest/block_synchronizer/block_synchronizer.js +30 -10
- package/dest/config/index.d.ts +7 -1
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +12 -14
- package/dest/contract_function_simulator/contract_function_simulator.d.ts +16 -5
- package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
- package/dest/contract_function_simulator/contract_function_simulator.js +51 -16
- 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_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 +4 -1
- package/dest/contract_function_simulator/index.d.ts.map +1 -1
- package/dest/contract_function_simulator/index.js +3 -0
- package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +48 -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 +45 -0
- package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +4 -6
- 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 +8 -9
- package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +13 -3
- 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 +35 -4
- 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 +2 -4
- package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +4 -7
- 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 +6 -10
- package/dest/contract_function_simulator/noir-structs/option.d.ts +61 -0
- package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
- package/dest/contract_function_simulator/noir-structs/option.js +62 -0
- package/dest/contract_function_simulator/oracle/interfaces.d.ts +50 -38
- package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
- 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.d.ts +73 -44
- package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/oracle.js +403 -262
- package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +147 -0
- package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
- package/dest/contract_function_simulator/oracle/oracle_registry.js +1199 -0
- package/dest/contract_function_simulator/oracle/private_execution.js +5 -3
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +36 -62
- package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/private_execution_oracle.js +77 -80
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +100 -57
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
- package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +375 -122
- 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/proxied_contract_data_source.d.ts +1 -1
- package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
- package/dest/contract_function_simulator/proxied_contract_data_source.js +35 -64
- package/dest/contract_logging.d.ts +9 -4
- package/dest/contract_logging.d.ts.map +1 -1
- package/dest/contract_logging.js +21 -6
- package/dest/contract_sync/contract_sync_service.d.ts +7 -8
- package/dest/contract_sync/contract_sync_service.d.ts.map +1 -1
- package/dest/contract_sync/contract_sync_service.js +87 -49
- package/dest/contract_sync/helpers.d.ts +2 -4
- package/dest/contract_sync/helpers.d.ts.map +1 -1
- package/dest/contract_sync/helpers.js +12 -14
- package/dest/debug/pxe_debug_utils.d.ts +3 -8
- package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
- package/dest/debug/pxe_debug_utils.js +0 -6
- package/dest/entrypoints/client/bundle/index.d.ts +1 -2
- package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
- package/dest/entrypoints/client/bundle/index.js +0 -1
- 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 +13 -5
- package/dest/entrypoints/client/lazy/index.d.ts +1 -2
- package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
- package/dest/entrypoints/client/lazy/index.js +0 -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 +13 -5
- package/dest/entrypoints/pxe_creation_options.d.ts +9 -1
- 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 +3 -3
- package/dest/entrypoints/server/index.d.ts.map +1 -1
- package/dest/entrypoints/server/index.js +2 -2
- 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 +13 -5
- package/dest/events/event_service.d.ts +15 -6
- package/dest/events/event_service.d.ts.map +1 -1
- package/dest/events/event_service.js +44 -11
- 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 +42 -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 +4 -0
- package/dest/hooks/index.d.ts.map +1 -0
- package/dest/hooks/index.js +1 -0
- package/dest/logs/log_service.d.ts +9 -9
- package/dest/logs/log_service.d.ts.map +1 -1
- package/dest/logs/log_service.js +122 -72
- package/dest/messages/message_context_service.d.ts +17 -0
- package/dest/messages/message_context_service.d.ts.map +1 -0
- package/dest/messages/message_context_service.js +38 -0
- package/dest/notes/note_service.d.ts +27 -6
- package/dest/notes/note_service.d.ts.map +1 -1
- package/dest/notes/note_service.js +80 -56
- package/dest/notes_filter.d.ts +2 -3
- package/dest/notes_filter.d.ts.map +1 -1
- 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/private_kernel_reset_private_inputs_builder.js +1 -1
- package/dest/private_kernel/hints/test_utils.d.ts +1 -1
- package/dest/private_kernel/hints/test_utils.d.ts.map +1 -1
- package/dest/private_kernel/hints/test_utils.js +2 -3
- 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 +152 -59
- package/dest/private_kernel/private_kernel_oracle.d.ts +10 -10
- package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
- package/dest/private_kernel/private_kernel_oracle.js +24 -22
- package/dest/pxe.d.ts +59 -10
- package/dest/pxe.d.ts.map +1 -1
- package/dest/pxe.js +154 -93
- package/dest/storage/anchor_block_store/anchor_block_store.js +1 -1
- 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 +591 -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 +50 -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 +36 -28
- 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 +1 -1
- package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
- package/dest/storage/contract_store/contract_store.js +9 -26
- package/dest/storage/metadata.d.ts +1 -1
- package/dest/storage/metadata.js +1 -1
- package/dest/storage/note_store/note_store.d.ts +1 -1
- package/dest/storage/note_store/note_store.d.ts.map +1 -1
- package/dest/storage/note_store/note_store.js +2 -2
- package/dest/storage/open_pxe_stores.d.ts +33 -0
- package/dest/storage/open_pxe_stores.d.ts.map +1 -0
- package/dest/storage/open_pxe_stores.js +27 -0
- package/dest/storage/private_event_store/private_event_store.d.ts +1 -1
- package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
- package/dest/storage/private_event_store/private_event_store.js +3 -0
- package/dest/storage/private_event_store/stored_private_event.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 +29 -28
- package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
- package/dest/storage/tagging_store/sender_tagging_store.js +141 -115
- package/dest/tagging/get_all_logs_by_tags.d.ts +34 -10
- package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
- package/dest/tagging/get_all_logs_by_tags.js +36 -37
- package/dest/tagging/index.d.ts +6 -5
- package/dest/tagging/index.d.ts.map +1 -1
- package/dest/tagging/index.js +4 -3
- 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 +56 -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 +163 -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/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 +4 -5
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
- package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +29 -10
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +13 -7
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -1
- package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +41 -10
- package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +5 -4
- 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 +26 -13
- package/package.json +20 -17
- package/src/bin/check_oracle_version.ts +41 -31
- package/src/bin/index.ts +1 -0
- package/src/block_synchronizer/block_stream_source.ts +81 -0
- package/src/block_synchronizer/block_synchronizer.ts +33 -11
- package/src/config/index.ts +14 -8
- package/src/contract_function_simulator/contract_function_simulator.ts +80 -20
- package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
- package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
- package/src/contract_function_simulator/index.ts +3 -0
- package/src/contract_function_simulator/noir-structs/bounded_vec.ts +55 -0
- package/src/contract_function_simulator/noir-structs/event_validation_request.ts +10 -9
- package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +36 -3
- package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +2 -5
- package/src/contract_function_simulator/noir-structs/note_validation_request.ts +5 -10
- package/src/contract_function_simulator/noir-structs/option.ts +69 -0
- package/src/contract_function_simulator/oracle/interfaces.ts +65 -55
- package/src/contract_function_simulator/oracle/note_packing_utils.ts +3 -3
- package/src/contract_function_simulator/oracle/oracle.ts +497 -451
- package/src/contract_function_simulator/oracle/oracle_registry.ts +904 -0
- package/src/contract_function_simulator/oracle/private_execution.ts +4 -4
- package/src/contract_function_simulator/oracle/private_execution_oracle.ts +102 -115
- package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +531 -202
- package/src/contract_function_simulator/pick_notes.ts +22 -3
- package/src/contract_function_simulator/proxied_contract_data_source.ts +41 -64
- package/src/contract_logging.ts +18 -5
- package/src/contract_sync/contract_sync_service.ts +120 -83
- package/src/contract_sync/helpers.ts +13 -25
- package/src/debug/pxe_debug_utils.ts +3 -11
- package/src/entrypoints/client/bundle/index.ts +0 -1
- package/src/entrypoints/client/bundle/utils.ts +10 -5
- package/src/entrypoints/client/lazy/index.ts +0 -1
- package/src/entrypoints/client/lazy/utils.ts +10 -5
- package/src/entrypoints/pxe_creation_options.ts +14 -0
- package/src/entrypoints/server/index.ts +2 -2
- package/src/entrypoints/server/utils.ts +15 -6
- package/src/events/event_service.ts +69 -21
- 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 +48 -0
- package/src/hooks/index.ts +7 -0
- package/src/logs/log_service.ts +153 -134
- package/src/messages/message_context_service.ts +45 -0
- package/src/notes/note_service.ts +119 -85
- package/src/notes_filter.ts +1 -3
- package/src/oracle_version.ts +20 -10
- package/src/private_kernel/batch_planner.ts +169 -0
- package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +1 -1
- package/src/private_kernel/hints/test_utils.ts +2 -9
- package/src/private_kernel/private_kernel_execution_prover.ts +240 -82
- package/src/private_kernel/private_kernel_oracle.ts +35 -25
- package/src/pxe.ts +262 -98
- package/src/storage/anchor_block_store/anchor_block_store.ts +1 -1
- 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__/KeyStore.json +52 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +46 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +36 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +18 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/SenderAddressBookStore.json +16 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +22 -0
- package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +97 -0
- package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
- package/src/storage/backwards_compatibility_tests/schema_tests.ts +712 -0
- package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
- package/src/storage/capsule_store/capsule_service.ts +90 -0
- package/src/storage/capsule_store/capsule_store.ts +44 -26
- package/src/storage/capsule_store/index.ts +1 -0
- package/src/storage/contract_store/contract_store.ts +14 -35
- package/src/storage/metadata.ts +1 -1
- package/src/storage/note_store/note_store.ts +2 -5
- package/src/storage/open_pxe_stores.ts +49 -0
- package/src/storage/private_event_store/private_event_store.ts +4 -0
- package/src/storage/private_event_store/stored_private_event.ts +1 -1
- package/src/storage/tagging_store/recipient_tagging_store.ts +5 -9
- package/src/storage/tagging_store/sender_tagging_store.ts +185 -138
- package/src/tagging/get_all_logs_by_tags.ts +78 -50
- package/src/tagging/index.ts +5 -4
- package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
- package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +240 -0
- package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
- package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
- package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +52 -12
- package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +44 -14
- package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +23 -14
- package/dest/access_scopes.d.ts +0 -9
- package/dest/access_scopes.d.ts.map +0 -1
- package/dest/access_scopes.js +0 -6
- package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +0 -14
- 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 -14
- 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 -33
- package/src/access_scopes.ts +0 -9
- package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +0 -140
- package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +0 -44
|
@@ -1,22 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
-
import { Point } from '@aztec/foundation/curves/grumpkin';
|
|
4
|
-
import {
|
|
5
|
-
type ACIRCallback,
|
|
6
|
-
type ACVMField,
|
|
7
|
-
arrayOfArraysToBoundedVecOfArrays,
|
|
8
|
-
bufferToBoundedVec,
|
|
9
|
-
fromUintArray,
|
|
10
|
-
fromUintBoundedVec,
|
|
11
|
-
toACVMField,
|
|
12
|
-
} from '@aztec/simulator/client';
|
|
13
|
-
import { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
14
|
-
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
15
|
-
import { BlockHash } from '@aztec/stdlib/block';
|
|
16
|
-
import { ContractClassLog, ContractClassLogFields } from '@aztec/stdlib/logs';
|
|
1
|
+
import type { ACIRCallback, ACVMField } from '@aztec/simulator/client';
|
|
17
2
|
|
|
3
|
+
import { ORACLE_VERSION_MAJOR, ORACLE_VERSION_MINOR } from '../../oracle_version.js';
|
|
18
4
|
import type { IMiscOracle, IPrivateExecutionOracle, IUtilityExecutionOracle } from './interfaces.js';
|
|
19
|
-
import {
|
|
5
|
+
import { callHandler } from './oracle_registry.js';
|
|
20
6
|
|
|
21
7
|
export class UnavailableOracleError extends Error {
|
|
22
8
|
constructor(oracleName: string) {
|
|
@@ -26,6 +12,25 @@ export class UnavailableOracleError extends Error {
|
|
|
26
12
|
|
|
27
13
|
/**
|
|
28
14
|
* A data source that has all the apis required by Aztec.nr.
|
|
15
|
+
*
|
|
16
|
+
* ## Oracle naming conventions
|
|
17
|
+
*
|
|
18
|
+
* We try to keep oracle naming consistent, please see below the conventions we adhere to.
|
|
19
|
+
*
|
|
20
|
+
* Each oracle method name has the form `aztec_{scope}_{verb}{Object}`, where:
|
|
21
|
+
*
|
|
22
|
+
* - **Scope prefix** indicates the execution context required:
|
|
23
|
+
* - `aztec_prv_` — available only during private function execution.
|
|
24
|
+
* - `aztec_utl_` — available during both utility and private execution.
|
|
25
|
+
*
|
|
26
|
+
* - **Verb** signals the operation's semantics (verb-first, then object):
|
|
27
|
+
* - `get` — read / lookup / get data from oracle into contract.
|
|
28
|
+
* - `does`/`is`/`has` — predicate (returns boolean).
|
|
29
|
+
* - `emit`/`notify` — propagate data from contract to oracle.
|
|
30
|
+
* - `set` — contract driven oracle state mutation (capsules, execution cache, tagging, etc).
|
|
31
|
+
* - `call` — trigger nested execution (control flow).
|
|
32
|
+
* - `assert` — validate a condition, throw on failure.
|
|
33
|
+
* - Standalone verbs (`delete`, `copy`, `decrypt`, `log`, etc) are used when no generic verb fits.
|
|
29
34
|
*/
|
|
30
35
|
export class Oracle {
|
|
31
36
|
constructor(private handler: IMiscOracle | IUtilityExecutionOracle | IPrivateExecutionOracle) {}
|
|
@@ -85,581 +90,622 @@ export class Oracle {
|
|
|
85
90
|
});
|
|
86
91
|
|
|
87
92
|
// Build callback object and return it
|
|
88
|
-
|
|
93
|
+
const callback = oracleNames.reduce((acc, name) => {
|
|
89
94
|
const method = this[name as keyof Omit<Oracle, (typeof excludedProps)[number]>];
|
|
90
95
|
acc[name] = method.bind(this);
|
|
91
96
|
return acc;
|
|
92
97
|
}, {} as ACIRCallback);
|
|
98
|
+
|
|
99
|
+
// Wrap in a Proxy to intercept access to missing oracle names and provide enhanced error messages when the
|
|
100
|
+
// contract's minor version is higher than the PXE's (i.e. the contract expects oracles that were added in a newer
|
|
101
|
+
// minor version).
|
|
102
|
+
const handler = this.handler;
|
|
103
|
+
return new Proxy(callback, {
|
|
104
|
+
get(target, prop: string) {
|
|
105
|
+
if (prop in target) {
|
|
106
|
+
return target[prop];
|
|
107
|
+
}
|
|
108
|
+
// Return a function that throws with an enhanced error message if applicable
|
|
109
|
+
return () => {
|
|
110
|
+
type NonOracleFunctionGetContractOracleVersion = {
|
|
111
|
+
nonOracleFunctionGetContractOracleVersion(): { major: number; minor: number } | undefined;
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
let contractVersion = undefined;
|
|
115
|
+
if ('nonOracleFunctionGetContractOracleVersion' in handler) {
|
|
116
|
+
contractVersion = (
|
|
117
|
+
handler as unknown as NonOracleFunctionGetContractOracleVersion
|
|
118
|
+
).nonOracleFunctionGetContractOracleVersion();
|
|
119
|
+
}
|
|
120
|
+
if (!contractVersion) {
|
|
121
|
+
throw new Error(
|
|
122
|
+
`Oracle '${prop}' not found and the contract's oracle version is unknown (the version check oracle ` +
|
|
123
|
+
`was not called before '${prop}'). This usually means the contract was not compiled with the ` +
|
|
124
|
+
`#[aztec] macro, which injects the version check as the first oracle call in every private/utility ` +
|
|
125
|
+
`external function. If you're using a custom entry point, ensure assert_compatible_oracle_version() ` +
|
|
126
|
+
`is called before any other oracle calls. See https://docs.aztec.network/errors/8`,
|
|
127
|
+
);
|
|
128
|
+
} else if (contractVersion.minor > ORACLE_VERSION_MINOR) {
|
|
129
|
+
throw new Error(
|
|
130
|
+
`Oracle '${prop}' not found.` +
|
|
131
|
+
` This usually means the contract requires a newer private execution environment than you have.` +
|
|
132
|
+
` Upgrade your private execution environment to a compatible version. The contract was compiled with` +
|
|
133
|
+
` Aztec.nr oracle version ${contractVersion.major}.${contractVersion.minor}, but this private` +
|
|
134
|
+
` execution environment only supports up to ${ORACLE_VERSION_MAJOR}.${ORACLE_VERSION_MINOR}.` +
|
|
135
|
+
` See https://docs.aztec.network/errors/8`,
|
|
136
|
+
);
|
|
137
|
+
} else {
|
|
138
|
+
throw new Error(
|
|
139
|
+
`Oracle '${prop}' not found.` +
|
|
140
|
+
` The contract's oracle version (${contractVersion.major}.${contractVersion.minor}) is compatible` +
|
|
141
|
+
` with this private execution environment (${ORACLE_VERSION_MAJOR}.${ORACLE_VERSION_MINOR}), so all` +
|
|
142
|
+
` standard oracles should be available. This could mean the contract was compiled against a modified` +
|
|
143
|
+
` version of Aztec.nr, or that it references an oracle that does not exist.` +
|
|
144
|
+
` See https://docs.aztec.network/errors/8`,
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
},
|
|
149
|
+
});
|
|
93
150
|
}
|
|
94
151
|
|
|
95
152
|
// eslint-disable-next-line camelcase
|
|
96
|
-
aztec_utl_assertCompatibleOracleVersion([
|
|
97
|
-
|
|
98
|
-
|
|
153
|
+
aztec_utl_assertCompatibleOracleVersion(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
154
|
+
return callHandler({
|
|
155
|
+
oracle: 'aztec_utl_assertCompatibleOracleVersion',
|
|
156
|
+
inputs,
|
|
157
|
+
handler: ([major, minor]) => {
|
|
158
|
+
this.handlerAsMisc().assertCompatibleOracleVersion(major, minor);
|
|
159
|
+
},
|
|
160
|
+
});
|
|
99
161
|
}
|
|
100
162
|
|
|
101
163
|
// eslint-disable-next-line camelcase
|
|
102
|
-
aztec_utl_getRandomField(): Promise<ACVMField[]> {
|
|
103
|
-
|
|
104
|
-
|
|
164
|
+
aztec_utl_getRandomField(): Promise<(ACVMField | ACVMField[])[]> {
|
|
165
|
+
return callHandler({
|
|
166
|
+
oracle: 'aztec_utl_getRandomField',
|
|
167
|
+
inputs: [],
|
|
168
|
+
handler: () => this.handlerAsMisc().getRandomField(),
|
|
169
|
+
});
|
|
105
170
|
}
|
|
106
171
|
|
|
107
172
|
// eslint-disable-next-line camelcase
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
173
|
+
aztec_prv_setHashPreimage(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
174
|
+
return callHandler({
|
|
175
|
+
oracle: 'aztec_prv_setHashPreimage',
|
|
176
|
+
inputs,
|
|
177
|
+
handler: ([values, hash]) => {
|
|
178
|
+
this.handlerAsPrivate().setHashPreimage(values, hash);
|
|
179
|
+
},
|
|
180
|
+
});
|
|
111
181
|
}
|
|
112
182
|
|
|
113
183
|
// eslint-disable-next-line camelcase
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
184
|
+
aztec_prv_getHashPreimage(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
185
|
+
return callHandler({
|
|
186
|
+
oracle: 'aztec_prv_getHashPreimage',
|
|
187
|
+
inputs,
|
|
188
|
+
handler: ([returnsHash]) => this.handlerAsPrivate().getHashPreimage(returnsHash),
|
|
189
|
+
});
|
|
117
190
|
}
|
|
118
191
|
|
|
119
192
|
// eslint-disable-next-line camelcase
|
|
120
193
|
aztec_utl_getUtilityContext(): Promise<(ACVMField | ACVMField[])[]> {
|
|
121
|
-
|
|
122
|
-
|
|
194
|
+
return callHandler({
|
|
195
|
+
oracle: 'aztec_utl_getUtilityContext',
|
|
196
|
+
inputs: [],
|
|
197
|
+
handler: () => this.handlerAsUtility().getUtilityContext(),
|
|
198
|
+
});
|
|
123
199
|
}
|
|
124
200
|
|
|
125
201
|
// eslint-disable-next-line camelcase
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
202
|
+
aztec_utl_getKeyValidationRequest(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
203
|
+
return callHandler({
|
|
204
|
+
oracle: 'aztec_utl_getKeyValidationRequest',
|
|
205
|
+
inputs,
|
|
206
|
+
handler: ([pkMHash]) => this.handlerAsUtility().getKeyValidationRequest(pkMHash),
|
|
207
|
+
});
|
|
130
208
|
}
|
|
131
209
|
|
|
132
210
|
// eslint-disable-next-line camelcase
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
instance.currentContractClassId,
|
|
140
|
-
instance.initializationHash,
|
|
141
|
-
...instance.publicKeys.toFields(),
|
|
142
|
-
].map(toACVMField);
|
|
211
|
+
aztec_utl_getContractInstance(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
212
|
+
return callHandler({
|
|
213
|
+
oracle: 'aztec_utl_getContractInstance',
|
|
214
|
+
inputs,
|
|
215
|
+
handler: ([address]) => this.handlerAsUtility().getContractInstance(address),
|
|
216
|
+
});
|
|
143
217
|
}
|
|
144
218
|
|
|
145
219
|
// eslint-disable-next-line camelcase
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
const witness = await this.handlerAsUtility().getNoteHashMembershipWitness(parsedAnchorBlockHash, parsedNoteHash);
|
|
154
|
-
if (!witness) {
|
|
155
|
-
throw new Error(
|
|
156
|
-
`Note hash ${noteHash} not found in the note hash tree at anchor block hash ${parsedAnchorBlockHash.toString()}.`,
|
|
157
|
-
);
|
|
158
|
-
}
|
|
159
|
-
return witness.toNoirRepresentation();
|
|
220
|
+
aztec_utl_getNoteHashMembershipWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
221
|
+
return callHandler({
|
|
222
|
+
oracle: 'aztec_utl_getNoteHashMembershipWitness',
|
|
223
|
+
inputs,
|
|
224
|
+
handler: ([anchorBlockHash, noteHash]) =>
|
|
225
|
+
this.handlerAsUtility().getNoteHashMembershipWitness(anchorBlockHash, noteHash),
|
|
226
|
+
});
|
|
160
227
|
}
|
|
161
228
|
|
|
162
229
|
// eslint-disable-next-line camelcase
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
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();
|
|
230
|
+
aztec_utl_getBlockHashMembershipWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
231
|
+
return callHandler({
|
|
232
|
+
oracle: 'aztec_utl_getBlockHashMembershipWitness',
|
|
233
|
+
inputs,
|
|
234
|
+
handler: ([anchorBlockHash, blockHash]) =>
|
|
235
|
+
this.handlerAsUtility().getBlockHashMembershipWitness(anchorBlockHash, blockHash),
|
|
236
|
+
});
|
|
177
237
|
}
|
|
178
238
|
|
|
179
239
|
// eslint-disable-next-line camelcase
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
const witness = await this.handlerAsUtility().getNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
|
|
188
|
-
if (!witness) {
|
|
189
|
-
throw new Error(
|
|
190
|
-
`Nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`,
|
|
191
|
-
);
|
|
192
|
-
}
|
|
193
|
-
return witness.toNoirRepresentation();
|
|
240
|
+
aztec_utl_getNullifierMembershipWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
241
|
+
return callHandler({
|
|
242
|
+
oracle: 'aztec_utl_getNullifierMembershipWitness',
|
|
243
|
+
inputs,
|
|
244
|
+
handler: ([blockHash, nullifier]) => this.handlerAsUtility().getNullifierMembershipWitness(blockHash, nullifier),
|
|
245
|
+
});
|
|
194
246
|
}
|
|
195
247
|
|
|
196
248
|
// eslint-disable-next-line camelcase
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
249
|
+
aztec_utl_getLowNullifierMembershipWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
250
|
+
return callHandler({
|
|
251
|
+
oracle: 'aztec_utl_getLowNullifierMembershipWitness',
|
|
252
|
+
inputs,
|
|
253
|
+
handler: ([blockHash, nullifier]) =>
|
|
254
|
+
this.handlerAsUtility().getLowNullifierMembershipWitness(blockHash, nullifier),
|
|
255
|
+
});
|
|
256
|
+
}
|
|
203
257
|
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
258
|
+
// eslint-disable-next-line camelcase
|
|
259
|
+
aztec_utl_getPublicDataWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
260
|
+
return callHandler({
|
|
261
|
+
oracle: 'aztec_utl_getPublicDataWitness',
|
|
262
|
+
inputs,
|
|
263
|
+
handler: ([blockHash, leafSlot]) => this.handlerAsUtility().getPublicDataWitness(blockHash, leafSlot),
|
|
264
|
+
});
|
|
211
265
|
}
|
|
212
266
|
|
|
213
267
|
// eslint-disable-next-line camelcase
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
268
|
+
aztec_utl_getBlockHeader(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
269
|
+
return callHandler({
|
|
270
|
+
oracle: 'aztec_utl_getBlockHeader',
|
|
271
|
+
inputs,
|
|
272
|
+
handler: ([blockNumber]) => this.handlerAsUtility().getBlockHeader(blockNumber),
|
|
273
|
+
});
|
|
274
|
+
}
|
|
220
275
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
276
|
+
// eslint-disable-next-line camelcase
|
|
277
|
+
aztec_utl_getAuthWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
278
|
+
return callHandler({
|
|
279
|
+
oracle: 'aztec_utl_getAuthWitness',
|
|
280
|
+
inputs,
|
|
281
|
+
handler: ([messageHash]) => this.handlerAsUtility().getAuthWitness(messageHash),
|
|
282
|
+
});
|
|
228
283
|
}
|
|
229
284
|
|
|
230
285
|
// eslint-disable-next-line camelcase
|
|
231
|
-
|
|
232
|
-
|
|
286
|
+
aztec_utl_getPublicKeysAndPartialAddress(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
287
|
+
return callHandler({
|
|
288
|
+
oracle: 'aztec_utl_getPublicKeysAndPartialAddress',
|
|
289
|
+
inputs,
|
|
290
|
+
handler: ([address]) => this.handlerAsUtility().getPublicKeysAndPartialAddress(address),
|
|
291
|
+
});
|
|
292
|
+
}
|
|
233
293
|
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
294
|
+
// eslint-disable-next-line camelcase
|
|
295
|
+
aztec_utl_getNotes(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
296
|
+
return callHandler({
|
|
297
|
+
oracle: 'aztec_utl_getNotes',
|
|
298
|
+
inputs,
|
|
299
|
+
handler: ([
|
|
300
|
+
owner,
|
|
301
|
+
storageSlot,
|
|
302
|
+
numSelects,
|
|
303
|
+
selectByIndexes,
|
|
304
|
+
selectByOffsets,
|
|
305
|
+
selectByLengths,
|
|
306
|
+
selectValues,
|
|
307
|
+
selectComparators,
|
|
308
|
+
sortByIndexes,
|
|
309
|
+
sortByOffsets,
|
|
310
|
+
sortByLengths,
|
|
311
|
+
sortOrder,
|
|
312
|
+
limit,
|
|
313
|
+
offset,
|
|
314
|
+
status,
|
|
315
|
+
maxNotes,
|
|
316
|
+
packedHintedNoteLength,
|
|
317
|
+
]) =>
|
|
318
|
+
this.handlerAsUtility().getNotes(
|
|
319
|
+
owner,
|
|
320
|
+
storageSlot,
|
|
321
|
+
numSelects,
|
|
322
|
+
selectByIndexes,
|
|
323
|
+
selectByOffsets,
|
|
324
|
+
selectByLengths,
|
|
325
|
+
selectValues,
|
|
326
|
+
selectComparators,
|
|
327
|
+
sortByIndexes,
|
|
328
|
+
sortByOffsets,
|
|
329
|
+
sortByLengths,
|
|
330
|
+
sortOrder,
|
|
331
|
+
limit,
|
|
332
|
+
offset,
|
|
333
|
+
status,
|
|
334
|
+
maxNotes,
|
|
335
|
+
packedHintedNoteLength,
|
|
336
|
+
),
|
|
337
|
+
});
|
|
239
338
|
}
|
|
240
339
|
|
|
241
340
|
// eslint-disable-next-line camelcase
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
341
|
+
aztec_prv_notifyCreatedNote(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
342
|
+
return callHandler({
|
|
343
|
+
oracle: 'aztec_prv_notifyCreatedNote',
|
|
344
|
+
inputs,
|
|
345
|
+
handler: ([owner, storageSlot, randomness, noteTypeId, note, noteHash, counter]) => {
|
|
346
|
+
this.handlerAsPrivate().notifyCreatedNote(owner, storageSlot, randomness, noteTypeId, note, noteHash, counter);
|
|
347
|
+
},
|
|
348
|
+
});
|
|
249
349
|
}
|
|
250
350
|
|
|
251
351
|
// eslint-disable-next-line camelcase
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
352
|
+
aztec_prv_notifyNullifiedNote(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
353
|
+
return callHandler({
|
|
354
|
+
oracle: 'aztec_prv_notifyNullifiedNote',
|
|
355
|
+
inputs,
|
|
356
|
+
handler: ([innerNullifier, noteHash, counter]) =>
|
|
357
|
+
this.handlerAsPrivate().notifyNullifiedNote(innerNullifier, noteHash, counter),
|
|
358
|
+
});
|
|
359
|
+
}
|
|
255
360
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
return [toACVMField(1), [...result.publicKeys.toFields(), result.partialAddress].map(toACVMField)];
|
|
264
|
-
}
|
|
361
|
+
// eslint-disable-next-line camelcase
|
|
362
|
+
aztec_prv_notifyCreatedNullifier(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
363
|
+
return callHandler({
|
|
364
|
+
oracle: 'aztec_prv_notifyCreatedNullifier',
|
|
365
|
+
inputs,
|
|
366
|
+
handler: ([innerNullifier]) => this.handlerAsPrivate().notifyCreatedNullifier(innerNullifier),
|
|
367
|
+
});
|
|
265
368
|
}
|
|
266
369
|
|
|
267
370
|
// eslint-disable-next-line camelcase
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
selectValues: ACVMField[],
|
|
277
|
-
selectComparators: ACVMField[],
|
|
278
|
-
sortByIndexes: ACVMField[],
|
|
279
|
-
sortByOffsets: ACVMField[],
|
|
280
|
-
sortByLengths: ACVMField[],
|
|
281
|
-
sortOrder: ACVMField[],
|
|
282
|
-
[limit]: ACVMField[],
|
|
283
|
-
[offset]: ACVMField[],
|
|
284
|
-
[status]: ACVMField[],
|
|
285
|
-
[maxNotes]: ACVMField[],
|
|
286
|
-
[packedHintedNoteLength]: ACVMField[],
|
|
287
|
-
): Promise<(ACVMField | ACVMField[])[]> {
|
|
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,
|
|
292
|
-
Fr.fromString(storageSlot),
|
|
293
|
-
+numSelects,
|
|
294
|
-
selectByIndexes.map(s => +s),
|
|
295
|
-
selectByOffsets.map(s => +s),
|
|
296
|
-
selectByLengths.map(s => +s),
|
|
297
|
-
selectValues.map(Fr.fromString),
|
|
298
|
-
selectComparators.map(s => +s),
|
|
299
|
-
sortByIndexes.map(s => +s),
|
|
300
|
-
sortByOffsets.map(s => +s),
|
|
301
|
-
sortByLengths.map(s => +s),
|
|
302
|
-
sortOrder.map(s => +s),
|
|
303
|
-
+limit,
|
|
304
|
-
+offset,
|
|
305
|
-
+status,
|
|
306
|
-
);
|
|
371
|
+
aztec_prv_isNullifierPending(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
372
|
+
return callHandler({
|
|
373
|
+
oracle: 'aztec_prv_isNullifierPending',
|
|
374
|
+
inputs,
|
|
375
|
+
handler: ([innerNullifier, contractAddress]) =>
|
|
376
|
+
this.handlerAsPrivate().isNullifierPending(innerNullifier, contractAddress),
|
|
377
|
+
});
|
|
378
|
+
}
|
|
307
379
|
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
note: noteData.note,
|
|
317
|
-
}),
|
|
318
|
-
);
|
|
380
|
+
// eslint-disable-next-line camelcase
|
|
381
|
+
aztec_utl_doesNullifierExist(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
382
|
+
return callHandler({
|
|
383
|
+
oracle: 'aztec_utl_doesNullifierExist',
|
|
384
|
+
inputs,
|
|
385
|
+
handler: ([innerNullifier]) => this.handlerAsUtility().doesNullifierExist(innerNullifier),
|
|
386
|
+
});
|
|
387
|
+
}
|
|
319
388
|
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
389
|
+
// eslint-disable-next-line camelcase
|
|
390
|
+
aztec_utl_getL1ToL2MembershipWitness(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
391
|
+
return callHandler({
|
|
392
|
+
oracle: 'aztec_utl_getL1ToL2MembershipWitness',
|
|
393
|
+
inputs,
|
|
394
|
+
handler: ([contractAddress, messageHash, secret]) =>
|
|
395
|
+
this.handlerAsUtility().getL1ToL2MembershipWitness(contractAddress, messageHash, secret),
|
|
396
|
+
});
|
|
397
|
+
}
|
|
324
398
|
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
[randomness]: ACVMField[],
|
|
334
|
-
[noteTypeId]: ACVMField[],
|
|
335
|
-
note: ACVMField[],
|
|
336
|
-
[noteHash]: ACVMField[],
|
|
337
|
-
[counter]: ACVMField[],
|
|
338
|
-
): Promise<ACVMField[]> {
|
|
339
|
-
this.handlerAsPrivate().notifyCreatedNote(
|
|
340
|
-
AztecAddress.fromString(owner),
|
|
341
|
-
Fr.fromString(storageSlot),
|
|
342
|
-
Fr.fromString(randomness),
|
|
343
|
-
NoteSelector.fromField(Fr.fromString(noteTypeId)),
|
|
344
|
-
note.map(Fr.fromString),
|
|
345
|
-
Fr.fromString(noteHash),
|
|
346
|
-
+counter,
|
|
347
|
-
);
|
|
348
|
-
return Promise.resolve([]);
|
|
399
|
+
// eslint-disable-next-line camelcase
|
|
400
|
+
aztec_utl_getFromPublicStorage(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
401
|
+
return callHandler({
|
|
402
|
+
oracle: 'aztec_utl_getFromPublicStorage',
|
|
403
|
+
inputs,
|
|
404
|
+
handler: ([blockHash, contractAddress, startStorageSlot, numberOfElements]) =>
|
|
405
|
+
this.handlerAsUtility().getFromPublicStorage(blockHash, contractAddress, startStorageSlot, numberOfElements),
|
|
406
|
+
});
|
|
349
407
|
}
|
|
350
408
|
|
|
351
409
|
// eslint-disable-next-line camelcase
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
410
|
+
aztec_utl_callUtilityFunction(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
411
|
+
return callHandler({
|
|
412
|
+
oracle: 'aztec_utl_callUtilityFunction',
|
|
413
|
+
inputs,
|
|
414
|
+
handler: ([contractAddress, functionSelector, args]) =>
|
|
415
|
+
this.handlerAsUtility().callUtilityFunction(contractAddress, functionSelector, args),
|
|
416
|
+
});
|
|
359
417
|
}
|
|
360
418
|
|
|
361
419
|
// eslint-disable-next-line camelcase
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
420
|
+
aztec_prv_notifyCreatedContractClassLog(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
421
|
+
return callHandler({
|
|
422
|
+
oracle: 'aztec_prv_notifyCreatedContractClassLog',
|
|
423
|
+
inputs,
|
|
424
|
+
handler: ([log, counter]) => {
|
|
425
|
+
this.handlerAsPrivate().notifyCreatedContractClassLog(log, counter);
|
|
426
|
+
},
|
|
427
|
+
});
|
|
365
428
|
}
|
|
366
429
|
|
|
367
430
|
// eslint-disable-next-line camelcase
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
AztecAddress.fromString(contractAddress),
|
|
375
|
-
);
|
|
376
|
-
return [toACVMField(isPending)];
|
|
431
|
+
aztec_utl_log(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
432
|
+
return callHandler({
|
|
433
|
+
oracle: 'aztec_utl_log',
|
|
434
|
+
inputs,
|
|
435
|
+
handler: ([level, message, _, fields]) => this.handlerAsMisc().log(level, message, fields),
|
|
436
|
+
});
|
|
377
437
|
}
|
|
378
438
|
|
|
439
|
+
// This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
|
|
440
|
+
// change the name here.
|
|
379
441
|
// eslint-disable-next-line camelcase
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
442
|
+
aztec_prv_callPrivateFunction(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
443
|
+
return callHandler({
|
|
444
|
+
oracle: 'aztec_prv_callPrivateFunction',
|
|
445
|
+
inputs,
|
|
446
|
+
handler: ([contractAddress, functionSelector, argsHash, sideEffectCounter, isStaticCall]) =>
|
|
447
|
+
this.handlerAsPrivate().callPrivateFunction(
|
|
448
|
+
contractAddress,
|
|
449
|
+
functionSelector,
|
|
450
|
+
argsHash,
|
|
451
|
+
sideEffectCounter,
|
|
452
|
+
isStaticCall,
|
|
453
|
+
),
|
|
454
|
+
});
|
|
383
455
|
}
|
|
384
456
|
|
|
385
457
|
// eslint-disable-next-line camelcase
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
AztecAddress.fromString(contractAddress),
|
|
393
|
-
Fr.fromString(messageHash),
|
|
394
|
-
Fr.fromString(secret),
|
|
395
|
-
);
|
|
396
|
-
return message.toNoirRepresentation();
|
|
458
|
+
aztec_prv_assertValidPublicCalldata(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
459
|
+
return callHandler({
|
|
460
|
+
oracle: 'aztec_prv_assertValidPublicCalldata',
|
|
461
|
+
inputs,
|
|
462
|
+
handler: ([calldataHash]) => this.handlerAsPrivate().assertValidPublicCalldata(calldataHash),
|
|
463
|
+
});
|
|
397
464
|
}
|
|
398
465
|
|
|
399
466
|
// eslint-disable-next-line camelcase
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
BlockHash.fromString(blockHash),
|
|
408
|
-
new AztecAddress(Fr.fromString(contractAddress)),
|
|
409
|
-
Fr.fromString(startStorageSlot),
|
|
410
|
-
+numberOfElements,
|
|
411
|
-
);
|
|
412
|
-
return [values.map(toACVMField)];
|
|
467
|
+
aztec_prv_notifyRevertiblePhaseStart(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
468
|
+
return callHandler({
|
|
469
|
+
oracle: 'aztec_prv_notifyRevertiblePhaseStart',
|
|
470
|
+
inputs,
|
|
471
|
+
handler: ([minRevertibleSideEffectCounter]) =>
|
|
472
|
+
this.handlerAsPrivate().notifyRevertiblePhaseStart(minRevertibleSideEffectCounter),
|
|
473
|
+
});
|
|
413
474
|
}
|
|
414
475
|
|
|
415
476
|
// eslint-disable-next-line camelcase
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
const log = new ContractClassLog(new AztecAddress(Fr.fromString(contractAddress)), logFields, +length);
|
|
477
|
+
aztec_prv_isExecutionInRevertiblePhase(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
478
|
+
return callHandler({
|
|
479
|
+
oracle: 'aztec_prv_isExecutionInRevertiblePhase',
|
|
480
|
+
inputs,
|
|
481
|
+
handler: ([sideEffectCounter]) => this.handlerAsPrivate().isExecutionInRevertiblePhase(sideEffectCounter),
|
|
482
|
+
});
|
|
483
|
+
}
|
|
424
484
|
|
|
425
|
-
|
|
426
|
-
|
|
485
|
+
// eslint-disable-next-line camelcase
|
|
486
|
+
aztec_prv_getNextAppTagAsSender(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
487
|
+
return callHandler({
|
|
488
|
+
oracle: 'aztec_prv_getNextAppTagAsSender',
|
|
489
|
+
inputs,
|
|
490
|
+
handler: ([sender, recipient]) => this.handlerAsPrivate().getNextAppTagAsSender(sender, recipient),
|
|
491
|
+
});
|
|
427
492
|
}
|
|
428
493
|
|
|
429
494
|
// eslint-disable-next-line camelcase
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
const levelFr = Fr.fromString(level[0]);
|
|
437
|
-
const messageStr = message.map(acvmField => String.fromCharCode(Fr.fromString(acvmField).toNumber())).join('');
|
|
438
|
-
const fieldsFr = fields.map(Fr.fromString);
|
|
439
|
-
await this.handlerAsMisc().log(levelFr.toNumber(), messageStr, fieldsFr);
|
|
440
|
-
return [];
|
|
495
|
+
aztec_prv_getNextConstrainedTaggingIndex(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
496
|
+
return callHandler({
|
|
497
|
+
oracle: 'aztec_prv_getNextConstrainedTaggingIndex',
|
|
498
|
+
inputs,
|
|
499
|
+
handler: ([appSiloedSecret]) => this.handlerAsPrivate().getNextConstrainedTaggingIndex(appSiloedSecret),
|
|
500
|
+
});
|
|
441
501
|
}
|
|
442
502
|
|
|
443
|
-
// This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
|
|
444
|
-
// change the name here.
|
|
445
503
|
// eslint-disable-next-line camelcase
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
): Promise<ACVMField[][]> {
|
|
453
|
-
const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().callPrivateFunction(
|
|
454
|
-
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
455
|
-
FunctionSelector.fromField(Fr.fromString(functionSelector)),
|
|
456
|
-
Fr.fromString(argsHash),
|
|
457
|
-
Fr.fromString(sideEffectCounter).toNumber(),
|
|
458
|
-
Fr.fromString(isStaticCall).toBool(),
|
|
459
|
-
);
|
|
460
|
-
return [[endSideEffectCounter, returnsHash].map(toACVMField)];
|
|
504
|
+
aztec_utl_getPendingTaggedLogs(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
505
|
+
return callHandler({
|
|
506
|
+
oracle: 'aztec_utl_getPendingTaggedLogs',
|
|
507
|
+
inputs,
|
|
508
|
+
handler: ([scope]) => this.handlerAsUtility().getPendingTaggedLogs(scope),
|
|
509
|
+
});
|
|
461
510
|
}
|
|
462
511
|
|
|
463
512
|
// eslint-disable-next-line camelcase
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
);
|
|
476
|
-
return [];
|
|
513
|
+
aztec_utl_validateAndStoreEnqueuedNotesAndEvents(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
514
|
+
return callHandler({
|
|
515
|
+
oracle: 'aztec_utl_validateAndStoreEnqueuedNotesAndEvents',
|
|
516
|
+
inputs,
|
|
517
|
+
handler: ([noteValidationRequestsArrayBaseSlot, eventValidationRequestsArrayBaseSlot, scope]) =>
|
|
518
|
+
this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(
|
|
519
|
+
noteValidationRequestsArrayBaseSlot,
|
|
520
|
+
eventValidationRequestsArrayBaseSlot,
|
|
521
|
+
scope,
|
|
522
|
+
),
|
|
523
|
+
});
|
|
477
524
|
}
|
|
478
525
|
|
|
479
526
|
// eslint-disable-next-line camelcase
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
await this.handlerAsPrivate().notifySetPublicTeardownFunctionCall(
|
|
487
|
-
AztecAddress.fromString(contractAddress),
|
|
488
|
-
Fr.fromString(calldataHash),
|
|
489
|
-
Fr.fromString(sideEffectCounter).toNumber(),
|
|
490
|
-
Fr.fromString(isStaticCall).toBool(),
|
|
491
|
-
);
|
|
492
|
-
return [];
|
|
527
|
+
aztec_utl_getLogsByTag(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
528
|
+
return callHandler({
|
|
529
|
+
oracle: 'aztec_utl_getLogsByTag',
|
|
530
|
+
inputs,
|
|
531
|
+
handler: ([requestArrayBaseSlot]) => this.handlerAsUtility().getLogsByTag(requestArrayBaseSlot),
|
|
532
|
+
});
|
|
493
533
|
}
|
|
494
534
|
|
|
495
535
|
// eslint-disable-next-line camelcase
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
);
|
|
502
|
-
return Promise.resolve([]);
|
|
536
|
+
aztec_utl_getMessageContextsByTxHash(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
537
|
+
return callHandler({
|
|
538
|
+
oracle: 'aztec_utl_getMessageContextsByTxHash',
|
|
539
|
+
inputs,
|
|
540
|
+
handler: ([requestArrayBaseSlot]) => this.handlerAsUtility().getMessageContextsByTxHash(requestArrayBaseSlot),
|
|
541
|
+
});
|
|
503
542
|
}
|
|
504
543
|
|
|
505
544
|
// eslint-disable-next-line camelcase
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
545
|
+
aztec_utl_getTxEffect(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
546
|
+
return callHandler({
|
|
547
|
+
oracle: 'aztec_utl_getTxEffect',
|
|
548
|
+
inputs,
|
|
549
|
+
handler: ([txHash]) => this.handlerAsUtility().getTxEffect(txHash),
|
|
550
|
+
});
|
|
511
551
|
}
|
|
512
552
|
|
|
513
553
|
// eslint-disable-next-line camelcase
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
554
|
+
aztec_utl_setCapsule(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
555
|
+
return callHandler({
|
|
556
|
+
oracle: 'aztec_utl_setCapsule',
|
|
557
|
+
inputs,
|
|
558
|
+
handler: ([contractAddress, slot, capsule, scope]) => {
|
|
559
|
+
this.handlerAsUtility().setCapsule(contractAddress, slot, capsule, scope);
|
|
560
|
+
},
|
|
561
|
+
});
|
|
520
562
|
}
|
|
521
563
|
|
|
522
564
|
// eslint-disable-next-line camelcase
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
565
|
+
aztec_utl_getCapsule(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
566
|
+
return callHandler({
|
|
567
|
+
oracle: 'aztec_utl_getCapsule',
|
|
568
|
+
inputs,
|
|
569
|
+
handler: ([contractAddress, slot, tSize, scope]) =>
|
|
570
|
+
this.handlerAsUtility().getCapsule(contractAddress, slot, tSize, scope),
|
|
571
|
+
});
|
|
526
572
|
}
|
|
527
573
|
|
|
528
574
|
// eslint-disable-next-line camelcase
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
);
|
|
575
|
+
aztec_utl_deleteCapsule(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
576
|
+
return callHandler({
|
|
577
|
+
oracle: 'aztec_utl_deleteCapsule',
|
|
578
|
+
inputs,
|
|
579
|
+
handler: ([contractAddress, slot, scope]) => {
|
|
580
|
+
this.handlerAsUtility().deleteCapsule(contractAddress, slot, scope);
|
|
581
|
+
},
|
|
582
|
+
});
|
|
583
|
+
}
|
|
539
584
|
|
|
540
|
-
|
|
585
|
+
// eslint-disable-next-line camelcase
|
|
586
|
+
aztec_utl_copyCapsule(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
587
|
+
return callHandler({
|
|
588
|
+
oracle: 'aztec_utl_copyCapsule',
|
|
589
|
+
inputs,
|
|
590
|
+
handler: ([contractAddress, srcSlot, dstSlot, numEntries, scope]) =>
|
|
591
|
+
this.handlerAsUtility().copyCapsule(contractAddress, srcSlot, dstSlot, numEntries, scope),
|
|
592
|
+
});
|
|
541
593
|
}
|
|
542
594
|
|
|
543
595
|
// eslint-disable-next-line camelcase
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
AztecAddress.fromString(contractAddress),
|
|
551
|
-
Fr.fromString(logRetrievalRequestsArrayBaseSlot),
|
|
552
|
-
Fr.fromString(logRetrievalResponsesArrayBaseSlot),
|
|
553
|
-
);
|
|
554
|
-
return [];
|
|
596
|
+
aztec_utl_pushEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
597
|
+
return callHandler({
|
|
598
|
+
oracle: 'aztec_utl_pushEphemeral',
|
|
599
|
+
inputs,
|
|
600
|
+
handler: ([slot, elements]) => this.handlerAsUtility().pushEphemeral(slot, elements),
|
|
601
|
+
});
|
|
555
602
|
}
|
|
556
603
|
|
|
557
604
|
// eslint-disable-next-line camelcase
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
AztecAddress.fromField(Fr.fromString(contractAddress)),
|
|
565
|
-
Fr.fromString(slot),
|
|
566
|
-
capsule.map(Fr.fromString),
|
|
567
|
-
);
|
|
568
|
-
return [];
|
|
605
|
+
aztec_utl_popEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
606
|
+
return callHandler({
|
|
607
|
+
oracle: 'aztec_utl_popEphemeral',
|
|
608
|
+
inputs,
|
|
609
|
+
handler: ([slot]) => this.handlerAsUtility().popEphemeral(slot),
|
|
610
|
+
});
|
|
569
611
|
}
|
|
570
612
|
|
|
571
613
|
// eslint-disable-next-line camelcase
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
Fr.fromString(slot),
|
|
580
|
-
);
|
|
614
|
+
aztec_utl_getEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
615
|
+
return callHandler({
|
|
616
|
+
oracle: 'aztec_utl_getEphemeral',
|
|
617
|
+
inputs,
|
|
618
|
+
handler: ([slot, index]) => this.handlerAsUtility().getEphemeral(slot, index),
|
|
619
|
+
});
|
|
620
|
+
}
|
|
581
621
|
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
}
|
|
622
|
+
// eslint-disable-next-line camelcase
|
|
623
|
+
aztec_utl_setEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
624
|
+
return callHandler({
|
|
625
|
+
oracle: 'aztec_utl_setEphemeral',
|
|
626
|
+
inputs,
|
|
627
|
+
handler: ([slot, index, elements]) => {
|
|
628
|
+
this.handlerAsUtility().setEphemeral(slot, index, elements);
|
|
629
|
+
},
|
|
630
|
+
});
|
|
591
631
|
}
|
|
592
632
|
|
|
593
633
|
// eslint-disable-next-line camelcase
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
634
|
+
aztec_utl_getEphemeralLen(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
635
|
+
return callHandler({
|
|
636
|
+
oracle: 'aztec_utl_getEphemeralLen',
|
|
637
|
+
inputs,
|
|
638
|
+
handler: ([slot]) => this.handlerAsUtility().getEphemeralLen(slot),
|
|
639
|
+
});
|
|
600
640
|
}
|
|
601
641
|
|
|
602
642
|
// eslint-disable-next-line camelcase
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
Fr.fromString(srcSlot),
|
|
612
|
-
Fr.fromString(dstSlot),
|
|
613
|
-
Fr.fromString(numEntries).toNumber(),
|
|
614
|
-
);
|
|
615
|
-
return [];
|
|
643
|
+
aztec_utl_removeEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
644
|
+
return callHandler({
|
|
645
|
+
oracle: 'aztec_utl_removeEphemeral',
|
|
646
|
+
inputs,
|
|
647
|
+
handler: ([slot, index]) => {
|
|
648
|
+
this.handlerAsUtility().removeEphemeral(slot, index);
|
|
649
|
+
},
|
|
650
|
+
});
|
|
616
651
|
}
|
|
617
652
|
|
|
618
653
|
// eslint-disable-next-line camelcase
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
654
|
+
aztec_utl_clearEphemeral(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
655
|
+
return callHandler({
|
|
656
|
+
oracle: 'aztec_utl_clearEphemeral',
|
|
657
|
+
inputs,
|
|
658
|
+
handler: ([slot]) => {
|
|
659
|
+
this.handlerAsUtility().clearEphemeral(slot);
|
|
660
|
+
},
|
|
661
|
+
});
|
|
662
|
+
}
|
|
628
663
|
|
|
629
|
-
|
|
630
|
-
|
|
664
|
+
// eslint-disable-next-line camelcase
|
|
665
|
+
aztec_utl_decryptAes128(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
666
|
+
return callHandler({
|
|
667
|
+
oracle: 'aztec_utl_decryptAes128',
|
|
668
|
+
inputs,
|
|
669
|
+
handler: ([ciphertext, iv, symKey]) => this.handlerAsUtility().decryptAes128(ciphertext, iv, symKey),
|
|
670
|
+
});
|
|
631
671
|
}
|
|
632
672
|
|
|
633
673
|
// eslint-disable-next-line camelcase
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
AztecAddress.fromField(Fr.fromString(address)),
|
|
642
|
-
Point.fromFields([ephPKField0, ephPKField1, ephPKField2].map(Fr.fromString)),
|
|
643
|
-
);
|
|
644
|
-
return secret.toFields().map(toACVMField);
|
|
674
|
+
aztec_utl_getSharedSecrets(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
675
|
+
return callHandler({
|
|
676
|
+
oracle: 'aztec_utl_getSharedSecrets',
|
|
677
|
+
inputs,
|
|
678
|
+
handler: ([address, ephPksSlot, contractAddress]) =>
|
|
679
|
+
this.handlerAsUtility().getSharedSecrets(address, ephPksSlot, contractAddress),
|
|
680
|
+
});
|
|
645
681
|
}
|
|
646
682
|
|
|
647
683
|
// eslint-disable-next-line camelcase
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
684
|
+
aztec_utl_setContractSyncCacheInvalid(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
685
|
+
return callHandler({
|
|
686
|
+
oracle: 'aztec_utl_setContractSyncCacheInvalid',
|
|
687
|
+
inputs,
|
|
688
|
+
handler: ([contractAddress, scopes]) => {
|
|
689
|
+
this.handlerAsUtility().setContractSyncCacheInvalid(contractAddress, scopes);
|
|
690
|
+
},
|
|
691
|
+
});
|
|
651
692
|
}
|
|
652
693
|
|
|
653
694
|
// eslint-disable-next-line camelcase
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
695
|
+
aztec_utl_emitOffchainEffect(...inputs: ACVMField[][]): Promise<(ACVMField | ACVMField[])[]> {
|
|
696
|
+
return callHandler({
|
|
697
|
+
oracle: 'aztec_utl_emitOffchainEffect',
|
|
698
|
+
inputs,
|
|
699
|
+
handler: ([data]) => this.handlerAsUtility().emitOffchainEffect(data),
|
|
700
|
+
});
|
|
658
701
|
}
|
|
659
702
|
|
|
660
703
|
// eslint-disable-next-line camelcase
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
704
|
+
aztec_prv_getSenderForTags(): Promise<(ACVMField | ACVMField[])[]> {
|
|
705
|
+
return callHandler({
|
|
706
|
+
oracle: 'aztec_prv_getSenderForTags',
|
|
707
|
+
inputs: [],
|
|
708
|
+
handler: () => this.handlerAsPrivate().getSenderForTags(),
|
|
709
|
+
});
|
|
664
710
|
}
|
|
665
711
|
}
|