@aztec/pxe 0.0.1-commit.7b97ef96e → 0.0.1-commit.7cbc774

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 (316) hide show
  1. package/dest/bin/check_oracle_version.d.ts +12 -2
  2. package/dest/bin/check_oracle_version.d.ts.map +1 -1
  3. package/dest/bin/check_oracle_version.js +31 -25
  4. package/dest/bin/index.d.ts +2 -0
  5. package/dest/bin/index.d.ts.map +1 -0
  6. package/dest/bin/index.js +1 -0
  7. package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
  8. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
  9. package/dest/block_synchronizer/block_stream_source.js +62 -0
  10. package/dest/block_synchronizer/block_synchronizer.d.ts +6 -2
  11. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  12. package/dest/block_synchronizer/block_synchronizer.js +30 -10
  13. package/dest/config/index.d.ts +8 -2
  14. package/dest/config/index.d.ts.map +1 -1
  15. package/dest/config/index.js +13 -15
  16. package/dest/config/package_info.js +1 -1
  17. package/dest/contract_function_simulator/contract_function_simulator.d.ts +16 -5
  18. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  19. package/dest/contract_function_simulator/contract_function_simulator.js +58 -23
  20. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  21. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  22. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  23. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -11
  24. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  25. package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -15
  26. package/dest/contract_function_simulator/index.d.ts +4 -1
  27. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  28. package/dest/contract_function_simulator/index.js +3 -0
  29. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +48 -0
  30. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
  31. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +45 -0
  32. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +4 -6
  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 +8 -9
  35. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +13 -3
  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 +35 -4
  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 +2 -4
  41. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +4 -7
  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 +6 -10
  44. package/dest/contract_function_simulator/noir-structs/option.d.ts +61 -0
  45. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
  46. package/dest/contract_function_simulator/noir-structs/option.js +62 -0
  47. package/dest/contract_function_simulator/oracle/interfaces.d.ts +67 -51
  48. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  49. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +2 -2
  50. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  51. package/dest/contract_function_simulator/oracle/note_packing_utils.js +2 -2
  52. package/dest/contract_function_simulator/oracle/oracle.d.ts +74 -45
  53. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  54. package/dest/contract_function_simulator/oracle/oracle.js +471 -287
  55. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +147 -0
  56. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
  57. package/dest/contract_function_simulator/oracle/oracle_registry.js +1199 -0
  58. package/dest/contract_function_simulator/oracle/private_execution.js +5 -3
  59. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +44 -70
  60. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  61. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +96 -99
  62. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +112 -67
  63. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  64. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +395 -141
  65. package/dest/contract_function_simulator/pick_notes.d.ts +1 -1
  66. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  67. package/dest/contract_function_simulator/pick_notes.js +20 -3
  68. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +1 -1
  69. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
  70. package/dest/contract_function_simulator/proxied_contract_data_source.js +35 -64
  71. package/dest/contract_logging.d.ts +9 -4
  72. package/dest/contract_logging.d.ts.map +1 -1
  73. package/dest/contract_logging.js +21 -6
  74. package/dest/contract_sync/contract_sync_service.d.ts +7 -8
  75. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -1
  76. package/dest/contract_sync/contract_sync_service.js +87 -49
  77. package/dest/contract_sync/helpers.d.ts +2 -4
  78. package/dest/contract_sync/helpers.d.ts.map +1 -1
  79. package/dest/contract_sync/helpers.js +12 -14
  80. package/dest/debug/pxe_debug_utils.d.ts +3 -8
  81. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  82. package/dest/debug/pxe_debug_utils.js +0 -6
  83. package/dest/entrypoints/client/bundle/index.d.ts +1 -2
  84. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  85. package/dest/entrypoints/client/bundle/index.js +0 -1
  86. package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
  87. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  88. package/dest/entrypoints/client/bundle/utils.js +13 -5
  89. package/dest/entrypoints/client/lazy/index.d.ts +1 -2
  90. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  91. package/dest/entrypoints/client/lazy/index.js +0 -1
  92. package/dest/entrypoints/client/lazy/utils.d.ts +2 -2
  93. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  94. package/dest/entrypoints/client/lazy/utils.js +13 -5
  95. package/dest/entrypoints/pxe_creation_options.d.ts +9 -1
  96. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  97. package/dest/entrypoints/pxe_creation_options.js +3 -1
  98. package/dest/entrypoints/server/index.d.ts +3 -3
  99. package/dest/entrypoints/server/index.d.ts.map +1 -1
  100. package/dest/entrypoints/server/index.js +2 -2
  101. package/dest/entrypoints/server/utils.d.ts +4 -3
  102. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  103. package/dest/entrypoints/server/utils.js +13 -5
  104. package/dest/events/event_service.d.ts +15 -6
  105. package/dest/events/event_service.d.ts.map +1 -1
  106. package/dest/events/event_service.js +44 -11
  107. package/dest/events/private_event_filter_validator.d.ts +3 -2
  108. package/dest/events/private_event_filter_validator.d.ts.map +1 -1
  109. package/dest/events/private_event_filter_validator.js +15 -0
  110. package/dest/hooks/authorize_utility_call.d.ts +41 -0
  111. package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
  112. package/dest/hooks/authorize_utility_call.js +4 -0
  113. package/dest/hooks/execution_hooks.d.ts +42 -0
  114. package/dest/hooks/execution_hooks.d.ts.map +1 -0
  115. package/dest/hooks/execution_hooks.js +9 -0
  116. package/dest/hooks/index.d.ts +4 -0
  117. package/dest/hooks/index.d.ts.map +1 -0
  118. package/dest/hooks/index.js +1 -0
  119. package/dest/logs/log_service.d.ts +9 -9
  120. package/dest/logs/log_service.d.ts.map +1 -1
  121. package/dest/logs/log_service.js +122 -72
  122. package/dest/messages/message_context_service.d.ts +17 -0
  123. package/dest/messages/message_context_service.d.ts.map +1 -0
  124. package/dest/messages/message_context_service.js +38 -0
  125. package/dest/notes/note_service.d.ts +27 -6
  126. package/dest/notes/note_service.d.ts.map +1 -1
  127. package/dest/notes/note_service.js +80 -56
  128. package/dest/notes_filter.d.ts +2 -3
  129. package/dest/notes_filter.d.ts.map +1 -1
  130. package/dest/oracle_version.d.ts +4 -3
  131. package/dest/oracle_version.d.ts.map +1 -1
  132. package/dest/oracle_version.js +20 -10
  133. package/dest/private_kernel/batch_planner.d.ts +47 -0
  134. package/dest/private_kernel/batch_planner.d.ts.map +1 -0
  135. package/dest/private_kernel/batch_planner.js +104 -0
  136. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
  137. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  138. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +126 -65
  139. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  140. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  141. package/dest/private_kernel/hints/test_utils.js +202 -0
  142. package/dest/private_kernel/private_kernel_execution_prover.d.ts +6 -2
  143. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  144. package/dest/private_kernel/private_kernel_execution_prover.js +165 -64
  145. package/dest/private_kernel/private_kernel_oracle.d.ts +10 -10
  146. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  147. package/dest/private_kernel/private_kernel_oracle.js +24 -22
  148. package/dest/pxe.d.ts +61 -11
  149. package/dest/pxe.d.ts.map +1 -1
  150. package/dest/pxe.js +162 -97
  151. package/dest/storage/anchor_block_store/anchor_block_store.js +1 -1
  152. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
  153. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
  154. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
  155. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
  156. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
  157. package/dest/storage/backwards_compatibility_tests/schema_tests.js +591 -0
  158. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
  159. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
  160. package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
  161. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  162. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  163. package/dest/storage/capsule_store/capsule_service.js +50 -0
  164. package/dest/storage/capsule_store/capsule_store.d.ts +9 -9
  165. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -1
  166. package/dest/storage/capsule_store/capsule_store.js +36 -28
  167. package/dest/storage/capsule_store/index.d.ts +2 -1
  168. package/dest/storage/capsule_store/index.d.ts.map +1 -1
  169. package/dest/storage/capsule_store/index.js +1 -0
  170. package/dest/storage/contract_store/contract_store.d.ts +1 -1
  171. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  172. package/dest/storage/contract_store/contract_store.js +9 -26
  173. package/dest/storage/metadata.d.ts +1 -1
  174. package/dest/storage/metadata.js +1 -1
  175. package/dest/storage/note_store/note_store.d.ts +1 -1
  176. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  177. package/dest/storage/note_store/note_store.js +2 -2
  178. package/dest/storage/open_pxe_stores.d.ts +33 -0
  179. package/dest/storage/open_pxe_stores.d.ts.map +1 -0
  180. package/dest/storage/open_pxe_stores.js +27 -0
  181. package/dest/storage/private_event_store/private_event_store.d.ts +1 -1
  182. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
  183. package/dest/storage/private_event_store/private_event_store.js +3 -0
  184. package/dest/storage/private_event_store/stored_private_event.js +1 -1
  185. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  186. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  187. package/dest/storage/tagging_store/sender_tagging_store.d.ts +29 -28
  188. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  189. package/dest/storage/tagging_store/sender_tagging_store.js +141 -115
  190. package/dest/tagging/get_all_logs_by_tags.d.ts +34 -10
  191. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  192. package/dest/tagging/get_all_logs_by_tags.js +36 -37
  193. package/dest/tagging/index.d.ts +6 -5
  194. package/dest/tagging/index.d.ts.map +1 -1
  195. package/dest/tagging/index.js +4 -3
  196. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
  197. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
  198. package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
  199. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +56 -0
  200. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
  201. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +163 -0
  202. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +3 -3
  203. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -1
  204. package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
  205. package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
  206. package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
  207. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +4 -9
  208. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  209. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +30 -14
  210. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +13 -7
  211. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -1
  212. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +41 -10
  213. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +5 -7
  214. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  215. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +37 -25
  216. package/package.json +20 -17
  217. package/src/bin/check_oracle_version.ts +41 -31
  218. package/src/bin/index.ts +1 -0
  219. package/src/block_synchronizer/block_stream_source.ts +81 -0
  220. package/src/block_synchronizer/block_synchronizer.ts +33 -11
  221. package/src/config/index.ts +15 -9
  222. package/src/config/package_info.ts +1 -1
  223. package/src/contract_function_simulator/contract_function_simulator.ts +94 -35
  224. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  225. package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
  226. package/src/contract_function_simulator/index.ts +3 -0
  227. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +55 -0
  228. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +10 -9
  229. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +36 -3
  230. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +2 -5
  231. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +5 -10
  232. package/src/contract_function_simulator/noir-structs/option.ts +69 -0
  233. package/src/contract_function_simulator/oracle/interfaces.ts +85 -72
  234. package/src/contract_function_simulator/oracle/note_packing_utils.ts +3 -3
  235. package/src/contract_function_simulator/oracle/oracle.ts +558 -484
  236. package/src/contract_function_simulator/oracle/oracle_registry.ts +904 -0
  237. package/src/contract_function_simulator/oracle/private_execution.ts +4 -4
  238. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +120 -130
  239. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +543 -221
  240. package/src/contract_function_simulator/pick_notes.ts +22 -3
  241. package/src/contract_function_simulator/proxied_contract_data_source.ts +41 -64
  242. package/src/contract_logging.ts +18 -5
  243. package/src/contract_sync/contract_sync_service.ts +120 -83
  244. package/src/contract_sync/helpers.ts +13 -25
  245. package/src/debug/pxe_debug_utils.ts +3 -11
  246. package/src/entrypoints/client/bundle/index.ts +0 -1
  247. package/src/entrypoints/client/bundle/utils.ts +10 -5
  248. package/src/entrypoints/client/lazy/index.ts +0 -1
  249. package/src/entrypoints/client/lazy/utils.ts +10 -5
  250. package/src/entrypoints/pxe_creation_options.ts +14 -0
  251. package/src/entrypoints/server/index.ts +2 -2
  252. package/src/entrypoints/server/utils.ts +15 -6
  253. package/src/events/event_service.ts +69 -21
  254. package/src/events/private_event_filter_validator.ts +21 -1
  255. package/src/hooks/authorize_utility_call.ts +44 -0
  256. package/src/hooks/execution_hooks.ts +48 -0
  257. package/src/hooks/index.ts +7 -0
  258. package/src/logs/log_service.ts +153 -129
  259. package/src/messages/message_context_service.ts +45 -0
  260. package/src/notes/note_service.ts +119 -85
  261. package/src/notes_filter.ts +1 -3
  262. package/src/oracle_version.ts +20 -10
  263. package/src/private_kernel/batch_planner.ts +169 -0
  264. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +158 -111
  265. package/src/private_kernel/hints/test_utils.ts +318 -0
  266. package/src/private_kernel/private_kernel_execution_prover.ts +253 -88
  267. package/src/private_kernel/private_kernel_oracle.ts +35 -25
  268. package/src/pxe.ts +270 -102
  269. package/src/storage/anchor_block_store/anchor_block_store.ts +1 -1
  270. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
  271. package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
  272. package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
  273. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
  274. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
  275. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +46 -0
  276. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +36 -0
  277. package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
  278. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +18 -0
  279. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderAddressBookStore.json +16 -0
  280. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +22 -0
  281. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +97 -0
  282. package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
  283. package/src/storage/backwards_compatibility_tests/schema_tests.ts +712 -0
  284. package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
  285. package/src/storage/capsule_store/capsule_service.ts +90 -0
  286. package/src/storage/capsule_store/capsule_store.ts +44 -26
  287. package/src/storage/capsule_store/index.ts +1 -0
  288. package/src/storage/contract_store/contract_store.ts +14 -35
  289. package/src/storage/metadata.ts +1 -1
  290. package/src/storage/note_store/note_store.ts +2 -5
  291. package/src/storage/open_pxe_stores.ts +49 -0
  292. package/src/storage/private_event_store/private_event_store.ts +4 -0
  293. package/src/storage/private_event_store/stored_private_event.ts +1 -1
  294. package/src/storage/tagging_store/recipient_tagging_store.ts +5 -5
  295. package/src/storage/tagging_store/sender_tagging_store.ts +185 -138
  296. package/src/tagging/get_all_logs_by_tags.ts +78 -50
  297. package/src/tagging/index.ts +5 -4
  298. package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
  299. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +240 -0
  300. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
  301. package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
  302. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +52 -17
  303. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +44 -14
  304. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +27 -27
  305. package/dest/access_scopes.d.ts +0 -9
  306. package/dest/access_scopes.d.ts.map +0 -1
  307. package/dest/access_scopes.js +0 -6
  308. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +0 -15
  309. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +0 -1
  310. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +0 -99
  311. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +0 -15
  312. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +0 -1
  313. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +0 -32
  314. package/src/access_scopes.ts +0 -9
  315. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +0 -143
  316. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +0 -49
