@aztec/pxe 0.0.0-test.1 → 0.0.1-commit.017a351

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 (573) 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 +73 -0
  5. package/dest/bin/index.d.ts +2 -3
  6. package/dest/bin/index.d.ts.map +1 -1
  7. package/dest/bin/index.js +1 -28
  8. package/dest/bin/oracle_version_helpers.d.ts +26 -0
  9. package/dest/bin/oracle_version_helpers.d.ts.map +1 -0
  10. package/dest/bin/oracle_version_helpers.js +93 -0
  11. package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
  12. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
  13. package/dest/block_synchronizer/block_stream_source.js +62 -0
  14. package/dest/block_synchronizer/block_synchronizer.d.ts +49 -0
  15. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
  16. package/dest/block_synchronizer/block_synchronizer.js +173 -0
  17. package/dest/block_synchronizer/index.d.ts +2 -0
  18. package/dest/block_synchronizer/index.d.ts.map +1 -0
  19. package/dest/block_synchronizer/index.js +1 -0
  20. package/dest/config/index.d.ts +20 -25
  21. package/dest/config/index.d.ts.map +1 -1
  22. package/dest/config/index.js +35 -35
  23. package/dest/config/package_info.d.ts +1 -1
  24. package/dest/config/package_info.js +1 -1
  25. package/dest/contract_function_simulator/benchmarked_node.d.ts +9 -0
  26. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +1 -0
  27. package/dest/contract_function_simulator/benchmarked_node.js +77 -0
  28. package/dest/contract_function_simulator/contract_function_simulator.d.ts +119 -0
  29. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -0
  30. package/dest/contract_function_simulator/contract_function_simulator.js +480 -0
  31. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  32. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  33. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  34. package/dest/contract_function_simulator/execution_note_cache.d.ts +104 -0
  35. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -0
  36. package/dest/contract_function_simulator/execution_note_cache.js +208 -0
  37. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +12 -0
  38. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -0
  39. package/dest/contract_function_simulator/execution_tagging_index_cache.js +30 -0
  40. package/dest/contract_function_simulator/hashed_values_cache.d.ts +28 -0
  41. package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -0
  42. package/dest/contract_function_simulator/hashed_values_cache.js +36 -0
  43. package/dest/contract_function_simulator/index.d.ts +26 -0
  44. package/dest/contract_function_simulator/index.d.ts.map +1 -0
  45. package/dest/contract_function_simulator/index.js +23 -0
  46. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +48 -0
  47. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
  48. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +45 -0
  49. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts +37 -0
  50. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts.map +1 -0
  51. package/dest/contract_function_simulator/noir-structs/ephemeral_array.js +59 -0
  52. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +20 -0
  53. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -0
  54. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +39 -0
  55. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +26 -0
  56. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -0
  57. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +57 -0
  58. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +17 -0
  59. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -0
  60. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +63 -0
  61. package/dest/contract_function_simulator/noir-structs/note_data.d.ts +27 -0
  62. package/dest/contract_function_simulator/noir-structs/note_data.d.ts.map +1 -0
  63. package/dest/contract_function_simulator/noir-structs/note_data.js +3 -0
  64. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +22 -0
  65. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -0
  66. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +47 -0
  67. package/dest/contract_function_simulator/noir-structs/option.d.ts +61 -0
  68. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
  69. package/dest/contract_function_simulator/noir-structs/option.js +62 -0
  70. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +11 -0
  71. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -0
  72. package/dest/contract_function_simulator/noir-structs/provided_secret.js +24 -0
  73. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +16 -0
  74. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -0
  75. package/dest/contract_function_simulator/noir-structs/utility_context.js +22 -0
  76. package/dest/contract_function_simulator/oracle/index.d.ts +14 -0
  77. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -0
  78. package/dest/contract_function_simulator/oracle/index.js +2 -0
  79. package/dest/contract_function_simulator/oracle/interfaces.d.ts +25 -0
  80. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -0
  81. package/dest/contract_function_simulator/oracle/interfaces.js +4 -0
  82. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +19 -0
  83. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -0
  84. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +24 -0
  85. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +28 -0
  86. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -0
  87. package/dest/contract_function_simulator/oracle/note_packing_utils.js +54 -0
  88. package/dest/contract_function_simulator/oracle/oracle.d.ts +89 -0
  89. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -0
  90. package/dest/contract_function_simulator/oracle/oracle.js +552 -0
  91. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +127 -0
  92. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
  93. package/dest/contract_function_simulator/oracle/oracle_registry.js +786 -0
  94. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +139 -0
  95. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -0
  96. package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +560 -0
  97. package/dest/contract_function_simulator/oracle/private_execution.d.ts +23 -0
  98. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -0
  99. package/dest/contract_function_simulator/oracle/private_execution.js +89 -0
  100. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +212 -0
  101. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -0
  102. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +457 -0
  103. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +283 -0
  104. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -0
  105. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +654 -0
  106. package/dest/contract_function_simulator/pick_notes.d.ts +85 -0
  107. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -0
  108. package/dest/contract_function_simulator/pick_notes.js +68 -0
  109. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +6 -0
  110. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -0
  111. package/dest/contract_function_simulator/proxied_contract_data_source.js +51 -0
  112. package/dest/contract_logging.d.ts +27 -0
  113. package/dest/contract_logging.d.ts.map +1 -0
  114. package/dest/contract_logging.js +38 -0
  115. package/dest/contract_sync/contract_sync_service.d.ts +42 -0
  116. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -0
  117. package/dest/contract_sync/contract_sync_service.js +135 -0
  118. package/dest/contract_sync/helpers.d.ts +27 -0
  119. package/dest/contract_sync/helpers.d.ts.map +1 -0
  120. package/dest/contract_sync/helpers.js +53 -0
  121. package/dest/debug/pxe_debug_utils.d.ts +40 -0
  122. package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
  123. package/dest/debug/pxe_debug_utils.js +42 -0
  124. package/dest/entrypoints/client/bundle/index.d.ts +6 -3
  125. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  126. package/dest/entrypoints/client/bundle/index.js +4 -2
  127. package/dest/entrypoints/client/bundle/utils.d.ts +10 -10
  128. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  129. package/dest/entrypoints/client/bundle/utils.js +51 -14
  130. package/dest/entrypoints/client/lazy/index.d.ts +6 -3
  131. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  132. package/dest/entrypoints/client/lazy/index.js +4 -2
  133. package/dest/entrypoints/client/lazy/utils.d.ts +10 -10
  134. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  135. package/dest/entrypoints/client/lazy/utils.js +51 -14
  136. package/dest/entrypoints/pxe_creation_options.d.ts +26 -0
  137. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -0
  138. package/dest/entrypoints/pxe_creation_options.js +3 -0
  139. package/dest/entrypoints/server/index.d.ts +10 -4
  140. package/dest/entrypoints/server/index.d.ts.map +1 -1
  141. package/dest/entrypoints/server/index.js +8 -3
  142. package/dest/entrypoints/server/utils.d.ts +9 -16
  143. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  144. package/dest/entrypoints/server/utils.js +62 -36
  145. package/dest/error_enriching.d.ts +11 -0
  146. package/dest/error_enriching.d.ts.map +1 -0
  147. package/dest/{pxe_service/error_enriching.js → error_enriching.js} +30 -22
  148. package/dest/events/event_service.d.ts +24 -0
  149. package/dest/events/event_service.d.ts.map +1 -0
  150. package/dest/events/event_service.js +77 -0
  151. package/dest/events/index.d.ts +2 -0
  152. package/dest/events/index.d.ts.map +1 -0
  153. package/dest/events/index.js +1 -0
  154. package/dest/events/private_event_filter_validator.d.ts +10 -0
  155. package/dest/events/private_event_filter_validator.d.ts.map +1 -0
  156. package/dest/events/private_event_filter_validator.js +53 -0
  157. package/dest/hooks/authorize_utility_call.d.ts +41 -0
  158. package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
  159. package/dest/hooks/authorize_utility_call.js +4 -0
  160. package/dest/hooks/execution_hooks.d.ts +42 -0
  161. package/dest/hooks/execution_hooks.d.ts.map +1 -0
  162. package/dest/hooks/execution_hooks.js +9 -0
  163. package/dest/hooks/index.d.ts +4 -0
  164. package/dest/hooks/index.d.ts.map +1 -0
  165. package/dest/hooks/index.js +1 -0
  166. package/dest/job_coordinator/job_coordinator.d.ts +75 -0
  167. package/dest/job_coordinator/job_coordinator.d.ts.map +1 -0
  168. package/dest/job_coordinator/job_coordinator.js +94 -0
  169. package/dest/logs/log_service.d.ts +29 -0
  170. package/dest/logs/log_service.d.ts.map +1 -0
  171. package/dest/logs/log_service.js +172 -0
  172. package/dest/messages/message_context_service.d.ts +17 -0
  173. package/dest/messages/message_context_service.d.ts.map +1 -0
  174. package/dest/messages/message_context_service.js +55 -0
  175. package/dest/notes/index.d.ts +2 -0
  176. package/dest/notes/index.d.ts.map +1 -0
  177. package/dest/notes/index.js +1 -0
  178. package/dest/notes/note_service.d.ts +70 -0
  179. package/dest/notes/note_service.d.ts.map +1 -0
  180. package/dest/notes/note_service.js +172 -0
  181. package/dest/notes_filter.d.ts +24 -0
  182. package/dest/notes_filter.d.ts.map +1 -0
  183. package/dest/notes_filter.js +4 -0
  184. package/dest/oracle_version.d.ts +4 -0
  185. package/dest/oracle_version.d.ts.map +1 -0
  186. package/dest/oracle_version.js +21 -0
  187. package/dest/private_kernel/batch_planner.d.ts +47 -0
  188. package/dest/private_kernel/batch_planner.d.ts.map +1 -0
  189. package/dest/private_kernel/batch_planner.js +104 -0
  190. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  191. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  192. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.js +41 -0
  193. package/dest/private_kernel/hints/index.d.ts +3 -0
  194. package/dest/private_kernel/hints/index.d.ts.map +1 -0
  195. package/dest/private_kernel/hints/index.js +2 -0
  196. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +29 -0
  197. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -0
  198. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +338 -0
  199. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  200. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  201. package/dest/private_kernel/hints/test_utils.js +202 -0
  202. package/dest/private_kernel/index.d.ts +3 -0
  203. package/dest/private_kernel/index.d.ts.map +1 -0
  204. package/dest/private_kernel/index.js +2 -0
  205. package/dest/private_kernel/private_kernel_execution_prover.d.ts +49 -0
  206. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -0
  207. package/dest/private_kernel/private_kernel_execution_prover.js +386 -0
  208. package/dest/private_kernel/private_kernel_oracle.d.ts +63 -0
  209. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -0
  210. package/dest/private_kernel/private_kernel_oracle.js +98 -0
  211. package/dest/pxe.d.ts +300 -0
  212. package/dest/pxe.d.ts.map +1 -0
  213. package/dest/pxe.js +839 -0
  214. package/dest/storage/address_store/address_store.d.ts +11 -0
  215. package/dest/storage/address_store/address_store.d.ts.map +1 -0
  216. package/dest/storage/{address_data_provider/address_data_provider.js → address_store/address_store.js} +13 -15
  217. package/dest/storage/address_store/index.d.ts +2 -0
  218. package/dest/storage/address_store/index.d.ts.map +1 -0
  219. package/dest/storage/address_store/index.js +1 -0
  220. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +17 -0
  221. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -0
  222. package/dest/storage/anchor_block_store/anchor_block_store.js +26 -0
  223. package/dest/storage/anchor_block_store/index.d.ts +2 -0
  224. package/dest/storage/anchor_block_store/index.d.ts.map +1 -0
  225. package/dest/storage/anchor_block_store/index.js +1 -0
  226. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
  227. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
  228. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
  229. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
  230. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
  231. package/dest/storage/backwards_compatibility_tests/schema_tests.js +591 -0
  232. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
  233. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
  234. package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
  235. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  236. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  237. package/dest/storage/capsule_store/capsule_service.js +50 -0
  238. package/dest/storage/capsule_store/capsule_store.d.ts +72 -0
  239. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -0
  240. package/dest/storage/capsule_store/capsule_store.js +261 -0
  241. package/dest/storage/capsule_store/index.d.ts +3 -0
  242. package/dest/storage/capsule_store/index.d.ts.map +1 -0
  243. package/dest/storage/capsule_store/index.js +2 -0
  244. package/dest/storage/contract_store/contract_store.d.ts +93 -0
  245. package/dest/storage/contract_store/contract_store.d.ts.map +1 -0
  246. package/dest/storage/contract_store/contract_store.js +292 -0
  247. package/dest/storage/contract_store/index.d.ts +2 -0
  248. package/dest/storage/contract_store/index.d.ts.map +1 -0
  249. package/dest/storage/contract_store/index.js +1 -0
  250. package/dest/storage/contract_store/private_functions_tree.d.ts +27 -0
  251. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -0
  252. package/dest/storage/contract_store/private_functions_tree.js +47 -0
  253. package/dest/storage/index.d.ts +9 -10
  254. package/dest/storage/index.d.ts.map +1 -1
  255. package/dest/storage/index.js +8 -9
  256. package/dest/storage/metadata.d.ts +2 -0
  257. package/dest/storage/metadata.d.ts.map +1 -0
  258. package/dest/storage/metadata.js +1 -0
  259. package/dest/storage/note_store/index.d.ts +3 -0
  260. package/dest/storage/note_store/index.d.ts.map +1 -0
  261. package/dest/storage/note_store/index.js +2 -0
  262. package/dest/storage/note_store/note_store.d.ts +83 -0
  263. package/dest/storage/note_store/note_store.d.ts.map +1 -0
  264. package/dest/storage/note_store/note_store.js +343 -0
  265. package/dest/storage/note_store/stored_note.d.ts +16 -0
  266. package/dest/storage/note_store/stored_note.d.ts.map +1 -0
  267. package/dest/storage/note_store/stored_note.js +43 -0
  268. package/dest/storage/open_pxe_stores.d.ts +33 -0
  269. package/dest/storage/open_pxe_stores.d.ts.map +1 -0
  270. package/dest/storage/open_pxe_stores.js +27 -0
  271. package/dest/storage/private_event_store/private_event_store.d.ts +91 -0
  272. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -0
  273. package/dest/storage/private_event_store/private_event_store.js +276 -0
  274. package/dest/storage/private_event_store/stored_private_event.d.ts +23 -0
  275. package/dest/storage/private_event_store/stored_private_event.d.ts.map +1 -0
  276. package/dest/storage/private_event_store/stored_private_event.js +56 -0
  277. package/dest/storage/tagging_store/index.d.ts +4 -0
  278. package/dest/storage/tagging_store/index.d.ts.map +1 -0
  279. package/dest/storage/tagging_store/index.js +3 -0
  280. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +28 -0
  281. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -0
  282. package/dest/storage/tagging_store/recipient_tagging_store.js +111 -0
  283. package/dest/storage/tagging_store/sender_address_book_store.d.ts +14 -0
  284. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +1 -0
  285. package/dest/storage/tagging_store/sender_address_book_store.js +36 -0
  286. package/dest/storage/tagging_store/sender_tagging_store.d.ts +78 -0
  287. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -0
  288. package/dest/storage/tagging_store/sender_tagging_store.js +374 -0
  289. package/dest/tagging/constants.d.ts +2 -0
  290. package/dest/tagging/constants.d.ts.map +1 -0
  291. package/dest/tagging/constants.js +10 -0
  292. package/dest/tagging/get_all_logs_by_tags.d.ts +48 -0
  293. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -0
  294. package/dest/tagging/get_all_logs_by_tags.js +59 -0
  295. package/dest/tagging/index.d.ts +18 -0
  296. package/dest/tagging/index.d.ts.map +1 -0
  297. package/dest/tagging/index.js +16 -0
  298. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
  299. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
  300. package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
  301. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +56 -0
  302. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
  303. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +163 -0
  304. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
  305. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
  306. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
  307. package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
  308. package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
  309. package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
  310. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +16 -0
  311. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -0
  312. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +92 -0
  313. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +17 -0
  314. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -0
  315. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +60 -0
  316. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +19 -0
  317. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
  318. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +72 -0
  319. package/package.json +48 -33
  320. package/src/bin/check_oracle_version.ts +88 -0
  321. package/src/bin/index.ts +1 -38
  322. package/src/bin/oracle_version_helpers.ts +121 -0
  323. package/src/block_synchronizer/block_stream_source.ts +81 -0
  324. package/src/block_synchronizer/block_synchronizer.ts +200 -0
  325. package/src/block_synchronizer/index.ts +1 -0
  326. package/src/config/index.ts +48 -56
  327. package/src/config/package_info.ts +1 -1
  328. package/src/contract_function_simulator/benchmarked_node.ts +103 -0
  329. package/src/contract_function_simulator/contract_function_simulator.ts +888 -0
  330. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  331. package/src/contract_function_simulator/execution_note_cache.ts +252 -0
  332. package/src/contract_function_simulator/execution_tagging_index_cache.ts +33 -0
  333. package/src/contract_function_simulator/hashed_values_cache.ts +47 -0
  334. package/src/contract_function_simulator/index.ts +63 -0
  335. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +55 -0
  336. package/src/contract_function_simulator/noir-structs/ephemeral_array.ts +66 -0
  337. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +52 -0
  338. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +61 -0
  339. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +66 -0
  340. package/src/contract_function_simulator/noir-structs/note_data.ts +27 -0
  341. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +59 -0
  342. package/src/contract_function_simulator/noir-structs/option.ts +69 -0
  343. package/src/contract_function_simulator/noir-structs/provided_secret.ts +27 -0
  344. package/src/contract_function_simulator/noir-structs/utility_context.ts +23 -0
  345. package/src/contract_function_simulator/oracle/index.ts +16 -0
  346. package/src/contract_function_simulator/oracle/interfaces.ts +21 -0
  347. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +23 -0
  348. package/src/contract_function_simulator/oracle/note_packing_utils.ts +68 -0
  349. package/src/contract_function_simulator/oracle/oracle.ts +711 -0
  350. package/src/contract_function_simulator/oracle/oracle_registry.ts +585 -0
  351. package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +553 -0
  352. package/src/contract_function_simulator/oracle/private_execution.ts +141 -0
  353. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +667 -0
  354. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +967 -0
  355. package/src/contract_function_simulator/pick_notes.ts +160 -0
  356. package/src/contract_function_simulator/proxied_contract_data_source.ts +60 -0
  357. package/src/contract_logging.ts +52 -0
  358. package/src/contract_sync/contract_sync_service.ts +189 -0
  359. package/src/contract_sync/helpers.ts +86 -0
  360. package/src/debug/pxe_debug_utils.ts +85 -0
  361. package/src/entrypoints/client/bundle/index.ts +5 -2
  362. package/src/entrypoints/client/bundle/utils.ts +47 -35
  363. package/src/entrypoints/client/lazy/index.ts +5 -2
  364. package/src/entrypoints/client/lazy/utils.ts +48 -31
  365. package/src/entrypoints/pxe_creation_options.ts +28 -0
  366. package/src/entrypoints/server/index.ts +9 -3
  367. package/src/entrypoints/server/utils.ts +65 -56
  368. package/src/{pxe_service/error_enriching.ts → error_enriching.ts} +40 -39
  369. package/src/events/event_service.ts +119 -0
  370. package/src/events/index.ts +1 -0
  371. package/src/events/private_event_filter_validator.ts +66 -0
  372. package/src/hooks/authorize_utility_call.ts +44 -0
  373. package/src/hooks/execution_hooks.ts +48 -0
  374. package/src/hooks/index.ts +7 -0
  375. package/src/job_coordinator/job_coordinator.ts +150 -0
  376. package/src/logs/log_service.ts +237 -0
  377. package/src/messages/message_context_service.ts +62 -0
  378. package/src/notes/index.ts +1 -0
  379. package/src/notes/note_service.ts +230 -0
  380. package/src/notes_filter.ts +24 -0
  381. package/src/oracle_version.ts +22 -0
  382. package/src/private_kernel/batch_planner.ts +169 -0
  383. package/src/private_kernel/hints/compute_tx_expiration_timestamp.ts +58 -0
  384. package/src/private_kernel/hints/index.ts +2 -0
  385. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +542 -0
  386. package/src/private_kernel/hints/test_utils.ts +318 -0
  387. package/src/private_kernel/index.ts +2 -0
  388. package/src/private_kernel/private_kernel_execution_prover.ts +598 -0
  389. package/src/private_kernel/private_kernel_oracle.ts +162 -0
  390. package/src/pxe.ts +1305 -0
  391. package/src/storage/{address_data_provider/address_data_provider.ts → address_store/address_store.ts} +15 -21
  392. package/src/storage/address_store/index.ts +1 -0
  393. package/src/storage/anchor_block_store/anchor_block_store.ts +33 -0
  394. package/src/storage/anchor_block_store/index.ts +1 -0
  395. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
  396. package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
  397. package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
  398. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
  399. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
  400. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +46 -0
  401. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +36 -0
  402. package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
  403. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +18 -0
  404. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderAddressBookStore.json +16 -0
  405. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +22 -0
  406. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +97 -0
  407. package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
  408. package/src/storage/backwards_compatibility_tests/schema_tests.ts +712 -0
  409. package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
  410. package/src/storage/capsule_store/capsule_service.ts +90 -0
  411. package/src/storage/capsule_store/capsule_store.ts +333 -0
  412. package/src/storage/capsule_store/index.ts +2 -0
  413. package/src/storage/contract_store/contract_store.ts +408 -0
  414. package/src/storage/contract_store/index.ts +1 -0
  415. package/src/storage/contract_store/private_functions_tree.ts +67 -0
  416. package/src/storage/index.ts +8 -10
  417. package/src/storage/metadata.ts +1 -0
  418. package/src/storage/note_store/index.ts +2 -0
  419. package/src/storage/note_store/note_store.ts +415 -0
  420. package/src/storage/note_store/stored_note.ts +48 -0
  421. package/src/storage/open_pxe_stores.ts +49 -0
  422. package/src/storage/private_event_store/private_event_store.ts +388 -0
  423. package/src/storage/private_event_store/stored_private_event.ts +73 -0
  424. package/src/storage/tagging_store/index.ts +3 -0
  425. package/src/storage/tagging_store/recipient_tagging_store.ts +139 -0
  426. package/src/storage/tagging_store/sender_address_book_store.ts +48 -0
  427. package/src/storage/tagging_store/sender_tagging_store.ts +476 -0
  428. package/src/tagging/constants.ts +10 -0
  429. package/src/tagging/get_all_logs_by_tags.ts +120 -0
  430. package/src/tagging/index.ts +20 -0
  431. package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
  432. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +240 -0
  433. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
  434. package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
  435. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +134 -0
  436. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +66 -0
  437. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +84 -0
  438. package/dest/entrypoints/client/pxe_creation_options.d.ts +0 -11
  439. package/dest/entrypoints/client/pxe_creation_options.d.ts.map +0 -1
  440. package/dest/entrypoints/client/pxe_creation_options.js +0 -1
  441. package/dest/kernel_oracle/index.d.ts +0 -45
  442. package/dest/kernel_oracle/index.d.ts.map +0 -1
  443. package/dest/kernel_oracle/index.js +0 -76
  444. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
  445. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
  446. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.js +0 -270
  447. package/dest/kernel_prover/hints/index.d.ts +0 -2
  448. package/dest/kernel_prover/hints/index.d.ts.map +0 -1
  449. package/dest/kernel_prover/hints/index.js +0 -1
  450. package/dest/kernel_prover/index.d.ts +0 -3
  451. package/dest/kernel_prover/index.d.ts.map +0 -1
  452. package/dest/kernel_prover/index.js +0 -2
  453. package/dest/kernel_prover/kernel_prover.d.ts +0 -38
  454. package/dest/kernel_prover/kernel_prover.d.ts.map +0 -1
  455. package/dest/kernel_prover/kernel_prover.js +0 -217
  456. package/dest/kernel_prover/proving_data_oracle.d.ts +0 -73
  457. package/dest/kernel_prover/proving_data_oracle.d.ts.map +0 -1
  458. package/dest/kernel_prover/proving_data_oracle.js +0 -4
  459. package/dest/note_decryption_utils/add_public_values_to_payload.d.ts +0 -11
  460. package/dest/note_decryption_utils/add_public_values_to_payload.d.ts.map +0 -1
  461. package/dest/note_decryption_utils/add_public_values_to_payload.js +0 -47
  462. package/dest/pxe_http/index.d.ts +0 -2
  463. package/dest/pxe_http/index.d.ts.map +0 -1
  464. package/dest/pxe_http/index.js +0 -1
  465. package/dest/pxe_http/pxe_http_server.d.ts +0 -16
  466. package/dest/pxe_http/pxe_http_server.d.ts.map +0 -1
  467. package/dest/pxe_http/pxe_http_server.js +0 -27
  468. package/dest/pxe_oracle_interface/index.d.ts +0 -159
  469. package/dest/pxe_oracle_interface/index.d.ts.map +0 -1
  470. package/dest/pxe_oracle_interface/index.js +0 -692
  471. package/dest/pxe_oracle_interface/tagging_utils.d.ts +0 -17
  472. package/dest/pxe_oracle_interface/tagging_utils.d.ts.map +0 -1
  473. package/dest/pxe_oracle_interface/tagging_utils.js +0 -23
  474. package/dest/pxe_service/error_enriching.d.ts +0 -11
  475. package/dest/pxe_service/error_enriching.d.ts.map +0 -1
  476. package/dest/pxe_service/index.d.ts +0 -3
  477. package/dest/pxe_service/index.d.ts.map +0 -1
  478. package/dest/pxe_service/index.js +0 -2
  479. package/dest/pxe_service/pxe_service.d.ts +0 -111
  480. package/dest/pxe_service/pxe_service.d.ts.map +0 -1
  481. package/dest/pxe_service/pxe_service.js +0 -664
  482. package/dest/storage/address_data_provider/address_data_provider.d.ts +0 -13
  483. package/dest/storage/address_data_provider/address_data_provider.d.ts.map +0 -1
  484. package/dest/storage/address_data_provider/index.d.ts +0 -2
  485. package/dest/storage/address_data_provider/index.d.ts.map +0 -1
  486. package/dest/storage/address_data_provider/index.js +0 -1
  487. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.d.ts +0 -11
  488. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.d.ts.map +0 -1
  489. package/dest/storage/auth_witness_data_provider/auth_witness_data_provider.js +0 -20
  490. package/dest/storage/auth_witness_data_provider/index.d.ts +0 -2
  491. package/dest/storage/auth_witness_data_provider/index.d.ts.map +0 -1
  492. package/dest/storage/auth_witness_data_provider/index.js +0 -1
  493. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +0 -16
  494. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +0 -1
  495. package/dest/storage/capsule_data_provider/capsule_data_provider.js +0 -57
  496. package/dest/storage/capsule_data_provider/index.d.ts +0 -2
  497. package/dest/storage/capsule_data_provider/index.d.ts.map +0 -1
  498. package/dest/storage/capsule_data_provider/index.js +0 -1
  499. package/dest/storage/contract_data_provider/contract_data_provider.d.ts +0 -109
  500. package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +0 -1
  501. package/dest/storage/contract_data_provider/contract_data_provider.js +0 -183
  502. package/dest/storage/contract_data_provider/index.d.ts +0 -3
  503. package/dest/storage/contract_data_provider/index.d.ts.map +0 -1
  504. package/dest/storage/contract_data_provider/index.js +0 -2
  505. package/dest/storage/contract_data_provider/private_functions_tree.d.ts +0 -66
  506. package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +0 -1
  507. package/dest/storage/contract_data_provider/private_functions_tree.js +0 -99
  508. package/dest/storage/data_provider.d.ts +0 -4
  509. package/dest/storage/data_provider.d.ts.map +0 -1
  510. package/dest/storage/data_provider.js +0 -1
  511. package/dest/storage/note_data_provider/index.d.ts +0 -3
  512. package/dest/storage/note_data_provider/index.d.ts.map +0 -1
  513. package/dest/storage/note_data_provider/index.js +0 -2
  514. package/dest/storage/note_data_provider/note_dao.d.ts +0 -106
  515. package/dest/storage/note_data_provider/note_dao.d.ts.map +0 -1
  516. package/dest/storage/note_data_provider/note_dao.js +0 -106
  517. package/dest/storage/note_data_provider/note_data_provider.d.ts +0 -20
  518. package/dest/storage/note_data_provider/note_data_provider.d.ts.map +0 -1
  519. package/dest/storage/note_data_provider/note_data_provider.js +0 -249
  520. package/dest/storage/sync_data_provider/index.d.ts +0 -2
  521. package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
  522. package/dest/storage/sync_data_provider/index.js +0 -1
  523. package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -12
  524. package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
  525. package/dest/storage/sync_data_provider/sync_data_provider.js +0 -29
  526. package/dest/storage/tagging_data_provider/index.d.ts +0 -2
  527. package/dest/storage/tagging_data_provider/index.d.ts.map +0 -1
  528. package/dest/storage/tagging_data_provider/index.js +0 -1
  529. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -18
  530. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
  531. package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -65
  532. package/dest/synchronizer/index.d.ts +0 -2
  533. package/dest/synchronizer/index.d.ts.map +0 -1
  534. package/dest/synchronizer/index.js +0 -1
  535. package/dest/synchronizer/synchronizer.d.ts +0 -37
  536. package/dest/synchronizer/synchronizer.d.ts.map +0 -1
  537. package/dest/synchronizer/synchronizer.js +0 -103
  538. package/dest/test/pxe_test_suite.d.ts +0 -3
  539. package/dest/test/pxe_test_suite.d.ts.map +0 -1
  540. package/dest/test/pxe_test_suite.js +0 -97
  541. package/src/entrypoints/client/pxe_creation_options.ts +0 -7
  542. package/src/kernel_oracle/index.ts +0 -117
  543. package/src/kernel_prover/hints/build_private_kernel_reset_private_inputs.ts +0 -472
  544. package/src/kernel_prover/hints/index.ts +0 -1
  545. package/src/kernel_prover/index.ts +0 -2
  546. package/src/kernel_prover/kernel_prover.ts +0 -351
  547. package/src/kernel_prover/proving_data_oracle.ts +0 -83
  548. package/src/note_decryption_utils/add_public_values_to_payload.ts +0 -64
  549. package/src/pxe_http/index.ts +0 -1
  550. package/src/pxe_http/pxe_http_server.ts +0 -29
  551. package/src/pxe_oracle_interface/index.ts +0 -925
  552. package/src/pxe_oracle_interface/tagging_utils.ts +0 -32
  553. package/src/pxe_service/index.ts +0 -2
  554. package/src/pxe_service/pxe_service.ts +0 -949
  555. package/src/storage/address_data_provider/index.ts +0 -1
  556. package/src/storage/auth_witness_data_provider/auth_witness_data_provider.ts +0 -34
  557. package/src/storage/auth_witness_data_provider/index.ts +0 -1
  558. package/src/storage/capsule_data_provider/capsule_data_provider.ts +0 -80
  559. package/src/storage/capsule_data_provider/index.ts +0 -1
  560. package/src/storage/contract_data_provider/contract_data_provider.ts +0 -261
  561. package/src/storage/contract_data_provider/index.ts +0 -2
  562. package/src/storage/contract_data_provider/private_functions_tree.ts +0 -131
  563. package/src/storage/data_provider.ts +0 -3
  564. package/src/storage/note_data_provider/index.ts +0 -2
  565. package/src/storage/note_data_provider/note_dao.ts +0 -162
  566. package/src/storage/note_data_provider/note_data_provider.ts +0 -345
  567. package/src/storage/sync_data_provider/index.ts +0 -1
  568. package/src/storage/sync_data_provider/sync_data_provider.ts +0 -40
  569. package/src/storage/tagging_data_provider/index.ts +0 -1
  570. package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -92
  571. package/src/synchronizer/index.ts +0 -1
  572. package/src/synchronizer/synchronizer.ts +0 -121
  573. package/src/test/pxe_test_suite.ts +0 -111
