@aztec/pxe 0.0.1-commit.b9865e97 → 0.0.1-commit.be03c316

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.
Files changed (397) hide show
  1. package/dest/bin/check_oracle_version.js +8 -23
  2. package/dest/bin/index.d.ts +2 -2
  3. package/dest/bin/index.d.ts.map +1 -1
  4. package/dest/bin/index.js +1 -1
  5. package/dest/bin/oracle_version_helpers.d.ts +16 -8
  6. package/dest/bin/oracle_version_helpers.d.ts.map +1 -1
  7. package/dest/bin/oracle_version_helpers.js +22 -69
  8. package/dest/block_synchronizer/block_stream_source.d.ts +5 -5
  9. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -1
  10. package/dest/block_synchronizer/block_stream_source.js +4 -29
  11. package/dest/block_synchronizer/block_synchronizer.d.ts +18 -14
  12. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  13. package/dest/block_synchronizer/block_synchronizer.js +54 -18
  14. package/dest/config/index.d.ts +2 -1
  15. package/dest/config/index.d.ts.map +1 -1
  16. package/dest/config/index.js +1 -0
  17. package/dest/contract/contract_class_service.d.ts +31 -0
  18. package/dest/contract/contract_class_service.d.ts.map +1 -0
  19. package/dest/contract/contract_class_service.js +68 -0
  20. package/dest/contract/contract_sync_service.d.ts +48 -0
  21. package/dest/contract/contract_sync_service.d.ts.map +1 -0
  22. package/dest/{contract_sync → contract}/contract_sync_service.js +26 -45
  23. package/dest/contract/helpers.d.ts +7 -0
  24. package/dest/contract/helpers.d.ts.map +1 -0
  25. package/dest/contract/helpers.js +20 -0
  26. package/dest/contract/skip_sync_contracts.d.ts +11 -0
  27. package/dest/contract/skip_sync_contracts.d.ts.map +1 -0
  28. package/dest/contract/skip_sync_contracts.js +18 -0
  29. package/dest/contract_function_simulator/anchored_contract_data.d.ts +36 -0
  30. package/dest/contract_function_simulator/anchored_contract_data.d.ts.map +1 -0
  31. package/dest/contract_function_simulator/anchored_contract_data.js +54 -0
  32. package/dest/contract_function_simulator/aztec_node_read_cache.d.ts +39 -0
  33. package/dest/contract_function_simulator/aztec_node_read_cache.d.ts.map +1 -0
  34. package/dest/contract_function_simulator/aztec_node_read_cache.js +60 -0
  35. package/dest/contract_function_simulator/contract_function_simulator.d.ts +19 -18
  36. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  37. package/dest/contract_function_simulator/contract_function_simulator.js +63 -32
  38. package/dest/contract_function_simulator/execution_note_cache.d.ts +3 -9
  39. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  40. package/dest/contract_function_simulator/execution_note_cache.js +8 -28
  41. package/dest/contract_function_simulator/index.d.ts +19 -10
  42. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  43. package/dest/contract_function_simulator/index.js +6 -9
  44. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +8 -27
  45. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -1
  46. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +8 -23
  47. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts +9 -0
  48. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts.map +1 -0
  49. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.js +1 -0
  50. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts +7 -0
  51. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts.map +1 -0
  52. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.js +1 -0
  53. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +1 -1
  54. package/dest/contract_function_simulator/noir-structs/fact.d.ts +16 -0
  55. package/dest/contract_function_simulator/noir-structs/fact.d.ts.map +1 -0
  56. package/dest/contract_function_simulator/noir-structs/fact.js +6 -0
  57. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts +27 -0
  58. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts.map +1 -0
  59. package/dest/contract_function_simulator/noir-structs/fact_collection.js +31 -0
  60. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +11 -12
  61. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  62. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +6 -49
  63. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +10 -8
  64. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  65. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +1 -60
  66. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +2 -2
  67. package/dest/contract_function_simulator/noir-structs/option.d.ts +9 -11
  68. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -1
  69. package/dest/contract_function_simulator/noir-structs/option.js +18 -13
  70. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts +11 -0
  71. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts.map +1 -0
  72. package/dest/contract_function_simulator/noir-structs/origin_block.js +5 -0
  73. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts +11 -0
  74. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts.map +1 -0
  75. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.js +4 -0
  76. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +6 -9
  77. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -1
  78. package/dest/contract_function_simulator/noir-structs/provided_secret.js +1 -24
  79. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts +28 -0
  80. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts.map +1 -0
  81. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.js +50 -0
  82. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts +19 -0
  83. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts.map +1 -0
  84. package/dest/contract_function_simulator/noir-structs/resolved_tx.js +9 -0
  85. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts +15 -0
  86. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts.map +1 -0
  87. package/dest/contract_function_simulator/noir-structs/tx_effect_data.js +5 -0
  88. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +6 -11
  89. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  90. package/dest/contract_function_simulator/noir-structs/utility_context.js +1 -20
  91. package/dest/contract_function_simulator/oracle/acir_callback.d.ts +21 -0
  92. package/dest/contract_function_simulator/oracle/acir_callback.d.ts.map +1 -0
  93. package/dest/contract_function_simulator/oracle/acir_callback.js +115 -0
  94. package/dest/contract_function_simulator/oracle/index.d.ts +2 -13
  95. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -1
  96. package/dest/contract_function_simulator/oracle/index.js +1 -1
  97. package/dest/contract_function_simulator/oracle/interfaces.d.ts +2 -3
  98. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  99. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts +39 -0
  100. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts.map +1 -0
  101. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.js +107 -0
  102. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +3 -14
  103. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  104. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -24
  105. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +43 -31
  106. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -1
  107. package/dest/contract_function_simulator/oracle/oracle_registry.js +259 -29
  108. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +180 -45
  109. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -1
  110. package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +1024 -341
  111. package/dest/contract_function_simulator/oracle/private_execution.d.ts +1 -1
  112. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  113. package/dest/contract_function_simulator/oracle/private_execution.js +2 -3
  114. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +21 -8
  115. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  116. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +132 -22
  117. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +77 -34
  118. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  119. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +247 -106
  120. package/dest/contract_function_simulator/transient_array_service.d.ts +31 -0
  121. package/dest/contract_function_simulator/transient_array_service.d.ts.map +1 -0
  122. package/dest/contract_function_simulator/transient_array_service.js +62 -0
  123. package/dest/debug/pxe_debug_utils.d.ts +2 -2
  124. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  125. package/dest/entrypoints/client/bundle/index.d.ts +2 -1
  126. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  127. package/dest/entrypoints/client/bundle/index.js +1 -0
  128. package/dest/entrypoints/client/bundle/utils.d.ts +1 -1
  129. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  130. package/dest/entrypoints/client/bundle/utils.js +17 -6
  131. package/dest/entrypoints/client/lazy/index.d.ts +2 -1
  132. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  133. package/dest/entrypoints/client/lazy/index.js +1 -0
  134. package/dest/entrypoints/client/lazy/utils.d.ts +1 -1
  135. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  136. package/dest/entrypoints/client/lazy/utils.js +17 -6
  137. package/dest/entrypoints/client/store.d.ts +14 -0
  138. package/dest/entrypoints/client/store.d.ts.map +1 -0
  139. package/dest/entrypoints/client/store.js +42 -0
  140. package/dest/entrypoints/pxe_creation_options.d.ts +9 -3
  141. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  142. package/dest/entrypoints/server/index.d.ts +6 -3
  143. package/dest/entrypoints/server/index.d.ts.map +1 -1
  144. package/dest/entrypoints/server/index.js +4 -2
  145. package/dest/entrypoints/server/store.d.ts +18 -0
  146. package/dest/entrypoints/server/store.d.ts.map +1 -0
  147. package/dest/entrypoints/server/store.js +28 -0
  148. package/dest/entrypoints/server/utils.d.ts +1 -1
  149. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  150. package/dest/entrypoints/server/utils.js +16 -4
  151. package/dest/error_enriching.d.ts +5 -3
  152. package/dest/error_enriching.d.ts.map +1 -1
  153. package/dest/error_enriching.js +13 -11
  154. package/dest/hooks/execution_hooks.d.ts +31 -11
  155. package/dest/hooks/execution_hooks.d.ts.map +1 -1
  156. package/dest/hooks/execution_hooks.js +3 -3
  157. package/dest/hooks/index.d.ts +4 -3
  158. package/dest/hooks/index.d.ts.map +1 -1
  159. package/dest/hooks/index.js +1 -0
  160. package/dest/hooks/resolve_custom_request.d.ts +23 -0
  161. package/dest/hooks/resolve_custom_request.d.ts.map +1 -0
  162. package/dest/hooks/resolve_custom_request.js +3 -0
  163. package/dest/hooks/resolve_tagging_secret_strategy.d.ts +50 -0
  164. package/dest/hooks/resolve_tagging_secret_strategy.d.ts.map +1 -0
  165. package/dest/hooks/resolve_tagging_secret_strategy.js +3 -0
  166. package/dest/logs/log_service.d.ts +8 -6
  167. package/dest/logs/log_service.d.ts.map +1 -1
  168. package/dest/logs/log_service.js +88 -28
  169. package/dest/messages/tx_resolver_service.d.ts +17 -0
  170. package/dest/messages/tx_resolver_service.d.ts.map +1 -0
  171. package/dest/messages/{message_context_service.js → tx_resolver_service.js} +13 -8
  172. package/dest/notes/note_service.d.ts +1 -1
  173. package/dest/notes/note_service.js +1 -1
  174. package/dest/oracle_version.d.ts +3 -3
  175. package/dest/oracle_version.js +5 -5
  176. package/dest/private_kernel/batch_planner.d.ts +1 -1
  177. package/dest/private_kernel/batch_planner.d.ts.map +1 -1
  178. package/dest/private_kernel/batch_planner.js +1 -1
  179. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +1 -1
  180. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  181. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +6 -2
  182. package/dest/private_kernel/hints/test_utils.js +1 -1
  183. package/dest/private_kernel/private_kernel_execution_prover.d.ts +1 -1
  184. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  185. package/dest/private_kernel/private_kernel_execution_prover.js +61 -40
  186. package/dest/private_kernel/private_kernel_oracle.d.ts +4 -2
  187. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  188. package/dest/private_kernel/private_kernel_oracle.js +17 -5
  189. package/dest/pxe.d.ts +114 -48
  190. package/dest/pxe.d.ts.map +1 -1
  191. package/dest/pxe.js +225 -139
  192. package/dest/storage/allowed_scopes.d.ts +6 -0
  193. package/dest/storage/allowed_scopes.d.ts.map +1 -0
  194. package/dest/storage/allowed_scopes.js +7 -0
  195. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -6
  196. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -1
  197. package/dest/storage/anchor_block_store/anchor_block_store.js +8 -6
  198. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +1 -1
  199. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -1
  200. package/dest/storage/backwards_compatibility_tests/schema_tests.js +129 -49
  201. package/dest/storage/capsule_store/capsule_service.d.ts +1 -1
  202. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -1
  203. package/dest/storage/capsule_store/capsule_service.js +6 -9
  204. package/dest/storage/contract_store/contract_store.d.ts +27 -24
  205. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  206. package/dest/storage/contract_store/contract_store.js +64 -75
  207. package/dest/storage/fact_store/fact_service.d.ts +22 -0
  208. package/dest/storage/fact_store/fact_service.d.ts.map +1 -0
  209. package/dest/storage/fact_store/fact_service.js +45 -0
  210. package/dest/storage/fact_store/fact_store.d.ts +95 -0
  211. package/dest/storage/fact_store/fact_store.d.ts.map +1 -0
  212. package/dest/storage/fact_store/fact_store.js +408 -0
  213. package/dest/storage/fact_store/fact_store_keys.d.ts +34 -0
  214. package/dest/storage/fact_store/fact_store_keys.d.ts.map +1 -0
  215. package/dest/storage/fact_store/fact_store_keys.js +50 -0
  216. package/dest/storage/fact_store/index.d.ts +6 -0
  217. package/dest/storage/fact_store/index.d.ts.map +1 -0
  218. package/dest/storage/fact_store/index.js +4 -0
  219. package/dest/storage/fact_store/origin_state.d.ts +59 -0
  220. package/dest/storage/fact_store/origin_state.d.ts.map +1 -0
  221. package/dest/storage/fact_store/origin_state.js +60 -0
  222. package/dest/storage/fact_store/stored_fact.d.ts +32 -0
  223. package/dest/storage/fact_store/stored_fact.d.ts.map +1 -0
  224. package/dest/storage/fact_store/stored_fact.js +64 -0
  225. package/dest/storage/index.d.ts +3 -2
  226. package/dest/storage/index.d.ts.map +1 -1
  227. package/dest/storage/index.js +2 -1
  228. package/dest/storage/metadata.d.ts +2 -2
  229. package/dest/storage/metadata.d.ts.map +1 -1
  230. package/dest/storage/metadata.js +1 -1
  231. package/dest/storage/note_store/note_store.d.ts +42 -33
  232. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  233. package/dest/storage/note_store/note_store.js +197 -168
  234. package/dest/storage/note_store/stored_note.d.ts +3 -8
  235. package/dest/storage/note_store/stored_note.d.ts.map +1 -1
  236. package/dest/storage/note_store/stored_note.js +4 -20
  237. package/dest/storage/open_pxe_stores.d.ts +5 -3
  238. package/dest/storage/open_pxe_stores.d.ts.map +1 -1
  239. package/dest/storage/open_pxe_stores.js +5 -3
  240. package/dest/storage/private_event_store/private_event_store.d.ts +13 -16
  241. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
  242. package/dest/storage/private_event_store/private_event_store.js +40 -43
  243. package/dest/storage/store_identity.d.ts +35 -0
  244. package/dest/storage/store_identity.d.ts.map +1 -0
  245. package/dest/storage/store_identity.js +44 -0
  246. package/dest/storage/tagging_store/index.d.ts +2 -2
  247. package/dest/storage/tagging_store/index.d.ts.map +1 -1
  248. package/dest/storage/tagging_store/index.js +1 -1
  249. package/dest/storage/tagging_store/sender_tagging_store.d.ts +19 -3
  250. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  251. package/dest/storage/tagging_store/sender_tagging_store.js +48 -11
  252. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts +51 -0
  253. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts.map +1 -0
  254. package/dest/storage/tagging_store/tagging_secret_sources_store.js +105 -0
  255. package/dest/tagging/constants.d.ts +3 -2
  256. package/dest/tagging/constants.d.ts.map +1 -1
  257. package/dest/tagging/constants.js +28 -10
  258. package/dest/tagging/index.d.ts +2 -2
  259. package/dest/tagging/index.d.ts.map +1 -1
  260. package/dest/tagging/index.js +1 -1
  261. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +26 -8
  262. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -1
  263. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +95 -20
  264. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +1 -1
  265. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +1 -1
  266. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  267. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +6 -2
  268. package/dest/tagging/testing/tag_query_test_utils.d.ts +6 -0
  269. package/dest/tagging/testing/tag_query_test_utils.d.ts.map +1 -0
  270. package/dest/tagging/testing/tag_query_test_utils.js +10 -0
  271. package/package.json +17 -17
  272. package/src/bin/check_oracle_version.ts +8 -24
  273. package/src/bin/index.ts +1 -1
  274. package/src/bin/oracle_version_helpers.ts +23 -90
  275. package/src/block_synchronizer/block_stream_source.ts +6 -45
  276. package/src/block_synchronizer/block_synchronizer.ts +70 -29
  277. package/src/config/index.ts +1 -0
  278. package/src/contract/contract_class_service.ts +83 -0
  279. package/src/{contract_sync → contract}/contract_sync_service.ts +37 -50
  280. package/src/contract/helpers.ts +35 -0
  281. package/src/contract/skip_sync_contracts.ts +23 -0
  282. package/src/contract_function_simulator/anchored_contract_data.ts +74 -0
  283. package/src/contract_function_simulator/aztec_node_read_cache.ts +89 -0
  284. package/src/contract_function_simulator/contract_function_simulator.ts +96 -42
  285. package/src/contract_function_simulator/execution_note_cache.ts +7 -28
  286. package/src/contract_function_simulator/index.ts +48 -13
  287. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +12 -24
  288. package/src/contract_function_simulator/noir-structs/contract_class_log_data.ts +9 -0
  289. package/src/contract_function_simulator/noir-structs/embedded_curve_point.ts +4 -0
  290. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +1 -1
  291. package/src/contract_function_simulator/noir-structs/fact.ts +13 -0
  292. package/src/contract_function_simulator/noir-structs/fact_collection.ts +64 -0
  293. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +20 -46
  294. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +13 -60
  295. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +2 -2
  296. package/src/contract_function_simulator/noir-structs/option.ts +17 -11
  297. package/src/contract_function_simulator/noir-structs/origin_block.ts +8 -0
  298. package/src/contract_function_simulator/noir-structs/pending_tagged_log.ts +12 -0
  299. package/src/contract_function_simulator/noir-structs/provided_secret.ts +4 -26
  300. package/src/contract_function_simulator/noir-structs/resolved_tagging_strategy.ts +66 -0
  301. package/src/contract_function_simulator/noir-structs/resolved_tx.ts +19 -0
  302. package/src/contract_function_simulator/noir-structs/tx_effect_data.ts +16 -0
  303. package/src/contract_function_simulator/noir-structs/utility_context.ts +5 -17
  304. package/src/contract_function_simulator/oracle/acir_callback.ts +154 -0
  305. package/src/contract_function_simulator/oracle/index.ts +1 -15
  306. package/src/contract_function_simulator/oracle/interfaces.ts +1 -2
  307. package/src/contract_function_simulator/oracle/legacy_oracle_registry.ts +147 -0
  308. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +6 -21
  309. package/src/contract_function_simulator/oracle/oracle_registry.ts +172 -47
  310. package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +814 -315
  311. package/src/contract_function_simulator/oracle/private_execution.ts +2 -3
  312. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +167 -30
  313. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +399 -135
  314. package/src/contract_function_simulator/transient_array_service.ts +91 -0
  315. package/src/debug/pxe_debug_utils.ts +1 -1
  316. package/src/entrypoints/client/bundle/index.ts +1 -0
  317. package/src/entrypoints/client/bundle/utils.ts +24 -5
  318. package/src/entrypoints/client/lazy/index.ts +1 -0
  319. package/src/entrypoints/client/lazy/utils.ts +24 -5
  320. package/src/entrypoints/client/store.ts +54 -0
  321. package/src/entrypoints/pxe_creation_options.ts +8 -2
  322. package/src/entrypoints/server/index.ts +6 -2
  323. package/src/entrypoints/server/store.ts +47 -0
  324. package/src/entrypoints/server/utils.ts +31 -9
  325. package/src/error_enriching.ts +27 -11
  326. package/src/hooks/execution_hooks.ts +32 -12
  327. package/src/hooks/index.ts +8 -2
  328. package/src/hooks/resolve_custom_request.ts +24 -0
  329. package/src/hooks/resolve_tagging_secret_strategy.ts +60 -0
  330. package/src/logs/log_service.ts +100 -37
  331. package/src/messages/{message_context_service.ts → tx_resolver_service.ts} +16 -9
  332. package/src/notes/note_service.ts +1 -1
  333. package/src/oracle_version.ts +5 -5
  334. package/src/private_kernel/batch_planner.ts +0 -1
  335. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +11 -1
  336. package/src/private_kernel/hints/test_utils.ts +1 -1
  337. package/src/private_kernel/private_kernel_execution_prover.ts +112 -56
  338. package/src/private_kernel/private_kernel_oracle.ts +23 -4
  339. package/src/pxe.ts +328 -159
  340. package/src/storage/allowed_scopes.ts +14 -0
  341. package/src/storage/anchor_block_store/anchor_block_store.ts +8 -6
  342. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +6 -6
  343. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +1 -1
  344. package/src/storage/backwards_compatibility_tests/__snapshots__/FactStore.json +40 -0
  345. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +12 -12
  346. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +9 -15
  347. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +24 -4
  348. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +11 -3
  349. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +12 -4
  350. package/src/storage/backwards_compatibility_tests/__snapshots__/TaggingSecretSourcesStore.json +30 -0
  351. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +29 -9
  352. package/src/storage/backwards_compatibility_tests/schema_tests.ts +141 -50
  353. package/src/storage/capsule_store/capsule_service.ts +8 -13
  354. package/src/storage/contract_store/contract_store.ts +86 -93
  355. package/src/storage/fact_store/fact_service.ts +69 -0
  356. package/src/storage/fact_store/fact_store.ts +487 -0
  357. package/src/storage/fact_store/fact_store_keys.ts +75 -0
  358. package/src/storage/fact_store/index.ts +15 -0
  359. package/src/storage/fact_store/origin_state.ts +84 -0
  360. package/src/storage/fact_store/stored_fact.ts +80 -0
  361. package/src/storage/index.ts +2 -1
  362. package/src/storage/metadata.ts +1 -1
  363. package/src/storage/note_store/note_store.ts +226 -187
  364. package/src/storage/note_store/stored_note.ts +5 -27
  365. package/src/storage/open_pxe_stores.ts +6 -3
  366. package/src/storage/private_event_store/private_event_store.ts +49 -55
  367. package/src/storage/store_identity.ts +72 -0
  368. package/src/storage/tagging_store/index.ts +1 -1
  369. package/src/storage/tagging_store/sender_tagging_store.ts +62 -15
  370. package/src/storage/tagging_store/tagging_secret_sources_store.ts +138 -0
  371. package/src/tagging/constants.ts +30 -10
  372. package/src/tagging/index.ts +1 -1
  373. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +148 -30
  374. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +1 -1
  375. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +6 -2
  376. package/src/tagging/testing/tag_query_test_utils.ts +11 -0
  377. package/dest/contract_function_simulator/oracle/oracle.d.ts +0 -89
  378. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +0 -1
  379. package/dest/contract_function_simulator/oracle/oracle.js +0 -552
  380. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +0 -6
  381. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +0 -1
  382. package/dest/contract_function_simulator/proxied_contract_data_source.js +0 -51
  383. package/dest/contract_sync/contract_sync_service.d.ts +0 -42
  384. package/dest/contract_sync/contract_sync_service.d.ts.map +0 -1
  385. package/dest/contract_sync/helpers.d.ts +0 -27
  386. package/dest/contract_sync/helpers.d.ts.map +0 -1
  387. package/dest/contract_sync/helpers.js +0 -53
  388. package/dest/messages/message_context_service.d.ts +0 -17
  389. package/dest/messages/message_context_service.d.ts.map +0 -1
  390. package/dest/storage/tagging_store/sender_address_book_store.d.ts +0 -14
  391. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +0 -1
  392. package/dest/storage/tagging_store/sender_address_book_store.js +0 -36
  393. package/src/contract_function_simulator/oracle/oracle.ts +0 -711
  394. package/src/contract_function_simulator/proxied_contract_data_source.ts +0 -60
  395. package/src/contract_sync/helpers.ts +0 -86
  396. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderAddressBookStore.json +0 -16
  397. package/src/storage/tagging_store/sender_address_book_store.ts +0 -48
