@aztec/pxe 0.0.1-commit.b655e406 → 0.0.1-commit.b8a057fa

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 (620) hide show
  1. package/dest/bin/check_oracle_version.d.ts +1 -1
  2. package/dest/bin/check_oracle_version.js +53 -29
  3. package/dest/bin/index.d.ts +2 -0
  4. package/dest/bin/index.d.ts.map +1 -0
  5. package/dest/bin/index.js +1 -0
  6. package/dest/bin/oracle_version_helpers.d.ts +51 -0
  7. package/dest/bin/oracle_version_helpers.d.ts.map +1 -0
  8. package/dest/bin/oracle_version_helpers.js +254 -0
  9. package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
  10. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
  11. package/dest/block_synchronizer/block_stream_source.js +37 -0
  12. package/dest/block_synchronizer/block_synchronizer.d.ts +53 -0
  13. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
  14. package/dest/block_synchronizer/block_synchronizer.js +209 -0
  15. package/dest/block_synchronizer/index.d.ts +2 -0
  16. package/dest/block_synchronizer/index.d.ts.map +1 -0
  17. package/dest/block_synchronizer/index.js +1 -0
  18. package/dest/config/index.d.ts +14 -13
  19. package/dest/config/index.d.ts.map +1 -1
  20. package/dest/config/index.js +25 -15
  21. package/dest/config/package_info.d.ts +1 -1
  22. package/dest/config/package_info.js +1 -1
  23. package/dest/contract/contract_class_service.d.ts +31 -0
  24. package/dest/contract/contract_class_service.d.ts.map +1 -0
  25. package/dest/contract/contract_class_service.js +68 -0
  26. package/dest/contract/contract_sync_service.d.ts +48 -0
  27. package/dest/contract/contract_sync_service.d.ts.map +1 -0
  28. package/dest/contract/contract_sync_service.js +116 -0
  29. package/dest/contract/helpers.d.ts +7 -0
  30. package/dest/contract/helpers.d.ts.map +1 -0
  31. package/dest/contract/helpers.js +20 -0
  32. package/dest/contract_function_simulator/anchored_contract_data.d.ts +36 -0
  33. package/dest/contract_function_simulator/anchored_contract_data.d.ts.map +1 -0
  34. package/dest/contract_function_simulator/anchored_contract_data.js +54 -0
  35. package/dest/contract_function_simulator/benchmarked_node.d.ts +9 -0
  36. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +1 -0
  37. package/dest/contract_function_simulator/benchmarked_node.js +77 -0
  38. package/dest/contract_function_simulator/contract_function_simulator.d.ts +93 -29
  39. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  40. package/dest/contract_function_simulator/contract_function_simulator.js +307 -97
  41. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  42. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  43. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  44. package/dest/contract_function_simulator/execution_note_cache.d.ts +22 -17
  45. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  46. package/dest/contract_function_simulator/execution_note_cache.js +41 -36
  47. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -11
  48. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  49. package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -15
  50. package/dest/contract_function_simulator/hashed_values_cache.d.ts +2 -2
  51. package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -1
  52. package/dest/contract_function_simulator/index.d.ts +27 -6
  53. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  54. package/dest/contract_function_simulator/index.js +13 -4
  55. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +29 -0
  56. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
  57. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +30 -0
  58. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts +9 -0
  59. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts.map +1 -0
  60. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.js +1 -0
  61. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts +7 -0
  62. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts.map +1 -0
  63. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.js +1 -0
  64. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts +37 -0
  65. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts.map +1 -0
  66. package/dest/contract_function_simulator/noir-structs/ephemeral_array.js +59 -0
  67. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +6 -6
  68. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  69. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +13 -11
  70. package/dest/contract_function_simulator/noir-structs/fact.d.ts +16 -0
  71. package/dest/contract_function_simulator/noir-structs/fact.d.ts.map +1 -0
  72. package/dest/contract_function_simulator/noir-structs/fact.js +6 -0
  73. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts +27 -0
  74. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts.map +1 -0
  75. package/dest/contract_function_simulator/noir-structs/fact_collection.js +31 -0
  76. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +21 -11
  77. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  78. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +12 -23
  79. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +11 -9
  80. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  81. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +2 -63
  82. package/dest/contract_function_simulator/noir-structs/note_data.d.ts +27 -0
  83. package/dest/contract_function_simulator/noir-structs/note_data.d.ts.map +1 -0
  84. package/dest/contract_function_simulator/noir-structs/note_data.js +3 -0
  85. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +7 -7
  86. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  87. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +16 -11
  88. package/dest/contract_function_simulator/noir-structs/option.d.ts +59 -0
  89. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
  90. package/dest/contract_function_simulator/noir-structs/option.js +67 -0
  91. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts +11 -0
  92. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts.map +1 -0
  93. package/dest/contract_function_simulator/noir-structs/origin_block.js +5 -0
  94. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts +11 -0
  95. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts.map +1 -0
  96. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.js +4 -0
  97. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +8 -0
  98. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -0
  99. package/dest/contract_function_simulator/noir-structs/provided_secret.js +1 -0
  100. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts +28 -0
  101. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts.map +1 -0
  102. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.js +43 -0
  103. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts +21 -0
  104. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts.map +1 -0
  105. package/dest/contract_function_simulator/noir-structs/resolved_tx.js +50 -0
  106. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts +14 -0
  107. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts.map +1 -0
  108. package/dest/contract_function_simulator/noir-structs/tx_effect_data.js +5 -0
  109. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +7 -18
  110. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  111. package/dest/contract_function_simulator/noir-structs/utility_context.js +1 -31
  112. package/dest/contract_function_simulator/oracle/acir_callback.d.ts +21 -0
  113. package/dest/contract_function_simulator/oracle/acir_callback.d.ts.map +1 -0
  114. package/dest/contract_function_simulator/oracle/acir_callback.js +115 -0
  115. package/dest/contract_function_simulator/oracle/index.d.ts +2 -13
  116. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -1
  117. package/dest/contract_function_simulator/oracle/index.js +1 -1
  118. package/dest/contract_function_simulator/oracle/interfaces.d.ts +15 -88
  119. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  120. package/dest/contract_function_simulator/oracle/interfaces.js +2 -2
  121. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts +39 -0
  122. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts.map +1 -0
  123. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.js +74 -0
  124. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +3 -14
  125. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  126. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -24
  127. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +14 -8
  128. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  129. package/dest/contract_function_simulator/oracle/note_packing_utils.js +17 -12
  130. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +136 -0
  131. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
  132. package/dest/contract_function_simulator/oracle/oracle_registry.js +989 -0
  133. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +222 -0
  134. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -0
  135. package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +1243 -0
  136. package/dest/contract_function_simulator/oracle/private_execution.d.ts +2 -27
  137. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  138. package/dest/contract_function_simulator/oracle/private_execution.js +8 -43
  139. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +92 -103
  140. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  141. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +291 -138
  142. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +228 -62
  143. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  144. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +632 -129
  145. package/dest/contract_function_simulator/pick_notes.d.ts +2 -2
  146. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  147. package/dest/contract_function_simulator/pick_notes.js +21 -4
  148. package/dest/contract_function_simulator/transient_array_service.d.ts +31 -0
  149. package/dest/contract_function_simulator/transient_array_service.d.ts.map +1 -0
  150. package/dest/contract_function_simulator/transient_array_service.js +62 -0
  151. package/dest/contract_logging.d.ts +27 -0
  152. package/dest/contract_logging.d.ts.map +1 -0
  153. package/dest/contract_logging.js +38 -0
  154. package/dest/debug/pxe_debug_utils.d.ts +40 -0
  155. package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
  156. package/dest/debug/pxe_debug_utils.js +42 -0
  157. package/dest/entrypoints/client/bundle/index.d.ts +3 -2
  158. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  159. package/dest/entrypoints/client/bundle/index.js +2 -1
  160. package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
  161. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  162. package/dest/entrypoints/client/bundle/utils.js +49 -13
  163. package/dest/entrypoints/client/lazy/index.d.ts +3 -2
  164. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  165. package/dest/entrypoints/client/lazy/index.js +2 -1
  166. package/dest/entrypoints/client/lazy/utils.d.ts +3 -3
  167. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  168. package/dest/entrypoints/client/lazy/utils.js +50 -14
  169. package/dest/entrypoints/pxe_creation_options.d.ts +22 -4
  170. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  171. package/dest/entrypoints/pxe_creation_options.js +3 -1
  172. package/dest/entrypoints/server/index.d.ts +9 -3
  173. package/dest/entrypoints/server/index.d.ts.map +1 -1
  174. package/dest/entrypoints/server/index.js +7 -2
  175. package/dest/entrypoints/server/utils.d.ts +4 -3
  176. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  177. package/dest/entrypoints/server/utils.js +57 -31
  178. package/dest/error_enriching.d.ts +6 -4
  179. package/dest/error_enriching.d.ts.map +1 -1
  180. package/dest/error_enriching.js +13 -11
  181. package/dest/events/event_service.d.ts +24 -0
  182. package/dest/events/event_service.d.ts.map +1 -0
  183. package/dest/events/event_service.js +77 -0
  184. package/dest/events/index.d.ts +2 -0
  185. package/dest/events/index.d.ts.map +1 -0
  186. package/dest/events/index.js +1 -0
  187. package/dest/events/private_event_filter_validator.d.ts +10 -0
  188. package/dest/events/private_event_filter_validator.d.ts.map +1 -0
  189. package/dest/events/private_event_filter_validator.js +53 -0
  190. package/dest/hooks/authorize_utility_call.d.ts +41 -0
  191. package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
  192. package/dest/hooks/authorize_utility_call.js +4 -0
  193. package/dest/hooks/execution_hooks.d.ts +62 -0
  194. package/dest/hooks/execution_hooks.d.ts.map +1 -0
  195. package/dest/hooks/execution_hooks.js +9 -0
  196. package/dest/hooks/index.d.ts +5 -0
  197. package/dest/hooks/index.d.ts.map +1 -0
  198. package/dest/hooks/index.js +1 -0
  199. package/dest/hooks/resolve_custom_request.d.ts +23 -0
  200. package/dest/hooks/resolve_custom_request.d.ts.map +1 -0
  201. package/dest/hooks/resolve_custom_request.js +3 -0
  202. package/dest/hooks/resolve_tagging_secret_strategy.d.ts +48 -0
  203. package/dest/hooks/resolve_tagging_secret_strategy.d.ts.map +1 -0
  204. package/dest/hooks/resolve_tagging_secret_strategy.js +3 -0
  205. package/dest/job_coordinator/job_coordinator.d.ts +75 -0
  206. package/dest/job_coordinator/job_coordinator.d.ts.map +1 -0
  207. package/dest/job_coordinator/job_coordinator.js +94 -0
  208. package/dest/logs/log_service.d.ts +30 -0
  209. package/dest/logs/log_service.d.ts.map +1 -0
  210. package/dest/logs/log_service.js +223 -0
  211. package/dest/messages/tx_resolver_service.d.ts +17 -0
  212. package/dest/messages/tx_resolver_service.d.ts.map +1 -0
  213. package/dest/messages/tx_resolver_service.js +55 -0
  214. package/dest/notes/index.d.ts +2 -0
  215. package/dest/notes/index.d.ts.map +1 -0
  216. package/dest/notes/index.js +1 -0
  217. package/dest/notes/note_service.d.ts +70 -0
  218. package/dest/notes/note_service.d.ts.map +1 -0
  219. package/dest/notes/note_service.js +172 -0
  220. package/dest/notes_filter.d.ts +24 -0
  221. package/dest/notes_filter.d.ts.map +1 -0
  222. package/dest/notes_filter.js +4 -0
  223. package/dest/oracle_version.d.ts +4 -3
  224. package/dest/oracle_version.d.ts.map +1 -1
  225. package/dest/oracle_version.js +20 -9
  226. package/dest/private_kernel/batch_planner.d.ts +47 -0
  227. package/dest/private_kernel/batch_planner.d.ts.map +1 -0
  228. package/dest/private_kernel/batch_planner.js +104 -0
  229. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  230. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  231. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  232. package/dest/private_kernel/hints/index.d.ts +3 -3
  233. package/dest/private_kernel/hints/index.d.ts.map +1 -1
  234. package/dest/private_kernel/hints/index.js +2 -2
  235. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +29 -0
  236. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -0
  237. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +342 -0
  238. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  239. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  240. package/dest/private_kernel/hints/test_utils.js +202 -0
  241. package/dest/private_kernel/index.d.ts +1 -1
  242. package/dest/private_kernel/private_kernel_execution_prover.d.ts +7 -2
  243. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  244. package/dest/private_kernel/private_kernel_execution_prover.js +218 -96
  245. package/dest/private_kernel/private_kernel_oracle.d.ts +32 -29
  246. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  247. package/dest/private_kernel/private_kernel_oracle.js +108 -2
  248. package/dest/pxe.d.ts +267 -134
  249. package/dest/pxe.d.ts.map +1 -1
  250. package/dest/pxe.js +498 -365
  251. package/dest/storage/address_store/address_store.d.ts +11 -0
  252. package/dest/storage/address_store/address_store.d.ts.map +1 -0
  253. package/dest/storage/{address_data_provider/address_data_provider.js → address_store/address_store.js} +13 -12
  254. package/dest/storage/address_store/index.d.ts +2 -0
  255. package/dest/storage/address_store/index.d.ts.map +1 -0
  256. package/dest/storage/address_store/index.js +1 -0
  257. package/dest/storage/allowed_scopes.d.ts +6 -0
  258. package/dest/storage/allowed_scopes.d.ts.map +1 -0
  259. package/dest/storage/allowed_scopes.js +7 -0
  260. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +20 -0
  261. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -0
  262. package/dest/storage/anchor_block_store/anchor_block_store.js +28 -0
  263. package/dest/storage/anchor_block_store/index.d.ts +2 -0
  264. package/dest/storage/anchor_block_store/index.d.ts.map +1 -0
  265. package/dest/storage/anchor_block_store/index.js +1 -0
  266. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
  267. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
  268. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
  269. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
  270. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
  271. package/dest/storage/backwards_compatibility_tests/schema_tests.js +647 -0
  272. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
  273. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
  274. package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
  275. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  276. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  277. package/dest/storage/capsule_store/capsule_service.js +47 -0
  278. package/dest/storage/capsule_store/capsule_store.d.ts +72 -0
  279. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -0
  280. package/dest/storage/capsule_store/capsule_store.js +261 -0
  281. package/dest/storage/capsule_store/index.d.ts +3 -0
  282. package/dest/storage/capsule_store/index.d.ts.map +1 -0
  283. package/dest/storage/capsule_store/index.js +2 -0
  284. package/dest/storage/contract_store/contract_store.d.ts +96 -0
  285. package/dest/storage/contract_store/contract_store.d.ts.map +1 -0
  286. package/dest/storage/contract_store/contract_store.js +281 -0
  287. package/dest/storage/contract_store/index.d.ts +2 -0
  288. package/dest/storage/contract_store/index.d.ts.map +1 -0
  289. package/dest/storage/contract_store/index.js +1 -0
  290. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.d.ts +1 -1
  291. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -0
  292. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.js +1 -1
  293. package/dest/storage/fact_store/fact_service.d.ts +22 -0
  294. package/dest/storage/fact_store/fact_service.d.ts.map +1 -0
  295. package/dest/storage/fact_store/fact_service.js +45 -0
  296. package/dest/storage/fact_store/fact_store.d.ts +95 -0
  297. package/dest/storage/fact_store/fact_store.d.ts.map +1 -0
  298. package/dest/storage/fact_store/fact_store.js +408 -0
  299. package/dest/storage/fact_store/fact_store_keys.d.ts +34 -0
  300. package/dest/storage/fact_store/fact_store_keys.d.ts.map +1 -0
  301. package/dest/storage/fact_store/fact_store_keys.js +50 -0
  302. package/dest/storage/fact_store/index.d.ts +6 -0
  303. package/dest/storage/fact_store/index.d.ts.map +1 -0
  304. package/dest/storage/fact_store/index.js +4 -0
  305. package/dest/storage/fact_store/origin_state.d.ts +57 -0
  306. package/dest/storage/fact_store/origin_state.d.ts.map +1 -0
  307. package/dest/storage/fact_store/origin_state.js +53 -0
  308. package/dest/storage/fact_store/stored_fact.d.ts +32 -0
  309. package/dest/storage/fact_store/stored_fact.d.ts.map +1 -0
  310. package/dest/storage/fact_store/stored_fact.js +64 -0
  311. package/dest/storage/index.d.ts +9 -8
  312. package/dest/storage/index.d.ts.map +1 -1
  313. package/dest/storage/index.js +8 -7
  314. package/dest/storage/metadata.d.ts +2 -2
  315. package/dest/storage/metadata.d.ts.map +1 -1
  316. package/dest/storage/metadata.js +1 -1
  317. package/dest/storage/note_store/index.d.ts +3 -0
  318. package/dest/storage/note_store/index.d.ts.map +1 -0
  319. package/dest/storage/note_store/index.js +2 -0
  320. package/dest/storage/note_store/note_store.d.ts +92 -0
  321. package/dest/storage/note_store/note_store.d.ts.map +1 -0
  322. package/dest/storage/note_store/note_store.js +372 -0
  323. package/dest/storage/note_store/stored_note.d.ts +11 -0
  324. package/dest/storage/note_store/stored_note.d.ts.map +1 -0
  325. package/dest/storage/note_store/stored_note.js +27 -0
  326. package/dest/storage/open_pxe_stores.d.ts +35 -0
  327. package/dest/storage/open_pxe_stores.d.ts.map +1 -0
  328. package/dest/storage/open_pxe_stores.js +29 -0
  329. package/dest/storage/private_event_store/private_event_store.d.ts +88 -0
  330. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -0
  331. package/dest/storage/private_event_store/private_event_store.js +273 -0
  332. package/dest/storage/private_event_store/stored_private_event.d.ts +23 -0
  333. package/dest/storage/private_event_store/stored_private_event.d.ts.map +1 -0
  334. package/dest/storage/private_event_store/stored_private_event.js +56 -0
  335. package/dest/storage/tagging_store/index.d.ts +4 -0
  336. package/dest/storage/tagging_store/index.d.ts.map +1 -0
  337. package/dest/storage/tagging_store/index.js +3 -0
  338. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +28 -0
  339. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -0
  340. package/dest/storage/tagging_store/recipient_tagging_store.js +111 -0
  341. package/dest/storage/tagging_store/sender_tagging_store.d.ts +78 -0
  342. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -0
  343. package/dest/storage/tagging_store/sender_tagging_store.js +374 -0
  344. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts +51 -0
  345. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts.map +1 -0
  346. package/dest/storage/tagging_store/tagging_secret_sources_store.js +105 -0
  347. package/dest/tagging/constants.d.ts +2 -2
  348. package/dest/tagging/constants.d.ts.map +1 -1
  349. package/dest/tagging/constants.js +7 -2
  350. package/dest/tagging/get_all_logs_by_tags.d.ts +48 -0
  351. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -0
  352. package/dest/tagging/get_all_logs_by_tags.js +59 -0
  353. package/dest/tagging/index.d.ts +18 -7
  354. package/dest/tagging/index.d.ts.map +1 -1
  355. package/dest/tagging/index.js +16 -5
  356. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
  357. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
  358. package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
  359. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +69 -0
  360. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
  361. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +203 -0
  362. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
  363. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
  364. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
  365. package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
  366. package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
  367. package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
  368. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +16 -0
  369. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -0
  370. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +92 -0
  371. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +17 -0
  372. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -0
  373. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +60 -0
  374. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +19 -0
  375. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
  376. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +72 -0
  377. package/package.json +33 -20
  378. package/src/bin/check_oracle_version.ts +62 -33
  379. package/src/bin/index.ts +5 -0
  380. package/src/bin/oracle_version_helpers.ts +311 -0
  381. package/src/block_synchronizer/block_stream_source.ts +42 -0
  382. package/src/block_synchronizer/block_synchronizer.ts +241 -0
  383. package/src/block_synchronizer/index.ts +1 -0
  384. package/src/config/index.ts +32 -26
  385. package/src/config/package_info.ts +1 -1
  386. package/src/contract/contract_class_service.ts +83 -0
  387. package/src/contract/contract_sync_service.ts +176 -0
  388. package/src/contract/helpers.ts +35 -0
  389. package/src/contract_function_simulator/anchored_contract_data.ts +74 -0
  390. package/src/contract_function_simulator/benchmarked_node.ts +103 -0
  391. package/src/contract_function_simulator/contract_function_simulator.ts +526 -132
  392. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  393. package/src/contract_function_simulator/execution_note_cache.ts +42 -33
  394. package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
  395. package/src/contract_function_simulator/hashed_values_cache.ts +1 -1
  396. package/src/contract_function_simulator/index.ts +70 -5
  397. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +43 -0
  398. package/src/contract_function_simulator/noir-structs/contract_class_log_data.ts +9 -0
  399. package/src/contract_function_simulator/noir-structs/embedded_curve_point.ts +4 -0
  400. package/src/contract_function_simulator/noir-structs/ephemeral_array.ts +66 -0
  401. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +16 -11
  402. package/src/contract_function_simulator/noir-structs/fact.ts +13 -0
  403. package/src/contract_function_simulator/noir-structs/fact_collection.ts +64 -0
  404. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +28 -20
  405. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +14 -64
  406. package/src/contract_function_simulator/noir-structs/note_data.ts +27 -0
  407. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +18 -11
  408. package/src/contract_function_simulator/noir-structs/option.ts +75 -0
  409. package/src/contract_function_simulator/noir-structs/origin_block.ts +8 -0
  410. package/src/contract_function_simulator/noir-structs/pending_tagged_log.ts +12 -0
  411. package/src/contract_function_simulator/noir-structs/provided_secret.ts +5 -0
  412. package/src/contract_function_simulator/noir-structs/resolved_tagging_strategy.ts +58 -0
  413. package/src/contract_function_simulator/noir-structs/resolved_tx.ts +53 -0
  414. package/src/contract_function_simulator/noir-structs/tx_effect_data.ts +15 -0
  415. package/src/contract_function_simulator/noir-structs/utility_context.ts +6 -37
  416. package/src/contract_function_simulator/oracle/acir_callback.ts +154 -0
  417. package/src/contract_function_simulator/oracle/index.ts +1 -15
  418. package/src/contract_function_simulator/oracle/interfaces.ts +11 -151
  419. package/src/contract_function_simulator/oracle/legacy_oracle_registry.ts +120 -0
  420. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +6 -21
  421. package/src/contract_function_simulator/oracle/note_packing_utils.ts +31 -15
  422. package/src/contract_function_simulator/oracle/oracle_registry.ts +689 -0
  423. package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +964 -0
  424. package/src/contract_function_simulator/oracle/private_execution.ts +8 -75
  425. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +363 -189
  426. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +974 -154
  427. package/src/contract_function_simulator/pick_notes.ts +23 -4
  428. package/src/contract_function_simulator/transient_array_service.ts +91 -0
  429. package/src/contract_logging.ts +52 -0
  430. package/src/debug/pxe_debug_utils.ts +85 -0
  431. package/src/entrypoints/client/bundle/index.ts +2 -1
  432. package/src/entrypoints/client/bundle/utils.ts +41 -22
  433. package/src/entrypoints/client/lazy/index.ts +2 -1
  434. package/src/entrypoints/client/lazy/utils.ts +43 -24
  435. package/src/entrypoints/pxe_creation_options.ts +27 -3
  436. package/src/entrypoints/server/index.ts +9 -2
  437. package/src/entrypoints/server/utils.ts +55 -60
  438. package/src/error_enriching.ts +20 -12
  439. package/src/events/event_service.ts +119 -0
  440. package/src/events/index.ts +1 -0
  441. package/src/events/private_event_filter_validator.ts +66 -0
  442. package/src/hooks/authorize_utility_call.ts +44 -0
  443. package/src/hooks/execution_hooks.ts +68 -0
  444. package/src/hooks/index.ts +12 -0
  445. package/src/hooks/resolve_custom_request.ts +24 -0
  446. package/src/hooks/resolve_tagging_secret_strategy.ts +57 -0
  447. package/src/job_coordinator/job_coordinator.ts +150 -0
  448. package/src/logs/log_service.ts +291 -0
  449. package/src/messages/tx_resolver_service.ts +69 -0
  450. package/src/notes/index.ts +1 -0
  451. package/src/notes/note_service.ts +230 -0
  452. package/src/notes_filter.ts +24 -0
  453. package/src/oracle_version.ts +20 -9
  454. package/src/private_kernel/batch_planner.ts +168 -0
  455. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  456. package/src/private_kernel/hints/index.ts +2 -2
  457. package/src/private_kernel/hints/{build_private_kernel_reset_private_inputs.ts → private_kernel_reset_private_inputs_builder.ts} +211 -147
  458. package/src/private_kernel/hints/test_utils.ts +318 -0
  459. package/src/private_kernel/private_kernel_execution_prover.ts +358 -140
  460. package/src/private_kernel/private_kernel_oracle.ts +149 -39
  461. package/src/pxe.ts +849 -491
  462. package/src/storage/{address_data_provider/address_data_provider.ts → address_store/address_store.ts} +16 -16
  463. package/src/storage/address_store/index.ts +1 -0
  464. package/src/storage/allowed_scopes.ts +14 -0
  465. package/src/storage/anchor_block_store/anchor_block_store.ts +35 -0
  466. package/src/storage/anchor_block_store/index.ts +1 -0
  467. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
  468. package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
  469. package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
  470. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
  471. package/src/storage/backwards_compatibility_tests/__snapshots__/FactStore.json +40 -0
  472. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
  473. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +40 -0
  474. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +56 -0
  475. package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
  476. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +18 -0
  477. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +22 -0
  478. package/src/storage/backwards_compatibility_tests/__snapshots__/TaggingSecretSourcesStore.json +30 -0
  479. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +117 -0
  480. package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
  481. package/src/storage/backwards_compatibility_tests/schema_tests.ts +774 -0
  482. package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
  483. package/src/storage/capsule_store/capsule_service.ts +85 -0
  484. package/src/storage/capsule_store/capsule_store.ts +333 -0
  485. package/src/storage/capsule_store/index.ts +2 -0
  486. package/src/storage/contract_store/contract_store.ts +401 -0
  487. package/src/storage/contract_store/index.ts +1 -0
  488. package/src/storage/{contract_data_provider → contract_store}/private_functions_tree.ts +1 -1
  489. package/src/storage/fact_store/fact_service.ts +69 -0
  490. package/src/storage/fact_store/fact_store.ts +487 -0
  491. package/src/storage/fact_store/fact_store_keys.ts +75 -0
  492. package/src/storage/fact_store/index.ts +14 -0
  493. package/src/storage/fact_store/origin_state.ts +75 -0
  494. package/src/storage/fact_store/stored_fact.ts +80 -0
  495. package/src/storage/index.ts +8 -7
  496. package/src/storage/metadata.ts +1 -1
  497. package/src/storage/note_store/index.ts +2 -0
  498. package/src/storage/note_store/note_store.ts +454 -0
  499. package/src/storage/note_store/stored_note.ts +26 -0
  500. package/src/storage/open_pxe_stores.ts +52 -0
  501. package/src/storage/private_event_store/private_event_store.ts +382 -0
  502. package/src/storage/private_event_store/stored_private_event.ts +73 -0
  503. package/src/storage/tagging_store/index.ts +3 -0
  504. package/src/storage/tagging_store/recipient_tagging_store.ts +139 -0
  505. package/src/storage/tagging_store/sender_tagging_store.ts +476 -0
  506. package/src/storage/tagging_store/tagging_secret_sources_store.ts +138 -0
  507. package/src/tagging/constants.ts +8 -2
  508. package/src/tagging/get_all_logs_by_tags.ts +120 -0
  509. package/src/tagging/index.ts +20 -6
  510. package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
  511. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +301 -0
  512. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
  513. package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
  514. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +134 -0
  515. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +66 -0
  516. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +84 -0
  517. package/dest/contract_function_simulator/execution_data_provider.d.ts +0 -274
  518. package/dest/contract_function_simulator/execution_data_provider.d.ts.map +0 -1
  519. package/dest/contract_function_simulator/execution_data_provider.js +0 -14
  520. package/dest/contract_function_simulator/oracle/oracle.d.ts +0 -57
  521. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +0 -1
  522. package/dest/contract_function_simulator/oracle/oracle.js +0 -328
  523. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +0 -6
  524. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +0 -1
  525. package/dest/contract_function_simulator/proxied_contract_data_source.js +0 -62
  526. package/dest/contract_function_simulator/proxied_node.d.ts +0 -9
  527. package/dest/contract_function_simulator/proxied_node.d.ts.map +0 -1
  528. package/dest/contract_function_simulator/proxied_node.js +0 -27
  529. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts +0 -122
  530. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts.map +0 -1
  531. package/dest/contract_function_simulator/pxe_oracle_interface.js +0 -701
  532. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
  533. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
  534. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.js +0 -271
  535. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  536. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
  537. package/dest/private_kernel/private_kernel_oracle_impl.d.ts +0 -45
  538. package/dest/private_kernel/private_kernel_oracle_impl.d.ts.map +0 -1
  539. package/dest/private_kernel/private_kernel_oracle_impl.js +0 -86
  540. package/dest/storage/address_data_provider/address_data_provider.d.ts +0 -11
  541. package/dest/storage/address_data_provider/address_data_provider.d.ts.map +0 -1
  542. package/dest/storage/address_data_provider/index.d.ts +0 -2
  543. package/dest/storage/address_data_provider/index.d.ts.map +0 -1
  544. package/dest/storage/address_data_provider/index.js +0 -1
  545. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +0 -25
  546. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +0 -1
  547. package/dest/storage/capsule_data_provider/capsule_data_provider.js +0 -118
  548. package/dest/storage/capsule_data_provider/index.d.ts +0 -2
  549. package/dest/storage/capsule_data_provider/index.d.ts.map +0 -1
  550. package/dest/storage/capsule_data_provider/index.js +0 -1
  551. package/dest/storage/contract_data_provider/contract_data_provider.d.ts +0 -74
  552. package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +0 -1
  553. package/dest/storage/contract_data_provider/contract_data_provider.js +0 -205
  554. package/dest/storage/contract_data_provider/index.d.ts +0 -2
  555. package/dest/storage/contract_data_provider/index.d.ts.map +0 -1
  556. package/dest/storage/contract_data_provider/index.js +0 -1
  557. package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +0 -1
  558. package/dest/storage/note_data_provider/index.d.ts +0 -3
  559. package/dest/storage/note_data_provider/index.d.ts.map +0 -1
  560. package/dest/storage/note_data_provider/index.js +0 -2
  561. package/dest/storage/note_data_provider/note_dao.d.ts +0 -100
  562. package/dest/storage/note_data_provider/note_dao.d.ts.map +0 -1
  563. package/dest/storage/note_data_provider/note_dao.js +0 -102
  564. package/dest/storage/note_data_provider/note_data_provider.d.ts +0 -83
  565. package/dest/storage/note_data_provider/note_data_provider.d.ts.map +0 -1
  566. package/dest/storage/note_data_provider/note_data_provider.js +0 -308
  567. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts +0 -43
  568. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts.map +0 -1
  569. package/dest/storage/private_event_data_provider/private_event_data_provider.js +0 -104
  570. package/dest/storage/sync_data_provider/index.d.ts +0 -2
  571. package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
  572. package/dest/storage/sync_data_provider/index.js +0 -1
  573. package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -10
  574. package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
  575. package/dest/storage/sync_data_provider/sync_data_provider.js +0 -26
  576. package/dest/storage/tagging_data_provider/index.d.ts +0 -2
  577. package/dest/storage/tagging_data_provider/index.d.ts.map +0 -1
  578. package/dest/storage/tagging_data_provider/index.js +0 -1
  579. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -40
  580. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
  581. package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -89
  582. package/dest/synchronizer/index.d.ts +0 -2
  583. package/dest/synchronizer/index.d.ts.map +0 -1
  584. package/dest/synchronizer/index.js +0 -1
  585. package/dest/synchronizer/synchronizer.d.ts +0 -35
  586. package/dest/synchronizer/synchronizer.d.ts.map +0 -1
  587. package/dest/synchronizer/synchronizer.js +0 -101
  588. package/dest/tagging/siloed_tag.d.ts +0 -14
  589. package/dest/tagging/siloed_tag.d.ts.map +0 -1
  590. package/dest/tagging/siloed_tag.js +0 -20
  591. package/dest/tagging/tag.d.ts +0 -12
  592. package/dest/tagging/tag.d.ts.map +0 -1
  593. package/dest/tagging/tag.js +0 -17
  594. package/dest/tagging/utils.d.ts +0 -18
  595. package/dest/tagging/utils.d.ts.map +0 -1
  596. package/dest/tagging/utils.js +0 -24
  597. package/src/contract_function_simulator/execution_data_provider.ts +0 -343
  598. package/src/contract_function_simulator/oracle/oracle.ts +0 -575
  599. package/src/contract_function_simulator/proxied_contract_data_source.ts +0 -66
  600. package/src/contract_function_simulator/proxied_node.ts +0 -33
  601. package/src/contract_function_simulator/pxe_oracle_interface.ts +0 -1019
  602. package/src/private_kernel/private_kernel_oracle_impl.ts +0 -132
  603. package/src/storage/address_data_provider/index.ts +0 -1
  604. package/src/storage/capsule_data_provider/capsule_data_provider.ts +0 -147
  605. package/src/storage/capsule_data_provider/index.ts +0 -1
  606. package/src/storage/contract_data_provider/contract_data_provider.ts +0 -294
  607. package/src/storage/contract_data_provider/index.ts +0 -1
  608. package/src/storage/note_data_provider/index.ts +0 -2
  609. package/src/storage/note_data_provider/note_dao.ts +0 -154
  610. package/src/storage/note_data_provider/note_data_provider.ts +0 -393
  611. package/src/storage/private_event_data_provider/private_event_data_provider.ts +0 -148
  612. package/src/storage/sync_data_provider/index.ts +0 -1
  613. package/src/storage/sync_data_provider/sync_data_provider.ts +0 -34
  614. package/src/storage/tagging_data_provider/index.ts +0 -1
  615. package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -120
  616. package/src/synchronizer/index.ts +0 -1
  617. package/src/synchronizer/synchronizer.ts +0 -120
  618. package/src/tagging/siloed_tag.ts +0 -22
  619. package/src/tagging/tag.ts +0 -16
  620. package/src/tagging/utils.ts +0 -31
