@aztec/pxe 0.0.0-test.0 → 0.0.1-commit.03f7ef2

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 (402) hide show
  1. package/README.md +5 -5
  2. package/dest/bin/check_oracle_version.d.ts +2 -0
  3. package/dest/bin/check_oracle_version.d.ts.map +1 -0
  4. package/dest/bin/check_oracle_version.js +129 -0
  5. package/dest/block_synchronizer/block_synchronizer.d.ts +39 -0
  6. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
  7. package/dest/{synchronizer/synchronizer.js → block_synchronizer/block_synchronizer.js} +36 -32
  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 +11 -24
  12. package/dest/config/index.d.ts.map +1 -1
  13. package/dest/config/index.js +18 -33
  14. package/dest/config/package_info.d.ts +1 -1
  15. package/dest/config/package_info.js +1 -1
  16. package/dest/contract_function_simulator/contract_function_simulator.d.ts +83 -0
  17. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -0
  18. package/dest/contract_function_simulator/contract_function_simulator.js +325 -0
  19. package/dest/contract_function_simulator/execution_note_cache.d.ts +95 -0
  20. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -0
  21. package/dest/contract_function_simulator/execution_note_cache.js +191 -0
  22. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +16 -0
  23. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -0
  24. package/dest/contract_function_simulator/execution_tagging_index_cache.js +26 -0
  25. package/dest/contract_function_simulator/hashed_values_cache.d.ts +28 -0
  26. package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -0
  27. package/dest/contract_function_simulator/hashed_values_cache.js +36 -0
  28. package/dest/contract_function_simulator/index.d.ts +14 -0
  29. package/dest/contract_function_simulator/index.d.ts.map +1 -0
  30. package/dest/contract_function_simulator/index.js +12 -0
  31. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +20 -0
  32. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -0
  33. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +37 -0
  34. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +16 -0
  35. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -0
  36. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +26 -0
  37. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +17 -0
  38. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -0
  39. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +65 -0
  40. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +24 -0
  41. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -0
  42. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +51 -0
  43. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +22 -0
  44. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -0
  45. package/dest/contract_function_simulator/noir-structs/utility_context.js +33 -0
  46. package/dest/contract_function_simulator/oracle/index.d.ts +14 -0
  47. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -0
  48. package/dest/contract_function_simulator/oracle/index.js +2 -0
  49. package/dest/contract_function_simulator/oracle/interfaces.d.ts +103 -0
  50. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -0
  51. package/dest/contract_function_simulator/oracle/interfaces.js +4 -0
  52. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +17 -0
  53. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -0
  54. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +24 -0
  55. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +28 -0
  56. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -0
  57. package/dest/contract_function_simulator/oracle/note_packing_utils.js +54 -0
  58. package/dest/contract_function_simulator/oracle/oracle.d.ts +58 -0
  59. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -0
  60. package/dest/contract_function_simulator/oracle/oracle.js +345 -0
  61. package/dest/contract_function_simulator/oracle/private_execution.d.ts +47 -0
  62. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -0
  63. package/dest/contract_function_simulator/oracle/private_execution.js +123 -0
  64. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +240 -0
  65. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -0
  66. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +439 -0
  67. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +195 -0
  68. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -0
  69. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +372 -0
  70. package/dest/contract_function_simulator/pick_notes.d.ts +85 -0
  71. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -0
  72. package/dest/contract_function_simulator/pick_notes.js +51 -0
  73. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +6 -0
  74. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -0
  75. package/dest/contract_function_simulator/proxied_contract_data_source.js +80 -0
  76. package/dest/contract_function_simulator/proxied_node.d.ts +9 -0
  77. package/dest/contract_function_simulator/proxied_node.d.ts.map +1 -0
  78. package/dest/contract_function_simulator/proxied_node.js +27 -0
  79. package/dest/debug/pxe_debug_utils.d.ts +31 -0
  80. package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
  81. package/dest/debug/pxe_debug_utils.js +37 -0
  82. package/dest/entrypoints/client/bundle/index.d.ts +4 -3
  83. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  84. package/dest/entrypoints/client/bundle/index.js +2 -2
  85. package/dest/entrypoints/client/bundle/utils.d.ts +10 -10
  86. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  87. package/dest/entrypoints/client/bundle/utils.js +18 -12
  88. package/dest/entrypoints/client/lazy/index.d.ts +4 -3
  89. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  90. package/dest/entrypoints/client/lazy/index.js +2 -2
  91. package/dest/entrypoints/client/lazy/utils.d.ts +9 -9
  92. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  93. package/dest/entrypoints/client/lazy/utils.js +17 -11
  94. package/dest/entrypoints/pxe_creation_options.d.ts +16 -0
  95. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -0
  96. package/dest/entrypoints/server/index.d.ts +6 -4
  97. package/dest/entrypoints/server/index.d.ts.map +1 -1
  98. package/dest/entrypoints/server/index.js +4 -3
  99. package/dest/entrypoints/server/utils.d.ts +8 -16
  100. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  101. package/dest/entrypoints/server/utils.js +31 -36
  102. package/dest/error_enriching.d.ts +11 -0
  103. package/dest/error_enriching.d.ts.map +1 -0
  104. package/dest/{pxe_service/error_enriching.js → error_enriching.js} +26 -18
  105. package/dest/events/event_service.d.ts +15 -0
  106. package/dest/events/event_service.d.ts.map +1 -0
  107. package/dest/events/event_service.js +47 -0
  108. package/dest/events/index.d.ts +2 -0
  109. package/dest/events/index.d.ts.map +1 -0
  110. package/dest/events/index.js +1 -0
  111. package/dest/events/private_event_filter_validator.d.ts +9 -0
  112. package/dest/events/private_event_filter_validator.d.ts.map +1 -0
  113. package/dest/events/private_event_filter_validator.js +39 -0
  114. package/dest/logs/log_service.d.ts +43 -0
  115. package/dest/logs/log_service.d.ts.map +1 -0
  116. package/dest/logs/log_service.js +239 -0
  117. package/dest/notes/index.d.ts +2 -0
  118. package/dest/notes/index.d.ts.map +1 -0
  119. package/dest/notes/index.js +1 -0
  120. package/dest/notes/note_service.d.ts +48 -0
  121. package/dest/notes/note_service.d.ts.map +1 -0
  122. package/dest/notes/note_service.js +152 -0
  123. package/dest/oracle_version.d.ts +3 -0
  124. package/dest/oracle_version.d.ts.map +1 -0
  125. package/dest/oracle_version.js +10 -0
  126. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts +28 -0
  127. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts.map +1 -0
  128. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.js +271 -0
  129. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +4 -0
  130. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +1 -0
  131. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.js +41 -0
  132. package/dest/private_kernel/hints/index.d.ts +3 -0
  133. package/dest/private_kernel/hints/index.d.ts.map +1 -0
  134. package/dest/{kernel_prover → private_kernel}/hints/index.js +1 -0
  135. package/dest/private_kernel/index.d.ts +3 -0
  136. package/dest/private_kernel/index.d.ts.map +1 -0
  137. package/dest/private_kernel/index.js +2 -0
  138. package/dest/private_kernel/private_kernel_execution_prover.d.ts +44 -0
  139. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -0
  140. package/dest/private_kernel/private_kernel_execution_prover.js +286 -0
  141. package/dest/private_kernel/private_kernel_oracle.d.ts +63 -0
  142. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -0
  143. package/dest/private_kernel/private_kernel_oracle.js +4 -0
  144. package/dest/private_kernel/private_kernel_oracle_impl.d.ts +46 -0
  145. package/dest/private_kernel/private_kernel_oracle_impl.d.ts.map +1 -0
  146. package/dest/{kernel_oracle/index.js → private_kernel/private_kernel_oracle_impl.js} +19 -9
  147. package/dest/public_storage/public_storage_service.d.ts +24 -0
  148. package/dest/public_storage/public_storage_service.d.ts.map +1 -0
  149. package/dest/public_storage/public_storage_service.js +26 -0
  150. package/dest/pxe.d.ts +231 -0
  151. package/dest/pxe.d.ts.map +1 -0
  152. package/dest/pxe.js +756 -0
  153. package/dest/storage/address_data_provider/address_data_provider.d.ts +2 -4
  154. package/dest/storage/address_data_provider/address_data_provider.d.ts.map +1 -1
  155. package/dest/storage/address_data_provider/address_data_provider.js +0 -3
  156. package/dest/storage/address_data_provider/index.d.ts +1 -1
  157. package/dest/storage/anchor_block_data_provider/anchor_block_data_provider.d.ts +9 -0
  158. package/dest/storage/anchor_block_data_provider/anchor_block_data_provider.d.ts.map +1 -0
  159. package/dest/storage/{sync_data_provider/sync_data_provider.js → anchor_block_data_provider/anchor_block_data_provider.js} +2 -12
  160. package/dest/storage/anchor_block_data_provider/index.d.ts +2 -0
  161. package/dest/storage/anchor_block_data_provider/index.d.ts.map +1 -0
  162. package/dest/storage/anchor_block_data_provider/index.js +1 -0
  163. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +48 -7
  164. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +1 -1
  165. package/dest/storage/capsule_data_provider/capsule_data_provider.js +117 -28
  166. package/dest/storage/capsule_data_provider/index.d.ts +1 -1
  167. package/dest/storage/contract_data_provider/contract_data_provider.d.ts +16 -59
  168. package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +1 -1
  169. package/dest/storage/contract_data_provider/contract_data_provider.js +121 -80
  170. package/dest/storage/contract_data_provider/index.d.ts +1 -2
  171. package/dest/storage/contract_data_provider/index.d.ts.map +1 -1
  172. package/dest/storage/contract_data_provider/index.js +0 -1
  173. package/dest/storage/contract_data_provider/private_functions_tree.d.ts +3 -42
  174. package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +1 -1
  175. package/dest/storage/contract_data_provider/private_functions_tree.js +10 -62
  176. package/dest/storage/index.d.ts +4 -5
  177. package/dest/storage/index.d.ts.map +1 -1
  178. package/dest/storage/index.js +3 -4
  179. package/dest/storage/metadata.d.ts +2 -0
  180. package/dest/storage/metadata.d.ts.map +1 -0
  181. package/dest/storage/metadata.js +1 -0
  182. package/dest/storage/note_data_provider/index.d.ts +2 -2
  183. package/dest/storage/note_data_provider/index.d.ts.map +1 -1
  184. package/dest/storage/note_data_provider/index.js +1 -1
  185. package/dest/storage/note_data_provider/note_data_provider.d.ts +75 -11
  186. package/dest/storage/note_data_provider/note_data_provider.d.ts.map +1 -1
  187. package/dest/storage/note_data_provider/note_data_provider.js +155 -82
  188. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts +51 -0
  189. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts.map +1 -0
  190. package/dest/storage/private_event_data_provider/private_event_data_provider.js +115 -0
  191. package/dest/storage/tagging_data_provider/index.d.ts +3 -2
  192. package/dest/storage/tagging_data_provider/index.d.ts.map +1 -1
  193. package/dest/storage/tagging_data_provider/index.js +2 -1
  194. package/dest/storage/tagging_data_provider/recipient_tagging_data_provider.d.ts +31 -0
  195. package/dest/storage/tagging_data_provider/recipient_tagging_data_provider.d.ts.map +1 -0
  196. package/dest/storage/tagging_data_provider/recipient_tagging_data_provider.js +65 -0
  197. package/dest/storage/tagging_data_provider/sender_tagging_data_provider.d.ts +67 -0
  198. package/dest/storage/tagging_data_provider/sender_tagging_data_provider.d.ts.map +1 -0
  199. package/dest/storage/tagging_data_provider/sender_tagging_data_provider.js +196 -0
  200. package/dest/tagging/constants.d.ts +2 -0
  201. package/dest/tagging/constants.d.ts.map +1 -0
  202. package/dest/tagging/constants.js +3 -0
  203. package/dest/tagging/index.d.ts +5 -0
  204. package/dest/tagging/index.d.ts.map +1 -0
  205. package/dest/tagging/index.js +3 -0
  206. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +14 -0
  207. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -0
  208. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +99 -0
  209. package/dest/tagging/recipient_sync/new_recipient_tagging_data_provider.d.ts +21 -0
  210. package/dest/tagging/recipient_sync/new_recipient_tagging_data_provider.d.ts.map +1 -0
  211. package/dest/tagging/recipient_sync/new_recipient_tagging_data_provider.js +42 -0
  212. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
  213. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
  214. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
  215. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +14 -0
  216. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -0
  217. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +29 -0
  218. package/dest/tagging/sync/sync_sender_tagging_indexes.d.ts +21 -0
  219. package/dest/tagging/sync/sync_sender_tagging_indexes.d.ts.map +1 -0
  220. package/dest/tagging/sync/sync_sender_tagging_indexes.js +89 -0
  221. package/dest/tagging/sync/utils/get_status_change_of_pending.d.ts +11 -0
  222. package/dest/tagging/sync/utils/get_status_change_of_pending.d.ts.map +1 -0
  223. package/dest/tagging/sync/utils/get_status_change_of_pending.js +32 -0
  224. package/dest/tagging/sync/utils/load_and_store_new_tagging_indexes.d.ts +18 -0
  225. package/dest/tagging/sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
  226. package/dest/tagging/sync/utils/load_and_store_new_tagging_indexes.js +55 -0
  227. package/dest/tagging/utils.d.ts +18 -0
  228. package/dest/tagging/utils.d.ts.map +1 -0
  229. package/dest/tagging/utils.js +25 -0
  230. package/dest/tree_membership/tree_membership_service.d.ts +52 -0
  231. package/dest/tree_membership/tree_membership_service.d.ts.map +1 -0
  232. package/dest/tree_membership/tree_membership_service.js +84 -0
  233. package/package.json +37 -34
  234. package/src/bin/check_oracle_version.ts +160 -0
  235. package/src/{synchronizer/synchronizer.ts → block_synchronizer/block_synchronizer.ts} +39 -35
  236. package/src/block_synchronizer/index.ts +1 -0
  237. package/src/config/index.ts +27 -55
  238. package/src/config/package_info.ts +1 -1
  239. package/src/contract_function_simulator/contract_function_simulator.ts +618 -0
  240. package/src/contract_function_simulator/execution_note_cache.ts +233 -0
  241. package/src/contract_function_simulator/execution_tagging_index_cache.ts +32 -0
  242. package/src/contract_function_simulator/hashed_values_cache.ts +47 -0
  243. package/src/contract_function_simulator/index.ts +13 -0
  244. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +47 -0
  245. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +28 -0
  246. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +69 -0
  247. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +64 -0
  248. package/src/contract_function_simulator/noir-structs/utility_context.ts +42 -0
  249. package/src/contract_function_simulator/oracle/index.ts +16 -0
  250. package/src/contract_function_simulator/oracle/interfaces.ts +175 -0
  251. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +23 -0
  252. package/src/contract_function_simulator/oracle/note_packing_utils.ts +68 -0
  253. package/src/contract_function_simulator/oracle/oracle.ts +605 -0
  254. package/src/contract_function_simulator/oracle/private_execution.ts +209 -0
  255. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +704 -0
  256. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +532 -0
  257. package/src/contract_function_simulator/pick_notes.ts +141 -0
  258. package/src/contract_function_simulator/proxied_contract_data_source.ts +83 -0
  259. package/src/contract_function_simulator/proxied_node.ts +33 -0
  260. package/src/debug/pxe_debug_utils.ts +48 -0
  261. package/src/entrypoints/client/bundle/index.ts +3 -2
  262. package/src/entrypoints/client/bundle/utils.ts +36 -36
  263. package/src/entrypoints/client/lazy/index.ts +3 -2
  264. package/src/entrypoints/client/lazy/utils.ts +36 -31
  265. package/src/entrypoints/pxe_creation_options.ts +12 -0
  266. package/src/entrypoints/server/index.ts +5 -3
  267. package/src/entrypoints/server/utils.ts +59 -51
  268. package/src/{pxe_service/error_enriching.ts → error_enriching.ts} +36 -27
  269. package/src/events/event_service.ts +77 -0
  270. package/src/events/index.ts +1 -0
  271. package/src/events/private_event_filter_validator.ts +48 -0
  272. package/src/logs/log_service.ts +364 -0
  273. package/src/notes/index.ts +1 -0
  274. package/src/notes/note_service.ts +200 -0
  275. package/src/oracle_version.ts +11 -0
  276. package/src/{kernel_prover → private_kernel}/hints/build_private_kernel_reset_private_inputs.ts +159 -147
  277. package/src/private_kernel/hints/compute_tx_include_by_timestamp.ts +58 -0
  278. package/src/{kernel_prover → private_kernel}/hints/index.ts +1 -0
  279. package/src/private_kernel/index.ts +2 -0
  280. package/src/private_kernel/private_kernel_execution_prover.ts +432 -0
  281. package/src/{kernel_prover/proving_data_oracle.ts → private_kernel/private_kernel_oracle.ts} +19 -30
  282. package/src/{kernel_oracle/index.ts → private_kernel/private_kernel_oracle_impl.ts} +33 -17
  283. package/src/public_storage/public_storage_service.ts +33 -0
  284. package/src/pxe.ts +1063 -0
  285. package/src/storage/address_data_provider/address_data_provider.ts +1 -7
  286. package/src/storage/{sync_data_provider/sync_data_provider.ts → anchor_block_data_provider/anchor_block_data_provider.ts} +2 -17
  287. package/src/storage/anchor_block_data_provider/index.ts +1 -0
  288. package/src/storage/capsule_data_provider/capsule_data_provider.ts +130 -31
  289. package/src/storage/contract_data_provider/contract_data_provider.ts +152 -94
  290. package/src/storage/contract_data_provider/index.ts +0 -1
  291. package/src/storage/contract_data_provider/private_functions_tree.ts +12 -76
  292. package/src/storage/index.ts +3 -5
  293. package/src/storage/metadata.ts +1 -0
  294. package/src/storage/note_data_provider/index.ts +1 -1
  295. package/src/storage/note_data_provider/note_data_provider.ts +188 -121
  296. package/src/storage/private_event_data_provider/private_event_data_provider.ts +162 -0
  297. package/src/storage/tagging_data_provider/index.ts +2 -1
  298. package/src/storage/tagging_data_provider/recipient_tagging_data_provider.ts +86 -0
  299. package/src/storage/tagging_data_provider/sender_tagging_data_provider.ts +244 -0
  300. package/src/tagging/constants.ts +3 -0
  301. package/src/tagging/index.ts +4 -0
  302. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +129 -0
  303. package/src/tagging/recipient_sync/new_recipient_tagging_data_provider.ts +53 -0
  304. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
  305. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +43 -0
  306. package/src/tagging/sync/sync_sender_tagging_indexes.ts +112 -0
  307. package/src/tagging/sync/utils/get_status_change_of_pending.ts +44 -0
  308. package/src/tagging/sync/utils/load_and_store_new_tagging_indexes.ts +72 -0
  309. package/src/tagging/utils.ts +32 -0
  310. package/src/tree_membership/tree_membership_service.ts +112 -0
  311. package/dest/bin/index.d.ts +0 -3
  312. package/dest/bin/index.d.ts.map +0 -1
  313. package/dest/bin/index.js +0 -28
  314. package/dest/entrypoints/client/pxe_creation_options.d.ts +0 -11
  315. package/dest/entrypoints/client/pxe_creation_options.d.ts.map +0 -1
  316. package/dest/kernel_oracle/index.d.ts +0 -45
  317. package/dest/kernel_oracle/index.d.ts.map +0 -1
  318. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
  319. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
  320. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.js +0 -270
  321. package/dest/kernel_prover/hints/index.d.ts +0 -2
  322. package/dest/kernel_prover/hints/index.d.ts.map +0 -1
  323. package/dest/kernel_prover/index.d.ts +0 -3
  324. package/dest/kernel_prover/index.d.ts.map +0 -1
  325. package/dest/kernel_prover/index.js +0 -2
  326. package/dest/kernel_prover/kernel_prover.d.ts +0 -38
  327. package/dest/kernel_prover/kernel_prover.d.ts.map +0 -1
  328. package/dest/kernel_prover/kernel_prover.js +0 -217
  329. package/dest/kernel_prover/proving_data_oracle.d.ts +0 -73
  330. package/dest/kernel_prover/proving_data_oracle.d.ts.map +0 -1
  331. package/dest/kernel_prover/proving_data_oracle.js +0 -4
  332. package/dest/note_decryption_utils/add_public_values_to_payload.d.ts +0 -11
  333. package/dest/note_decryption_utils/add_public_values_to_payload.d.ts.map +0 -1
  334. package/dest/note_decryption_utils/add_public_values_to_payload.js +0 -47
  335. package/dest/pxe_http/index.d.ts +0 -2
  336. package/dest/pxe_http/index.d.ts.map +0 -1
  337. package/dest/pxe_http/index.js +0 -1
  338. package/dest/pxe_http/pxe_http_server.d.ts +0 -16
  339. package/dest/pxe_http/pxe_http_server.d.ts.map +0 -1
  340. package/dest/pxe_http/pxe_http_server.js +0 -27
  341. package/dest/pxe_oracle_interface/index.d.ts +0 -159
  342. package/dest/pxe_oracle_interface/index.d.ts.map +0 -1
  343. package/dest/pxe_oracle_interface/index.js +0 -692
  344. package/dest/pxe_oracle_interface/tagging_utils.d.ts +0 -17
  345. package/dest/pxe_oracle_interface/tagging_utils.d.ts.map +0 -1
  346. package/dest/pxe_oracle_interface/tagging_utils.js +0 -23
  347. package/dest/pxe_service/error_enriching.d.ts +0 -11
  348. package/dest/pxe_service/error_enriching.d.ts.map +0 -1
  349. package/dest/pxe_service/index.d.ts +0 -3
  350. package/dest/pxe_service/index.d.ts.map +0 -1
  351. package/dest/pxe_service/index.js +0 -2
  352. package/dest/pxe_service/pxe_service.d.ts +0 -111
  353. package/dest/pxe_service/pxe_service.d.ts.map +0 -1
  354. package/dest/pxe_service/pxe_service.js +0 -664
  355. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.d.ts +0 -11
  356. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.d.ts.map +0 -1
  357. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.js +0 -20
  358. package/dest/storage/auth_witness_data_provider/index.d.ts +0 -2
  359. package/dest/storage/auth_witness_data_provider/index.d.ts.map +0 -1
  360. package/dest/storage/auth_witness_data_provider/index.js +0 -1
  361. package/dest/storage/data_provider.d.ts +0 -4
  362. package/dest/storage/data_provider.d.ts.map +0 -1
  363. package/dest/storage/data_provider.js +0 -1
  364. package/dest/storage/note_data_provider/note_dao.d.ts +0 -106
  365. package/dest/storage/note_data_provider/note_dao.d.ts.map +0 -1
  366. package/dest/storage/note_data_provider/note_dao.js +0 -106
  367. package/dest/storage/sync_data_provider/index.d.ts +0 -2
  368. package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
  369. package/dest/storage/sync_data_provider/index.js +0 -1
  370. package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -12
  371. package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
  372. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -18
  373. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
  374. package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -65
  375. package/dest/synchronizer/index.d.ts +0 -2
  376. package/dest/synchronizer/index.d.ts.map +0 -1
  377. package/dest/synchronizer/index.js +0 -1
  378. package/dest/synchronizer/synchronizer.d.ts +0 -37
  379. package/dest/synchronizer/synchronizer.d.ts.map +0 -1
  380. package/dest/test/pxe_test_suite.d.ts +0 -3
  381. package/dest/test/pxe_test_suite.d.ts.map +0 -1
  382. package/dest/test/pxe_test_suite.js +0 -97
  383. package/src/bin/index.ts +0 -38
  384. package/src/entrypoints/client/pxe_creation_options.ts +0 -7
  385. package/src/kernel_prover/index.ts +0 -2
  386. package/src/kernel_prover/kernel_prover.ts +0 -351
  387. package/src/note_decryption_utils/add_public_values_to_payload.ts +0 -64
  388. package/src/pxe_http/index.ts +0 -1
  389. package/src/pxe_http/pxe_http_server.ts +0 -29
  390. package/src/pxe_oracle_interface/index.ts +0 -925
  391. package/src/pxe_oracle_interface/tagging_utils.ts +0 -32
  392. package/src/pxe_service/index.ts +0 -2
  393. package/src/pxe_service/pxe_service.ts +0 -949
  394. package/src/storage/auth_witness_data_provider/auth_witness_data_provider.ts +0 -34
  395. package/src/storage/auth_witness_data_provider/index.ts +0 -1
  396. package/src/storage/data_provider.ts +0 -3
  397. package/src/storage/note_data_provider/note_dao.ts +0 -162
  398. package/src/storage/sync_data_provider/index.ts +0 -1
  399. package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -92
  400. package/src/synchronizer/index.ts +0 -1
  401. package/src/test/pxe_test_suite.ts +0 -111
  402. /package/dest/entrypoints/{client/pxe_creation_options.js → pxe_creation_options.js} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth_witness_data_provider.d.ts","sourceRoot":"","sources":["../../../src/storage/auth_witness_data_provider/auth_witness_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,qBAAa,uBAAwB,YAAW,YAAY;;gBAI9C,KAAK,EAAE,iBAAiB;IAK9B,cAAc,CAAC,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7D,cAAc,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC;IAK1D,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAMjC"}
