@aztec/pxe 0.0.1-commit.fce3e4f → 0.0.1-commit.ffe5b04ea

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/dest/access_scopes.d.ts +9 -0
  2. package/dest/access_scopes.d.ts.map +1 -0
  3. package/dest/access_scopes.js +6 -0
  4. package/dest/bin/check_oracle_version.js +105 -15
  5. package/dest/block_synchronizer/block_synchronizer.d.ts +45 -0
  6. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
  7. package/dest/block_synchronizer/block_synchronizer.js +153 -0
  8. package/dest/block_synchronizer/index.d.ts +2 -0
  9. package/dest/block_synchronizer/index.d.ts.map +1 -0
  10. package/dest/block_synchronizer/index.js +1 -0
  11. package/dest/config/index.d.ts +7 -5
  12. package/dest/config/index.d.ts.map +1 -1
  13. package/dest/config/index.js +18 -1
  14. package/dest/config/package_info.js +1 -1
  15. package/dest/contract_function_simulator/benchmarked_node.d.ts +9 -0
  16. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +1 -0
  17. package/dest/contract_function_simulator/benchmarked_node.js +77 -0
  18. package/dest/contract_function_simulator/contract_function_simulator.d.ts +76 -24
  19. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  20. package/dest/contract_function_simulator/contract_function_simulator.js +223 -78
  21. package/dest/contract_function_simulator/execution_note_cache.d.ts +21 -11
  22. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  23. package/dest/contract_function_simulator/execution_note_cache.js +49 -31
  24. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +6 -6
  25. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  26. package/dest/contract_function_simulator/execution_tagging_index_cache.js +4 -4
  27. package/dest/contract_function_simulator/hashed_values_cache.d.ts +2 -2
  28. package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -1
  29. package/dest/contract_function_simulator/index.d.ts +2 -2
  30. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  31. package/dest/contract_function_simulator/index.js +1 -1
  32. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +5 -4
  33. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  34. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +7 -4
  35. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +5 -4
  36. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  37. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +7 -6
  38. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +2 -2
  39. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  40. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +1 -1
  41. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +6 -5
  42. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  43. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +7 -4
  44. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +4 -10
  45. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  46. package/dest/contract_function_simulator/noir-structs/utility_context.js +7 -18
  47. package/dest/contract_function_simulator/oracle/interfaces.d.ts +61 -50
  48. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  49. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +4 -2
  50. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  51. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -1
  52. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +11 -7
  53. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  54. package/dest/contract_function_simulator/oracle/note_packing_utils.js +14 -10
  55. package/dest/contract_function_simulator/oracle/oracle.d.ts +44 -42
  56. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  57. package/dest/contract_function_simulator/oracle/oracle.js +191 -113
  58. package/dest/contract_function_simulator/oracle/private_execution.d.ts +2 -27
  59. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  60. package/dest/contract_function_simulator/oracle/private_execution.js +3 -39
  61. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +69 -60
  62. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  63. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +131 -88
  64. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +132 -54
  65. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  66. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +231 -102
  67. package/dest/contract_function_simulator/pick_notes.d.ts +2 -2
  68. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  69. package/dest/contract_function_simulator/pick_notes.js +1 -1
  70. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +4 -4
  71. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
  72. package/dest/contract_function_simulator/proxied_contract_data_source.js +23 -5
  73. package/dest/contract_logging.d.ts +22 -0
  74. package/dest/contract_logging.d.ts.map +1 -0
  75. package/dest/contract_logging.js +23 -0
  76. package/dest/contract_sync/contract_sync_service.d.ts +43 -0
  77. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -0
  78. package/dest/contract_sync/contract_sync_service.js +97 -0
  79. package/dest/contract_sync/helpers.d.ts +29 -0
  80. package/dest/contract_sync/helpers.d.ts.map +1 -0
  81. package/dest/contract_sync/helpers.js +55 -0
  82. package/dest/debug/pxe_debug_utils.d.ts +45 -0
  83. package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
  84. package/dest/debug/pxe_debug_utils.js +48 -0
  85. package/dest/entrypoints/client/bundle/index.d.ts +4 -2
  86. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  87. package/dest/entrypoints/client/bundle/index.js +3 -1
  88. package/dest/entrypoints/client/bundle/utils.d.ts +1 -1
  89. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  90. package/dest/entrypoints/client/bundle/utils.js +32 -9
  91. package/dest/entrypoints/client/lazy/index.d.ts +4 -2
  92. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  93. package/dest/entrypoints/client/lazy/index.js +3 -1
  94. package/dest/entrypoints/client/lazy/utils.d.ts +2 -2
  95. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  96. package/dest/entrypoints/client/lazy/utils.js +33 -10
  97. package/dest/entrypoints/pxe_creation_options.d.ts +7 -3
  98. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  99. package/dest/entrypoints/server/index.d.ts +6 -2
  100. package/dest/entrypoints/server/index.d.ts.map +1 -1
  101. package/dest/entrypoints/server/index.js +5 -1
  102. package/dest/entrypoints/server/utils.d.ts +1 -1
  103. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  104. package/dest/entrypoints/server/utils.js +39 -16
  105. package/dest/error_enriching.d.ts +4 -4
  106. package/dest/error_enriching.d.ts.map +1 -1
  107. package/dest/error_enriching.js +6 -6
  108. package/dest/events/event_service.d.ts +15 -0
  109. package/dest/events/event_service.d.ts.map +1 -0
  110. package/dest/events/event_service.js +44 -0
  111. package/dest/events/index.d.ts +2 -0
  112. package/dest/events/index.d.ts.map +1 -0
  113. package/dest/events/index.js +1 -0
  114. package/dest/events/private_event_filter_validator.d.ts +9 -0
  115. package/dest/events/private_event_filter_validator.d.ts.map +1 -0
  116. package/dest/events/private_event_filter_validator.js +38 -0
  117. package/dest/job_coordinator/job_coordinator.d.ts +75 -0
  118. package/dest/job_coordinator/job_coordinator.d.ts.map +1 -0
  119. package/dest/job_coordinator/job_coordinator.js +94 -0
  120. package/dest/logs/log_service.d.ts +29 -0
  121. package/dest/logs/log_service.d.ts.map +1 -0
  122. package/dest/logs/log_service.js +118 -0
  123. package/dest/notes/index.d.ts +2 -0
  124. package/dest/notes/index.d.ts.map +1 -0
  125. package/dest/notes/index.js +1 -0
  126. package/dest/notes/note_service.d.ts +49 -0
  127. package/dest/notes/note_service.d.ts.map +1 -0
  128. package/dest/notes/note_service.js +148 -0
  129. package/dest/notes_filter.d.ts +25 -0
  130. package/dest/notes_filter.d.ts.map +1 -0
  131. package/dest/notes_filter.js +4 -0
  132. package/dest/oracle_version.d.ts +3 -3
  133. package/dest/oracle_version.d.ts.map +1 -1
  134. package/dest/oracle_version.js +5 -4
  135. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  136. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  137. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  138. package/dest/private_kernel/hints/index.d.ts +3 -3
  139. package/dest/private_kernel/hints/index.d.ts.map +1 -1
  140. package/dest/private_kernel/hints/index.js +2 -2
  141. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +29 -0
  142. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -0
  143. package/dest/private_kernel/hints/{build_private_kernel_reset_private_inputs.js → private_kernel_reset_private_inputs_builder.js} +141 -74
  144. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  145. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  146. package/dest/private_kernel/hints/test_utils.js +203 -0
  147. package/dest/private_kernel/private_kernel_execution_prover.d.ts +3 -2
  148. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  149. package/dest/private_kernel/private_kernel_execution_prover.js +28 -21
  150. package/dest/private_kernel/private_kernel_oracle.d.ts +26 -25
  151. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  152. package/dest/private_kernel/private_kernel_oracle.js +94 -2
  153. package/dest/pxe.d.ts +114 -103
  154. package/dest/pxe.d.ts.map +1 -1
  155. package/dest/pxe.js +263 -256
  156. package/dest/storage/address_store/address_store.d.ts +11 -0
  157. package/dest/storage/address_store/address_store.d.ts.map +1 -0
  158. package/dest/storage/{address_data_provider/address_data_provider.js → address_store/address_store.js} +13 -12
  159. package/dest/storage/address_store/index.d.ts +2 -0
  160. package/dest/storage/address_store/index.d.ts.map +1 -0
  161. package/dest/storage/address_store/index.js +1 -0
  162. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +17 -0
  163. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -0
  164. package/dest/storage/{sync_data_provider/sync_data_provider.js → anchor_block_store/anchor_block_store.js} +10 -10
  165. package/dest/storage/{sync_data_provider → anchor_block_store}/index.d.ts +2 -2
  166. package/dest/storage/anchor_block_store/index.d.ts.map +1 -0
  167. package/dest/storage/anchor_block_store/index.js +1 -0
  168. package/dest/storage/capsule_store/capsule_store.d.ts +72 -0
  169. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -0
  170. package/dest/storage/capsule_store/capsule_store.js +253 -0
  171. package/dest/storage/capsule_store/index.d.ts +2 -0
  172. package/dest/storage/capsule_store/index.d.ts.map +1 -0
  173. package/dest/storage/capsule_store/index.js +1 -0
  174. package/dest/storage/contract_store/contract_store.d.ts +93 -0
  175. package/dest/storage/contract_store/contract_store.d.ts.map +1 -0
  176. package/dest/storage/contract_store/contract_store.js +309 -0
  177. package/dest/storage/contract_store/index.d.ts +2 -0
  178. package/dest/storage/contract_store/index.d.ts.map +1 -0
  179. package/dest/storage/contract_store/index.js +1 -0
  180. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.d.ts +1 -1
  181. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -0
  182. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.js +1 -1
  183. package/dest/storage/index.d.ts +8 -8
  184. package/dest/storage/index.d.ts.map +1 -1
  185. package/dest/storage/index.js +7 -7
  186. package/dest/storage/metadata.d.ts +1 -1
  187. package/dest/storage/metadata.js +1 -1
  188. package/dest/storage/note_store/index.d.ts +3 -0
  189. package/dest/storage/note_store/index.d.ts.map +1 -0
  190. package/dest/storage/note_store/index.js +2 -0
  191. package/dest/storage/note_store/note_store.d.ts +83 -0
  192. package/dest/storage/note_store/note_store.d.ts.map +1 -0
  193. package/dest/storage/note_store/note_store.js +343 -0
  194. package/dest/storage/note_store/stored_note.d.ts +16 -0
  195. package/dest/storage/note_store/stored_note.d.ts.map +1 -0
  196. package/dest/storage/note_store/stored_note.js +43 -0
  197. package/dest/storage/private_event_store/private_event_store.d.ts +91 -0
  198. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -0
  199. package/dest/storage/private_event_store/private_event_store.js +273 -0
  200. package/dest/storage/private_event_store/stored_private_event.d.ts +23 -0
  201. package/dest/storage/private_event_store/stored_private_event.d.ts.map +1 -0
  202. package/dest/storage/private_event_store/stored_private_event.js +56 -0
  203. package/dest/storage/tagging_store/index.d.ts +4 -0
  204. package/dest/storage/tagging_store/index.d.ts.map +1 -0
  205. package/dest/storage/tagging_store/index.js +3 -0
  206. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +28 -0
  207. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -0
  208. package/dest/storage/tagging_store/recipient_tagging_store.js +111 -0
  209. package/dest/storage/tagging_store/sender_address_book_store.d.ts +14 -0
  210. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +1 -0
  211. package/dest/storage/tagging_store/sender_address_book_store.js +36 -0
  212. package/dest/storage/tagging_store/sender_tagging_store.d.ts +77 -0
  213. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -0
  214. package/dest/storage/tagging_store/sender_tagging_store.js +348 -0
  215. package/dest/tagging/constants.d.ts +2 -2
  216. package/dest/tagging/constants.d.ts.map +1 -1
  217. package/dest/tagging/constants.js +10 -2
  218. package/dest/tagging/get_all_logs_by_tags.d.ts +24 -0
  219. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -0
  220. package/dest/tagging/get_all_logs_by_tags.js +60 -0
  221. package/dest/tagging/index.d.ts +16 -6
  222. package/dest/tagging/index.d.ts.map +1 -1
  223. package/dest/tagging/index.js +15 -5
  224. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +14 -0
  225. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -0
  226. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +99 -0
  227. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
  228. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
  229. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
  230. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +14 -0
  231. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -0
  232. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +33 -0
  233. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +17 -0
  234. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -0
  235. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +71 -0
  236. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +11 -0
  237. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -0
  238. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +29 -0
  239. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +18 -0
  240. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
  241. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +59 -0
  242. package/package.json +28 -19
  243. package/src/access_scopes.ts +9 -0
  244. package/src/bin/check_oracle_version.ts +131 -20
  245. package/src/block_synchronizer/block_synchronizer.ts +178 -0
  246. package/src/block_synchronizer/index.ts +1 -0
  247. package/src/config/index.ts +18 -4
  248. package/src/config/package_info.ts +1 -1
  249. package/src/contract_function_simulator/benchmarked_node.ts +103 -0
  250. package/src/contract_function_simulator/contract_function_simulator.ts +385 -110
  251. package/src/contract_function_simulator/execution_note_cache.ts +51 -28
  252. package/src/contract_function_simulator/execution_tagging_index_cache.ts +6 -6
  253. package/src/contract_function_simulator/hashed_values_cache.ts +1 -1
  254. package/src/contract_function_simulator/index.ts +1 -1
  255. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +7 -3
  256. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +6 -5
  257. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +1 -1
  258. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +6 -3
  259. package/src/contract_function_simulator/noir-structs/utility_context.ts +6 -25
  260. package/src/contract_function_simulator/oracle/interfaces.ts +70 -52
  261. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +1 -1
  262. package/src/contract_function_simulator/oracle/note_packing_utils.ts +27 -13
  263. package/src/contract_function_simulator/oracle/oracle.ts +213 -131
  264. package/src/contract_function_simulator/oracle/private_execution.ts +3 -69
  265. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +182 -122
  266. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +366 -114
  267. package/src/contract_function_simulator/pick_notes.ts +1 -1
  268. package/src/contract_function_simulator/proxied_contract_data_source.ts +24 -7
  269. package/src/contract_logging.ts +39 -0
  270. package/src/contract_sync/contract_sync_service.ts +152 -0
  271. package/src/contract_sync/helpers.ts +98 -0
  272. package/src/debug/pxe_debug_utils.ts +93 -0
  273. package/src/entrypoints/client/bundle/index.ts +3 -1
  274. package/src/entrypoints/client/bundle/utils.ts +24 -17
  275. package/src/entrypoints/client/lazy/index.ts +3 -1
  276. package/src/entrypoints/client/lazy/utils.ts +25 -18
  277. package/src/entrypoints/pxe_creation_options.ts +6 -2
  278. package/src/entrypoints/server/index.ts +5 -1
  279. package/src/entrypoints/server/utils.ts +33 -41
  280. package/src/error_enriching.ts +7 -15
  281. package/src/events/event_service.ts +71 -0
  282. package/src/events/index.ts +1 -0
  283. package/src/events/private_event_filter_validator.ts +46 -0
  284. package/src/job_coordinator/job_coordinator.ts +150 -0
  285. package/src/logs/log_service.ts +213 -0
  286. package/src/notes/index.ts +1 -0
  287. package/src/notes/note_service.ts +196 -0
  288. package/src/notes_filter.ts +26 -0
  289. package/src/oracle_version.ts +5 -4
  290. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  291. package/src/private_kernel/hints/index.ts +2 -2
  292. package/src/private_kernel/hints/{build_private_kernel_reset_private_inputs.ts → private_kernel_reset_private_inputs_builder.ts} +197 -139
  293. package/src/private_kernel/hints/test_utils.ts +325 -0
  294. package/src/private_kernel/private_kernel_execution_prover.ts +32 -23
  295. package/src/private_kernel/private_kernel_oracle.ts +118 -37
  296. package/src/pxe.ts +403 -347
  297. package/src/storage/{address_data_provider/address_data_provider.ts → address_store/address_store.ts} +16 -16
  298. package/src/storage/address_store/index.ts +1 -0
  299. package/src/storage/{sync_data_provider/sync_data_provider.ts → anchor_block_store/anchor_block_store.ts} +10 -11
  300. package/src/storage/anchor_block_store/index.ts +1 -0
  301. package/src/storage/capsule_store/capsule_store.ts +315 -0
  302. package/src/storage/capsule_store/index.ts +1 -0
  303. package/src/storage/contract_store/contract_store.ts +429 -0
  304. package/src/storage/contract_store/index.ts +1 -0
  305. package/src/storage/{contract_data_provider → contract_store}/private_functions_tree.ts +1 -1
  306. package/src/storage/index.ts +7 -7
  307. package/src/storage/metadata.ts +1 -1
  308. package/src/storage/note_store/index.ts +2 -0
  309. package/src/storage/note_store/note_store.ts +418 -0
  310. package/src/storage/note_store/stored_note.ts +48 -0
  311. package/src/storage/private_event_store/private_event_store.ts +384 -0
  312. package/src/storage/private_event_store/stored_private_event.ts +73 -0
  313. package/src/storage/tagging_store/index.ts +3 -0
  314. package/src/storage/tagging_store/recipient_tagging_store.ts +143 -0
  315. package/src/storage/tagging_store/sender_address_book_store.ts +48 -0
  316. package/src/storage/tagging_store/sender_tagging_store.ts +429 -0
  317. package/src/tagging/constants.ts +10 -2
  318. package/src/tagging/get_all_logs_by_tags.ts +92 -0
  319. package/src/tagging/index.ts +18 -5
  320. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +140 -0
  321. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
  322. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +44 -0
  323. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +94 -0
  324. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +36 -0
  325. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +75 -0
  326. package/dest/contract_function_simulator/execution_data_provider.d.ts +0 -265
  327. package/dest/contract_function_simulator/execution_data_provider.d.ts.map +0 -1
  328. package/dest/contract_function_simulator/execution_data_provider.js +0 -14
  329. package/dest/contract_function_simulator/proxied_node.d.ts +0 -9
  330. package/dest/contract_function_simulator/proxied_node.d.ts.map +0 -1
  331. package/dest/contract_function_simulator/proxied_node.js +0 -27
  332. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts +0 -122
  333. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts.map +0 -1
  334. package/dest/contract_function_simulator/pxe_oracle_interface.js +0 -694
  335. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
  336. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
  337. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  338. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
  339. package/dest/private_kernel/private_kernel_oracle_impl.d.ts +0 -45
  340. package/dest/private_kernel/private_kernel_oracle_impl.d.ts.map +0 -1
  341. package/dest/private_kernel/private_kernel_oracle_impl.js +0 -86
  342. package/dest/storage/address_data_provider/address_data_provider.d.ts +0 -11
  343. package/dest/storage/address_data_provider/address_data_provider.d.ts.map +0 -1
  344. package/dest/storage/address_data_provider/index.d.ts +0 -2
  345. package/dest/storage/address_data_provider/index.d.ts.map +0 -1
  346. package/dest/storage/address_data_provider/index.js +0 -1
  347. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +0 -25
  348. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +0 -1
  349. package/dest/storage/capsule_data_provider/capsule_data_provider.js +0 -118
  350. package/dest/storage/capsule_data_provider/index.d.ts +0 -2
  351. package/dest/storage/capsule_data_provider/index.d.ts.map +0 -1
  352. package/dest/storage/capsule_data_provider/index.js +0 -1
  353. package/dest/storage/contract_data_provider/contract_data_provider.d.ts +0 -64
  354. package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +0 -1
  355. package/dest/storage/contract_data_provider/contract_data_provider.js +0 -193
  356. package/dest/storage/contract_data_provider/index.d.ts +0 -2
  357. package/dest/storage/contract_data_provider/index.d.ts.map +0 -1
  358. package/dest/storage/contract_data_provider/index.js +0 -1
  359. package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +0 -1
  360. package/dest/storage/note_data_provider/index.d.ts +0 -3
  361. package/dest/storage/note_data_provider/index.d.ts.map +0 -1
  362. package/dest/storage/note_data_provider/index.js +0 -2
  363. package/dest/storage/note_data_provider/note_data_provider.d.ts +0 -83
  364. package/dest/storage/note_data_provider/note_data_provider.d.ts.map +0 -1
  365. package/dest/storage/note_data_provider/note_data_provider.js +0 -311
  366. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts +0 -37
  367. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts.map +0 -1
  368. package/dest/storage/private_event_data_provider/private_event_data_provider.js +0 -105
  369. package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
  370. package/dest/storage/sync_data_provider/index.js +0 -1
  371. package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -10
  372. package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
  373. package/dest/storage/tagging_data_provider/index.d.ts +0 -2
  374. package/dest/storage/tagging_data_provider/index.d.ts.map +0 -1
  375. package/dest/storage/tagging_data_provider/index.js +0 -1
  376. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -40
  377. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
  378. package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -89
  379. package/dest/synchronizer/index.d.ts +0 -2
  380. package/dest/synchronizer/index.d.ts.map +0 -1
  381. package/dest/synchronizer/index.js +0 -1
  382. package/dest/synchronizer/synchronizer.d.ts +0 -35
  383. package/dest/synchronizer/synchronizer.d.ts.map +0 -1
  384. package/dest/synchronizer/synchronizer.js +0 -101
  385. package/dest/tagging/siloed_tag.d.ts +0 -14
  386. package/dest/tagging/siloed_tag.d.ts.map +0 -1
  387. package/dest/tagging/siloed_tag.js +0 -20
  388. package/dest/tagging/tag.d.ts +0 -12
  389. package/dest/tagging/tag.d.ts.map +0 -1
  390. package/dest/tagging/tag.js +0 -17
  391. package/dest/tagging/utils.d.ts +0 -18
  392. package/dest/tagging/utils.d.ts.map +0 -1
  393. package/dest/tagging/utils.js +0 -24
  394. package/src/contract_function_simulator/execution_data_provider.ts +0 -333
  395. package/src/contract_function_simulator/proxied_node.ts +0 -33
  396. package/src/contract_function_simulator/pxe_oracle_interface.ts +0 -1008
  397. package/src/private_kernel/private_kernel_oracle_impl.ts +0 -132
  398. package/src/storage/address_data_provider/index.ts +0 -1
  399. package/src/storage/capsule_data_provider/capsule_data_provider.ts +0 -147
  400. package/src/storage/capsule_data_provider/index.ts +0 -1
  401. package/src/storage/contract_data_provider/contract_data_provider.ts +0 -277
  402. package/src/storage/contract_data_provider/index.ts +0 -1
  403. package/src/storage/note_data_provider/index.ts +0 -2
  404. package/src/storage/note_data_provider/note_data_provider.ts +0 -399
  405. package/src/storage/private_event_data_provider/private_event_data_provider.ts +0 -143
  406. package/src/storage/sync_data_provider/index.ts +0 -1
  407. package/src/storage/tagging_data_provider/index.ts +0 -1
  408. package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -120
  409. package/src/synchronizer/index.ts +0 -1
  410. package/src/synchronizer/synchronizer.ts +0 -120
  411. package/src/tagging/siloed_tag.ts +0 -22
  412. package/src/tagging/tag.ts +0 -16
  413. package/src/tagging/utils.ts +0 -31