@@ -2,8 +2,6 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
3
3
  import type { NoteStatus } from '@aztec/stdlib/note';
4
4
 
5
- import type { AccessScopes } from './access_scopes.js';
6
-
7
5
  /**
8
6
  * A filter used to fetch notes.
9
7
  * @remarks This filter is applied as an intersection of all its params.
@@ -22,5 +20,5 @@ export type NotesFilter = {
22
20
  status?: NoteStatus;
23
21
  /** The siloed nullifier for the note. */
24
22
  siloedNullifier?: Fr;
25
- scopes: AccessScopes;
23
+ scopes: AztecAddress[];
26
24
  };
@@ -1,12 +1,22 @@
1
- /// The ORACLE_VERSION constant is used to check that the oracle interface is in sync between PXE and Aztec.nr. We need
2
- /// to version the oracle interface to ensure that developers get a reasonable error message if they use incompatible
3
- /// versions of Aztec.nr and PXE. The Noir counterpart is in `noir-projects/aztec-nr/aztec/src/oracle/version.nr`.
1
+ /// The oracle version constants are used to check that the oracle interface is in sync between PXE and Aztec.nr.
2
+ /// We version the oracle interface as `major.minor` where:
3
+ /// - `major` = backward-breaking changes (must match exactly between PXE and Aztec.nr)
4
+ /// - `minor` = oracle additions (non-breaking; PXE minor >= contract minor)
4
5
  ///