@@ -1,14 +1,32 @@
1
+ import type { BBPrivateKernelProverOptions } from '@aztec/bb-prover/client';
1
2
  import type { Logger } from '@aztec/foundation/log';
2
3
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
3
- import type { PrivateKernelProver } from '@aztec/stdlib/interfaces/client';
4
+ import type { CircuitSimulator } from '@aztec/simulator/client';
5
+ import type { AztecNodeDebug, PrivateKernelProver } from '@aztec/stdlib/interfaces/client';
6
+ import type { ExecutionHooks } from '../hooks/index.js';
7
+ import type { PreloadedContractsProvider } from '../pxe.js';
4
8
  export type PXECreationOptions = {
5
9
  loggers?: {
6
10
  store?: Logger;
7
11
  pxe?: Logger;
8
12
  prover?: Logger;
9
13
  };
10
- useLogSuffix?: boolean | string;
11
- prover?: PrivateKernelProver;
14
+ /** Actor label to include in log output (e.g., 'pxe-0', 'pxe-test'). */
15
+ loggerActorLabel?: string;
16
+ proverOrOptions?: PrivateKernelProver | BBPrivateKernelProverOptions;
12
17
  store?: AztecAsyncKVStore;
18
+ simulator?: CircuitSimulator;
19
+ /** Optional hooks to observe and influence contract execution. */
20
+ hooks?: ExecutionHooks;
21
+ /** Contracts to preload on startup. Replaces the default when set. */
22
+ preloadedContractsProvider?: PreloadedContractsProvider;
23
+ /**
24
+ * Optional debug API client for the same node. When provided, public function signatures are registered so the
25
+ * node can produce named public-execution stack traces. Only available on nodes started with debug endpoints
26
+ * enabled; omitted in prod-like setups.
27
+ */
28
+ nodeDebug?: AztecNodeDebug;
13
29
  };