@@ -1,10 +1,12 @@
1
- import { Fr, Point } from '@aztec/foundation/fields';
1
+ import { BlockNumber } from '@aztec/foundation/branded-types';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
+ import { Point } from '@aztec/foundation/curves/grumpkin';
2
4
  import { arrayOfArraysToBoundedVecOfArrays, bufferToBoundedVec, fromUintArray, fromUintBoundedVec, toACVMField } from '@aztec/simulator/client';
3
5
  import { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
4
6
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
7
+ import { BlockHash } from '@aztec/stdlib/block';
5
8
  import { ContractClassLog, ContractClassLogFields } from '@aztec/stdlib/logs';
6
- import { MerkleTreeId } from '@aztec/stdlib/trees';
7
- import { packAsRetrievedNote } from './note_packing_utils.js';
9
+ import { packAsHintedNote } from './note_packing_utils.js';
8
10
  export class UnavailableOracleError extends Error {
9
11
  constructor(oracleName){
10
12
  super(`${oracleName} oracles not available with the current handler`);
@@ -46,11 +48,11 @@ export class UnavailableOracleError extends Error {
46
48
  ];
47
49
  // Get all the oracle function names
48
50
  const oracleNames = Object.getOwnPropertyNames(Oracle.prototype).filter((name)=>!excludedProps.includes(name));
49
- // Validate oracle names - these must be prefixed with either "private" or "utility" to indicate their scope
51
+ // Validate oracle names - these must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate their scope
50
52
  // and must correspond to a function on the Oracle class.
51
53
  oracleNames.forEach((name)=>{
52
- if (!name.startsWith('private') && !name.startsWith('utility')) {
53
- throw new Error(`Oracle function "${name}" must be prefixed with either "private" or "utility" to indicate its scope`);
54
+ if (!name.startsWith('aztec_prv_') && !name.startsWith('aztec_utl_')) {
55
+ throw new Error(`Oracle function "${name}" must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate its scope`);
54
56
  }
55
57
  const method = this[name];
56
58
  if (typeof method !== 'function') {
@@ -64,36 +66,43 @@ export class UnavailableOracleError extends Error {
64
66
  return acc;
65
67
  }, {});
66
68
  }
67
- utilityAssertCompatibleOracleVersion([version]) {
68
- this.handlerAsMisc().utilityAssertCompatibleOracleVersion(Fr.fromString(version).toNumber());
69
+ // eslint-disable-next-line camelcase
70
+ aztec_utl_assertCompatibleOracleVersion([version]) {
71
+ this.handlerAsMisc().assertCompatibleOracleVersion(Fr.fromString(version).toNumber());
69
72
  return Promise.resolve([]);
70
73
  }
71
- utilityGetRandomField() {
72
- const val = this.handlerAsMisc().utilityGetRandomField();
74
+ // eslint-disable-next-line camelcase
75
+ aztec_utl_getRandomField() {
76
+ const val = this.handlerAsMisc().getRandomField();
73
77
  return Promise.resolve([
74
78
  toACVMField(val)
75
79
  ]);
76
80
  }
77
- privateStoreInExecutionCache(values, [hash]) {
78
- this.handlerAsPrivate().privateStoreInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
81
+ // eslint-disable-next-line camelcase
82
+ aztec_prv_storeInExecutionCache(values, [hash]) {
83
+ this.handlerAsPrivate().storeInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
79
84
  return Promise.resolve([]);
80
85
  }
81
- async privateLoadFromExecutionCache([returnsHash]) {
82
- const values = await this.handlerAsPrivate().privateLoadFromExecutionCache(Fr.fromString(returnsHash));
86
+ // eslint-disable-next-line camelcase
87
+ async aztec_prv_loadFromExecutionCache([returnsHash]) {
88
+ const values = await this.handlerAsPrivate().loadFromExecutionCache(Fr.fromString(returnsHash));
83
89
  return [
84
90
  values.map(toACVMField)
85
91
  ];
86
92
  }
87
- async utilityGetUtilityContext() {
88
- const context = await this.handlerAsUtility().utilityGetUtilityContext();
89
- return context.toNoirRepresentation();
93
+ // eslint-disable-next-line camelcase
94
+ aztec_utl_getUtilityContext() {
95
+ const context = this.handlerAsUtility().getUtilityContext();
96
+ return Promise.resolve(context.toNoirRepresentation());
90
97
  }
91
- async utilityGetKeyValidationRequest([pkMHash]) {
92
- const keyValidationRequest = await this.handlerAsUtility().utilityGetKeyValidationRequest(Fr.fromString(pkMHash));
98
+ // eslint-disable-next-line camelcase
99
+ async aztec_utl_getKeyValidationRequest([pkMHash]) {
100
+ const keyValidationRequest = await this.handlerAsUtility().getKeyValidationRequest(Fr.fromString(pkMHash));
93
101
  return keyValidationRequest.toFields().map(toACVMField);
94
102
  }
95
- async utilityGetContractInstance([address]) {
96
- const instance = await this.handlerAsUtility().utilityGetContractInstance(AztecAddress.fromField(Fr.fromString(address)));
103
+ // eslint-disable-next-line camelcase
104
+ async aztec_utl_getContractInstance([address]) {
105
+ const instance = await this.handlerAsUtility().getContractInstance(AztecAddress.fromField(Fr.fromString(address)));
97
106
  return [
98
107
  instance.salt,
99
108
  instance.deployer,
@@ -102,57 +111,69 @@ export class UnavailableOracleError extends Error {
102
111
  ...instance.publicKeys.toFields()
103
112
  ].map(toACVMField);
104
113
  }
105
- async utilityGetMembershipWitness([blockNumber], [treeId], [leafValue]) {
106
- const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
107
- const parsedTreeId = Fr.fromString(treeId).toNumber();
108
- const parsedLeafValue = Fr.fromString(leafValue);
109
- const witness = await this.handlerAsUtility().utilityGetMembershipWitness(parsedBlockNumber, parsedTreeId, parsedLeafValue);
114
+ // eslint-disable-next-line camelcase
115
+ async aztec_utl_getNoteHashMembershipWitness([anchorBlockHash], [noteHash]) {
116
+ const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
117
+ const parsedNoteHash = Fr.fromString(noteHash);
118
+ const witness = await this.handlerAsUtility().getNoteHashMembershipWitness(parsedAnchorBlockHash, parsedNoteHash);
110
119
  if (!witness) {
111
- throw new Error(`Leaf ${leafValue} not found in the tree ${MerkleTreeId[parsedTreeId]} at block ${parsedBlockNumber}.`);
120
+ throw new Error(`Note hash ${noteHash} not found in the note hash tree at anchor block hash ${parsedAnchorBlockHash.toString()}.`);
112
121
  }
113
- return [
114
- toACVMField(witness[0]),
115
- witness.slice(1).map(toACVMField)
116
- ];
122
+ return witness.toNoirRepresentation();
117
123
  }
118
- async utilityGetNullifierMembershipWitness([blockNumber], [nullifier]) {
119
- const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
124
+ // eslint-disable-next-line camelcase
125
+ async aztec_utl_getBlockHashMembershipWitness([anchorBlockHash], [blockHash]) {
126
+ const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
127
+ const parsedBlockHash = BlockHash.fromString(blockHash);
128
+ const witness = await this.handlerAsUtility().getBlockHashMembershipWitness(parsedAnchorBlockHash, parsedBlockHash);
129
+ if (!witness) {
130
+ throw new Error(`Block hash ${parsedBlockHash.toString()} not found in the archive tree at anchor block ${parsedAnchorBlockHash.toString()}.`);
131
+ }
132
+ return witness.toNoirRepresentation();
133
+ }
134
+ // eslint-disable-next-line camelcase
135
+ async aztec_utl_getNullifierMembershipWitness([blockHash], [nullifier]) {
136
+ const parsedBlockHash = BlockHash.fromString(blockHash);
120
137
  const parsedNullifier = Fr.fromString(nullifier);
121
- const witness = await this.handlerAsUtility().utilityGetNullifierMembershipWitness(parsedBlockNumber, parsedNullifier);
138
+ const witness = await this.handlerAsUtility().getNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
122
139
  if (!witness) {
123
- throw new Error(`Nullifier witness not found for nullifier ${parsedNullifier} at block ${parsedBlockNumber}.`);
140
+ throw new Error(`Nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`);
124
141
  }
125
142
  return witness.toNoirRepresentation();
126
143
  }
127
- async utilityGetLowNullifierMembershipWitness([blockNumber], [nullifier]) {
128
- const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
144
+ // eslint-disable-next-line camelcase
145
+ async aztec_utl_getLowNullifierMembershipWitness([blockHash], [nullifier]) {
146
+ const parsedBlockHash = BlockHash.fromString(blockHash);
129
147
  const parsedNullifier = Fr.fromString(nullifier);
130
- const witness = await this.handlerAsUtility().utilityGetLowNullifierMembershipWitness(parsedBlockNumber, parsedNullifier);
148
+ const witness = await this.handlerAsUtility().getLowNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
131
149
  if (!witness) {
132
- throw new Error(`Low nullifier witness not found for nullifier ${parsedNullifier} at block ${parsedBlockNumber}.`);
150
+ throw new Error(`Low nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`);
133
151
  }
134
152
  return witness.toNoirRepresentation();
135
153
  }
136
- async utilityGetPublicDataWitness([blockNumber], [leafSlot]) {
137
- const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
154
+ // eslint-disable-next-line camelcase
155
+ async aztec_utl_getPublicDataWitness([blockHash], [leafSlot]) {
156
+ const parsedBlockHash = BlockHash.fromString(blockHash);
138
157
  const parsedLeafSlot = Fr.fromString(leafSlot);
139
- const witness = await this.handlerAsUtility().utilityGetPublicDataWitness(parsedBlockNumber, parsedLeafSlot);
158
+ const witness = await this.handlerAsUtility().getPublicDataWitness(parsedBlockHash, parsedLeafSlot);
140
159
  if (!witness) {
141
- throw new Error(`Public data witness not found for slot ${parsedLeafSlot} at block ${parsedBlockNumber}.`);
160
+ throw new Error(`Public data witness not found for slot ${parsedLeafSlot} at block hash ${parsedBlockHash.toString()}.`);
142
161
  }
143
162
  return witness.toNoirRepresentation();
144
163
  }
145
- async utilityGetBlockHeader([blockNumber]) {
164
+ // eslint-disable-next-line camelcase
165
+ async aztec_utl_getBlockHeader([blockNumber]) {
146
166
  const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
147
- const header = await this.handlerAsUtility().utilityGetBlockHeader(parsedBlockNumber);
167
+ const header = await this.handlerAsUtility().getBlockHeader(BlockNumber(parsedBlockNumber));
148
168
  if (!header) {
149
169
  throw new Error(`Block header not found for block ${parsedBlockNumber}.`);
150
170
  }
151
171
  return header.toFields().map(toACVMField);
152
172
  }
153
- async utilityGetAuthWitness([messageHash]) {
173
+ // eslint-disable-next-line camelcase
174
+ async aztec_utl_getAuthWitness([messageHash]) {
154
175
  const messageHashField = Fr.fromString(messageHash);
155
- const witness = await this.handlerAsUtility().utilityGetAuthWitness(messageHashField);
176
+ const witness = await this.handlerAsUtility().getAuthWitness(messageHashField);
156
177
  if (!witness) {
157
178
  throw new Error(`Unknown auth witness for message hash ${messageHashField}`);
158
179
  }
@@ -160,69 +181,109 @@ export class UnavailableOracleError extends Error {
160
181
  witness.map(toACVMField)
161
182
  ];
162
183
  }
163
- async utilityGetPublicKeysAndPartialAddress([address]) {
184
+ // eslint-disable-next-line camelcase
185
+ async aztec_utl_tryGetPublicKeysAndPartialAddress([address]) {
164
186
  const parsedAddress = AztecAddress.fromField(Fr.fromString(address));
165
- const { publicKeys, partialAddress } = await this.handlerAsUtility().utilityGetPublicKeysAndPartialAddress(parsedAddress);
166
- return [
167
- [
168
- ...publicKeys.toFields(),
169
- partialAddress
170
- ].map(toACVMField)
171
- ];
187
+ const result = await this.handlerAsUtility().tryGetPublicKeysAndPartialAddress(parsedAddress);
188
+ // We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
189
+ // with two fields: `some` (a boolean) and `value` (a field array in this case).
190
+ if (result === undefined) {
191
+ // No data was found so we set `some` to 0 and pad `value` with zeros get the correct return size.
192
+ return [
193
+ toACVMField(0),
194
+ Array(13).fill(toACVMField(0))
195
+ ];
196
+ } else {
197
+ // Data was found so we set `some` to 1 and return it along with `value`.
198
+ return [
199
+ toACVMField(1),
200
+ [
201
+ ...result.publicKeys.toFields(),
202
+ result.partialAddress
203
+ ].map(toACVMField)
204
+ ];
205
+ }
172
206
  }
173
- async utilityGetNotes([storageSlot], [numSelects], selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, [limit], [offset], [status], [maxNotes], [packedRetrievedNoteLength]) {
174
- const noteDatas = await this.handlerAsUtility().utilityGetNotes(Fr.fromString(storageSlot), +numSelects, selectByIndexes.map((s)=>+s), selectByOffsets.map((s)=>+s), selectByLengths.map((s)=>+s), selectValues.map(Fr.fromString), selectComparators.map((s)=>+s), sortByIndexes.map((s)=>+s), sortByOffsets.map((s)=>+s), sortByLengths.map((s)=>+s), sortOrder.map((s)=>+s), +limit, +offset, +status);
175
- const returnDataAsArrayOfPackedRetrievedNotes = noteDatas.map(packAsRetrievedNote);
207
+ // eslint-disable-next-line camelcase
208
+ async aztec_utl_getNotes([ownerSome], [ownerValue], [storageSlot], [numSelects], selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, [limit], [offset], [status], [maxNotes], [packedHintedNoteLength]) {
209
+ // Parse Option<AztecAddress>: ownerSome is 0 for None, 1 for Some
210
+ const owner = Fr.fromString(ownerSome).toNumber() === 1 ? AztecAddress.fromString(ownerValue) : undefined;
211
+ const noteDatas = await this.handlerAsUtility().getNotes(owner, Fr.fromString(storageSlot), +numSelects, selectByIndexes.map((s)=>+s), selectByOffsets.map((s)=>+s), selectByLengths.map((s)=>+s), selectValues.map(Fr.fromString), selectComparators.map((s)=>+s), sortByIndexes.map((s)=>+s), sortByOffsets.map((s)=>+s), sortByLengths.map((s)=>+s), sortOrder.map((s)=>+s), +limit, +offset, +status);
212
+ const returnDataAsArrayOfPackedHintedNotes = noteDatas.map((noteData)=>packAsHintedNote({
213
+ contractAddress: noteData.contractAddress,
214
+ owner: noteData.owner,
215
+ randomness: noteData.randomness,
216
+ storageSlot: noteData.storageSlot,
217
+ noteNonce: noteData.noteNonce,
218
+ isPending: noteData.isPending,
219
+ note: noteData.note
220
+ }));
176
221
  // Now we convert each sub-array to an array of ACVMField
177
- const returnDataAsArrayOfACVMFieldArrays = returnDataAsArrayOfPackedRetrievedNotes.map((subArray)=>subArray.map(toACVMField));
222
+ const returnDataAsArrayOfACVMFieldArrays = returnDataAsArrayOfPackedHintedNotes.map((subArray)=>subArray.map(toACVMField));
178
223
  // At last we convert the array of arrays to a bounded vec of arrays
179
- return arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfACVMFieldArrays, +maxNotes, +packedRetrievedNoteLength);
224
+ return arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfACVMFieldArrays, +maxNotes, +packedHintedNoteLength);
180
225
  }
181
- privateNotifyCreatedNote([storageSlot], [randomness], [noteTypeId], note, [noteHash], [counter]) {
182
- this.handlerAsPrivate().privateNotifyCreatedNote(Fr.fromString(storageSlot), Fr.fromString(randomness), NoteSelector.fromField(Fr.fromString(noteTypeId)), note.map(Fr.fromString), Fr.fromString(noteHash), +counter);
226
+ // eslint-disable-next-line camelcase
227
+ aztec_prv_notifyCreatedNote([owner], [storageSlot], [randomness], [noteTypeId], note, [noteHash], [counter]) {
228
+ this.handlerAsPrivate().notifyCreatedNote(AztecAddress.fromString(owner), Fr.fromString(storageSlot), Fr.fromString(randomness), NoteSelector.fromField(Fr.fromString(noteTypeId)), note.map(Fr.fromString), Fr.fromString(noteHash), +counter);
183
229
  return Promise.resolve([]);
184
230
  }
185
- async privateNotifyNullifiedNote([innerNullifier], [noteHash], [counter]) {
186
- await this.handlerAsPrivate().privateNotifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
231
+ // eslint-disable-next-line camelcase
232
+ async aztec_prv_notifyNullifiedNote([innerNullifier], [noteHash], [counter]) {
233
+ await this.handlerAsPrivate().notifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
187
234
  return [];
188
235
  }
189
- async privateNotifyCreatedNullifier([innerNullifier]) {
190
- await this.handlerAsPrivate().privateNotifyCreatedNullifier(Fr.fromString(innerNullifier));
236
+ // eslint-disable-next-line camelcase
237
+ async aztec_prv_notifyCreatedNullifier([innerNullifier]) {
238
+ await this.handlerAsPrivate().notifyCreatedNullifier(Fr.fromString(innerNullifier));
191
239
  return [];
192
240
  }
193
- async utilityCheckNullifierExists([innerNullifier]) {
194
- const exists = await this.handlerAsUtility().utilityCheckNullifierExists(Fr.fromString(innerNullifier));
241
+ // eslint-disable-next-line camelcase
242
+ async aztec_prv_isNullifierPending([innerNullifier], [contractAddress]) {
243
+ const isPending = await this.handlerAsPrivate().isNullifierPending(Fr.fromString(innerNullifier), AztecAddress.fromString(contractAddress));
244
+ return [
245
+ toACVMField(isPending)
246
+ ];
247
+ }
248
+ // eslint-disable-next-line camelcase
249
+ async aztec_utl_checkNullifierExists([innerNullifier]) {
250
+ const exists = await this.handlerAsUtility().checkNullifierExists(Fr.fromString(innerNullifier));
195
251
  return [
196
252
  toACVMField(exists)
197
253
  ];
198
254
  }
199
- async utilityGetL1ToL2MembershipWitness([contractAddress], [messageHash], [secret]) {
200
- const message = await this.handlerAsUtility().utilityGetL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), Fr.fromString(messageHash), Fr.fromString(secret));
255
+ // eslint-disable-next-line camelcase
256
+ async aztec_utl_getL1ToL2MembershipWitness([contractAddress], [messageHash], [secret]) {
257
+ const message = await this.handlerAsUtility().getL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), Fr.fromString(messageHash), Fr.fromString(secret));
201
258
  return message.toNoirRepresentation();
202
259
  }
203
- async utilityStorageRead([contractAddress], [startStorageSlot], [blockNumber], [numberOfElements]) {
204
- const values = await this.handlerAsUtility().utilityStorageRead(new AztecAddress(Fr.fromString(contractAddress)), Fr.fromString(startStorageSlot), +blockNumber, +numberOfElements);
260
+ // eslint-disable-next-line camelcase
261
+ async aztec_utl_storageRead([blockHash], [contractAddress], [startStorageSlot], [numberOfElements]) {
262
+ const values = await this.handlerAsUtility().storageRead(BlockHash.fromString(blockHash), new AztecAddress(Fr.fromString(contractAddress)), Fr.fromString(startStorageSlot), +numberOfElements);
205
263
  return [
206
264
  values.map(toACVMField)
207
265
  ];
208
266
  }
209
- privateNotifyCreatedContractClassLog([contractAddress], message, [length], [counter]) {
267
+ // eslint-disable-next-line camelcase
268
+ aztec_prv_notifyCreatedContractClassLog([contractAddress], message, [length], [counter]) {
210
269
  const logFields = new ContractClassLogFields(message.map(Fr.fromString));
211
270
  const log = new ContractClassLog(new AztecAddress(Fr.fromString(contractAddress)), logFields, +length);
212
- this.handlerAsPrivate().privateNotifyCreatedContractClassLog(log, +counter);
271
+ this.handlerAsPrivate().notifyCreatedContractClassLog(log, +counter);
213
272
  return Promise.resolve([]);
214
273
  }
215
- utilityDebugLog(level, message, _ignoredFieldsSize, fields) {
274
+ // eslint-disable-next-line camelcase
275
+ async aztec_utl_log(level, message, _ignoredFieldsSize, fields) {
216
276
  const levelFr = Fr.fromString(level[0]);
217
277
  const messageStr = message.map((acvmField)=>String.fromCharCode(Fr.fromString(acvmField).toNumber())).join('');
218
278
  const fieldsFr = fields.map(Fr.fromString);
219
- this.handlerAsMisc().utilityDebugLog(levelFr.toNumber(), messageStr, fieldsFr);
220
- return Promise.resolve([]);
279
+ await this.handlerAsMisc().log(levelFr.toNumber(), messageStr, fieldsFr);
280
+ return [];
221
281
  }
222
282
  // This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
223
283
  // change the name here.
224
- async privateCallPrivateFunction([contractAddress], [functionSelector], [argsHash], [sideEffectCounter], [isStaticCall]) {
225
- const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().privateCallPrivateFunction(AztecAddress.fromField(Fr.fromString(contractAddress)), FunctionSelector.fromField(Fr.fromString(functionSelector)), Fr.fromString(argsHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
284
+ // eslint-disable-next-line camelcase
285
+ async aztec_prv_callPrivateFunction([contractAddress], [functionSelector], [argsHash], [sideEffectCounter], [isStaticCall]) {
286
+ const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().callPrivateFunction(AztecAddress.fromField(Fr.fromString(contractAddress)), FunctionSelector.fromField(Fr.fromString(functionSelector)), Fr.fromString(argsHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
226
287
  return [
227
288
  [
228
289
  endSideEffectCounter,
@@ -230,48 +291,58 @@ export class UnavailableOracleError extends Error {
230
291
  ].map(toACVMField)
231
292
  ];
232
293
  }
233
- async privateNotifyEnqueuedPublicFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
234
- await this.handlerAsPrivate().privateNotifyEnqueuedPublicFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
294
+ // eslint-disable-next-line camelcase
295
+ async aztec_prv_notifyEnqueuedPublicFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
296
+ await this.handlerAsPrivate().notifyEnqueuedPublicFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
235
297
  return [];
236
298
  }
237
- async privateNotifySetPublicTeardownFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
238
- await this.handlerAsPrivate().privateNotifySetPublicTeardownFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
299
+ // eslint-disable-next-line camelcase
300
+ async aztec_prv_notifySetPublicTeardownFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
301
+ await this.handlerAsPrivate().notifySetPublicTeardownFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
239
302
  return [];
240
303
  }
241
- async privateNotifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]) {
242
- await this.handlerAsPrivate().privateNotifySetMinRevertibleSideEffectCounter(Fr.fromString(minRevertibleSideEffectCounter).toNumber());
304
+ // eslint-disable-next-line camelcase
305
+ async aztec_prv_notifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]) {
306
+ await this.handlerAsPrivate().notifySetMinRevertibleSideEffectCounter(Fr.fromString(minRevertibleSideEffectCounter).toNumber());
243
307
  return Promise.resolve([]);
244
308
  }
245
- async privateIsSideEffectCounterRevertible([sideEffectCounter]) {
246
- const isRevertible = await this.handlerAsPrivate().privateIsSideEffectCounterRevertible(Fr.fromString(sideEffectCounter).toNumber());
309
+ // eslint-disable-next-line camelcase
310
+ async aztec_prv_isSideEffectCounterRevertible([sideEffectCounter]) {
311
+ const isRevertible = await this.handlerAsPrivate().isSideEffectCounterRevertible(Fr.fromString(sideEffectCounter).toNumber());
247
312
  return Promise.resolve([
248
313
  toACVMField(isRevertible)
249
314
  ]);
250
315
  }
251
- async privateGetNextAppTagAsSender([sender], [recipient]) {
252
- const tag = await this.handlerAsPrivate().privateGetNextAppTagAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
316
+ // eslint-disable-next-line camelcase
317
+ async aztec_prv_getNextAppTagAsSender([sender], [recipient]) {
318
+ const tag = await this.handlerAsPrivate().getNextAppTagAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
253
319
  return [
254
320
  toACVMField(tag.value)
255
321
  ];
256
322
  }
257
- async utilityFetchTaggedLogs([pendingTaggedLogArrayBaseSlot]) {
258
- await this.handlerAsUtility().utilityFetchTaggedLogs(Fr.fromString(pendingTaggedLogArrayBaseSlot));
323
+ // eslint-disable-next-line camelcase
324
+ async aztec_utl_fetchTaggedLogs([pendingTaggedLogArrayBaseSlot]) {
325
+ await this.handlerAsUtility().fetchTaggedLogs(Fr.fromString(pendingTaggedLogArrayBaseSlot));
259
326
  return [];
260
327
  }
261
- async utilityValidateEnqueuedNotesAndEvents([contractAddress], [noteValidationRequestsArrayBaseSlot], [eventValidationRequestsArrayBaseSlot]) {
262
- await this.handlerAsUtility().utilityValidateEnqueuedNotesAndEvents(AztecAddress.fromString(contractAddress), Fr.fromString(noteValidationRequestsArrayBaseSlot), Fr.fromString(eventValidationRequestsArrayBaseSlot));
328
+ // eslint-disable-next-line camelcase
329
+ async aztec_utl_validateAndStoreEnqueuedNotesAndEvents([contractAddress], [noteValidationRequestsArrayBaseSlot], [eventValidationRequestsArrayBaseSlot]) {
330
+ await this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(AztecAddress.fromString(contractAddress), Fr.fromString(noteValidationRequestsArrayBaseSlot), Fr.fromString(eventValidationRequestsArrayBaseSlot));
263
331
  return [];
264
332
  }
265
- async utilityBulkRetrieveLogs([contractAddress], [logRetrievalRequestsArrayBaseSlot], [logRetrievalResponsesArrayBaseSlot]) {
266
- await this.handlerAsUtility().utilityBulkRetrieveLogs(AztecAddress.fromString(contractAddress), Fr.fromString(logRetrievalRequestsArrayBaseSlot), Fr.fromString(logRetrievalResponsesArrayBaseSlot));
333
+ // eslint-disable-next-line camelcase
334
+ async aztec_utl_bulkRetrieveLogs([contractAddress], [logRetrievalRequestsArrayBaseSlot], [logRetrievalResponsesArrayBaseSlot]) {
335
+ await this.handlerAsUtility().bulkRetrieveLogs(AztecAddress.fromString(contractAddress), Fr.fromString(logRetrievalRequestsArrayBaseSlot), Fr.fromString(logRetrievalResponsesArrayBaseSlot));
267
336
  return [];
268
337
  }
269
- async utilityStoreCapsule([contractAddress], [slot], capsule) {
270
- await this.handlerAsUtility().utilityStoreCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot), capsule.map(Fr.fromString));
338
+ // eslint-disable-next-line camelcase
339
+ async aztec_utl_storeCapsule([contractAddress], [slot], capsule) {
340
+ await this.handlerAsUtility().storeCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot), capsule.map(Fr.fromString));
271
341
  return [];
272
342
  }
273
- async utilityLoadCapsule([contractAddress], [slot], [tSize]) {
274
- const values = await this.handlerAsUtility().utilityLoadCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
343
+ // eslint-disable-next-line camelcase
344
+ async aztec_utl_loadCapsule([contractAddress], [slot], [tSize]) {
345
+ const values = await this.handlerAsUtility().loadCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
275
346
  // We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
276
347
  // with two fields: `some` (a boolean) and `value` (a field array in this case).
277
348
  if (values === null) {
@@ -288,35 +359,41 @@ export class UnavailableOracleError extends Error {
288
359
  ];
289
360
  }
290
361
  }
291
- async utilityDeleteCapsule([contractAddress], [slot]) {
292
- await this.handlerAsUtility().utilityDeleteCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
362
+ // eslint-disable-next-line camelcase
363
+ async aztec_utl_deleteCapsule([contractAddress], [slot]) {
364
+ await this.handlerAsUtility().deleteCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
293
365
  return [];
294
366
  }
295
- async utilityCopyCapsule([contractAddress], [srcSlot], [dstSlot], [numEntries]) {
296
- await this.handlerAsUtility().utilityCopyCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(srcSlot), Fr.fromString(dstSlot), Fr.fromString(numEntries).toNumber());
367
+ // eslint-disable-next-line camelcase
368
+ async aztec_utl_copyCapsule([contractAddress], [srcSlot], [dstSlot], [numEntries]) {
369
+ await this.handlerAsUtility().copyCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(srcSlot), Fr.fromString(dstSlot), Fr.fromString(numEntries).toNumber());
297
370
  return [];
298
371
  }
299
- async utilityAes128Decrypt(ciphertextBVecStorage, [ciphertextLength], iv, symKey) {
372
+ // eslint-disable-next-line camelcase
373
+ async aztec_utl_aes128Decrypt(ciphertextBVecStorage, [ciphertextLength], iv, symKey) {
300
374
  const ciphertext = fromUintBoundedVec(ciphertextBVecStorage, ciphertextLength, 8);
301
375
  const ivBuffer = fromUintArray(iv, 8);
302
376
  const symKeyBuffer = fromUintArray(symKey, 8);
303
- const plaintext = await this.handlerAsUtility().utilityAes128Decrypt(ciphertext, ivBuffer, symKeyBuffer);
377
+ const plaintext = await this.handlerAsUtility().aes128Decrypt(ciphertext, ivBuffer, symKeyBuffer);
304
378
  return bufferToBoundedVec(plaintext, ciphertextBVecStorage.length);
305
379
  }
306
- async utilityGetSharedSecret([address], [ephPKField0], [ephPKField1], [ephPKField2]) {
307
- const secret = await this.handlerAsUtility().utilityGetSharedSecret(AztecAddress.fromField(Fr.fromString(address)), Point.fromFields([
380
+ // eslint-disable-next-line camelcase
381
+ async aztec_utl_getSharedSecret([address], [ephPKField0], [ephPKField1], [ephPKField2]) {
382
+ const secret = await this.handlerAsUtility().getSharedSecret(AztecAddress.fromField(Fr.fromString(address)), Point.fromFields([
308
383
  ephPKField0,
309
384
  ephPKField1,
310
385
  ephPKField2
311
386
  ].map(Fr.fromString)));
312
387
  return secret.toFields().map(toACVMField);
313
388
  }
314
- async utilityEmitOffchainEffect(data) {
315
- await this.handlerAsPrivate().utilityEmitOffchainEffect(data.map(Fr.fromString));
389
+ // eslint-disable-next-line camelcase
390
+ async aztec_utl_emitOffchainEffect(data) {
391
+ await this.handlerAsPrivate().emitOffchainEffect(data.map(Fr.fromString));
316
392
  return [];
317
393
  }
318
- async privateGetSenderForTags() {
319
- const sender = await this.handlerAsPrivate().privateGetSenderForTags();
394
+ // eslint-disable-next-line camelcase
395
+ async aztec_prv_getSenderForTags() {
396
+ const sender = await this.handlerAsPrivate().getSenderForTags();
320
397
  // Return [1, address] for Some(address), [0, 0] for None
321
398
  return sender ? [
322
399
  toACVMField(1n),
@@ -326,8 +403,9 @@ export class UnavailableOracleError extends Error {
326
403
  toACVMField(0n)
327
404
  ];
328
405
  }
329
- async privateSetSenderForTags([senderForTags]) {
330
- await this.handlerAsPrivate().privateSetSenderForTags(AztecAddress.fromField(Fr.fromString(senderForTags)));
406
+ // eslint-disable-next-line camelcase
407
+ async aztec_prv_setSenderForTags([senderForTags]) {
408
+ await this.handlerAsPrivate().setSenderForTags(AztecAddress.fromField(Fr.fromString(senderForTags)));
331
409
  return [];
332
410
  }
333
411
  }
@@ -1,13 +1,8 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
1
  import { type ACVMWitness, type CircuitSimulator } from '@aztec/simulator/client';
3
2
  import { type FunctionArtifact, type FunctionArtifactWithContractName, type FunctionSelector } from '@aztec/stdlib/abi';
4
3
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
5
- import type { ContractInstance } from '@aztec/stdlib/contract';
6
- import type { AztecNode } from '@aztec/stdlib/interfaces/client';
7
4
  import { PrivateCircuitPublicInputs } from '@aztec/stdlib/kernel';
8
- import { BlockHeader, PrivateCallExecutionResult } from '@aztec/stdlib/tx';
9
- import type { UInt64 } from '@aztec/stdlib/types';
10
- import type { ExecutionDataProvider } from '../execution_data_provider.js';
5
+ import { PrivateCallExecutionResult } from '@aztec/stdlib/tx';
11
6
  import type { PrivateExecutionOracle } from './private_execution_oracle.js';
12
7
  /**
13
8
  * Execute a private function and return the execution result.
@@ -25,24 +20,4 @@ export declare function executePrivateFunction(simulator: CircuitSimulator, priv
25
20
  * @returns - The public inputs.
26
21
  */
27
22
  export declare function extractPrivateCircuitPublicInputs(artifact: FunctionArtifact, partialWitness: ACVMWitness): PrivateCircuitPublicInputs;
28
- /**
29
- * Read the current class id of a contract from the execution data provider or AztecNode. If not found, class id
30
- * from the instance is used.
31
- * @param contractAddress - The address of the contract to read the class id for.
32
- * @param instance - The instance of the contract.
33
- * @param executionDataProvider - The execution data provider.
34
- * @param blockNumber - The block number at which to load the DelayedPublicMutable storing the class id.
35
- * @param timestamp - The timestamp at which to obtain the class id from the DelayedPublicMutable.
36
- * @returns The current class id.
37
- */
38
- export declare function readCurrentClassId(contractAddress: AztecAddress, instance: ContractInstance, executionDataProvider: ExecutionDataProvider | AztecNode, blockNumber: number, timestamp: UInt64): Promise<Fr>;
39
- /**
40
- * Verify that the current class id of a contract obtained from AztecNode is the same as the one in the execution data
41
- * provider (i.e. PXE).
42
- * @param contractAddress - The address of the contract to verify class id for.
43
- * @param executionDataProvider - The execution data provider.
44
- * @param header - The header of the block at which to verify the current class id. If not provided, the anchor block
45
- * header of the execution data provider is used.
46
- */
47
- export declare function verifyCurrentClassId(contractAddress: AztecAddress, executionDataProvider: ExecutionDataProvider, header?: BlockHeader): Promise<void>;
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9leGVjdXRpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdF9mdW5jdGlvbl9zaW11bGF0b3Ivb3JhY2xlL3ByaXZhdGVfZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUk5QyxPQUFPLEVBQ0wsS0FBSyxXQUFXLEVBQ2hCLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssZ0NBQWdDLEVBQ3JDLEtBQUssZ0JBQWdCLEVBRXRCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0UsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFbEQsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRSxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isc0JBQXNCLENBQzFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFDM0Isc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFFBQVEsRUFBRSxnQ0FBZ0MsRUFDMUMsZUFBZSxFQUFFLFlBQVksRUFDN0IsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLEdBQUcseUNBQThDLEdBQ2hELE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQTZFckM7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixpQ0FBaUMsQ0FDL0MsUUFBUSxFQUFFLGdCQUFnQixFQUMxQixjQUFjLEVBQUUsV0FBVyxHQUMxQiwwQkFBMEIsQ0FhNUI7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0Isa0JBQWtCLENBQ3RDLGVBQWUsRUFBRSxZQUFZLEVBQzdCLFFBQVEsRUFBRSxnQkFBZ0IsRUFDMUIscUJBQXFCLEVBQUUscUJBQXFCLEdBQUcsU0FBUyxFQUN4RCxXQUFXLEVBQUUsTUFBTSxFQUNuQixTQUFTLEVBQUUsTUFBTSxlQVdsQjtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isb0JBQW9CLENBQ3hDLGVBQWUsRUFBRSxZQUFZLEVBQzdCLHFCQUFxQixFQUFFLHFCQUFxQixFQUM1QyxNQUFNLENBQUMsRUFBRSxXQUFXLGlCQWlCckIifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9leGVjdXRpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdF9mdW5jdGlvbl9zaW11bGF0b3Ivb3JhY2xlL3ByaXZhdGVfZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFDTCxLQUFLLFdBQVcsRUFDaEIsS0FBSyxnQkFBZ0IsRUFLdEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQ0wsS0FBSyxnQkFBZ0IsRUFDckIsS0FBSyxnQ0FBZ0MsRUFDckMsS0FBSyxnQkFBZ0IsRUFFdEIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUc5RCxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isc0JBQXNCLENBQzFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFDM0Isc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFFBQVEsRUFBRSxnQ0FBZ0MsRUFDMUMsZUFBZSxFQUFFLFlBQVksRUFDN0IsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLEdBQUcseUNBQThDLEdBQ2hELE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQTJFckM7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixpQ0FBaUMsQ0FDL0MsUUFBUSxFQUFFLGdCQUFnQixFQUMxQixjQUFjLEVBQUUsV0FBVyxHQUMxQiwwQkFBMEIsQ0FhNUIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"private_execution.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/private_execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EAKtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,sBAAsB,EAAE,sBAAsB,EAC9C,QAAQ,EAAE,gCAAgC,EAC1C,eAAe,EAAE,YAAY,EAC7B,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,yCAA8C,GAChD,OAAO,CAAC,0BAA0B,CAAC,CA6ErC;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,WAAW,GAC1B,0BAA0B,CAa5B;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,eAAe,EAAE,YAAY,EAC7B,QAAQ,EAAE,gBAAgB,EAC1B,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,EACxD,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,eAWlB;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,eAAe,EAAE,YAAY,EAC7B,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,CAAC,EAAE,WAAW,iBAiBrB"}
1
+ {"version":3,"file":"private_execution.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/private_execution.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EAKtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAG9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,sBAAsB,EAAE,sBAAsB,EAC9C,QAAQ,EAAE,gCAAgC,EAC1C,eAAe,EAAE,YAAY,EAC7B,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,yCAA8C,GAChD,OAAO,CAAC,0BAA0B,CAAC,CA2ErC;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,WAAW,GAC1B,0BAA0B,CAa5B"}
@@ -1,11 +1,9 @@
1
1
  import { PRIVATE_CIRCUIT_PUBLIC_INPUTS_LENGTH, PRIVATE_CONTEXT_INPUTS_LENGTH } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { createLogger } from '@aztec/foundation/log';
4
4
  import { Timer } from '@aztec/foundation/timer';
5
- import { ProtocolContractAddress } from '@aztec/protocol-contracts';
6
5
  import { ExecutionError, extractCallStack, resolveAssertionMessageFromError, witnessMapToFields } from '@aztec/simulator/client';
7
6
  import { countArgumentsSize } from '@aztec/stdlib/abi';
8
- import { DelayedPublicMutableValues, DelayedPublicMutableValuesWithHash } from '@aztec/stdlib/delayed-public-mutable';
9
7
  import { PrivateCircuitPublicInputs } from '@aztec/stdlib/kernel';
10
8
  import { PrivateCallExecutionResult } from '@aztec/stdlib/tx';
11
9
  import { Oracle } from './oracle.js';
@@ -47,8 +45,7 @@ import { Oracle } from './oracle.js';
47
45
  appCircuitName: functionName
48
46
  });
49
47
  const contractClassLogs = privateExecutionOracle.getContractClassLogs();
50
- const rawReturnValues = await privateExecutionOracle.privateLoadFromExecutionCache(publicInputs.returnsHash);
51
- const noteHashLeafIndexMap = privateExecutionOracle.getNoteHashLeafIndexMap();
48
+ const rawReturnValues = await privateExecutionOracle.loadFromExecutionCache(publicInputs.returnsHash);
52
49
  const newNotes = privateExecutionOracle.getNewNotes();
53
50
  const noteHashNullifierCounterMap = privateExecutionOracle.getNoteHashNullifierCounterMap();
54
51
  const offchainEffects = privateExecutionOracle.getOffchainEffects();
@@ -62,7 +59,7 @@ import { Oracle } from './oracle.js';
62
59
  timerSubtractionList = timerSubtractionList.flatMap((nested)=>nested.nestedExecutionResults ?? []);
63
60
  }
64
61
  log.debug(`Returning from call to ${contractAddress.toString()}:${functionSelector}`);
65
- return new PrivateCallExecutionResult(artifact.bytecode, Buffer.from(artifact.verificationKey, 'base64'), partialWitness, publicInputs, noteHashLeafIndexMap, newNotes, noteHashNullifierCounterMap, rawReturnValues, offchainEffects, preTags, nestedExecutionResults, contractClassLogs, {
62
+ return new PrivateCallExecutionResult(artifact.bytecode, Buffer.from(artifact.verificationKey, 'base64'), partialWitness, publicInputs, newNotes, noteHashNullifierCounterMap, rawReturnValues, offchainEffects, preTags, nestedExecutionResults, contractClassLogs, {
66
63
  timings: {
67
64
  witgen: witgenTime,
68
65
  oracles: acirExecutionResult.oracles
@@ -88,36 +85,3 @@ import { Oracle } from './oracle.js';
88
85
  }
89
86
  return PrivateCircuitPublicInputs.fromFields(returnData);
90
87
  }
91
- /**
92
- * Read the current class id of a contract from the execution data provider or AztecNode. If not found, class id
93
- * from the instance is used.
94
- * @param contractAddress - The address of the contract to read the class id for.
95
- * @param instance - The instance of the contract.
96
- * @param executionDataProvider - The execution data provider.
97
- * @param blockNumber - The block number at which to load the DelayedPublicMutable storing the class id.
98
- * @param timestamp - The timestamp at which to obtain the class id from the DelayedPublicMutable.
99
- * @returns The current class id.
100
- */ export async function readCurrentClassId(contractAddress, instance, executionDataProvider, blockNumber, timestamp) {
101
- const { delayedPublicMutableSlot } = await DelayedPublicMutableValuesWithHash.getContractUpdateSlots(contractAddress);
102
- const delayedPublicMutableValues = await DelayedPublicMutableValues.readFromTree(delayedPublicMutableSlot, (slot)=>executionDataProvider.getPublicStorageAt(blockNumber, ProtocolContractAddress.ContractInstanceRegistry, slot));
103
- let currentClassId = delayedPublicMutableValues.svc.getCurrentAt(timestamp)[0];
104
- if (currentClassId.isZero()) {
105
- currentClassId = instance.originalContractClassId;
106
- }
107
- return currentClassId;
108
- }
109
- /**
110
- * Verify that the current class id of a contract obtained from AztecNode is the same as the one in the execution data
111
- * provider (i.e. PXE).
112
- * @param contractAddress - The address of the contract to verify class id for.
113
- * @param executionDataProvider - The execution data provider.
114
- * @param header - The header of the block at which to verify the current class id. If not provided, the anchor block
115
- * header of the execution data provider is used.
116
- */ export async function verifyCurrentClassId(contractAddress, executionDataProvider, header) {
117
- header = header ?? await executionDataProvider.getAnchorBlockHeader();
118
- const instance = await executionDataProvider.getContractInstance(contractAddress);
119
- const currentClassId = await readCurrentClassId(contractAddress, instance, executionDataProvider, header.globalVariables.blockNumber, header.globalVariables.timestamp);
120
- if (!instance.currentContractClassId.equals(currentClassId)) {
121
- throw new Error(`Contract ${contractAddress} is outdated, current class id is ${currentClassId}, local class id is ${instance.currentContractClassId}`);
122
- }
123
- }