@@ -1,552 +0,0 @@
1
- import { ORACLE_VERSION_MAJOR, ORACLE_VERSION_MINOR } from '../../oracle_version.js';
2
- import { callHandler } from './oracle_registry.js';
3
- export class UnavailableOracleError extends Error {
4
- constructor(oracleName){
5
- super(`${oracleName} oracles not available with the current handler`);
6
- }
7
- }
8
- /**
9
- * A data source that has all the apis required by Aztec.nr.
10
- *
11
- * ## Oracle naming conventions
12
- *
13
- * We try to keep oracle naming consistent, please see below the conventions we adhere to.
14
- *
15
- * Each oracle method name has the form `aztec_{scope}_{verb}{Object}`, where:
16
- *
17
- * - **Scope prefix** indicates the execution context required:
18
- * - `aztec_prv_` — available only during private function execution.
19
- * - `aztec_utl_` — available during both utility and private execution.
20
- *
21
- * - **Verb** signals the operation's semantics (verb-first, then object):
22
- * - `get` — read / lookup / get data from oracle into contract.
23
- * - `does`/`is`/`has` — predicate (returns boolean).
24
- * - `emit`/`notify` — propagate data from contract to oracle.
25
- * - `set` — contract driven oracle state mutation (capsules, execution cache, tagging, etc).
26
- * - `call` — trigger nested execution (control flow).
27
- * - `assert` — validate a condition, throw on failure.
28
- * - Standalone verbs (`delete`, `copy`, `decrypt`, `log`, etc) are used when no generic verb fits.
29
- */ export class Oracle {
30
- handler;
31
- constructor(handler){
32
- this.handler = handler;
33
- }
34
- handlerAsMisc() {
35
- if (!('isMisc' in this.handler)) {
36
- throw new UnavailableOracleError('Misc');
37
- }
38
- return this.handler;
39
- }
40
- handlerAsUtility() {
41
- if (!('isUtility' in this.handler)) {
42
- throw new UnavailableOracleError('Utility');
43
- }
44
- return this.handler;
45
- }
46
- handlerAsPrivate() {
47
- if (!('isPrivate' in this.handler)) {
48
- throw new UnavailableOracleError('Private');
49
- }
50
- return this.handler;
51
- }
52
- toACIRCallback() {
53
- const excludedProps = [
54
- 'handler',
55
- 'constructor',
56
- 'toACIRCallback',
57
- 'handlerAsMisc',
58
- 'handlerAsUtility',
59
- 'handlerAsPrivate'
60
- ];
61
- // Get all the oracle function names
62
- const oracleNames = Object.getOwnPropertyNames(Oracle.prototype).filter((name)=>!excludedProps.includes(name));
63
- // Validate oracle names - these must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate their scope
64
- // and must correspond to a function on the Oracle class.
65
- oracleNames.forEach((name)=>{
66
- if (!name.startsWith('aztec_prv_') && !name.startsWith('aztec_utl_') && !name.startsWith('aztec_misc_')) {
67
- throw new Error(`Oracle function "${name}" must be prefixed with "aztec_prv_", "aztec_utl_", or "aztec_misc_" to indicate its scope`);
68
- }
69
- const method = this[name];
70
- if (typeof method !== 'function') {
71
- throw new Error(`Oracle property "${name}" must be a function`);
72
- }
73
- });
74
- // Build callback object and return it
75
- const callback = oracleNames.reduce((acc, name)=>{
76
- const method = this[name];
77
- acc[name] = method.bind(this);
78
- return acc;
79
- }, {});
80
- // Wrap in a Proxy to intercept access to missing oracle names and provide enhanced error messages when the
81
- // contract's minor version is higher than the PXE's (i.e. the contract expects oracles that were added in a newer
82
- // minor version).
83
- const handler = this.handler;
84
- return new Proxy(callback, {
85
- get (target, prop) {
86
- if (prop in target) {
87
- return target[prop];
88
- }
89
- // Return a function that throws with an enhanced error message if applicable
90
- return ()=>{
91
- let contractVersion = undefined;
92
- if ('nonOracleFunctionGetContractOracleVersion' in handler) {
93
- contractVersion = handler.nonOracleFunctionGetContractOracleVersion();
94
- }
95
- if (!contractVersion) {
96
- throw new Error(`Oracle '${prop}' not found and the contract's oracle version is unknown (the version check oracle ` + `was not called before '${prop}'). This usually means the contract was not compiled with the ` + `#[aztec] macro, which injects the version check as the first oracle call in every private/utility ` + `external function. If you're using a custom entry point, ensure assert_compatible_oracle_version() ` + `is called before any other oracle calls. See https://docs.aztec.network/errors/8`);
97
- } else if (contractVersion.minor > ORACLE_VERSION_MINOR) {
98
- throw new Error(`Oracle '${prop}' not found.` + ` This usually means the contract requires a newer private execution environment than you have.` + ` Upgrade your private execution environment to a compatible version. The contract was compiled with` + ` Aztec.nr oracle version ${contractVersion.major}.${contractVersion.minor}, but this private` + ` execution environment only supports up to ${ORACLE_VERSION_MAJOR}.${ORACLE_VERSION_MINOR}.` + ` See https://docs.aztec.network/errors/8`);
99
- } else {
100
- throw new Error(`Oracle '${prop}' not found.` + ` The contract's oracle version (${contractVersion.major}.${contractVersion.minor}) is compatible` + ` with this private execution environment (${ORACLE_VERSION_MAJOR}.${ORACLE_VERSION_MINOR}), so all` + ` standard oracles should be available. This could mean the contract was compiled against a modified` + ` version of Aztec.nr, or that it references an oracle that does not exist.` + ` See https://docs.aztec.network/errors/8`);
101
- }
102
- };
103
- }
104
- });
105
- }
106
- // eslint-disable-next-line camelcase
107
- aztec_misc_assertCompatibleOracleVersion(...inputs) {
108
- return callHandler({
109
- oracle: 'aztec_misc_assertCompatibleOracleVersion',
110
- inputs,
111
- handler: ([major, minor])=>{
112
- this.handlerAsMisc().assertCompatibleOracleVersion(major, minor);
113
- }
114
- });
115
- }
116
- // eslint-disable-next-line camelcase
117
- aztec_misc_getRandomField() {
118
- return callHandler({
119
- oracle: 'aztec_misc_getRandomField',
120
- inputs: [],
121
- handler: ()=>this.handlerAsMisc().getRandomField()
122
- });
123
- }
124
- // eslint-disable-next-line camelcase
125
- aztec_prv_setHashPreimage(...inputs) {
126
- return callHandler({
127
- oracle: 'aztec_prv_setHashPreimage',
128
- inputs,
129
- handler: ([values, hash])=>{
130
- this.handlerAsPrivate().setHashPreimage(values, hash);
131
- }
132
- });
133
- }
134
- // eslint-disable-next-line camelcase
135
- aztec_prv_getHashPreimage(...inputs) {
136
- return callHandler({
137
- oracle: 'aztec_prv_getHashPreimage',
138
- inputs,
139
- handler: ([returnsHash])=>this.handlerAsPrivate().getHashPreimage(returnsHash)
140
- });
141
- }
142
- // eslint-disable-next-line camelcase
143
- aztec_utl_getUtilityContext() {
144
- return callHandler({
145
- oracle: 'aztec_utl_getUtilityContext',
146
- inputs: [],
147
- handler: ()=>this.handlerAsUtility().getUtilityContext()
148
- });
149
- }
150
- // eslint-disable-next-line camelcase
151
- aztec_utl_getKeyValidationRequest(...inputs) {
152
- return callHandler({
153
- oracle: 'aztec_utl_getKeyValidationRequest',
154
- inputs,
155
- handler: ([pkMHash])=>this.handlerAsUtility().getKeyValidationRequest(pkMHash)
156
- });
157
- }
158
- // eslint-disable-next-line camelcase
159
- aztec_utl_getContractInstance(...inputs) {
160
- return callHandler({
161
- oracle: 'aztec_utl_getContractInstance',
162
- inputs,
163
- handler: ([address])=>this.handlerAsUtility().getContractInstance(address)
164
- });
165
- }
166
- // eslint-disable-next-line camelcase
167
- aztec_utl_getNoteHashMembershipWitness(...inputs) {
168
- return callHandler({
169
- oracle: 'aztec_utl_getNoteHashMembershipWitness',
170
- inputs,
171
- handler: ([anchorBlockHash, noteHash])=>this.handlerAsUtility().getNoteHashMembershipWitness(anchorBlockHash, noteHash)
172
- });
173
- }
174
- // eslint-disable-next-line camelcase
175
- aztec_utl_getBlockHashMembershipWitness(...inputs) {
176
- return callHandler({
177
- oracle: 'aztec_utl_getBlockHashMembershipWitness',
178
- inputs,
179
- handler: ([anchorBlockHash, blockHash])=>this.handlerAsUtility().getBlockHashMembershipWitness(anchorBlockHash, blockHash)
180
- });
181
- }
182
- // eslint-disable-next-line camelcase
183
- aztec_utl_getNullifierMembershipWitness(...inputs) {
184
- return callHandler({
185
- oracle: 'aztec_utl_getNullifierMembershipWitness',
186
- inputs,
187
- handler: ([blockHash, nullifier])=>this.handlerAsUtility().getNullifierMembershipWitness(blockHash, nullifier)
188
- });
189
- }
190
- // eslint-disable-next-line camelcase
191
- aztec_utl_getLowNullifierMembershipWitness(...inputs) {
192
- return callHandler({
193
- oracle: 'aztec_utl_getLowNullifierMembershipWitness',
194
- inputs,
195
- handler: ([blockHash, nullifier])=>this.handlerAsUtility().getLowNullifierMembershipWitness(blockHash, nullifier)
196
- });
197
- }
198
- // eslint-disable-next-line camelcase
199
- aztec_utl_getPublicDataWitness(...inputs) {
200
- return callHandler({
201
- oracle: 'aztec_utl_getPublicDataWitness',
202
- inputs,
203
- handler: ([blockHash, leafSlot])=>this.handlerAsUtility().getPublicDataWitness(blockHash, leafSlot)
204
- });
205
- }
206
- // eslint-disable-next-line camelcase
207
- aztec_utl_getBlockHeader(...inputs) {
208
- return callHandler({
209
- oracle: 'aztec_utl_getBlockHeader',
210
- inputs,
211
- handler: ([blockNumber])=>this.handlerAsUtility().getBlockHeader(blockNumber)
212
- });
213
- }
214
- // eslint-disable-next-line camelcase
215
- aztec_utl_getAuthWitness(...inputs) {
216
- return callHandler({
217
- oracle: 'aztec_utl_getAuthWitness',
218
- inputs,
219
- handler: ([messageHash])=>this.handlerAsUtility().getAuthWitness(messageHash)
220
- });
221
- }
222
- // eslint-disable-next-line camelcase
223
- aztec_utl_getPublicKeysAndPartialAddress(...inputs) {
224
- return callHandler({
225
- oracle: 'aztec_utl_getPublicKeysAndPartialAddress',
226
- inputs,
227
- handler: ([address])=>this.handlerAsUtility().getPublicKeysAndPartialAddress(address)
228
- });
229
- }
230
- // eslint-disable-next-line camelcase
231
- aztec_utl_getNotes(...inputs) {
232
- return callHandler({
233
- oracle: 'aztec_utl_getNotes',
234
- inputs,
235
- handler: ([owner, storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status, maxNotes, packedHintedNoteLength])=>this.handlerAsUtility().getNotes(owner, storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status, maxNotes, packedHintedNoteLength)
236
- });
237
- }
238
- // eslint-disable-next-line camelcase
239
- aztec_prv_notifyCreatedNote(...inputs) {
240
- return callHandler({
241
- oracle: 'aztec_prv_notifyCreatedNote',
242
- inputs,
243
- handler: ([owner, storageSlot, randomness, noteTypeId, note, noteHash, counter])=>{
244
- this.handlerAsPrivate().notifyCreatedNote(owner, storageSlot, randomness, noteTypeId, note, noteHash, counter);
245
- }
246
- });
247
- }
248
- // eslint-disable-next-line camelcase
249
- aztec_prv_notifyNullifiedNote(...inputs) {
250
- return callHandler({
251
- oracle: 'aztec_prv_notifyNullifiedNote',
252
- inputs,
253
- handler: ([innerNullifier, noteHash, counter])=>this.handlerAsPrivate().notifyNullifiedNote(innerNullifier, noteHash, counter)
254
- });
255
- }
256
- // eslint-disable-next-line camelcase
257
- aztec_prv_notifyCreatedNullifier(...inputs) {
258
- return callHandler({
259
- oracle: 'aztec_prv_notifyCreatedNullifier',
260
- inputs,
261
- handler: ([innerNullifier])=>this.handlerAsPrivate().notifyCreatedNullifier(innerNullifier)
262
- });
263
- }
264
- // eslint-disable-next-line camelcase
265
- aztec_prv_isNullifierPending(...inputs) {
266
- return callHandler({
267
- oracle: 'aztec_prv_isNullifierPending',
268
- inputs,
269
- handler: ([innerNullifier, contractAddress])=>this.handlerAsPrivate().isNullifierPending(innerNullifier, contractAddress)
270
- });
271
- }
272
- // eslint-disable-next-line camelcase
273
- aztec_utl_doesNullifierExist(...inputs) {
274
- return callHandler({
275
- oracle: 'aztec_utl_doesNullifierExist',
276
- inputs,
277
- handler: ([innerNullifier])=>this.handlerAsUtility().doesNullifierExist(innerNullifier)
278
- });
279
- }
280
- // eslint-disable-next-line camelcase
281
- aztec_utl_getL1ToL2MembershipWitness(...inputs) {
282
- return callHandler({
283
- oracle: 'aztec_utl_getL1ToL2MembershipWitness',
284
- inputs,
285
- handler: ([contractAddress, messageHash, secret])=>this.handlerAsUtility().getL1ToL2MembershipWitness(contractAddress, messageHash, secret)
286
- });
287
- }
288
- // eslint-disable-next-line camelcase
289
- aztec_utl_getFromPublicStorage(...inputs) {
290
- return callHandler({
291
- oracle: 'aztec_utl_getFromPublicStorage',
292
- inputs,
293
- handler: ([blockHash, contractAddress, startStorageSlot, numberOfElements])=>this.handlerAsUtility().getFromPublicStorage(blockHash, contractAddress, startStorageSlot, numberOfElements)
294
- });
295
- }
296
- // eslint-disable-next-line camelcase
297
- aztec_utl_callUtilityFunction(...inputs) {
298
- return callHandler({
299
- oracle: 'aztec_utl_callUtilityFunction',
300
- inputs,
301
- handler: ([contractAddress, functionSelector, args])=>this.handlerAsUtility().callUtilityFunction(contractAddress, functionSelector, args)
302
- });
303
- }
304
- // eslint-disable-next-line camelcase
305
- aztec_prv_notifyCreatedContractClassLog(...inputs) {
306
- return callHandler({
307
- oracle: 'aztec_prv_notifyCreatedContractClassLog',
308
- inputs,
309
- handler: ([log, counter])=>{
310
- this.handlerAsPrivate().notifyCreatedContractClassLog(log, counter);
311
- }
312
- });
313
- }
314
- // eslint-disable-next-line camelcase
315
- aztec_misc_log(...inputs) {
316
- return callHandler({
317
- oracle: 'aztec_misc_log',
318
- inputs,
319
- handler: ([level, message, fieldsSize, fields])=>this.handlerAsMisc().log(level, message, fieldsSize, fields)
320
- });
321
- }
322
- // This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
323
- // change the name here.
324
- // eslint-disable-next-line camelcase
325
- aztec_prv_callPrivateFunction(...inputs) {
326
- return callHandler({
327
- oracle: 'aztec_prv_callPrivateFunction',
328
- inputs,
329
- handler: ([contractAddress, functionSelector, argsHash, sideEffectCounter, isStaticCall])=>this.handlerAsPrivate().callPrivateFunction(contractAddress, functionSelector, argsHash, sideEffectCounter, isStaticCall)
330
- });
331
- }
332
- // eslint-disable-next-line camelcase
333
- aztec_prv_assertValidPublicCalldata(...inputs) {
334
- return callHandler({
335
- oracle: 'aztec_prv_assertValidPublicCalldata',
336
- inputs,
337
- handler: ([calldataHash])=>this.handlerAsPrivate().assertValidPublicCalldata(calldataHash)
338
- });
339
- }
340
- // eslint-disable-next-line camelcase
341
- aztec_prv_notifyRevertiblePhaseStart(...inputs) {
342
- return callHandler({
343
- oracle: 'aztec_prv_notifyRevertiblePhaseStart',
344
- inputs,
345
- handler: ([minRevertibleSideEffectCounter])=>this.handlerAsPrivate().notifyRevertiblePhaseStart(minRevertibleSideEffectCounter)
346
- });
347
- }
348
- // eslint-disable-next-line camelcase
349
- aztec_prv_isExecutionInRevertiblePhase(...inputs) {
350
- return callHandler({
351
- oracle: 'aztec_prv_isExecutionInRevertiblePhase',
352
- inputs,
353
- handler: ([sideEffectCounter])=>this.handlerAsPrivate().isExecutionInRevertiblePhase(sideEffectCounter)
354
- });
355
- }
356
- // eslint-disable-next-line camelcase
357
- aztec_prv_getAppTaggingSecret(...inputs) {
358
- return callHandler({
359
- oracle: 'aztec_prv_getAppTaggingSecret',
360
- inputs,
361
- handler: ([sender, recipient])=>this.handlerAsPrivate().getAppTaggingSecret(sender, recipient)
362
- });
363
- }
364
- // eslint-disable-next-line camelcase
365
- aztec_prv_getNextTaggingIndex(...inputs) {
366
- return callHandler({
367
- oracle: 'aztec_prv_getNextTaggingIndex',
368
- inputs,
369
- handler: ([secret, mode])=>this.handlerAsPrivate().getNextTaggingIndex(secret, mode)
370
- });
371
- }
372
- // eslint-disable-next-line camelcase
373
- aztec_utl_getPendingTaggedLogs(...inputs) {
374
- return callHandler({
375
- oracle: 'aztec_utl_getPendingTaggedLogs',
376
- inputs,
377
- handler: ([scope, providedSecrets])=>this.handlerAsUtility().getPendingTaggedLogs(scope, providedSecrets)
378
- });
379
- }
380
- // eslint-disable-next-line camelcase
381
- aztec_utl_validateAndStoreEnqueuedNotesAndEvents(...inputs) {
382
- return callHandler({
383
- oracle: 'aztec_utl_validateAndStoreEnqueuedNotesAndEvents',
384
- inputs,
385
- handler: ([noteValidationRequests, eventValidationRequests, scope])=>this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(noteValidationRequests, eventValidationRequests, scope)
386
- });
387
- }
388
- // eslint-disable-next-line camelcase
389
- aztec_utl_getLogsByTag(...inputs) {
390
- return callHandler({
391
- oracle: 'aztec_utl_getLogsByTag',
392
- inputs,
393
- handler: ([requests])=>this.handlerAsUtility().getLogsByTag(requests)
394
- });
395
- }
396
- // eslint-disable-next-line camelcase
397
- aztec_utl_getMessageContextsByTxHash(...inputs) {
398
- return callHandler({
399
- oracle: 'aztec_utl_getMessageContextsByTxHash',
400
- inputs,
401
- handler: ([requests])=>this.handlerAsUtility().getMessageContextsByTxHash(requests)
402
- });
403
- }
404
- // eslint-disable-next-line camelcase
405
- aztec_utl_getTxEffect(...inputs) {
406
- return callHandler({
407
- oracle: 'aztec_utl_getTxEffect',
408
- inputs,
409
- handler: ([txHash])=>this.handlerAsUtility().getTxEffect(txHash)
410
- });
411
- }
412
- // eslint-disable-next-line camelcase
413
- aztec_utl_setCapsule(...inputs) {
414
- return callHandler({
415
- oracle: 'aztec_utl_setCapsule',
416
- inputs,
417
- handler: ([contractAddress, slot, capsule, scope])=>{
418
- this.handlerAsUtility().setCapsule(contractAddress, slot, capsule, scope);
419
- }
420
- });
421
- }
422
- // eslint-disable-next-line camelcase
423
- aztec_utl_getCapsule(...inputs) {
424
- return callHandler({
425
- oracle: 'aztec_utl_getCapsule',
426
- inputs,
427
- handler: ([contractAddress, slot, tSize, scope])=>this.handlerAsUtility().getCapsule(contractAddress, slot, tSize, scope)
428
- });
429
- }
430
- // eslint-disable-next-line camelcase
431
- aztec_utl_deleteCapsule(...inputs) {
432
- return callHandler({
433
- oracle: 'aztec_utl_deleteCapsule',
434
- inputs,
435
- handler: ([contractAddress, slot, scope])=>{
436
- this.handlerAsUtility().deleteCapsule(contractAddress, slot, scope);
437
- }
438
- });
439
- }
440
- // eslint-disable-next-line camelcase
441
- aztec_utl_copyCapsule(...inputs) {
442
- return callHandler({
443
- oracle: 'aztec_utl_copyCapsule',
444
- inputs,
445
- handler: ([contractAddress, srcSlot, dstSlot, numEntries, scope])=>this.handlerAsUtility().copyCapsule(contractAddress, srcSlot, dstSlot, numEntries, scope)
446
- });
447
- }
448
- // eslint-disable-next-line camelcase
449
- aztec_utl_pushEphemeral(...inputs) {
450
- return callHandler({
451
- oracle: 'aztec_utl_pushEphemeral',
452
- inputs,
453
- handler: ([slot, elements])=>this.handlerAsUtility().pushEphemeral(slot, elements)
454
- });
455
- }
456
- // eslint-disable-next-line camelcase
457
- aztec_utl_popEphemeral(...inputs) {
458
- return callHandler({
459
- oracle: 'aztec_utl_popEphemeral',
460
- inputs,
461
- handler: ([slot])=>this.handlerAsUtility().popEphemeral(slot)
462
- });
463
- }
464
- // eslint-disable-next-line camelcase
465
- aztec_utl_getEphemeral(...inputs) {
466
- return callHandler({
467
- oracle: 'aztec_utl_getEphemeral',
468
- inputs,
469
- handler: ([slot, index])=>this.handlerAsUtility().getEphemeral(slot, index)
470
- });
471
- }
472
- // eslint-disable-next-line camelcase
473
- aztec_utl_setEphemeral(...inputs) {
474
- return callHandler({
475
- oracle: 'aztec_utl_setEphemeral',
476
- inputs,
477
- handler: ([slot, index, elements])=>{
478
- this.handlerAsUtility().setEphemeral(slot, index, elements);
479
- }
480
- });
481
- }
482
- // eslint-disable-next-line camelcase
483
- aztec_utl_getEphemeralLen(...inputs) {
484
- return callHandler({
485
- oracle: 'aztec_utl_getEphemeralLen',
486
- inputs,
487
- handler: ([slot])=>this.handlerAsUtility().getEphemeralLen(slot)
488
- });
489
- }
490
- // eslint-disable-next-line camelcase
491
- aztec_utl_removeEphemeral(...inputs) {
492
- return callHandler({
493
- oracle: 'aztec_utl_removeEphemeral',
494
- inputs,
495
- handler: ([slot, index])=>{
496
- this.handlerAsUtility().removeEphemeral(slot, index);
497
- }
498
- });
499
- }
500
- // eslint-disable-next-line camelcase
501
- aztec_utl_clearEphemeral(...inputs) {
502
- return callHandler({
503
- oracle: 'aztec_utl_clearEphemeral',
504
- inputs,
505
- handler: ([slot])=>{
506
- this.handlerAsUtility().clearEphemeral(slot);
507
- }
508
- });
509
- }
510
- // eslint-disable-next-line camelcase
511
- aztec_utl_decryptAes128(...inputs) {
512
- return callHandler({
513
- oracle: 'aztec_utl_decryptAes128',
514
- inputs,
515
- handler: ([ciphertext, iv, symKey])=>this.handlerAsUtility().decryptAes128(ciphertext, iv, symKey)
516
- });
517
- }
518
- // eslint-disable-next-line camelcase
519
- aztec_utl_getSharedSecrets(...inputs) {
520
- return callHandler({
521
- oracle: 'aztec_utl_getSharedSecrets',
522
- inputs,
523
- handler: ([address, ephPks, contractAddress])=>this.handlerAsUtility().getSharedSecrets(address, ephPks, contractAddress)
524
- });
525
- }
526
- // eslint-disable-next-line camelcase
527
- aztec_utl_setContractSyncCacheInvalid(...inputs) {
528
- return callHandler({
529
- oracle: 'aztec_utl_setContractSyncCacheInvalid',
530
- inputs,
531
- handler: ([contractAddress, scopes])=>{
532
- this.handlerAsUtility().setContractSyncCacheInvalid(contractAddress, scopes);
533
- }
534
- });
535
- }
536
- // eslint-disable-next-line camelcase
537
- aztec_utl_emitOffchainEffect(...inputs) {
538
- return callHandler({
539
- oracle: 'aztec_utl_emitOffchainEffect',
540
- inputs,
541
- handler: ([data])=>this.handlerAsUtility().emitOffchainEffect(data)
542
- });
543
- }
544
- // eslint-disable-next-line camelcase
545
- aztec_prv_getSenderForTags() {
546
- return callHandler({
547
- oracle: 'aztec_prv_getSenderForTags',
548
- inputs: [],
549
- handler: ()=>this.handlerAsPrivate().getSenderForTags()
550
- });
551
- }
552
- }
@@ -1,6 +0,0 @@
1
- import type { ContractOverrides } from '@aztec/stdlib/tx';
2
- import type { ContractStore } from '../storage/contract_store/contract_store.js';
3
- export declare class ProxiedContractStoreFactory {
4
- static create(contractStore: ContractStore, overrides?: ContractOverrides): ContractStore;
5
- }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJveGllZF9jb250cmFjdF9kYXRhX3NvdXJjZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0X2Z1bmN0aW9uX3NpbXVsYXRvci9wcm94aWVkX2NvbnRyYWN0X2RhdGFfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFMUQsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFjakYscUJBQWEsMkJBQTJCO0lBQ3RDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxTQUFTLENBQUMsRUFBRSxpQkFBaUIsaUJBdUN4RTtDQUNGIn0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"proxied_contract_data_source.d.ts","sourceRoot":"","sources":["../../src/contract_function_simulator/proxied_contract_data_source.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAcjF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,iBAAiB,iBAuCxE;CACF"}
@@ -1,51 +0,0 @@
1
- import { findFunctionArtifactBySelector } from '@aztec/stdlib/abi';
2
- /*
3
- * Proxy generator for a ContractStore that allows overriding contract instances at given addresses,
4
- * so the contract function simulator can execute different bytecode on certain addresses. An example
5
- * use case would be overriding your own account contract so that valid signatures don't have to be
6
- * provided while simulating.
7
- *
8
- * Function artifact lookups for an overridden address are routed via the override-instance's
9
- * `currentContractClassId` rather than the underlying ContractStore's address→class mapping —
10
- * `ContractStore.getFunctionArtifact` calls `this.getContractInstance` internally, which the proxy
11
- * cannot intercept (the binding sees the raw target, not the proxy). The target class must be
12
- * registered ahead of time via `pxe.registerContractClass(...)`.
13
- */ export class ProxiedContractStoreFactory {
14
- static create(contractStore, overrides) {
15
- if (!overrides) {
16
- return contractStore;
17
- }
18
- return new Proxy(contractStore, {
19
- get (target, prop) {
20
- if (prop === 'getContractInstance') {
21
- return (address)=>{
22
- const override = overrides[address.toString()];
23
- return override ? Promise.resolve(override.instance) : target.getContractInstance(address);
24
- };
25
- }
26
- if (prop === 'getFunctionArtifact' || prop === 'getFunctionArtifactWithDebugMetadata') {
27
- return async (contractAddress, selector)=>{
28
- const override = overrides[contractAddress.toString()];
29
- if (!override) {
30
- return target[prop].call(target, contractAddress, selector);
31
- }
32
- const artifact = await target.getContractArtifact(override.instance.currentContractClassId);
33
- if (!artifact) {
34
- throw new Error(`No artifact registered for override class ${override.instance.currentContractClassId} ` + `at ${contractAddress}. Register it via pxe.registerContractClass(...) before simulating.`);
35
- }
36
- const fn = await findFunctionArtifactBySelector(artifact, selector);
37
- if (!fn) {
38
- throw new Error(`Function with selector ${selector} not found in stub artifact for overridden contract at ${contractAddress}.`);
39
- }
40
- return {
41
- ...fn,
42
- contractName: artifact.name
43
- };
44
- };
45
- }
46
- const value = Reflect.get(target, prop);
47
- return typeof value === 'function' ? value.bind(target) : value;
48
- }
49
- });
50
- }
51
- }
@@ -1,42 +0,0 @@
1
- import type { Logger } from '@aztec/foundation/log';
2
- import type { FunctionCall, FunctionSelector } from '@aztec/stdlib/abi';
3
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
- import type { AztecNode } from '@aztec/stdlib/interfaces/client';
5
- import type { BlockHeader } from '@aztec/stdlib/tx';
6
- import type { StagedStore } from '../job_coordinator/job_coordinator.js';
7
- import type { ContractStore } from '../storage/contract_store/contract_store.js';
8
- import type { NoteStore } from '../storage/note_store/note_store.js';
9
- /**
10
- * Service for syncing the private state of contracts and verifying that the PXE holds the current class artifact.
11
- * It uses a cache to avoid redundant sync operations - the cache is wiped when the anchor block changes.
12
- *
13
- * TODO: The StagedStore naming is broken here. Figure out a better name.
14
- */
15
- export declare class ContractSyncService implements StagedStore {
16
- #private;
17
- private aztecNode;
18
- private contractStore;
19
- private noteStore;
20
- private log;
21
- readonly storeName = "contract_sync";
22
- private syncedContracts;
23
- private classIdVerificationCache;
24
- constructor(aztecNode: AztecNode, contractStore: ContractStore, noteStore: NoteStore, log: Logger);
25
- /**
26
- * Ensures a contract's private state is synchronized and that the PXE holds the current class artifact.
27
- * Uses a cache to avoid redundant sync operations - the cache is wiped when the anchor block changes.
28
- * @param contractAddress - The address of the contract to sync.
29
- * @param functionToInvokeAfterSync - The function selector that will be called after sync (used to validate it's
30
- * not sync_state itself).
31
- * @param utilityExecutor - Executor function for running the sync_state utility function.
32
- * @param scopes - Access scopes to pass through to the utility executor (affects whose account's private state is discovered).
33
- */
34
- ensureContractSynced(contractAddress: AztecAddress, functionToInvokeAfterSync: FunctionSelector | null, utilityExecutor: (call: FunctionCall, scopes: AztecAddress[]) => Promise<any>, anchorBlockHeader: BlockHeader, jobId: string, scopes: AztecAddress[]): Promise<void>;
35
- /** Clears sync cache entries for the given scopes of a contract. */
36
- invalidateContractForScopes(contractAddress: AztecAddress, scopes: AztecAddress[]): void;
37
- /** Clears sync cache. Called by BlockSynchronizer when anchor block changes. */
38
- wipe(): void;
39
- commit(_jobId: string): Promise<void>;
40
- discardStaged(_jobId: string): Promise<void>;
41
- }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3Rfc3luY19zZXJ2aWNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3Rfc3luYy9jb250cmFjdF9zeW5jX3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHcEQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEUsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFcEQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFekUsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDakYsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFNckU7Ozs7O0dBS0c7QUFDSCxxQkFBYSxtQkFBb0IsWUFBVyxXQUFXOztJQWtCbkQsT0FBTyxDQUFDLFNBQVM7SUFDakIsT0FBTyxDQUFDLGFBQWE7SUFDckIsT0FBTyxDQUFDLFNBQVM7SUFDakIsT0FBTyxDQUFDLEdBQUc7SUFwQmIsUUFBUSxDQUFDLFNBQVMsbUJBQW1CO0lBS3JDLE9BQU8sQ0FBQyxlQUFlLENBQXlDO0lBSWhFLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBeUM7SUFPekUsWUFDVSxTQUFTLEVBQUUsU0FBUyxFQUNwQixhQUFhLEVBQUUsYUFBYSxFQUM1QixTQUFTLEVBQUUsU0FBUyxFQUNwQixHQUFHLEVBQUUsTUFBTSxFQUNqQjtJQUVKOzs7Ozs7OztPQVFHO0lBQ0csb0JBQW9CLENBQ3hCLGVBQWUsRUFBRSxZQUFZLEVBQzdCLHlCQUF5QixFQUFFLGdCQUFnQixHQUFHLElBQUksRUFDbEQsZUFBZSxFQUFFLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUM3RSxpQkFBaUIsRUFBRSxXQUFXLEVBQzlCLEtBQUssRUFBRSxNQUFNLEVBQ2IsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLENBTWY7SUFFRCxvRUFBb0U7SUFDcEUsMkJBQTJCLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUt2RjtJQUVELGdGQUFnRjtJQUNoRixJQUFJLElBQUksSUFBSSxDQUlYO0lBRUQsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVwQztJQUVELGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FNM0M7Q0F3RkYifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"contract_sync_service.d.ts","sourceRoot":"","sources":["../../src/contract_sync/contract_sync_service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAMrE;;;;;GAKG;AACH,qBAAa,mBAAoB,YAAW,WAAW;;IAkBnD,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,GAAG;IApBb,QAAQ,CAAC,SAAS,mBAAmB;IAKrC,OAAO,CAAC,eAAe,CAAyC;IAIhE,OAAO,CAAC,wBAAwB,CAAyC;IAOzE,YACU,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACjB;IAEJ;;;;;;;;OAQG;IACG,oBAAoB,CACxB,eAAe,EAAE,YAAY,EAC7B,yBAAyB,EAAE,gBAAgB,GAAG,IAAI,EAClD,eAAe,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAC7E,iBAAiB,EAAE,WAAW,EAC9B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,YAAY,EAAE,GACrB,OAAO,CAAC,IAAI,CAAC,CAMf;IAED,oEAAoE;IACpE,2BAA2B,CAAC,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAKvF;IAED,gFAAgF;IAChF,IAAI,IAAI,IAAI,CAIX;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpC;IAED,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM3C;CAwFF"}