@@ -1,217 +0,0 @@
1
- import { CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS, VK_TREE_HEIGHT } from '@aztec/constants';
2
- import { vkAsFieldsMegaHonk } from '@aztec/foundation/crypto';
3
- import { Fr } from '@aztec/foundation/fields';
4
- import { createLogger } from '@aztec/foundation/log';
5
- import { assertLength } from '@aztec/foundation/serialize';
6
- import { pushTestData } from '@aztec/foundation/testing';
7
- import { Timer } from '@aztec/foundation/timer';
8
- import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
9
- import { getProtocolContractLeafAndMembershipWitness, protocolContractTreeRoot } from '@aztec/protocol-contracts';
10
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
11
- import { computeContractAddressFromInstance } from '@aztec/stdlib/contract';
12
- import { hashVK } from '@aztec/stdlib/hash';
13
- import { PrivateCallData, PrivateKernelCircuitPublicInputs, PrivateKernelData, PrivateKernelInitCircuitPrivateInputs, PrivateKernelInnerCircuitPrivateInputs, PrivateKernelTailCircuitPrivateInputs, PrivateVerificationKeyHints } from '@aztec/stdlib/kernel';
14
- import { ClientIvcProof } from '@aztec/stdlib/proofs';
15
- import { collectEnqueuedPublicFunctionCalls, collectNoteHashLeafIndexMap, collectNoteHashNullifierCounterMap, collectPublicTeardownFunctionCall, getFinalMinRevertibleSideEffectCounter } from '@aztec/stdlib/tx';
16
- import { VerificationKeyAsFields } from '@aztec/stdlib/vks';
17
- import { PrivateKernelResetPrivateInputsBuilder } from './hints/build_private_kernel_reset_private_inputs.js';
18
- const NULL_PROVE_OUTPUT = {
19
- publicInputs: PrivateKernelCircuitPublicInputs.empty(),
20
- verificationKey: VerificationKeyAsFields.makeEmpty(CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS),
21
- outputWitness: new Map(),
22
- bytecode: Buffer.from([])
23
- };
24
- /**
25
- * The KernelProver class is responsible for generating kernel proofs.
26
- * It takes a transaction request, its signature, and the simulation result as inputs, and outputs a proof
27
- * along with output notes. The class interacts with a ProvingDataOracle to fetch membership witnesses and
28
- * constructs private call data based on the execution results.
29
- */ export class KernelProver {
30
- oracle;
31
- proofCreator;
32
- fakeProofs;
33
- log;
34
- constructor(oracle, proofCreator, fakeProofs = false){
35
- this.oracle = oracle;
36
- this.proofCreator = proofCreator;
37
- this.fakeProofs = fakeProofs;
38
- this.log = createLogger('pxe:kernel-prover');
39
- }
40
- /**
41
- * Generate a proof for a given transaction request and execution result.
42
- * The function iterates through the nested executions in the execution result, creates private call data,
43
- * and generates a proof using the provided ProofCreator instance. It also maintains an index of new notes
44
- * created during the execution and returns them as a part of the KernelProverOutput.
45
- *
46
- * @param txRequest - The authenticated transaction request object.
47
- * @param executionResult - The execution result object containing nested executions and preimages.
48
- * @param profile - Set true to profile the gate count for each circuit
49
- * @returns A Promise that resolves to a KernelProverOutput object containing proof, public inputs, and output notes.
50
- * TODO(#7368) this should be refactored to not recreate the ACIR bytecode now that it operates on a program stack
51
- */ async prove(txRequest, executionResult, { simulate, skipFeeEnforcement, profile } = {
52
- simulate: false,
53
- skipFeeEnforcement: false,
54
- profile: false
55
- }) {
56
- const skipProofGeneration = this.fakeProofs || simulate;
57
- const generateWitnesses = !skipProofGeneration || profile;
58
- const timer = new Timer();
59
- const isPrivateOnlyTx = this.isPrivateOnly(executionResult);
60
- const executionStack = [
61
- executionResult.entrypoint
62
- ];
63
- let firstIteration = true;
64
- let output = NULL_PROVE_OUTPUT;
65
- const gateCounts = [];
66
- const addGateCount = async (circuitName, bytecode)=>{
67
- const gateCount = await this.proofCreator.computeGateCountForCircuit(bytecode, circuitName);
68
- gateCounts.push({
69
- circuitName,
70
- gateCount
71
- });
72
- this.log.debug(`Gate count for ${circuitName} - ${gateCount}`);
73
- };
74
- const noteHashLeafIndexMap = collectNoteHashLeafIndexMap(executionResult);
75
- const noteHashNullifierCounterMap = collectNoteHashNullifierCounterMap(executionResult);
76
- const enqueuedPublicFunctions = collectEnqueuedPublicFunctionCalls(executionResult);
77
- const hasPublicCalls = enqueuedPublicFunctions.length > 0 || !collectPublicTeardownFunctionCall(executionResult).isEmpty();
78
- const validationRequestsSplitCounter = hasPublicCalls ? getFinalMinRevertibleSideEffectCounter(executionResult) : 0;
79
- // vector of gzipped bincode acirs
80
- const acirs = [];
81
- const witnessStack = [];
82
- while(executionStack.length){
83
- if (!firstIteration) {
84
- let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, validationRequestsSplitCounter);
85
- while(resetBuilder.needsReset()){
86
- const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
87
- output = generateWitnesses ? await this.proofCreator.generateResetOutput(privateInputs) : await this.proofCreator.simulateReset(privateInputs);
88
- // TODO(#7368) consider refactoring this redundant bytecode pushing
89
- acirs.push(output.bytecode);
90
- witnessStack.push(output.outputWitness);
91
- if (profile) {
92
- await addGateCount('private_kernel_reset', output.bytecode);
93
- }
94
- resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, validationRequestsSplitCounter);
95
- }
96
- }
97
- const currentExecution = executionStack.pop();
98
- executionStack.push(...[
99
- ...currentExecution.nestedExecutions
100
- ].reverse());
101
- const functionName = await this.oracle.getDebugFunctionName(currentExecution.publicInputs.callContext.contractAddress, currentExecution.publicInputs.callContext.functionSelector);
102
- // TODO(#7368): This used to be associated with getDebugFunctionName
103
- // TODO(#7368): Is there any way to use this with client IVC proving?
104
- acirs.push(currentExecution.acir);
105
- witnessStack.push(currentExecution.partialWitness);
106
- if (profile) {
107
- await addGateCount(functionName, currentExecution.acir);
108
- }
109
- const privateCallData = await this.createPrivateCallData(currentExecution);
110
- if (firstIteration) {
111
- const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), protocolContractTreeRoot, privateCallData, isPrivateOnlyTx, executionResult.firstNullifier);
112
- this.log.debug(`Calling private kernel init with isPrivateOnly ${isPrivateOnlyTx} and firstNullifierHint ${proofInput.firstNullifierHint}`);
113
- pushTestData('private-kernel-inputs-init', proofInput);
114
- output = generateWitnesses ? await this.proofCreator.generateInitOutput(proofInput) : await this.proofCreator.simulateInit(proofInput);
115
- acirs.push(output.bytecode);
116
- witnessStack.push(output.outputWitness);
117
- if (profile) {
118
- await addGateCount('private_kernel_init', output.bytecode);
119
- }
120
- } else {
121
- const previousVkMembershipWitness = await this.oracle.getVkMembershipWitness(output.verificationKey);
122
- const previousKernelData = new PrivateKernelData(output.publicInputs, output.verificationKey, Number(previousVkMembershipWitness.leafIndex), assertLength(previousVkMembershipWitness.siblingPath, VK_TREE_HEIGHT));
123
- const proofInput = new PrivateKernelInnerCircuitPrivateInputs(previousKernelData, privateCallData);
124
- pushTestData('private-kernel-inputs-inner', proofInput);
125
- output = generateWitnesses ? await this.proofCreator.generateInnerOutput(proofInput) : await this.proofCreator.simulateInner(proofInput);
126
- acirs.push(output.bytecode);
127
- witnessStack.push(output.outputWitness);
128
- if (profile) {
129
- await addGateCount('private_kernel_inner', output.bytecode);
130
- }
131
- }
132
- firstIteration = false;
133
- }
134
- // Reset.
135
- let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, validationRequestsSplitCounter);
136
- while(resetBuilder.needsReset()){
137
- const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
138
- output = generateWitnesses ? await this.proofCreator.generateResetOutput(privateInputs) : await this.proofCreator.simulateReset(privateInputs);
139
- acirs.push(output.bytecode);
140
- witnessStack.push(output.outputWitness);
141
- if (profile) {
142
- await addGateCount('private_kernel_reset', output.bytecode);
143
- }
144
- resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, validationRequestsSplitCounter);
145
- }
146
- if (output.publicInputs.feePayer.isZero() && skipFeeEnforcement) {
147
- if (!skipProofGeneration) {
148
- throw new Error('Fee payment must be enforced when creating real proof.');
149
- }
150
- output.publicInputs.feePayer = new AztecAddress(Fr.MAX_FIELD_VALUE);
151
- }
152
- // Private tail.
153
- const previousVkMembershipWitness = await this.oracle.getVkMembershipWitness(output.verificationKey);
154
- const previousKernelData = new PrivateKernelData(output.publicInputs, output.verificationKey, Number(previousVkMembershipWitness.leafIndex), assertLength(previousVkMembershipWitness.siblingPath, VK_TREE_HEIGHT));
155
- this.log.debug(`Calling private kernel tail with hwm ${previousKernelData.publicInputs.minRevertibleSideEffectCounter}`);
156
- const privateInputs = new PrivateKernelTailCircuitPrivateInputs(previousKernelData);
157
- pushTestData('private-kernel-inputs-ordering', privateInputs);
158
- const tailOutput = generateWitnesses ? await this.proofCreator.generateTailOutput(privateInputs) : await this.proofCreator.simulateTail(privateInputs);
159
- acirs.push(tailOutput.bytecode);
160
- witnessStack.push(tailOutput.outputWitness);
161
- if (profile) {
162
- await addGateCount('private_kernel_tail', tailOutput.bytecode);
163
- tailOutput.profileResult = {
164
- gateCounts
165
- };
166
- }
167
- if (generateWitnesses) {
168
- this.log.info(`Private kernel witness generation took ${timer.ms()}ms`);
169
- }
170
- // TODO(#7368) how do we 'bincode' encode these inputs?
171
- if (!skipProofGeneration) {
172
- const ivcProof = await this.proofCreator.createClientIvcProof(acirs, witnessStack);
173
- tailOutput.clientIvcProof = ivcProof;
174
- } else {
175
- tailOutput.clientIvcProof = ClientIvcProof.random();
176
- }
177
- return tailOutput;
178
- }
179
- async createPrivateCallData({ publicInputs, vk: vkAsBuffer }) {
180
- const { contractAddress, functionSelector } = publicInputs.callContext;
181
- const vkAsFields = await vkAsFieldsMegaHonk(vkAsBuffer);
182
- const vk = new VerificationKeyAsFields(vkAsFields, await hashVK(vkAsFields));
183
- const { currentContractClassId, publicKeys, saltedInitializationHash } = await this.oracle.getContractAddressPreimage(contractAddress);
184
- const functionLeafMembershipWitness = await this.oracle.getFunctionMembershipWitness(currentContractClassId, functionSelector);
185
- const { artifactHash: contractClassArtifactHash, publicBytecodeCommitment: contractClassPublicBytecodeCommitment } = await this.oracle.getContractClassIdPreimage(currentContractClassId);
186
- // This will be the address computed in the kernel by the executed class. We need to provide non membership of it in the protocol contract tree.
187
- // This would only be equal to contractAddress if the currentClassId is equal to the original class id (no update happened).
188
- const computedAddress = await computeContractAddressFromInstance({
189
- originalContractClassId: currentContractClassId,
190
- saltedInitializationHash,
191
- publicKeys
192
- });
193
- const { lowLeaf: protocolContractLeaf, witness: protocolContractMembershipWitness } = await getProtocolContractLeafAndMembershipWitness(contractAddress, computedAddress);
194
- const updatedClassIdHints = await this.oracle.getUpdatedClassIdHints(contractAddress);
195
- return PrivateCallData.from({
196
- publicInputs,
197
- vk,
198
- verificationKeyHints: PrivateVerificationKeyHints.from({
199
- publicKeys,
200
- contractClassArtifactHash,
201
- contractClassPublicBytecodeCommitment,
202
- saltedInitializationHash,
203
- functionLeafMembershipWitness,
204
- protocolContractMembershipWitness,
205
- protocolContractLeaf,
206
- updatedClassIdHints
207
- })
208
- });
209
- }
210
- isPrivateOnly(executionResult) {
211
- const isPrivateOnlyRecursive = (callResult)=>{
212
- const makesPublicCalls = callResult.enqueuedPublicFunctionCalls.some((enqueuedCall)=>!enqueuedCall.isEmpty()) || !callResult.publicTeardownFunctionCall.isEmpty();
213
- return !makesPublicCalls && callResult.nestedExecutions.every((nestedExecution)=>isPrivateOnlyRecursive(nestedExecution));
214
- };
215
- return isPrivateOnlyRecursive(executionResult.entrypoint);
216
- }
217
- }
@@ -1,73 +0,0 @@
1
- import type { FUNCTION_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT, VK_TREE_HEIGHT } from '@aztec/constants';
2
- import type { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
3
- import type { MembershipWitness } from '@aztec/foundation/trees';
4
- import type { FunctionSelector } from '@aztec/stdlib/abi';
5
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
6
- import { UpdatedClassIdHints } from '@aztec/stdlib/kernel';
7
- import type { PublicKeys } from '@aztec/stdlib/keys';
8
- import type { NullifierMembershipWitness } from '@aztec/stdlib/trees';
9
- import type { VerificationKeyAsFields } from '@aztec/stdlib/vks';
10
- /**
11
- * Provides functionality to fetch membership witnesses for verification keys,
12
- * contract addresses, and function selectors in their respective merkle trees.
13
- */
14
- export interface ProvingDataOracle {
15
- /** Retrieves the preimage of a contract address from the registered contract instances db. */
16
- getContractAddressPreimage(address: AztecAddress): Promise<{
17
- saltedInitializationHash: Fr;
18
- publicKeys: PublicKeys;
19
- currentContractClassId: Fr;
20
- originalContractClassId: Fr;
21
- }>;
22
- /** Retrieves the preimage of a contract class id from the contract classes db. */
23
- getContractClassIdPreimage(contractClassId: Fr): Promise<{
24
- artifactHash: Fr;
25
- publicBytecodeCommitment: Fr;
26
- privateFunctionsRoot: Fr;
27
- }>;
28
- /**
29
- * Retrieve the function membership witness for the given contract class and function selector.
30
- * The function membership witness represents a proof that the function belongs to the specified contract.
31
- * Throws an error if the contract address or function selector is unknown.
32
- *
33
- * @param contractClassId - The id of the class.
34
- * @param selector - The function selector.
35
- * @returns A promise that resolves with the MembershipWitness instance for the specified contract's function.
36
- */
37
- getFunctionMembershipWitness(contractClassId: Fr, selector: FunctionSelector): Promise<MembershipWitness<typeof FUNCTION_TREE_HEIGHT>>;
38
- /**
39
- * Retrieve the membership witness corresponding to a verification key.
40
- * This function currently returns a random membership witness of the specified height,
41
- * which is a placeholder implementation until a concrete membership witness calculation
42
- * is implemented.
43
- *
44
- * @param vk - The VerificationKey for which the membership witness is needed.
45
- * @returns A Promise that resolves to the MembershipWitness instance.
46
- */
47
- getVkMembershipWitness(vk: VerificationKeyAsFields): Promise<MembershipWitness<typeof VK_TREE_HEIGHT>>;
48
- /**
49
- * Get the note membership witness for a note in the note hash tree at the given leaf index.
50
- *
51
- * @param leafIndex - The leaf index of the note in the note hash tree.
52
- * @returns the MembershipWitness for the note.
53
- */
54
- getNoteHashMembershipWitness(leafIndex: bigint): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT>>;
55
- getNullifierMembershipWitness(nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
56
- /**
57
- * Get the root of the note hash tree.
58
- *
59
- * @returns the root of the note hash tree.
60
- */
61
- getNoteHashTreeRoot(): Promise<Fr>;
62
- /**
63
- * Retrieves the sk_m corresponding to the pk_m.
64
- * @throws If the provided public key is not associated with any of the registered accounts.
65
- * @param pkM - The master public key to get secret key for.
66
- * @returns A Promise that resolves to sk_m.
67
- * @dev Used when feeding the sk_m to the kernel circuit for keys verification.
68
- */
69
- getMasterSecretKey(masterPublicKey: Point): Promise<GrumpkinScalar>;
70
- getDebugFunctionName(contractAddress: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
71
- getUpdatedClassIdHints(contractAddress: AztecAddress): Promise<UpdatedClassIdHints>;
72
- }
73
- //# sourceMappingURL=proving_data_oracle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"proving_data_oracle.d.ts","sourceRoot":"","sources":["../../src/kernel_prover/proving_data_oracle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,8FAA8F;IAC9F,0BAA0B,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC;QACzD,wBAAwB,EAAE,EAAE,CAAC;QAC7B,UAAU,EAAE,UAAU,CAAC;QACvB,sBAAsB,EAAE,EAAE,CAAC;QAC3B,uBAAuB,EAAE,EAAE,CAAC;KAC7B,CAAC,CAAC;IAEH,kFAAkF;IAClF,0BAA0B,CACxB,eAAe,EAAE,EAAE,GAClB,OAAO,CAAC;QAAE,YAAY,EAAE,EAAE,CAAC;QAAC,wBAAwB,EAAE,EAAE,CAAC;QAAC,oBAAoB,EAAE,EAAE,CAAA;KAAE,CAAC,CAAC;IAEzF;;;;;;;;OAQG;IACH,4BAA4B,CAC1B,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,iBAAiB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;IAE3D;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC;IAEvG;;;;;OAKG;IACH,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;IAE1G,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAAC;IAE9F;;;;OAIG;IACH,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IAEnC;;;;;;OAMG;IACH,kBAAkB,CAAC,eAAe,EAAE,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEpE,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7G,sBAAsB,CAAC,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrF"}
@@ -1,4 +0,0 @@
1
- /**
2
- * Provides functionality to fetch membership witnesses for verification keys,
3
- * contract addresses, and function selectors in their respective merkle trees.
4
- */ export { };
@@ -1,11 +0,0 @@
1
- import type { L1NotePayload } from '@aztec/stdlib/logs';
2
- import { Note } from '@aztec/stdlib/note';
3
- import type { ContractDataProvider } from '../storage/contract_data_provider/contract_data_provider.js';
4
- /**
5
- * Merges privately and publicly delivered note values.
6
- * @param db - PXE database used to fetch contract instance and artifact.
7
- * @param payload - Payload corresponding to the note.
8
- * @returns Note payload with public fields added.
9
- */
10
- export declare function getOrderedNoteItems(contractDataProvider: ContractDataProvider, { contractAddress, noteTypeId, privateNoteValues, publicNoteValues }: L1NotePayload): Promise<Note>;
11
- //# sourceMappingURL=add_public_values_to_payload.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add_public_values_to_payload.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/add_public_values_to_payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AAExG;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,oBAAoB,EAAE,oBAAoB,EAC1C,EAAE,eAAe,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,aAAa,GAClF,OAAO,CAAC,IAAI,CAAC,CAgDf"}
@@ -1,47 +0,0 @@
1
- import { ContractNotFoundError } from '@aztec/simulator/client';
2
- import { Note } from '@aztec/stdlib/note';
3
- /**
4
- * Merges privately and publicly delivered note values.
5
- * @param db - PXE database used to fetch contract instance and artifact.
6
- * @param payload - Payload corresponding to the note.
7
- * @returns Note payload with public fields added.
8
- */ export async function getOrderedNoteItems(contractDataProvider, { contractAddress, noteTypeId, privateNoteValues, publicNoteValues }) {
9
- if (publicNoteValues.length === 0) {
10
- return new Note(privateNoteValues);
11
- }
12
- const instance = await contractDataProvider.getContractInstance(contractAddress);
13
- if (!instance) {
14
- throw new ContractNotFoundError(`Could not find instance for ${contractAddress.toString()}. This should never happen here as the partial notes flow should be triggered only for non-deferred notes.`);
15
- }
16
- const artifact = await contractDataProvider.getContractArtifact(instance.currentContractClassId);
17
- if (!artifact) {
18
- throw new Error(`Could not find artifact for contract class ${instance.currentContractClassId.toString()}. This should never happen here as the partial notes flow should be triggered only for non-deferred notes.`);
19
- }
20
- const noteFields = Object.values(artifact.notes).find((note)=>note.id.equals(noteTypeId))?.fields;
21
- if (!noteFields) {
22
- throw new Error(`Could not find note fields for note type ${noteTypeId.toString()}.`);
23
- }
24
- // We sort note fields by index so that we can iterate over them in order.
25
- noteFields.sort((a, b)=>a.index - b.index);
26
- // Now we insert the public fields into the note based on its indices defined in the ABI.
27
- const modifiedNoteItems = [
28
- ...privateNoteValues
29
- ];
30
- let indexInPublicValues = 0;
31
- for(let i = 0; i < noteFields.length; i++){
32
- const noteField = noteFields[i];
33
- if (noteField.nullable) {
34
- if (i == noteFields.length - 1) {
35
- // We are processing the last field so we simply insert the rest of the public fields at the end
36
- modifiedNoteItems.push(...publicNoteValues.slice(indexInPublicValues));
37
- } else {
38
- const noteFieldLength = noteFields[i + 1].index - noteField.index;
39
- const publicValuesToInsert = publicNoteValues.slice(indexInPublicValues, indexInPublicValues + noteFieldLength);
40
- indexInPublicValues += noteFieldLength;
41
- // Now we insert the public fields at the note field index
42
- modifiedNoteItems.splice(noteField.index, 0, ...publicValuesToInsert);
43
- }
44
- }
45
- }
46
- return new Note(modifiedNoteItems);
47
- }
@@ -1,2 +0,0 @@
1
- export * from './pxe_http_server.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pxe_http/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -1 +0,0 @@
1
- export * from './pxe_http_server.js';
@@ -1,16 +0,0 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- import { type PXE } from '@aztec/stdlib/interfaces/client';
3
- import http from 'http';
4
- /**
5
- * Wraps an instance of Private eXecution Environment (PXE) implementation to a JSON RPC HTTP interface.
6
- * @returns A new instance of the HTTP server.
7
- */
8
- export declare function createPXERpcServer(pxeService: PXE): import("@aztec/foundation/json-rpc/server").SafeJsonRpcServer;
9
- /**
10
- * Creates an http server that forwards calls to the PXE and starts it on the given port.
11
- * @param pxeService - PXE that answers queries to the created HTTP server.
12
- * @param port - Port to listen in.
13
- * @returns A running http server.
14
- */
15
- export declare function startPXEHttpServer(pxeService: PXE, port: string | number): http.Server;
16
- //# sourceMappingURL=pxe_http_server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pxe_http_server.d.ts","sourceRoot":"","sources":["../../src/pxe_http/pxe_http_server.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,iCAAiC,CAAC;AAEtE,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,GAAG,iEAEjD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,CAStF"}
@@ -1,27 +0,0 @@
1
- import { createNamespacedSafeJsonRpcServer, createSafeJsonRpcServer } from '@aztec/foundation/json-rpc/server';
2
- import { PXESchema } from '@aztec/stdlib/interfaces/client';
3
- import http from 'http';
4
- /**
5
- * Wraps an instance of Private eXecution Environment (PXE) implementation to a JSON RPC HTTP interface.
6
- * @returns A new instance of the HTTP server.
7
- */ export function createPXERpcServer(pxeService) {
8
- return createSafeJsonRpcServer(pxeService, PXESchema);
9
- }
10
- /**
11
- * Creates an http server that forwards calls to the PXE and starts it on the given port.
12
- * @param pxeService - PXE that answers queries to the created HTTP server.
13
- * @param port - Port to listen in.
14
- * @returns A running http server.
15
- */ export function startPXEHttpServer(pxeService, port) {
16
- const rpcServer = createNamespacedSafeJsonRpcServer({
17
- pxe: [
18
- pxeService,
19
- PXESchema
20
- ]
21
- });
22
- const app = rpcServer.getApp();
23
- // eslint-disable-next-line @typescript-eslint/no-misused-promises
24
- const httpServer = http.createServer(app.callback());
25
- httpServer.listen(port);
26
- return httpServer;
27
- }
@@ -1,159 +0,0 @@
1
- import { type L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
3
- import type { KeyStore } from '@aztec/key-store';
4
- import { AcirSimulator, type ExecutionDataProvider, type SimulationProvider } from '@aztec/simulator/client';
5
- import { MessageLoadOracleInputs } from '@aztec/simulator/client';
6
- import { type FunctionArtifact, FunctionSelector } from '@aztec/stdlib/abi';
7
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
8
- import type { L2Block } from '@aztec/stdlib/block';
9
- import type { CompleteAddress, ContractInstance } from '@aztec/stdlib/contract';
10
- import type { AztecNode } from '@aztec/stdlib/interfaces/client';
11
- import type { KeyValidationRequest } from '@aztec/stdlib/kernel';
12
- import { IndexedTaggingSecret, LogWithTxData, TxScopedL2Log } from '@aztec/stdlib/logs';
13
- import { Note, type NoteStatus } from '@aztec/stdlib/note';
14
- import { MerkleTreeId, type NullifierMembershipWitness, PublicDataWitness } from '@aztec/stdlib/trees';
15
- import type { BlockHeader } from '@aztec/stdlib/tx';
16
- import { TxHash } from '@aztec/stdlib/tx';
17
- import type { AddressDataProvider } from '../storage/address_data_provider/address_data_provider.js';
18
- import type { AuthWitnessDataProvider } from '../storage/auth_witness_data_provider/auth_witness_data_provider.js';
19
- import type { CapsuleDataProvider } from '../storage/capsule_data_provider/capsule_data_provider.js';
20
- import type { ContractDataProvider } from '../storage/contract_data_provider/contract_data_provider.js';
21
- import type { NoteDataProvider } from '../storage/note_data_provider/note_data_provider.js';
22
- import type { SyncDataProvider } from '../storage/sync_data_provider/sync_data_provider.js';
23
- import type { TaggingDataProvider } from '../storage/tagging_data_provider/tagging_data_provider.js';
24
- /**
25
- * A data layer that provides and stores information needed for simulating/proving a transaction.
26
- */
27
- export declare class PXEOracleInterface implements ExecutionDataProvider {
28
- #private;
29
- private aztecNode;
30
- private keyStore;
31
- private simulationProvider;
32
- private contractDataProvider;
33
- private noteDataProvider;
34
- private capsuleDataProvider;
35
- private syncDataProvider;
36
- private taggingDataProvider;
37
- private addressDataProvider;
38
- private authWitnessDataProvider;
39
- private log;
40
- constructor(aztecNode: AztecNode, keyStore: KeyStore, simulationProvider: SimulationProvider, contractDataProvider: ContractDataProvider, noteDataProvider: NoteDataProvider, capsuleDataProvider: CapsuleDataProvider, syncDataProvider: SyncDataProvider, taggingDataProvider: TaggingDataProvider, addressDataProvider: AddressDataProvider, authWitnessDataProvider: AuthWitnessDataProvider, log?: import("@aztec/foundation/log").Logger);
41
- getKeyValidationRequest(pkMHash: Fr, contractAddress: AztecAddress): Promise<KeyValidationRequest>;
42
- getCompleteAddress(account: AztecAddress): Promise<CompleteAddress>;
43
- getContractInstance(address: AztecAddress): Promise<ContractInstance>;
44
- getAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
45
- getNotes(contractAddress: AztecAddress, storageSlot: Fr, status: NoteStatus, scopes?: AztecAddress[]): Promise<{
46
- contractAddress: AztecAddress;
47
- storageSlot: Fr;
48
- nonce: Fr;
49
- note: Note;
50
- noteHash: Fr;
51
- siloedNullifier: Fr;
52
- index: bigint;
53
- }[]>;
54
- getFunctionArtifact(contractAddress: AztecAddress, selector: FunctionSelector): Promise<FunctionArtifact>;
55
- getFunctionArtifactByName(contractAddress: AztecAddress, functionName: string): Promise<FunctionArtifact | undefined>;
56
- /**
57
- * Fetches a message from the db, given its key.
58
- * @param contractAddress - Address of a contract by which the message was emitted.
59
- * @param messageHash - Hash of the message.
60
- * @param secret - Secret used to compute a nullifier.
61
- * @dev Contract address and secret are only used to compute the nullifier to get non-nullified messages
62
- * @returns The l1 to l2 membership witness (index of message in the tree and sibling path).
63
- */
64
- getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
65
- getL1ToL2LeafValue(_leafIndex: bigint): Promise<Fr | undefined>;
66
- /**
67
- * Gets the index of a commitment in the note hash tree.
68
- * @param commitment - The commitment.
69
- * @returns - The index of the commitment. Undefined if it does not exist in the tree.
70
- */
71
- getCommitmentIndex(commitment: Fr): Promise<bigint | undefined>;
72
- getCommitmentValue(_leafIndex: bigint): Promise<Fr | undefined>;
73
- getNullifierIndex(nullifier: Fr): Promise<bigint | undefined>;
74
- getMembershipWitness(blockNumber: number, treeId: MerkleTreeId, leafValue: Fr): Promise<Fr[]>;
75
- getNullifierMembershipWitnessAtLatestBlock(nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
76
- getNullifierMembershipWitness(blockNumber: number, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
77
- getLowNullifierMembershipWitness(blockNumber: number, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
78
- getBlock(blockNumber: number): Promise<L2Block | undefined>;
79
- getPublicDataTreeWitness(blockNumber: number, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
80
- getPublicStorageAt(blockNumber: number, contract: AztecAddress, slot: Fr): Promise<Fr>;
81
- /**
82
- * Retrieve the databases view of the Block Header object.
83
- * This structure is fed into the circuits simulator and is used to prove against certain historical roots.
84
- *
85
- * @returns A Promise that resolves to a BlockHeader object.
86
- */
87
- getBlockHeader(): Promise<BlockHeader>;
88
- /**
89
- * Fetches the current block number.
90
- * @returns The block number.
91
- */
92
- getBlockNumber(): Promise<number>;
93
- /**
94
- * Fetches the current chain id.
95
- * @returns The chain id.
96
- */
97
- getChainId(): Promise<number>;
98
- /**
99
- * Fetches the current version.
100
- * @returns The version.
101
- */
102
- getVersion(): Promise<number>;
103
- getDebugFunctionName(contractAddress: AztecAddress, selector: FunctionSelector): Promise<string>;
104
- /**
105
- * Returns the full contents of your address book.
106
- * This is used when calculating tags for incoming notes by deriving the shared secret, the contract-siloed tagging secret, and
107
- * finally the index specified tag. We will then query the node with this tag for each address in the address book.
108
- * @returns The full list of the users contact addresses.
109
- */
110
- getSenders(): Promise<AztecAddress[]>;
111
- /**
112
- * Returns the tagging secret for a given sender and recipient pair. For this to work, the ivsk_m of the sender must be known.
113
- * Includes the next index to be used used for tagging with this secret.
114
- * @param contractAddress - The contract address to silo the secret for
115
- * @param sender - The address sending the note
116
- * @param recipient - The address receiving the note
117
- * @returns An indexed tagging secret that can be used to tag notes.
118
- */
119
- getIndexedTaggingSecretAsSender(contractAddress: AztecAddress, sender: AztecAddress, recipient: AztecAddress): Promise<IndexedTaggingSecret>;
120
- /**
121
- * Increments the tagging secret for a given sender and recipient pair. For this to work, the ivsk_m of the sender must be known.
122
- * @param contractAddress - The contract address to silo the secret for
123
- * @param sender - The address sending the note
124
- * @param recipient - The address receiving the note
125
- */
126
- incrementAppTaggingSecretIndexAsSender(contractAddress: AztecAddress, sender: AztecAddress, recipient: AztecAddress): Promise<void>;
127
- /**
128
- * Updates the local index of the shared tagging secret of a sender / recipient pair
129
- * if a log with a larger index is found from the node.
130
- * @param contractAddress - The address of the contract that the logs are tagged for
131
- * @param sender - The address of the sender, we must know the sender's ivsk_m.
132
- * @param recipient - The address of the recipient.
133
- */
134
- syncTaggedLogsAsSender(contractAddress: AztecAddress, sender: AztecAddress, recipient: AztecAddress): Promise<void>;
135
- /**
136
- * Synchronizes the logs tagged with scoped addresses and all the senders in the address book.
137
- * Returns the unsynched logs and updates the indexes of the secrets used to tag them until there are no more logs
138
- * to sync.
139
- * @param contractAddress - The address of the contract that the logs are tagged for
140
- * @param recipient - The address of the recipient
141
- * @returns A list of encrypted logs tagged with the recipient's address
142
- */
143
- syncTaggedLogs(contractAddress: AztecAddress, maxBlockNumber: number, scopes?: AztecAddress[]): Promise<Map<string, TxScopedL2Log[]>>;
144
- /**
145
- * Processes the tagged logs returned by syncTaggedLogs by decrypting them and storing them in the database.
146
- * @param logs - The logs to process.
147
- * @param recipient - The recipient of the logs.
148
- */
149
- processTaggedLogs(logs: TxScopedL2Log[], recipient: AztecAddress, simulator?: AcirSimulator): Promise<void>;
150
- deliverNote(contractAddress: AztecAddress, storageSlot: Fr, nonce: Fr, content: Fr[], noteHash: Fr, nullifier: Fr, txHash: Fr, recipient: AztecAddress): Promise<void>;
151
- getLogByTag(tag: Fr): Promise<LogWithTxData | null>;
152
- removeNullifiedNotes(contractAddress: AztecAddress): Promise<void>;
153
- callProcessLog(contractAddress: AztecAddress, logPlaintext: Fr[], txHash: TxHash, noteHashes: Fr[], firstNullifier: Fr, recipient: AztecAddress, simulator?: AcirSimulator): Promise<void>;
154
- storeCapsule(contractAddress: AztecAddress, slot: Fr, capsule: Fr[]): Promise<void>;
155
- loadCapsule(contractAddress: AztecAddress, slot: Fr): Promise<Fr[] | null>;
156
- deleteCapsule(contractAddress: AztecAddress, slot: Fr): Promise<void>;
157
- copyCapsule(contractAddress: AztecAddress, srcSlot: Fr, dstSlot: Fr, numEntries: number): Promise<void>;
158
- }
159
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pxe_oracle_interface/index.ts"],"names":[],"mappings":"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"}