14
- //# sourceMappingURL=pxe_creation_options.d.ts.map
30
+ /** Checks if the given value implements the PrivateKernelProver interface via duck-typing. */
31
+ export declare function isPrivateKernelProver(value: unknown): value is PrivateKernelProver;
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHhlX2NyZWF0aW9uX29wdGlvbnMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRyeXBvaW50cy9weGVfY3JlYXRpb25fb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUzRixPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RCxPQUFPLEtBQUssRUFBRSwwQkFBMEIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUU1RCxNQUFNLE1BQU0sa0JBQWtCLEdBQUc7SUFDL0IsT0FBTyxDQUFDLEVBQUU7UUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7UUFBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUM7UUFBQyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDO0lBQzVELHdFQUF3RTtJQUN4RSxnQkFBZ0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUMxQixlQUFlLENBQUMsRUFBRSxtQkFBbUIsR0FBRyw0QkFBNEIsQ0FBQztJQUNyRSxLQUFLLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztJQUMxQixTQUFTLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQztJQUM3QixrRUFBa0U7SUFDbEUsS0FBSyxDQUFDLEVBQUUsY0FBYyxDQUFDO0lBQ3ZCLHNFQUFzRTtJQUN0RSwwQkFBMEIsQ0FBQyxFQUFFLDBCQUEwQixDQUFDO0lBQ3hEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsRUFBRSxjQUFjLENBQUM7Q0FDNUIsQ0FBQztBQUVGLDhGQUE4RjtBQUM5Rix3QkFBZ0IscUJBQXFCLENBQUMsS0FBSyxFQUFFLE9BQU8sR0FBRyxLQUFLLElBQUksbUJBQW1CLENBSWxGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"pxe_creation_options.d.ts","sourceRoot":"","sources":["../../src/entrypoints/pxe_creation_options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"pxe_creation_options.d.ts","sourceRoot":"","sources":["../../src/entrypoints/pxe_creation_options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AAE5D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,mBAAmB,GAAG,4BAA4B,CAAC;IACrE,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,kEAAkE;IAClE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,sEAAsE;IACtE,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD;;;;OAIG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,CAAC;AAEF,8FAA8F;AAC9F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAIlF"}
@@ -1 +1,3 @@
1
- export { };
1
+ /** Checks if the given value implements the PrivateKernelProver interface via duck-typing. */ export function isPrivateKernelProver(value) {
2
+ return typeof value === 'object' && value !== null && typeof value.createChonkProof === 'function';
3
+ }
@@ -1,9 +1,15 @@
1
+ export { type AccountPrivacyKeys, type AccountPrivacySecretKeys } from '@aztec/key-store';
2
+ export * from '../../notes_filter.js';
1
3
  export * from '../../pxe.js';
2
4
  export * from '../../config/index.js';
3
5
  export * from '../../error_enriching.js';
4
6
  export * from '../../storage/index.js';
5
7
  export * from './utils.js';
6
- export { PXEOracleInterface } from '../../contract_function_simulator/pxe_oracle_interface.js';
7
- export { ORACLE_VERSION } from '../../oracle_version.js';
8
+ export { NoteService } from '../../notes/note_service.js';
9
+ export { ORACLE_VERSION_MAJOR, ORACLE_VERSION_MINOR } from '../../oracle_version.js';
8
10
  export { type PXECreationOptions } from '../pxe_creation_options.js';
9
- //# sourceMappingURL=index.d.ts.map
11
+ export { JobCoordinator } from '../../job_coordinator/job_coordinator.js';
12
+ export { ContractSyncService } from '../../contract/contract_sync_service.js';
13
+ export { ContractClassService } from '../../contract/contract_class_service.js';
14
+ export { AnchoredContractData } from '../../contract_function_simulator/anchored_contract_data.js';
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbnRyeXBvaW50cy9zZXJ2ZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQUUsS0FBSyx3QkFBd0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTFGLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxZQUFZLENBQUM7QUFDM0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/entrypoints/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/entrypoints/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE1F,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC"}
@@ -1,7 +1,12 @@
1
+ export * from '../../notes_filter.js';
1
2
  export * from '../../pxe.js';
2
3
  export * from '../../config/index.js';
3
4
  export * from '../../error_enriching.js';
4
5
  export * from '../../storage/index.js';
5
6
  export * from './utils.js';
6
- export { PXEOracleInterface } from '../../contract_function_simulator/pxe_oracle_interface.js';
7
- export { ORACLE_VERSION } from '../../oracle_version.js';
7
+ export { NoteService } from '../../notes/note_service.js';
8
+ export { ORACLE_VERSION_MAJOR, ORACLE_VERSION_MINOR } from '../../oracle_version.js';
9
+ export { JobCoordinator } from '../../job_coordinator/job_coordinator.js';
10
+ export { ContractSyncService } from '../../contract/contract_sync_service.js';
11
+ export { ContractClassService } from '../../contract/contract_class_service.js';
12
+ export { AnchoredContractData } from '../../contract_function_simulator/anchored_contract_data.js';
@@ -1,8 +1,9 @@
1
+ import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
1
2
  import type { AztecNode } from '@aztec/stdlib/interfaces/client';
2
3
  import type { PXEConfig } from '../../config/index.js';
3
4
  import { PXE } from '../../pxe.js';
4
- import type { PXECreationOptions } from '../pxe_creation_options.js';
5
- type PXEConfigWithoutDefaults = Omit<PXEConfig, 'l1Contracts' | 'l1ChainId' | 'l2BlockBatchSize' | 'rollupVersion'>;
5
+ import { type PXECreationOptions } from '../pxe_creation_options.js';
6
+ type PXEConfigWithoutDefaults = Omit<PXEConfig, 'l1ChainId' | 'l2BlockBatchSize' | 'rollupVersion' | keyof L1ContractAddresses>;
6
7
  export declare function createPXE(aztecNode: AztecNode, config: PXEConfigWithoutDefaults, options?: PXECreationOptions): Promise<PXE>;
7
8
  export {};
8
- //# sourceMappingURL=utils.d.ts.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbnRyeXBvaW50cy9zZXJ2ZXIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQVVqRixPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRW5DLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUF5QixNQUFNLDRCQUE0QixDQUFDO0FBRTVGLEtBQUssd0JBQXdCLEdBQUcsSUFBSSxDQUNsQyxTQUFTLEVBQ1QsV0FBVyxHQUFHLGtCQUFrQixHQUFHLGVBQWUsR0FBRyxNQUFNLG1CQUFtQixDQUMvRSxDQUFDO0FBRUYsd0JBQXNCLFNBQVMsQ0FDN0IsU0FBUyxFQUFFLFNBQVMsRUFDcEIsTUFBTSxFQUFFLHdCQUF3QixFQUNoQyxPQUFPLEdBQUUsa0JBQW9DLGdCQTZEOUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/entrypoints/server/utils.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,KAAK,wBAAwB,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,WAAW,GAAG,kBAAkB,GAAG,eAAe,CAAC,CAAC;AAEpH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,kBAAoC,gBAmD9C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/entrypoints/server/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAUjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,KAAK,kBAAkB,EAAyB,MAAM,4BAA4B,CAAC;AAE5F,KAAK,wBAAwB,GAAG,IAAI,CAClC,SAAS,EACT,WAAW,GAAG,kBAAkB,GAAG,eAAe,GAAG,MAAM,mBAAmB,CAC/E,CAAC;AAEF,wBAAsB,SAAS,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,kBAAoC,gBA6D9C"}
@@ -1,51 +1,77 @@
1
- import { BBNativePrivateKernelProver } from '@aztec/bb-prover/client/native';
2
- import { BBWASMBundlePrivateKernelProver } from '@aztec/bb-prover/client/wasm/bundle';
3
- import { randomBytes } from '@aztec/foundation/crypto';
1
+ import { BBBundlePrivateKernelProver } from '@aztec/bb-prover/client/bundle';
4
2
  import { createLogger } from '@aztec/foundation/log';
3
+ import { createStore } from '@aztec/kv-store/lmdb-v2';
5
4
  import { BundledProtocolContractsProvider } from '@aztec/protocol-contracts/providers/bundle';
6
- import { MemoryCircuitRecorder, SimulatorRecorderWrapper, WASMSimulator } from '@aztec/simulator/client';
5
+ import { WASMSimulator } from '@aztec/simulator/client';
6
+ import { MemoryCircuitRecorder, SimulatorRecorderWrapper } from '@aztec/simulator/server';
7
7
  import { FileCircuitRecorder } from '@aztec/simulator/testing';
8
+ import { getStandardAuthRegistry } from '@aztec/standard-contracts/auth-registry';
9
+ import { getStandardHandshakeRegistry } from '@aztec/standard-contracts/handshake-registry';
10
+ import { getStandardMultiCallEntrypoint } from '@aztec/standard-contracts/multi-call-entrypoint';
8
11
  import { PXE } from '../../pxe.js';
9
12
  import { PXE_DATA_SCHEMA_VERSION } from '../../storage/index.js';
13
+ import { isPrivateKernelProver } from '../pxe_creation_options.js';
10
14
  export async function createPXE(aztecNode, config, options = {
11
15
  loggers: {}
12
16
  }) {
13
- const recorder = process.env.CIRCUIT_RECORD_DIR ? new FileCircuitRecorder(process.env.CIRCUIT_RECORD_DIR) : new MemoryCircuitRecorder();
14
- const simulator = new SimulatorRecorderWrapper(new WASMSimulator(), recorder);
15
- const logSuffix = typeof options.useLogSuffix === 'boolean' ? options.useLogSuffix ? randomBytes(3).toString('hex') : undefined : options.useLogSuffix;
17
+ const actor = options.loggerActorLabel;
18
+ const recorderLogger = createLogger('simulator:acvm:recording', {
19
+ actor
20
+ });
21
+ const recorder = process.env.CIRCUIT_RECORD_DIR ? new FileCircuitRecorder(process.env.CIRCUIT_RECORD_DIR, recorderLogger) : new MemoryCircuitRecorder(recorderLogger);
22
+ const simulatorLogger = createLogger('wasm-simulator', {
23
+ actor
24
+ });
25
+ const simulator = new SimulatorRecorderWrapper(new WASMSimulator(simulatorLogger), recorder);
16
26
  const loggers = options.loggers ?? {};
17
- const { l1ChainId, l1ContractAddresses: l1Contracts, rollupVersion } = await aztecNode.getNodeInfo();
27
+ const { l1ChainId, l1ContractAddresses, rollupVersion } = await aztecNode.getNodeInfo();
18
28
  const configWithContracts = {
19
29
  ...config,
20
- l1Contracts,
30
+ ...l1ContractAddresses,
21
31
  l1ChainId,
22
32
  rollupVersion,
23
33
  l2BlockBatchSize: 50
24
34
  };
25
35
  if (!options.store) {
26
- // TODO once https://github.com/AztecProtocol/aztec-packages/issues/13656 is fixed, we can remove this and always
27
- // import the lmdb-v2 version
28
- const { createStore } = await import('@aztec/kv-store/lmdb-v2');
29
- const storeLogger = loggers.store ? loggers.store : createLogger('pxe:data:lmdb' + (logSuffix ? `:${logSuffix}` : ''));
30
- options.store = await createStore('pxe_data', PXE_DATA_SCHEMA_VERSION, configWithContracts, storeLogger);
36
+ const storeLogger = loggers.store ?? createLogger('pxe:data:lmdb', {
37
+ actor
38
+ });
39
+ options.store = await createStore('pxe_data', PXE_DATA_SCHEMA_VERSION, configWithContracts, storeLogger.getBindings());
31
40
  }
32
- const proverLogger = loggers.prover ? loggers.prover : createLogger('pxe:bb:native' + (logSuffix ? `:${logSuffix}` : ''));
33
- const prover = options.prover ?? await createProver(config, simulator, proverLogger);
34
- const protocolContractsProvider = new BundledProtocolContractsProvider();
35
- const pxeLogger = loggers.pxe ? loggers.pxe : createLogger('pxe:service' + (logSuffix ? `:${logSuffix}` : ''));
36
- const pxe = await PXE.create(aztecNode, options.store, prover, simulator, protocolContractsProvider, configWithContracts, pxeLogger);
37
- return pxe;
38
- }
39
- function createProver(config, simulator, logger) {
40
- if (!config.bbBinaryPath || !config.bbWorkingDirectory) {
41
- return new BBWASMBundlePrivateKernelProver(simulator, 16, logger);
41
+ const proverLogger = loggers.prover ?? createLogger('pxe:bb:native', {
42
+ actor
43
+ });
44
+ let prover;
45
+ if (isPrivateKernelProver(options.proverOrOptions)) {
46
+ prover = options.proverOrOptions;
42
47
  } else {
43
- const bbConfig = config;
44
- return BBNativePrivateKernelProver.new({
45
- bbSkipCleanup: false,
46
- numConcurrentIVCVerifiers: 1,
47
- bbIVCConcurrency: 1,
48
- ...bbConfig
49
- }, simulator, logger);
48
+ prover = new BBBundlePrivateKernelProver(simulator, {
49
+ ...options.proverOrOptions,
50
+ logger: proverLogger
51
+ });
50
52
  }
53
+ const protocolContractsProvider = new BundledProtocolContractsProvider();
54
+ const preloadedContractsProvider = options.preloadedContractsProvider ?? {
55
+ getPreloadedContracts: async ()=>[
56
+ await getStandardMultiCallEntrypoint(),
57
+ await getStandardAuthRegistry(),
58
+ await getStandardHandshakeRegistry()
59
+ ]
60
+ };
61
+ const pxeLogger = loggers.pxe ?? createLogger('pxe:service', {
62
+ actor
63
+ });
64
+ const pxe = await PXE.create({
65
+ node: aztecNode,
66
+ nodeDebug: options.nodeDebug,
67
+ store: options.store,
68
+ proofCreator: prover,
69
+ simulator,
70
+ protocolContractsProvider,
71
+ preloadedContractsProvider,
72
+ config: configWithContracts,
73
+ loggerOrSuffix: pxeLogger,
74
+ hooks: options.hooks
75
+ });
76
+ return pxe;
51
77
  }
@@ -1,11 +1,13 @@
1
1
  import type { Logger } from '@aztec/foundation/log';
2
2
  import { type SimulationError } from '@aztec/stdlib/errors';
3
- import type { ContractDataProvider } from './storage/contract_data_provider/contract_data_provider.js';
3
+ import type { BlockHeader } from '@aztec/stdlib/tx';
4
+ import type { ContractClassService } from './contract/contract_class_service.js';
5
+ import type { ContractStore } from './storage/contract_store/contract_store.js';
4
6
  /**
5
7
  * Adds contract and function names to a simulation error, if they
6
8
  * can be found in the PXE database
7
9
  * @param err - The error to enrich.
8
10
  */
9
- export declare function enrichSimulationError(err: SimulationError, contractDataProvider: ContractDataProvider, logger: Logger): Promise<void>;
10
- export declare function enrichPublicSimulationError(err: SimulationError, contractDataProvider: ContractDataProvider, logger: Logger): Promise<void>;
11
- //# sourceMappingURL=error_enriching.d.ts.map
11
+ export declare function enrichSimulationError(err: SimulationError, contractStore: ContractStore, contractClassService: ContractClassService, anchorHeader: BlockHeader, logger: Logger): Promise<void>;
12
+ export declare function enrichPublicSimulationError(err: SimulationError, contractStore: ContractStore, contractClassService: ContractClassService, anchorHeader: BlockHeader, logger: Logger): Promise<void>;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfZW5yaWNoaW5nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZXJyb3JfZW5yaWNoaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSXBELE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBNkIsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RixPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWhGOzs7O0dBSUc7QUFDSCx3QkFBc0IscUJBQXFCLENBQ3pDLEdBQUcsRUFBRSxlQUFlLEVBQ3BCLGFBQWEsRUFBRSxhQUFhLEVBQzVCLG9CQUFvQixFQUFFLG9CQUFvQixFQUMxQyxZQUFZLEVBQUUsV0FBVyxFQUN6QixNQUFNLEVBQUUsTUFBTSxpQkFxRGY7QUFFRCx3QkFBc0IsMkJBQTJCLENBQy9DLEdBQUcsRUFBRSxlQUFlLEVBQ3BCLGFBQWEsRUFBRSxhQUFhLEVBQzVCLG9CQUFvQixFQUFFLG9CQUFvQixFQUMxQyxZQUFZLEVBQUUsV0FBVyxFQUN6QixNQUFNLEVBQUUsTUFBTSxpQkEwQ2YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"error_enriching.d.ts","sourceRoot":"","sources":["../src/error_enriching.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,EAAE,KAAK,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAEvF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAC;AAEvG;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,eAAe,EACpB,oBAAoB,EAAE,oBAAoB,EAC1C,MAAM,EAAE,MAAM,iBAoDf;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,eAAe,EACpB,oBAAoB,EAAE,oBAAoB,EAC1C,MAAM,EAAE,MAAM,iBAyCf"}
1
+ {"version":3,"file":"error_enriching.d.ts","sourceRoot":"","sources":["../src/error_enriching.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,OAAO,EAAE,KAAK,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AACvF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAEhF;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,eAAe,EACpB,aAAa,EAAE,aAAa,EAC5B,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,MAAM,iBAqDf;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,eAAe,EACpB,aAAa,EAAE,aAAa,EAC5B,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,MAAM,iBA0Cf"}
@@ -6,7 +6,7 @@ import { isNoirCallStackUnresolved } from '@aztec/stdlib/errors';
6
6
  * Adds contract and function names to a simulation error, if they
7
7
  * can be found in the PXE database
8
8
  * @param err - The error to enrich.
9
- */ export async function enrichSimulationError(err, contractDataProvider, logger) {
9
+ */ export async function enrichSimulationError(err, contractStore, contractClassService, anchorHeader, logger) {
10
10
  // Maps contract addresses to the set of function selectors that were in error.
11
11
  // Map and Set do reference equality for their keys instead of value equality, so we store the string
12
12
  // representation to get e.g. different contract address objects with the same address value to match.
@@ -23,13 +23,14 @@ import { isNoirCallStackUnresolved } from '@aztec/stdlib/errors';
23
23
  await Promise.all([
24
24
  ...mentionedFunctions.entries()
25
25
  ].map(async ([contractAddress, fnSelectors])=>{
26
- const parsedContractAddress = AztecAddress.fromString(contractAddress);
27
- const contract = await contractDataProvider.getContract(parsedContractAddress);
28
- if (contract) {
29
- err.enrichWithContractName(parsedContractAddress, contract.name);
26
+ const parsedContractAddress = AztecAddress.fromStringUnsafe(contractAddress);
27
+ const classId = await contractClassService.getCurrentClassId(parsedContractAddress, anchorHeader);
28
+ const artifact = classId && await contractStore.getContractArtifact(classId);
29
+ if (artifact) {
30
+ err.enrichWithContractName(parsedContractAddress, artifact.name);
30
31
  // Map from function selector to function name. It uses a stringified key for the same reason as mentionedFunctions.
31
32
  const selectorToNameMap = new Map();
32
- await Promise.all(contract.functions.map(async (fn)=>{
33
+ await Promise.all(artifact.functions.map(async (fn)=>{
33
34
  const selector = await FunctionSelector.fromNameAndParameters(fn);
34
35
  selectorToNameMap.set(selector.toString(), fn.name);
35
36
  }));
@@ -37,7 +38,7 @@ import { isNoirCallStackUnresolved } from '@aztec/stdlib/errors';
37
38
  if (selectorToNameMap.has(fnSelector.toString())) {
38
39
  err.enrichWithFunctionName(parsedContractAddress, fnSelector, selectorToNameMap.get(fnSelector.toString()));
39
40
  } else {
40
- logger.warn(`Could not find function artifact in contract ${contract.name} for function '${fnSelector}' when enriching error callstack`);
41
+ logger.warn(`Could not find function artifact in contract ${artifact.name} for function '${fnSelector}' when enriching error callstack`);
41
42
  }
42
43
  }
43
44
  } else {
@@ -45,13 +46,14 @@ import { isNoirCallStackUnresolved } from '@aztec/stdlib/errors';
45
46
  }
46
47
  }));
47
48
  }
48
- export async function enrichPublicSimulationError(err, contractDataProvider, logger) {
49
+ export async function enrichPublicSimulationError(err, contractStore, contractClassService, anchorHeader, logger) {
49
50
  const callStack = err.getCallStack();
50
51
  const originalFailingFunction = callStack[callStack.length - 1];
51
52
  if (!originalFailingFunction) {
52
53
  throw new Error(`Original failing function not found when enriching public simulation, missing callstack`);
53
54
  }
54
- const artifact = await contractDataProvider.getPublicFunctionArtifact(originalFailingFunction.contractAddress);
55
+ const classId = await contractClassService.getCurrentClassId(originalFailingFunction.contractAddress, anchorHeader);
56
+ const artifact = classId && await contractStore.getPublicFunctionArtifact(classId);
55
57
  if (!artifact) {
56
58
  throw new Error(`Artifact not found when enriching public simulation error. Contract address: ${originalFailingFunction.contractAddress}.`);
57
59
  }
@@ -59,7 +61,7 @@ export async function enrichPublicSimulationError(err, contractDataProvider, log
59
61
  if (assertionMessage) {
60
62
  err.setOriginalMessage(err.getOriginalMessage() + `${assertionMessage}`);
61
63
  }
62
- const debugInfo = await contractDataProvider.getPublicFunctionDebugMetadata(originalFailingFunction.contractAddress);
64
+ const debugInfo = await contractStore.getPublicFunctionDebugMetadata(classId);
63
65
  const noirCallStack = err.getNoirCallStack();
64
66
  if (debugInfo) {
65
67
  if (isNoirCallStackUnresolved(noirCallStack)) {
@@ -72,6 +74,6 @@ export async function enrichPublicSimulationError(err, contractDataProvider, log
72
74
  logger.warn(`Could not resolve noir call stack for ${originalFailingFunction.contractAddress.toString()}:${originalFailingFunction.functionName?.toString() ?? ''}: ${err}`);
73
75
  }
74
76
  }
75
- await enrichSimulationError(err, contractDataProvider, logger);
77
+ await enrichSimulationError(err, contractStore, contractClassService, anchorHeader, logger);
76
78
  }
77
79
  }
@@ -0,0 +1,24 @@
1
+ import type { AztecAddress } from '@aztec/stdlib/aztec-address';
2
+ import type { AztecNode } from '@aztec/stdlib/interfaces/server';
3
+ import type { BlockHeader, IndexedTxEffect } from '@aztec/stdlib/tx';
4
+ import type { EventValidationRequest } from '../contract_function_simulator/noir-structs/event_validation_request.js';
5
+ import { PrivateEventStore } from '../storage/private_event_store/private_event_store.js';
6
+ export declare class EventService {
7
+ #private;
8
+ private readonly anchorBlockHeader;
9
+ private readonly aztecNode;
10
+ private readonly privateEventStore;
11
+ private readonly jobId;
12
+ private readonly log;
13
+ constructor(anchorBlockHeader: BlockHeader, aztecNode: AztecNode, privateEventStore: PrivateEventStore, jobId: string, log?: import("@aztec/foundation/log").Logger);
14
+ /**
15
+ * Validates and stores a batch of private events against pre-fetched tx effects.
16
+ *
17
+ * @param requests - The events to validate and store.
18
+ * @param scope - The scope under which the events are being stored.
19
+ * @param txEffects - Pre-fetched tx effects keyed by `TxHash.toString()`. Must contain entries for every request's
20
+ * txHash; missing entries are treated as a node bug and cause an error.
21
+ */
22
+ validateAndStoreEvents(requests: EventValidationRequest[], scope: AztecAddress, txEffects: Map<string, IndexedTxEffect>): Promise<void>;
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfc2VydmljZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V2ZW50cy9ldmVudF9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWhFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyRSxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBRTFGLHFCQUFhLFlBQVk7O0lBRXJCLE9BQU8sQ0FBQyxRQUFRLENBQUMsaUJBQWlCO0lBQ2xDLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUztJQUMxQixPQUFPLENBQUMsUUFBUSxDQUFDLGlCQUFpQjtJQUNsQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUs7SUFDdEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHO0lBTHRCLFlBQ21CLGlCQUFpQixFQUFFLFdBQVcsRUFDOUIsU0FBUyxFQUFFLFNBQVMsRUFDcEIsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ3BDLEtBQUssRUFBRSxNQUFNLEVBQ2IsR0FBRyx5Q0FBb0MsRUFDdEQ7SUFFSjs7Ozs7OztPQU9HO0lBQ1Usc0JBQXNCLENBQ2pDLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxFQUNsQyxLQUFLLEVBQUUsWUFBWSxFQUNuQixTQUFTLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsR0FDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVFmO0NBZ0ZGIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event_service.d.ts","sourceRoot":"","sources":["../../src/events/event_service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAErE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yEAAyE,CAAC;AACtH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uDAAuD,CAAC;AAE1F,qBAAa,YAAY;;IAErB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG;IALtB,YACmB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,MAAM,EACb,GAAG,yCAAoC,EACtD;IAEJ;;;;;;;OAOG;IACU,sBAAsB,CACjC,QAAQ,EAAE,sBAAsB,EAAE,EAClC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC,CAQf;CAgFF"}
@@ -0,0 +1,77 @@
1
+ import { createLogger } from '@aztec/foundation/log';
2
+ import { computePrivateEventCommitment, siloNullifier } from '@aztec/stdlib/hash';
3
+ export class EventService {
4
+ anchorBlockHeader;
5
+ aztecNode;
6
+ privateEventStore;
7
+ jobId;
8
+ log;
9
+ constructor(anchorBlockHeader, aztecNode, privateEventStore, jobId, log = createLogger('pxe:event_service')){
10
+ this.anchorBlockHeader = anchorBlockHeader;
11
+ this.aztecNode = aztecNode;
12
+ this.privateEventStore = privateEventStore;
13
+ this.jobId = jobId;
14
+ this.log = log;
15
+ }
16
+ /**
17
+ * Validates and stores a batch of private events against pre-fetched tx effects.
18
+ *
19
+ * @param requests - The events to validate and store.
20
+ * @param scope - The scope under which the events are being stored.
21
+ * @param txEffects - Pre-fetched tx effects keyed by `TxHash.toString()`. Must contain entries for every request's
22
+ * txHash; missing entries are treated as a node bug and cause an error.
23
+ */ async validateAndStoreEvents(requests, scope, txEffects) {
24
+ if (requests.length === 0) {
25
+ return;
26
+ }
27
+ const anchorBlockNumber = this.anchorBlockHeader.getBlockNumber();
28
+ await Promise.all(requests.map((req)=>this.#validateAndStoreEvent(req, scope, txEffects, anchorBlockNumber)));
29
+ }
30
+ async #validateAndStoreEvent(request, scope, txEffects, anchorBlockNumber) {
31
+ const { contractAddress, eventTypeId: selector, randomness, serializedEvent: content, eventCommitment, txHash } = request;
32
+ // Defense-in-depth: the built-in private-event path derives this commitment from content before enqueueing, but
33
+ // unconstrained PXE-side code (e.g. a custom message handler) can reach this oracle with arbitrary
34
+ // (content, commitment) pairs. Without this check it could bind arbitrary content to a legitimate tx nullifier,
35
+ // causing PXE to surface fabricated event data.
36
+ const recomputedCommitment = await computePrivateEventCommitment(randomness, selector.toField(), content);
37
+ if (!recomputedCommitment.equals(eventCommitment)) {
38
+ this.log.warn(`Skipping event whose content does not hash to the provided commitment. contract=${contractAddress}, selector=${selector}, eventCommitment=${eventCommitment}, txHash=${txHash}, recomputedCommitment=${recomputedCommitment}`);
39
+ return;
40
+ }
41
+ // While using 'latest' block number would be fine for private events since they cannot be accessed from Aztec.nr
42
+ // (and thus we're less concerned about being ahead of the synced block), we use the synced block number to
43
+ // maintain consistent behavior in the PXE. Additionally, events should never be ahead of the synced block here
44
+ // since `fetchTaggedLogs` only processes logs up to the synced block.
45
+ const siloedEventCommitment = await siloNullifier(contractAddress, eventCommitment);
46
+ const txEffect = txEffects.get(txHash.toString());
47
+ if (!txEffect) {
48
+ // We error out instead of just logging a warning and skipping the event because this would indicate a bug. This
49
+ // is because the node has already served info about this tx either when obtaining the log (LogResult carries
50
+ // the tx info) or when getting metadata for the offchain message (before the message got passed to `process_log`).
51
+ throw new Error(`Could not find tx effect for tx hash ${txHash} when processing an event.`);
52
+ }
53
+ if (txEffect.l2BlockNumber > anchorBlockNumber) {
54
+ // We should never process a message from a tx past the anchor block. If we got here, a preprocessing step made
55
+ // a mistake.
56
+ throw new Error(`Obtained a newer tx effect for ${txHash} for an event validation request than the anchor block ${anchorBlockNumber}. This is a bug as smart contracts should not issue event validation requests for events from blocks newer than the anchor block.`);
57
+ }
58
+ // Find the index of the event commitment in the nullifiers array to determine event ordering within the tx
59
+ const eventIndexInTx = txEffect.data.nullifiers.findIndex((n)=>n.equals(siloedEventCommitment));
60
+ if (eventIndexInTx === -1) {
61
+ // Unlike in NoteService, this might not be a bug since the commitment hasn't been verified yet in the message
62
+ // processing pipeline. A malformed or malicious message could trigger this condition. Because of this we don't
63
+ // error out and we just show a warning.
64
+ this.log.warn(`Skipping event whose commitment is not present in its tx. siloedEventCommitment=${siloedEventCommitment}, contract=${contractAddress}, selector=${selector}, eventCommitment=${eventCommitment}, txHash=${txHash}`);
65
+ return;
66
+ }
67
+ return this.privateEventStore.storePrivateEventLog(selector, randomness, content, siloedEventCommitment, {
68
+ contractAddress,
69
+ scope,
70
+ txHash,
71
+ l2BlockNumber: txEffect.l2BlockNumber,
72
+ l2BlockHash: txEffect.l2BlockHash,
73
+ txIndexInBlock: txEffect.txIndexInBlock,
74
+ eventIndexInTx
75
+ }, this.jobId);
76
+ }
77
+ }
@@ -0,0 +1,2 @@
1
+ export * from './private_event_filter_validator.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ldmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQyJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './private_event_filter_validator.js';
@@ -0,0 +1,10 @@
1
+ import type { PrivateEventFilter } from '@aztec/aztec.js/wallet';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
3
+ import type { PrivateEventStoreFilter } from '../storage/private_event_store/private_event_store.js';
4
+ export declare class PrivateEventFilterValidator {
5
+ private readonly lastBlock;
6
+ private readonly log;
7
+ constructor(lastBlock: BlockNumber);
8
+ validate(filter: PrivateEventFilter): PrivateEventStoreFilter;
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9ldmVudF9maWx0ZXJfdmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnRzL3ByaXZhdGVfZXZlbnRfZmlsdGVyX3ZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUc5RCxPQUFPLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBRXJHLHFCQUFhLDJCQUEyQjtJQUcxQixPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVM7SUFGdEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQXNEO0lBRTFFLFlBQTZCLFNBQVMsRUFBRSxXQUFXLEVBQUk7SUFFdkQsUUFBUSxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsR0FBRyx1QkFBdUIsQ0FvRDVEO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private_event_filter_validator.d.ts","sourceRoot":"","sources":["../../src/events/private_event_filter_validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAErG,qBAAa,2BAA2B;IAG1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAsD;IAE1E,YAA6B,SAAS,EAAE,WAAW,EAAI;IAEvD,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,uBAAuB,CAoD5D;CACF"}
@@ -0,0 +1,53 @@
1
+ import { INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
3
+ import { createLogger } from '@aztec/foundation/log';
4
+ export class PrivateEventFilterValidator {
5
+ lastBlock;
6
+ log;
7
+ constructor(lastBlock){
8
+ this.lastBlock = lastBlock;
9
+ this.log = createLogger('pxe:private_event_filter_validator');
10
+ }
11
+ validate(filter) {
12
+ let { fromBlock, toBlock } = filter;
13
+ // Block range filters in Aztec Node are defined as closed-open intervals [fromBlock, toBlock), so
14
+ // we respect that convention here for consistency.
15
+ // We then default to [INITIAL_L2_BLOCK_NUM, latestKnownBlock + 1), ie: by default return events from
16
+ // the first block to the latest known block.
17
+ if (!fromBlock || !toBlock) {
18
+ fromBlock = fromBlock ?? BlockNumber(INITIAL_L2_BLOCK_NUM);
19
+ toBlock = toBlock ?? BlockNumber(this.lastBlock + 1);
20
+ }
21
+ if (filter.scopes.length === 0) {
22
+ throw new Error('At least one scope is required to get private events');
23
+ }
24
+ if (fromBlock < 1) {
25
+ throw new Error('fromBlock must be greater than or equal to 1');
26
+ }
27
+ if (toBlock < 1) {
28
+ throw new Error('toBlock must be greater than or equal to 1');
29
+ }
30
+ if (fromBlock >= toBlock) {
31
+ throw new Error('toBlock must be strictly greater than fromBlock');
32
+ }
33
+ // Cap the requested range to the synced block range. Without this, callers that pass a large
34
+ // toBlock (e.g. Number.MAX_SAFE_INTEGER as a "give me everything" idiom) would silently receive
35
+ // only the events that happen to be synced and believe they have complete coverage.
36
+ // We warn + cap rather than throw so callers don't need to query the last synced block before
37
+ // every request (which would also be unreliable, as the block can advance between the two calls).
38
+ const syncedUpperBound = BlockNumber(this.lastBlock + 1);
39
+ if (fromBlock >= syncedUpperBound) {
40
+ this.log.warn(`Requested fromBlock ${fromBlock} is past last synced block ${this.lastBlock}; no events will be returned until PXE syncs further.`);
41
+ } else if (toBlock > syncedUpperBound) {
42
+ this.log.warn(`Requested toBlock ${toBlock} exceeds last synced block ${this.lastBlock}; capping to ${syncedUpperBound}. Retry once PXE is further synced for complete coverage.`);
43
+ toBlock = syncedUpperBound;
44
+ }
45
+ return {
46
+ contractAddress: filter.contractAddress,
47
+ scopes: filter.scopes,
48
+ txHash: filter.txHash,
49
+ toBlock,
50
+ fromBlock
51
+ };
52
+ }
53
+ }
@@ -0,0 +1,41 @@
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { FunctionSelector } from '@aztec/stdlib/abi';
3
+ import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
+ /** Information about a cross-contract utility call that requires authorization. */
5
+ export type UtilityCallAuthorizationRequest = {
6
+ /** The contract requesting the cross-contract call. */
7
+ caller: AztecAddress;
8
+ /** The contract class ID of the calling contract. */
9
+ callerClassId: Fr;
10
+ /** The target contract being called. */
11
+ target: AztecAddress;
12
+ /** The contract class ID of the target contract. */
13
+ targetClassId: Fr;
14
+ /** The function selector being invoked on the target. */
15
+ functionSelector: FunctionSelector;
16
+ /** The name of the function being called, from the contract artifact. */
17
+ functionName: string;
18
+ /** The serialized arguments passed to the function. */
19
+ args: Fr[];
20
+ /** The execution context from which the call originates. */
21
+ callerContext: 'private' | 'private view' | 'utility';
22
+ };
23
+ /** Authorization was granted. */
24
+ type Authorized = {
25
+ authorized: true;
26
+ };
27
+ /** Authorization was denied. */
28
+ type Denied = {
29
+ authorized: false;
30
+ /** Reason for denial, included in the error message. */
31
+ reason?: string;
32
+ };
33
+ /** Result of an authorization hook evaluation. */
34
+ export type UtilityCallAuthorizationResponse = Authorized | Denied;
35
+ /**
36
+ * Hook called when a utility function attempts a cross-contract call.
37
+ * Returns a response indicating whether the call is authorized and an optional denial reason.
38
+ */
39
+ export type AuthorizeUtilityCall = (request: UtilityCallAuthorizationRequest) => Promise<UtilityCallAuthorizationResponse>;
40
+ export {};
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXplX3V0aWxpdHlfY2FsbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL2F1dGhvcml6ZV91dGlsaXR5X2NhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxtRkFBbUY7QUFDbkYsTUFBTSxNQUFNLCtCQUErQixHQUFHO0lBQzVDLHVEQUF1RDtJQUN2RCxNQUFNLEVBQUUsWUFBWSxDQUFDO0lBQ3JCLHFEQUFxRDtJQUNyRCxhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLHdDQUF3QztJQUN4QyxNQUFNLEVBQUUsWUFBWSxDQUFDO0lBQ3JCLG9EQUFvRDtJQUNwRCxhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLHlEQUF5RDtJQUN6RCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQztJQUNuQyx5RUFBeUU7SUFDekUsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQix1REFBdUQ7SUFDdkQsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBQ1gsNERBQTREO0lBQzVELGFBQWEsRUFBRSxTQUFTLEdBQUcsY0FBYyxHQUFHLFNBQVMsQ0FBQztDQUN2RCxDQUFDO0FBRUYsaUNBQWlDO0FBQ2pDLEtBQUssVUFBVSxHQUFHO0lBQUUsVUFBVSxFQUFFLElBQUksQ0FBQTtDQUFFLENBQUM7QUFFdkMsZ0NBQWdDO0FBQ2hDLEtBQUssTUFBTSxHQUFHO0lBQ1osVUFBVSxFQUFFLEtBQUssQ0FBQztJQUNsQix3REFBd0Q7SUFDeEQsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ2pCLENBQUM7QUFFRixrREFBa0Q7QUFDbEQsTUFBTSxNQUFNLGdDQUFnQyxHQUFHLFVBQVUsR0FBRyxNQUFNLENBQUM7QUFFbkU7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLG9CQUFvQixHQUFHLENBQ2pDLE9BQU8sRUFBRSwrQkFBK0IsS0FDckMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLENBQUMifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorize_utility_call.d.ts","sourceRoot":"","sources":["../../src/hooks/authorize_utility_call.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,mFAAmF;AACnF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,uDAAuD;IACvD,MAAM,EAAE,YAAY,CAAC;IACrB,qDAAqD;IACrD,aAAa,EAAE,EAAE,CAAC;IAClB,wCAAwC;IACxC,MAAM,EAAE,YAAY,CAAC;IACrB,oDAAoD;IACpD,aAAa,EAAE,EAAE,CAAC;IAClB,yDAAyD;IACzD,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,yEAAyE;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,IAAI,EAAE,EAAE,EAAE,CAAC;IACX,4DAA4D;IAC5D,aAAa,EAAE,SAAS,GAAG,cAAc,GAAG,SAAS,CAAC;CACvD,CAAC;AAEF,iCAAiC;AACjC,KAAK,UAAU,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,CAAC;AAEvC,gCAAgC;AAChC,KAAK,MAAM,GAAG;IACZ,UAAU,EAAE,KAAK,CAAC;IAClB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,kDAAkD;AAClD,MAAM,MAAM,gCAAgC,GAAG,UAAU,GAAG,MAAM,CAAC;AAEnE;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CACjC,OAAO,EAAE,+BAA+B,KACrC,OAAO,CAAC,gCAAgC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Hook called when a utility function attempts a cross-contract call.
3
+ * Returns a response indicating whether the call is authorized and an optional denial reason.
4
+ */ export { };