5
- /// @dev Whenever a contract function or Noir test is run, the `utilityAssertCompatibleOracleVersion` oracle is called
6
- /// and if the oracle version is incompatible an error is thrown.
7
- export const ORACLE_VERSION = 12;
6
+ /// The Noir counterparts are in `noir-projects/aztec-nr/aztec/src/oracle/version.nr`.
7
+ ///
8
+ /// @dev Whenever a contract function or Noir test is run, the `aztec_utl_assertCompatibleOracleVersion` oracle is called.
9
+ /// If the major version is incompatible, an error is thrown immediately. The minor version is recorded by the PXE and
10
+ /// used to provide helpful error messages if a contract calls an oracle that doesn't exist. We don't throw immediately
11
+ /// if AZTEC_NR_MINOR > PXE_MINOR because if a contract is updated to use a newer Aztec.nr dependency without actually
12
+ /// using any of the new oracles then there is no reason to throw.
13
+ export const ORACLE_VERSION_MAJOR = 27;
14
+ export const ORACLE_VERSION_MINOR = 0;
8
15
 
9
- /// This hash is computed as by hashing the Oracle interface and it is used to detect when the Oracle interface changes,
10
- /// which in turn implies that you need to update the ORACLE_VERSION constant in this file and in
11
- /// `noir-projects/aztec-nr/aztec/src/oracle/version.nr`.
12
- export const ORACLE_INTERFACE_HASH = '666a8a7fc697f72b29dbf0ae7464db269cf5afa019acac8861f814543147dbb4';
16
+ /// This hash is computed from the Oracle interface and is used to detect when that interface changes. When it does,
17
+ /// you need to either:
18
+ /// - increment `ORACLE_VERSION_MAJOR` and reset `ORACLE_VERSION_MINOR` to zero if the change is breaking, or
19
+ /// - increment only `ORACLE_VERSION_MINOR` if the change is additive (a new oracle was added).
20
+ ///
21
+ /// These constants must be kept in sync between this file and `noir-projects/aztec-nr/aztec/src/oracle/version.nr`.
22
+ export const ORACLE_INTERFACE_HASH = '43383f5a2cf9b39908e86a3d733862b08d307c08fa58db681f8b08804042e550';
@@ -0,0 +1,169 @@
1
+ import type { Serializable, Tuple } from '@aztec/foundation/serialize';
2
+ import {
3
+ ClaimedLengthArray,
4
+ PrivateAccumulatedData,
5
+ PrivateKernelCircuitPublicInputs,
6
+ PrivateValidationRequests,
7
+ ScopedKeyValidationRequestAndSeparator,
8
+ ScopedPrivateLogData,
9
+ } from '@aztec/stdlib/kernel';
10
+ import type { PrivateCallExecutionResult } from '@aztec/stdlib/tx';
11
+ import { VerificationKeyData } from '@aztec/stdlib/vks';
12
+
13
+ import { PrivateKernelResetPrivateInputsBuilder } from './hints/private_kernel_reset_private_inputs_builder.js';
14
+
15
+ /**
16
+ * Decides how many apps from the top of the execution stack the next kernel iteration should
17
+ * absorb. The decision is made by keeping track of an app-by-app accumulator calling
18
+ * `PrivateKernelResetPrivateInputsBuilder.needsReset()` whether a reset would be required before
19
+ * taking each candidate.
20
+ *
21
+ * The K-batched kernels are mathematically equivalent to running K sequential `init`/`inner`
22
+ * iterations so a multi-app fit-check reduces to a sequence of single-app fit-checks against a rolling
23
+ * accumulator.
24
+ */
25
+ export class BatchPlanner {
26
+ constructor(
27
+ private noteHashNullifierCounterMap: Map<number, number>,
28
+ private splitCounter: number,
29
+ private maxBatchSize: number,
30
+ ) {}
31
+
32
+ /**
33
+ * Returns the number of apps from the top of `stack` that the next kernel iteration should
34
+ * batch. Always at least 1 — the caller is expected to have run any pending resets first, so
35
+ * the next single app must always fit.
36
+ *
37
+ * The walk mirrors `consumeNextApp`'s stack manipulation (pop top, push reversed nested
38
+ * children, then DFS into them) on a copy of the stack, so the planner can look ahead past
39
+ * the parent's children without mutating the real prover stack.
40
+ */
41
+ decideBatchSize(currentAccumulator: PrivateKernelCircuitPublicInputs, stack: PrivateCallExecutionResult[]): number {
42
+ const virtualStack = [...stack];
43
+ let projected = currentAccumulator;
44
+ let chosen = 0;
45
+ for (let i = 0; i < this.maxBatchSize && virtualStack.length > 0; i++) {
46
+ const probe = new PrivateKernelResetPrivateInputsBuilder(
47
+ {
48
+ publicInputs: projected,
49
+ verificationKey: VerificationKeyData.empty(),
50
+ outputWitness: new Map(),
51
+ bytecode: Buffer.from([]),
52
+ },
53
+ virtualStack,
54
+ this.noteHashNullifierCounterMap,
55
+ this.splitCounter,
56
+ );
57
+ if (probe.needsReset()) {
58
+ break;
59
+ }
60
+ // Speculatively consume the top of the virtual stack the same way `consumeNextApp` does
61
+ // on the real stack: pop the candidate, push its reversed nested children so the next
62
+ // iteration's top is the next DFS app.
63
+ const candidate = virtualStack.pop()!;
64
+ virtualStack.push(...[...candidate.nestedExecutionResults].reverse());
65
+ projected = appendApp(projected, candidate);
66
+ chosen++;
67
+ }
68
+ return Math.max(1, chosen);
69
+ }
70
+ }
71
+
72
+ /**
73
+ * Returns a new `PrivateKernelCircuitPublicInputs` representing the accumulator after one kernel
74
+ * iteration has absorbed `app`. Mirrors the kernel composer's accumulator-update step
75
+ * (`PrivateKernelCircuitOutputComposer::scope_and_propagate_from_private_call`) for the six
76
+ * fields that `PrivateKernelResetPrivateInputsBuilder.needsReset()` inspects:
77
+ *
78
+ * - `validationRequests.noteHashReadRequests` (already scoped per app; appended as-is)
79
+ * - `validationRequests.nullifierReadRequests` (already scoped per app; appended as-is)
80
+ * - `validationRequests.scopedKeyValidationRequestsAndSeparators` (scope with call's contract address)
81
+ * - `end.noteHashes` (scope)
82
+ * - `end.nullifiers` (scope)
83
+ * - `end.privateLogs` (scope)
84
+ *
85
+ * Other fields on `PrivateKernelCircuitPublicInputs` (constants, fee_payer, expiration_timestamp,
86
+ * public_call_requests, l2_to_l1_msgs, contract_class_logs_hashes, etc.) are not read by
87
+ * `needsReset()` and are carried over unchanged from `acc`.
88
+ */
89
+ export function appendApp(
90
+ acc: PrivateKernelCircuitPublicInputs,
91
+ app: PrivateCallExecutionResult,
92
+ ): PrivateKernelCircuitPublicInputs {
93
+ const ca = app.publicInputs.callContext.contractAddress;
94
+ const appPi = app.publicInputs;
95
+
96
+ const newNoteHashReadRequests = cloneClaimedLengthArray(acc.validationRequests.noteHashReadRequests);
97
+ pushAll(newNoteHashReadRequests, appPi.noteHashReadRequests.getActiveItems());
98
+
99
+ const newNullifierReadRequests = cloneClaimedLengthArray(acc.validationRequests.nullifierReadRequests);
100
+ pushAll(newNullifierReadRequests, appPi.nullifierReadRequests.getActiveItems());
101
+
102
+ const newScopedKvrs = cloneClaimedLengthArray(acc.validationRequests.scopedKeyValidationRequestsAndSeparators);
103
+ pushAll(
104
+ newScopedKvrs,
105
+ appPi.keyValidationRequestsAndSeparators
106
+ .getActiveItems()
107
+ .map(kvr => new ScopedKeyValidationRequestAndSeparator(kvr, ca)),
108
+ );
109
+
110
+ const newNoteHashes = cloneClaimedLengthArray(acc.end.noteHashes);
111
+ pushAll(
112
+ newNoteHashes,
113
+ appPi.noteHashes.getActiveItems().map(nh => nh.scope(ca)),
114
+ );
115
+
116
+ const newNullifiers = cloneClaimedLengthArray(acc.end.nullifiers);
117
+ pushAll(
118
+ newNullifiers,
119
+ appPi.nullifiers.getActiveItems().map(n => n.scope(ca)),
120
+ );
121
+
122
+ const newPrivateLogs = cloneClaimedLengthArray(acc.end.privateLogs);
123
+ pushAll(
124
+ newPrivateLogs,
125
+ appPi.privateLogs.getActiveItems().map(pl => new ScopedPrivateLogData(pl, ca)),
126
+ );
127
+
128
+ const validationRequests = new PrivateValidationRequests(
129
+ newNoteHashReadRequests,
130
+ newNullifierReadRequests,
131
+ newScopedKvrs,
132
+ );
133
+
134
+ const end = new PrivateAccumulatedData(
135
+ newNoteHashes,
136
+ newNullifiers,
137
+ acc.end.l2ToL1Msgs,
138
+ newPrivateLogs,
139
+ acc.end.contractClassLogsHashes,
140
+ acc.end.publicCallRequests,
141
+ acc.end.privateCallStack,
142
+ );
143
+
144
+ return new PrivateKernelCircuitPublicInputs(
145
+ acc.constants,
146
+ acc.minRevertibleSideEffectCounter,
147
+ validationRequests,
148
+ end,
149
+ acc.publicTeardownCallRequest,
150
+ acc.feePayer,
151
+ acc.expirationTimestamp,
152
+ acc.isPrivateOnly,
153
+ acc.claimedFirstNullifier,
154
+ acc.claimedRevertibleCounter,
155
+ );
156
+ }
157
+
158
+ function cloneClaimedLengthArray<T extends Serializable, N extends number>(
159
+ src: ClaimedLengthArray<T, N>,
160
+ ): ClaimedLengthArray<T, N> {
161
+ return new ClaimedLengthArray([...src.array] as Tuple<T, N>, src.claimedLength);
162
+ }
163
+
164
+ function pushAll<T extends Serializable, N extends number>(arr: ClaimedLengthArray<T, N>, items: T[]) {
165
+ for (const item of items) {
166
+ arr.array[arr.claimedLength] = item;
167
+ arr.claimedLength++;
168
+ }
169
+ }