@@ -1,20 +0,0 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
- import { toArray } from '@aztec/foundation/iterable';
3
- export class AuthWitnessDataProvider {
4
- #store;
5
- #authWitnesses;
6
- constructor(store){
7
- this.#store = store;
8
- this.#authWitnesses = this.#store.openMap('auth_witnesses');
9
- }
10
- async addAuthWitness(messageHash, witness) {
11
- await this.#authWitnesses.set(messageHash.toString(), witness.map((w)=>w.toBuffer()));
12
- }
13
- async getAuthWitness(messageHash) {
14
- const witness = await this.#authWitnesses.getAsync(messageHash.toString());
15
- return witness?.map((w)=>Fr.fromBuffer(w));
16
- }
17
- async getSize() {
18
- return (await toArray(this.#authWitnesses.valuesAsync())).reduce((sum, value)=>sum + value.length * Fr.SIZE_IN_BYTES, 0);
19
- }
20
- }
@@ -1,2 +0,0 @@
1
- export { AuthWitnessDataProvider } from './auth_witness_data_provider.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/auth_witness_data_provider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1 +0,0 @@
1
- export { AuthWitnessDataProvider } from './auth_witness_data_provider.js';
@@ -1,4 +0,0 @@
1
- export interface DataProvider {
2
- getSize(): Promise<number>;
3
- }
4
- //# sourceMappingURL=data_provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data_provider.d.ts","sourceRoot":"","sources":["../../src/storage/data_provider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5B"}
@@ -1 +0,0 @@
1
- export { };
@@ -1,106 +0,0 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
- import { Fr } from '@aztec/foundation/fields';
4
- import { BufferReader } from '@aztec/foundation/serialize';
5
- import type { NoteData } from '@aztec/simulator/client';
6
- import { NoteSelector } from '@aztec/stdlib/abi';
7
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
8
- import type { PublicKey } from '@aztec/stdlib/keys';
9
- import { Note } from '@aztec/stdlib/note';
10
- import { TxHash } from '@aztec/stdlib/tx';
11
- /**
12
- * A Note Data Access Object, representing a note that was committed to the note hash tree, holding all of the
13
- * information required to use it during execution and manage its state.
14
- */
15
- export declare class NoteDao implements NoteData {
16
- /** The packed content of the note, as will be returned in the getNotes oracle. */
17
- note: Note;
18
- /** The address of the contract that created the note (i.e. the address used by the kernel during siloing). */
19
- contractAddress: AztecAddress;
20
- /**
21
- * The storage location of the note. This value is not used for anything in PXE, but we do index by storage slot
22
- * since contracts typically make queries based on it.
23
- * */
24
- storageSlot: Fr;
25
- /** The kernel-provided nonce of the note, required to compute the uniqueNoteHash. */
26
- nonce: Fr;
27
- /**
28
- * The inner hash (non-unique, non-siloed) of the note. Each contract determines how the note is hashed. Can
29
- * be used alongside contractAddress and nonce to compute the uniqueNoteHash and the siloedNoteHash.
30
- */
31
- noteHash: Fr;
32
- /**
33
- * The nullifier of the note, siloed by contract address.
34
- * Note: Might be set as 0 if the note was added to PXE as nullified.
35
- */
36
- siloedNullifier: Fr;
37
- /** The hash of the tx in which this note was created. Knowing the tx hash allows for efficient node queries e.g.
38
- * when searching for txEffects.
39
- */
40
- txHash: TxHash;
41
- /** The L2 block number in which the tx with this note was included. Used for note management while processing
42
- * reorgs.*/
43
- l2BlockNumber: number;
44
- /** The L2 block hash in which the tx with this note was included. Used for note management while processing
45
- * reorgs.*/
46
- l2BlockHash: string;
47
- /** The index of the leaf in the global note hash tree the note is stored at */
48
- index: bigint;
49
- /** The public key with which the note log was encrypted during delivery. */
50
- addressPoint: PublicKey;
51
- /** The note type identifier for the contract.
52
- * TODO(#12013): remove
53
- */
54
- noteTypeId: NoteSelector;
55
- constructor(
56
- /** The packed content of the note, as will be returned in the getNotes oracle. */
57
- note: Note,
58
- /** The address of the contract that created the note (i.e. the address used by the kernel during siloing). */
59
- contractAddress: AztecAddress,
60
- /**
61
- * The storage location of the note. This value is not used for anything in PXE, but we do index by storage slot
62
- * since contracts typically make queries based on it.
63
- * */
64
- storageSlot: Fr,
65
- /** The kernel-provided nonce of the note, required to compute the uniqueNoteHash. */
66
- nonce: Fr,
67
- /**
68
- * The inner hash (non-unique, non-siloed) of the note. Each contract determines how the note is hashed. Can
69
- * be used alongside contractAddress and nonce to compute the uniqueNoteHash and the siloedNoteHash.
70
- */
71
- noteHash: Fr,
72
- /**
73
- * The nullifier of the note, siloed by contract address.
74
- * Note: Might be set as 0 if the note was added to PXE as nullified.
75
- */
76
- siloedNullifier: Fr,
77
- /** The hash of the tx in which this note was created. Knowing the tx hash allows for efficient node queries e.g.
78
- * when searching for txEffects.
79
- */
80
- txHash: TxHash,
81
- /** The L2 block number in which the tx with this note was included. Used for note management while processing
82
- * reorgs.*/
83
- l2BlockNumber: number,
84
- /** The L2 block hash in which the tx with this note was included. Used for note management while processing
85
- * reorgs.*/
86
- l2BlockHash: string,
87
- /** The index of the leaf in the global note hash tree the note is stored at */
88
- index: bigint,
89
- /** The public key with which the note log was encrypted during delivery. */
90
- addressPoint: PublicKey,
91
- /** The note type identifier for the contract.
92
- * TODO(#12013): remove
93
- */
94
- noteTypeId: NoteSelector);
95
- toBuffer(): Buffer;
96
- static fromBuffer(buffer: Buffer | BufferReader): NoteDao;
97
- toString(): string;
98
- static fromString(str: string): NoteDao;
99
- /**
100
- * Returns the size in bytes of the Note Dao.
101
- * @returns - Its size in bytes.
102
- */
103
- getSize(): number;
104
- static random({ note, contractAddress, storageSlot, nonce, noteHash, siloedNullifier, txHash, l2BlockNumber, l2BlockHash, index, addressPoint, noteTypeId, }?: Partial<NoteDao>): Promise<NoteDao>;
105
- }
106
- //# sourceMappingURL=note_dao.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"note_dao.d.ts","sourceRoot":"","sources":["../../../src/storage/note_data_provider/note_dao.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAS,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C;;;GAGG;AACH,qBAAa,OAAQ,YAAW,QAAQ;IAIpC,kFAAkF;IAC3E,IAAI,EAAE,IAAI;IACjB,8GAA8G;IACvG,eAAe,EAAE,YAAY;IACpC;;;SAGK;IACE,WAAW,EAAE,EAAE;IACtB,qFAAqF;IAC9E,KAAK,EAAE,EAAE;IAGhB;;;OAGG;IACI,QAAQ,EAAE,EAAE;IACnB;;;OAGG;IACI,eAAe,EAAE,EAAE;IAG1B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;gBACY;IACL,aAAa,EAAE,MAAM;IAC5B;gBACY;IACL,WAAW,EAAE,MAAM;IAC1B,+EAA+E;IACxE,KAAK,EAAE,MAAM;IACpB,4EAA4E;IACrE,YAAY,EAAE,SAAS;IAE9B;;OAEG;IACI,UAAU,EAAE,YAAY;;IA3C/B,kFAAkF;IAC3E,IAAI,EAAE,IAAI;IACjB,8GAA8G;IACvG,eAAe,EAAE,YAAY;IACpC;;;SAGK;IACE,WAAW,EAAE,EAAE;IACtB,qFAAqF;IAC9E,KAAK,EAAE,EAAE;IAGhB;;;OAGG;IACI,QAAQ,EAAE,EAAE;IACnB;;;OAGG;IACI,eAAe,EAAE,EAAE;IAG1B;;OAEG;IACI,MAAM,EAAE,MAAM;IACrB;gBACY;IACL,aAAa,EAAE,MAAM;IAC5B;gBACY;IACL,WAAW,EAAE,MAAM;IAC1B,+EAA+E;IACxE,KAAK,EAAE,MAAM;IACpB,4EAA4E;IACrE,YAAY,EAAE,SAAS;IAE9B;;OAEG;IACI,UAAU,EAAE,YAAY;IAGjC,QAAQ,IAAI,MAAM;IAiBlB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAgC/C,QAAQ;IAIR,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;IAK7B;;;OAGG;IACI,OAAO;WAMD,MAAM,CAAC,EAClB,IAAoB,EACpB,eAA2B,EAC3B,WAAyB,EACzB,KAAmB,EACnB,QAAsB,EACtB,eAA6B,EAC7B,MAAwB,EACxB,aAAgD,EAChD,WAAoC,EACpC,KAA8B,EAC9B,YAAwB,EACxB,UAAkC,GACnC,GAAE,OAAO,CAAC,OAAO,CAAM;CAgBzB"}
@@ -1,106 +0,0 @@
1
- import { toBigIntBE } from '@aztec/foundation/bigint-buffer';
2
- import { Fr, Point } from '@aztec/foundation/fields';
3
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
- import { NoteSelector } from '@aztec/stdlib/abi';
5
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
6
- import { Note } from '@aztec/stdlib/note';
7
- import { TxHash } from '@aztec/stdlib/tx';
8
- /**
9
- * A Note Data Access Object, representing a note that was committed to the note hash tree, holding all of the
10
- * information required to use it during execution and manage its state.
11
- */ export class NoteDao {
12
- note;
13
- contractAddress;
14
- storageSlot;
15
- nonce;
16
- noteHash;
17
- siloedNullifier;
18
- txHash;
19
- l2BlockNumber;
20
- l2BlockHash;
21
- index;
22
- addressPoint;
23
- noteTypeId;
24
- constructor(// Note information
25
- /** The packed content of the note, as will be returned in the getNotes oracle. */ note, /** The address of the contract that created the note (i.e. the address used by the kernel during siloing). */ contractAddress, /**
26
- * The storage location of the note. This value is not used for anything in PXE, but we do index by storage slot
27
- * since contracts typically make queries based on it.
28
- * */ storageSlot, /** The kernel-provided nonce of the note, required to compute the uniqueNoteHash. */ nonce, // Computed values
29
- /**
30
- * The inner hash (non-unique, non-siloed) of the note. Each contract determines how the note is hashed. Can
31
- * be used alongside contractAddress and nonce to compute the uniqueNoteHash and the siloedNoteHash.
32
- */ noteHash, /**
33
- * The nullifier of the note, siloed by contract address.
34
- * Note: Might be set as 0 if the note was added to PXE as nullified.
35
- */ siloedNullifier, // Metadata
36
- /** The hash of the tx in which this note was created. Knowing the tx hash allows for efficient node queries e.g.
37
- * when searching for txEffects.
38
- */ txHash, /** The L2 block number in which the tx with this note was included. Used for note management while processing
39
- * reorgs.*/ l2BlockNumber, /** The L2 block hash in which the tx with this note was included. Used for note management while processing
40
- * reorgs.*/ l2BlockHash, /** The index of the leaf in the global note hash tree the note is stored at */ index, /** The public key with which the note log was encrypted during delivery. */ addressPoint, /** The note type identifier for the contract.
41
- * TODO(#12013): remove
42
- */ noteTypeId){
43
- this.note = note;
44
- this.contractAddress = contractAddress;
45
- this.storageSlot = storageSlot;
46
- this.nonce = nonce;
47
- this.noteHash = noteHash;
48
- this.siloedNullifier = siloedNullifier;
49
- this.txHash = txHash;
50
- this.l2BlockNumber = l2BlockNumber;
51
- this.l2BlockHash = l2BlockHash;
52
- this.index = index;
53
- this.addressPoint = addressPoint;
54
- this.noteTypeId = noteTypeId;
55
- }
56
- toBuffer() {
57
- return serializeToBuffer([
58
- this.note,
59
- this.contractAddress,
60
- this.storageSlot,
61
- this.nonce,
62
- this.noteHash,
63
- this.siloedNullifier,
64
- this.txHash,
65
- this.l2BlockNumber,
66
- Fr.fromHexString(this.l2BlockHash),
67
- this.index,
68
- this.addressPoint,
69
- this.noteTypeId
70
- ]);
71
- }
72
- static fromBuffer(buffer) {
73
- const reader = BufferReader.asReader(buffer);
74
- const note = Note.fromBuffer(reader);
75
- const contractAddress = AztecAddress.fromBuffer(reader);
76
- const storageSlot = Fr.fromBuffer(reader);
77
- const nonce = Fr.fromBuffer(reader);
78
- const noteHash = Fr.fromBuffer(reader);
79
- const siloedNullifier = Fr.fromBuffer(reader);
80
- const txHash = reader.readObject(TxHash);
81
- const l2BlockNumber = reader.readNumber();
82
- const l2BlockHash = Fr.fromBuffer(reader).toString();
83
- const index = toBigIntBE(reader.readBytes(32));
84
- const publicKey = Point.fromBuffer(reader);
85
- const noteTypeId = reader.readObject(NoteSelector);
86
- return new NoteDao(note, contractAddress, storageSlot, nonce, noteHash, siloedNullifier, txHash, l2BlockNumber, l2BlockHash, index, publicKey, noteTypeId);
87
- }
88
- toString() {
89
- return '0x' + this.toBuffer().toString('hex');
90
- }
91
- static fromString(str) {
92
- const hex = str.replace(/^0x/, '');
93
- return NoteDao.fromBuffer(Buffer.from(hex, 'hex'));
94
- }
95
- /**
96
- * Returns the size in bytes of the Note Dao.
97
- * @returns - Its size in bytes.
98
- */ getSize() {
99
- const indexSize = Math.ceil(Math.log2(Number(this.index)));
100
- const noteSize = 4 + this.note.items.length * Fr.SIZE_IN_BYTES;
101
- return noteSize + AztecAddress.SIZE_IN_BYTES + Fr.SIZE_IN_BYTES * 4 + TxHash.SIZE + Point.SIZE_IN_BYTES + indexSize;
102
- }
103
- static async random({ note = Note.random(), contractAddress = undefined, storageSlot = Fr.random(), nonce = Fr.random(), noteHash = Fr.random(), siloedNullifier = Fr.random(), txHash = TxHash.random(), l2BlockNumber = Math.floor(Math.random() * 1000), l2BlockHash = Fr.random().toString(), index = Fr.random().toBigInt(), addressPoint = undefined, noteTypeId = NoteSelector.random() } = {}) {
104
- return new NoteDao(note, contractAddress ?? await AztecAddress.random(), storageSlot, nonce, noteHash, siloedNullifier, txHash, l2BlockNumber, l2BlockHash, index, addressPoint ?? await Point.random(), noteTypeId);
105
- }
106
- }
@@ -1,2 +0,0 @@
1
- export { SyncDataProvider } from './sync_data_provider.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/sync_data_provider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1 +0,0 @@
1
- export { SyncDataProvider } from './sync_data_provider.js';
@@ -1,12 +0,0 @@
1
- import type { AztecAsyncKVStore } from '@aztec/kv-store';
2
- import { BlockHeader } from '@aztec/stdlib/tx';
3
- import type { DataProvider } from '../data_provider.js';
4
- export declare class SyncDataProvider implements DataProvider {
5
- #private;
6
- constructor(store: AztecAsyncKVStore);
7
- setHeader(header: BlockHeader): Promise<void>;
8
- getBlockNumber(): Promise<number | undefined>;
9
- getBlockHeader(): Promise<BlockHeader>;
10
- getSize(): Promise<number>;
11
- }
12
- //# sourceMappingURL=sync_data_provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync_data_provider.d.ts","sourceRoot":"","sources":["../../../src/storage/sync_data_provider/sync_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAuB,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,qBAAa,gBAAiB,YAAW,YAAY;;gBAIvC,KAAK,EAAE,iBAAiB;IAK9B,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS7C,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAStC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAGjC"}
@@ -1,18 +0,0 @@
1
- import type { Fr } from '@aztec/foundation/fields';
2
- import type { AztecAsyncKVStore } from '@aztec/kv-store';
3
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
- import type { IndexedTaggingSecret } from '@aztec/stdlib/logs';
5
- export declare class TaggingDataProvider {
6
- #private;
7
- constructor(store: AztecAsyncKVStore);
8
- setTaggingSecretsIndexesAsSender(indexedSecrets: IndexedTaggingSecret[]): Promise<void>;
9
- setTaggingSecretsIndexesAsRecipient(indexedSecrets: IndexedTaggingSecret[]): Promise<void>;
10
- getTaggingSecretsIndexesAsRecipient(appTaggingSecrets: Fr[]): Promise<number[]>;
11
- getTaggingSecretsIndexesAsSender(appTaggingSecrets: Fr[]): Promise<number[]>;
12
- resetNoteSyncData(): Promise<void>;
13
- addSenderAddress(address: AztecAddress): Promise<boolean>;
14
- getSenderAddresses(): Promise<AztecAddress[]>;
15
- removeSenderAddress(address: AztecAddress): Promise<boolean>;
16
- getSize(): Promise<number>;
17
- }
18
- //# sourceMappingURL=tagging_data_provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tagging_data_provider.d.ts","sourceRoot":"","sources":["../../../src/storage/tagging_data_provider/tagging_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,qBAAa,mBAAmB;;gBAUlB,KAAK,EAAE,iBAAiB;IAS9B,gCAAgC,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvF,mCAAmC,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1F,mCAAmC,CAAC,iBAAiB,EAAE,EAAE,EAAE;IAI3D,gCAAgC,CAAC,iBAAiB,EAAE,EAAE,EAAE;IAQ9D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzD,kBAAkB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAI7C,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAU5D,OAAO;CAKd"}
@@ -1,65 +0,0 @@
1
- import { toArray } from '@aztec/foundation/iterable';
2
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
3
- export class TaggingDataProvider {
4
- #store;
5
- #addressBook;
6
- // Stores the last index used for each tagging secret, taking direction into account
7
- // This is necessary to avoid reusing the same index for the same secret, which happens if
8
- // sender and recipient are the same
9
- #taggingSecretIndexesForSenders;
10
- #taggingSecretIndexesForRecipients;
11
- constructor(store){
12
- this.#store = store;
13
- this.#addressBook = this.#store.openMap('address_book');
14
- this.#taggingSecretIndexesForSenders = this.#store.openMap('tagging_secret_indexes_for_senders');
15
- this.#taggingSecretIndexesForRecipients = this.#store.openMap('tagging_secret_indexes_for_recipients');
16
- }
17
- async setTaggingSecretsIndexesAsSender(indexedSecrets) {
18
- await this.#setTaggingSecretsIndexes(indexedSecrets, this.#taggingSecretIndexesForSenders);
19
- }
20
- async setTaggingSecretsIndexesAsRecipient(indexedSecrets) {
21
- await this.#setTaggingSecretsIndexes(indexedSecrets, this.#taggingSecretIndexesForRecipients);
22
- }
23
- async #setTaggingSecretsIndexes(indexedSecrets, storageMap) {
24
- await Promise.all(indexedSecrets.map((indexedSecret)=>storageMap.set(indexedSecret.appTaggingSecret.toString(), indexedSecret.index)));
25
- }
26
- async getTaggingSecretsIndexesAsRecipient(appTaggingSecrets) {
27
- return await this.#getTaggingSecretsIndexes(appTaggingSecrets, this.#taggingSecretIndexesForRecipients);
28
- }
29
- async getTaggingSecretsIndexesAsSender(appTaggingSecrets) {
30
- return await this.#getTaggingSecretsIndexes(appTaggingSecrets, this.#taggingSecretIndexesForSenders);
31
- }
32
- #getTaggingSecretsIndexes(appTaggingSecrets, storageMap) {
33
- return Promise.all(appTaggingSecrets.map(async (secret)=>await storageMap.getAsync(`${secret.toString()}`) ?? 0));
34
- }
35
- resetNoteSyncData() {
36
- return this.#store.transactionAsync(async ()=>{
37
- const recipients = await toArray(this.#taggingSecretIndexesForRecipients.keysAsync());
38
- await Promise.all(recipients.map((recipient)=>this.#taggingSecretIndexesForRecipients.delete(recipient)));
39
- const senders = await toArray(this.#taggingSecretIndexesForSenders.keysAsync());
40
- await Promise.all(senders.map((sender)=>this.#taggingSecretIndexesForSenders.delete(sender)));
41
- });
42
- }
43
- async addSenderAddress(address) {
44
- if (await this.#addressBook.hasAsync(address.toString())) {
45
- return false;
46
- }
47
- await this.#addressBook.set(address.toString(), true);
48
- return true;
49
- }
50
- async getSenderAddresses() {
51
- return (await toArray(this.#addressBook.keysAsync())).map(AztecAddress.fromString);
52
- }
53
- async removeSenderAddress(address) {
54
- if (!await this.#addressBook.hasAsync(address.toString())) {
55
- return false;
56
- }
57
- await this.#addressBook.delete(address.toString());
58
- return true;
59
- }
60
- async getSize() {
61
- const addressesCount = (await toArray(this.#addressBook.keysAsync())).length;
62
- // All keys are addresses
63
- return 3 * addressesCount * AztecAddress.SIZE_IN_BYTES;
64
- }
65
- }
@@ -1,2 +0,0 @@
1
- export * from './synchronizer.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/synchronizer/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
@@ -1 +0,0 @@
1
- export * from './synchronizer.js';
@@ -1,37 +0,0 @@
1
- import { type Logger } from '@aztec/foundation/log';
2
- import type { L2TipsStore } from '@aztec/kv-store/stores';
3
- import { L2BlockStream, type L2BlockStreamEvent, type L2BlockStreamEventHandler } from '@aztec/stdlib/block';
4
- import type { AztecNode } from '@aztec/stdlib/interfaces/client';
5
- import type { PXEConfig } from '../config/index.js';
6
- import type { NoteDataProvider } from '../storage/note_data_provider/note_data_provider.js';
7
- import type { SyncDataProvider } from '../storage/sync_data_provider/sync_data_provider.js';
8
- import type { TaggingDataProvider } from '../storage/tagging_data_provider/tagging_data_provider.js';
9
- /**
10
- * The Synchronizer class manages the synchronization with the aztec node, allowing PXE to retrieve the
11
- * latest block header and handle reorgs.
12
- * It provides methods to trigger a sync and get the block number we are syncec to
13
- * details, and fetch transactions by hash.
14
- */
15
- export declare class Synchronizer implements L2BlockStreamEventHandler {
16
- private node;
17
- private syncDataProvider;
18
- private noteDataProvider;
19
- private taggingDataProvider;
20
- private l2TipsStore;
21
- private initialSyncBlockNumber;
22
- private log;
23
- private isSyncing;
24
- protected readonly blockStream: L2BlockStream;
25
- constructor(node: AztecNode, syncDataProvider: SyncDataProvider, noteDataProvider: NoteDataProvider, taggingDataProvider: TaggingDataProvider, l2TipsStore: L2TipsStore, config?: Partial<Pick<PXEConfig, 'l2StartingBlock'>>, loggerOrSuffix?: string | Logger);
26
- protected createBlockStream(config: Partial<Pick<PXEConfig, 'l2StartingBlock'>>): L2BlockStream;
27
- /** Handle events emitted by the block stream. */
28
- handleBlockStreamEvent(event: L2BlockStreamEvent): Promise<void>;
29
- /**
30
- * Syncs PXE and the node by dowloading the metadata of the latest blocks, allowing simulations to use
31
- * recent data (e.g. notes), and handling any reorgs that might have occurred.
32
- */
33
- sync(): Promise<void>;
34
- private doSync;
35
- getSynchedBlockNumber(): Promise<number>;
36
- }
37
- //# sourceMappingURL=synchronizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"synchronizer.d.ts","sourceRoot":"","sources":["../../src/synchronizer/synchronizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC7G,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2DAA2D,CAAC;AAErG;;;;;GAKG;AACH,qBAAa,YAAa,YAAW,yBAAyB;IAO1D,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,WAAW;IAVrB,OAAO,CAAC,sBAAsB,CAA4B;IAC1D,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAA4B;IAC7C,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;gBAGpC,IAAI,EAAE,SAAS,EACf,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EAChC,MAAM,GAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAM,EACxD,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM;IASlC,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAM/E,iDAAiD;IACpC,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC7E;;;OAGG;IACU,IAAI;YAiBH,MAAM;IAeP,qBAAqB;CAGnC"}
@@ -1,3 +0,0 @@
1
- import type { PXE } from '@aztec/stdlib/interfaces/client';
2
- export declare const pxeTestSuite: (testName: string, pxeSetup: () => Promise<PXE>) => void;
3
- //# sourceMappingURL=pxe_test_suite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pxe_test_suite.d.ts","sourceRoot":"","sources":["../../src/test/pxe_test_suite.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAS3D,eAAO,MAAM,YAAY,aAAc,MAAM,YAAY,MAAM,QAAQ,GAAG,CAAC,SAiG1E,CAAC"}
@@ -1,97 +0,0 @@
1
- import { INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
3
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
- import { getContractClassFromArtifact } from '@aztec/stdlib/contract';
5
- import { randomContractArtifact, randomContractInstanceWithAddress, randomDeployedContract } from '@aztec/stdlib/testing';
6
- import omit from 'lodash.omit';
7
- export const pxeTestSuite = (testName, pxeSetup)=>{
8
- describe(testName, ()=>{
9
- let pxe;
10
- beforeAll(async ()=>{
11
- pxe = await pxeSetup();
12
- }, 120_000);
13
- it('registers an account and returns it as an account only and not as a recipient', async ()=>{
14
- const randomSecretKey = Fr.random();
15
- const randomPartialAddress = Fr.random();
16
- const completeAddress = await pxe.registerAccount(randomSecretKey, randomPartialAddress);
17
- // Check that the account is correctly registered using the getAccounts and getRecipients methods
18
- const accounts = await pxe.getRegisteredAccounts();
19
- expect(accounts).toContainEqual(completeAddress);
20
- });
21
- it('does not throw when registering the same account twice (just ignores the second attempt)', async ()=>{
22
- const randomSecretKey = Fr.random();
23
- const randomPartialAddress = Fr.random();
24
- await pxe.registerAccount(randomSecretKey, randomPartialAddress);
25
- await pxe.registerAccount(randomSecretKey, randomPartialAddress);
26
- });
27
- it('successfully adds a contract', async ()=>{
28
- const contracts = await Promise.all([
29
- randomDeployedContract(),
30
- randomDeployedContract()
31
- ]);
32
- for (const contract of contracts){
33
- await pxe.registerContract(contract);
34
- }
35
- const expectedContractAddresses = contracts.map((contract)=>contract.instance.address);
36
- const contractAddresses = await pxe.getContracts();
37
- expect(contractAddresses).toEqual(expect.arrayContaining(expectedContractAddresses));
38
- });
39
- it('registers a class and adds a contract for it', async ()=>{
40
- const artifact = randomContractArtifact();
41
- const contractClass = await getContractClassFromArtifact(artifact);
42
- const contractClassId = contractClass.id;
43
- const instance = await randomContractInstanceWithAddress({
44
- contractClassId
45
- });
46
- await pxe.registerContractClass(artifact);
47
- expect((await pxe.getContractClassMetadata(contractClassId)).contractClass).toMatchObject(omit(contractClass, 'privateFunctionsRoot', 'publicBytecodeCommitment'));
48
- await pxe.registerContract({
49
- instance
50
- });
51
- expect((await pxe.getContractMetadata(instance.address)).contractInstance).toEqual(instance);
52
- });
53
- it('refuses to register a class with a mismatched address', async ()=>{
54
- const artifact = randomContractArtifact();
55
- const contractClass = await getContractClassFromArtifact(artifact);
56
- const contractClassId = contractClass.id;
57
- const instance = await randomContractInstanceWithAddress({
58
- contractClassId
59
- });
60
- await expect(pxe.registerContract({
61
- instance: {
62
- ...instance,
63
- address: await AztecAddress.random()
64
- },
65
- artifact
66
- })).rejects.toThrow(/Added a contract in which the address does not match the contract instance./);
67
- });
68
- it('refuses to register a contract with a class that has not been registered', async ()=>{
69
- const instance = await randomContractInstanceWithAddress();
70
- await expect(pxe.registerContract({
71
- instance
72
- })).rejects.toThrow(/DB has no contract class with id/i);
73
- });
74
- it('refuses to register a contract with an artifact with mismatching class id', async ()=>{
75
- const artifact = randomContractArtifact();
76
- const instance = await randomContractInstanceWithAddress();
77
- await expect(pxe.registerContract({
78
- instance,
79
- artifact
80
- })).rejects.toThrow(/Artifact does not match/i);
81
- });
82
- // Note: Not testing a successful run of `proveTx`, `sendTx`, `getTxReceipt` and `simulateUnconstrained` here as it requires
83
- // a larger setup and it's sufficiently tested in the e2e tests.
84
- // Note: Not testing `getContractData`, `getPublicLogs` and `getPublicStorageAt` here as these
85
- // functions only call AztecNode and these methods are frequently used by the e2e tests.
86
- it('successfully gets a block number', async ()=>{
87
- const blockNum = await pxe.getBlockNumber();
88
- expect(blockNum).toBeGreaterThanOrEqual(INITIAL_L2_BLOCK_NUM);
89
- });
90
- it('successfully gets node info', async ()=>{
91
- const nodeInfo = await pxe.getNodeInfo();
92
- expect(typeof nodeInfo.protocolVersion).toEqual('number');
93
- expect(typeof nodeInfo.l1ChainId).toEqual('number');
94
- expect(nodeInfo.l1ContractAddresses.rollupAddress.toString()).toMatch(/0x[a-fA-F0-9]+/);
95
- });
96
- });
97
- };
package/src/bin/index.ts DELETED
@@ -1,38 +0,0 @@
1
- #!/usr/bin/env -S node --no-warnings
2
- import { createLogger } from '@aztec/foundation/log';
3
- import { createAztecNodeClient } from '@aztec/stdlib/interfaces/client';
4
-
5
- import { getPXEServiceConfig } from '../config/index.js';
6
- import { createPXEService } from '../entrypoints/server/utils.js';
7
- import { startPXEHttpServer } from '../pxe_http/index.js';
8
-
9
- const { PXE_PORT = 8080, AZTEC_NODE_URL = 'http://localhost:8079' } = process.env;
10
-
11
- const logger = createLogger('pxe:service');
12
-
13
- /**
14
- * Create and start a new PXE HTTP Server
15
- */
16
- async function main() {
17
- logger.info(`Setting up PXE...`);
18
-
19
- const pxeConfig = getPXEServiceConfig();
20
- const nodeRpcClient = createAztecNodeClient(AZTEC_NODE_URL, {});
21
- const pxeService = await createPXEService(nodeRpcClient, pxeConfig);
22
-
23
- const shutdown = () => {
24
- logger.info('Shutting down...');
25
- process.exit(0);
26
- };
27
-
28
- process.once('SIGINT', shutdown);
29
- process.once('SIGTERM', shutdown);
30
-
31
- startPXEHttpServer(pxeService, PXE_PORT);
32
- logger.info(`PXE listening on port ${PXE_PORT}`);
33
- }
34
-
35
- main().catch(err => {
36
- logger.error(err);
37
- process.exit(1);
38
- });
@@ -1,7 +0,0 @@
1
- import type { Logger } from '@aztec/foundation/log';
2
- import type { PrivateKernelProver } from '@aztec/stdlib/interfaces/client';
3
-
4
- export type PXECreationOptions = {
5
- loggers: { store?: Logger; pxe?: Logger; prover?: Logger };
6
- prover?: PrivateKernelProver;
7
- };
@@ -1,2 +0,0 @@
1
- export * from './kernel_prover.js';
2
- export * from './proving_data_oracle.js';