@aztec/pxe 0.0.1-commit.f504929 → 0.0.1-commit.f5a9928

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 (537) hide show
  1. package/dest/bin/check_oracle_version.js +41 -112
  2. package/dest/bin/index.d.ts +2 -0
  3. package/dest/bin/index.d.ts.map +1 -0
  4. package/dest/bin/index.js +1 -0
  5. package/dest/bin/oracle_version_helpers.d.ts +34 -0
  6. package/dest/bin/oracle_version_helpers.d.ts.map +1 -0
  7. package/dest/bin/oracle_version_helpers.js +46 -0
  8. package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
  9. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
  10. package/dest/block_synchronizer/block_stream_source.js +37 -0
  11. package/dest/block_synchronizer/block_synchronizer.d.ts +22 -16
  12. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  13. package/dest/block_synchronizer/block_synchronizer.js +71 -28
  14. package/dest/config/index.d.ts +9 -2
  15. package/dest/config/index.d.ts.map +1 -1
  16. package/dest/config/index.js +14 -15
  17. package/dest/config/package_info.js +1 -1
  18. package/dest/contract/contract_class_service.d.ts +24 -0
  19. package/dest/contract/contract_class_service.d.ts.map +1 -0
  20. package/dest/contract/contract_class_service.js +36 -0
  21. package/dest/contract/contract_sync_service.d.ts +48 -0
  22. package/dest/contract/contract_sync_service.d.ts.map +1 -0
  23. package/dest/contract/contract_sync_service.js +119 -0
  24. package/dest/contract/helpers.d.ts +7 -0
  25. package/dest/contract/helpers.d.ts.map +1 -0
  26. package/dest/contract/helpers.js +20 -0
  27. package/dest/contract/skip_sync_contracts.d.ts +11 -0
  28. package/dest/contract/skip_sync_contracts.d.ts.map +1 -0
  29. package/dest/contract/skip_sync_contracts.js +18 -0
  30. package/dest/contract_function_simulator/anchored_contract_data.d.ts +36 -0
  31. package/dest/contract_function_simulator/anchored_contract_data.d.ts.map +1 -0
  32. package/dest/contract_function_simulator/anchored_contract_data.js +54 -0
  33. package/dest/contract_function_simulator/contract_function_simulator.d.ts +30 -25
  34. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  35. package/dest/contract_function_simulator/contract_function_simulator.js +114 -66
  36. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  37. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  38. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  39. package/dest/contract_function_simulator/execution_note_cache.d.ts +4 -10
  40. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  41. package/dest/contract_function_simulator/execution_note_cache.js +10 -29
  42. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -11
  43. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  44. package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -15
  45. package/dest/contract_function_simulator/index.d.ts +26 -5
  46. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  47. package/dest/contract_function_simulator/index.js +11 -3
  48. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +29 -0
  49. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
  50. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +30 -0
  51. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts +9 -0
  52. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts.map +1 -0
  53. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.js +1 -0
  54. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts +7 -0
  55. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts.map +1 -0
  56. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.js +1 -0
  57. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts +37 -0
  58. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts.map +1 -0
  59. package/dest/contract_function_simulator/noir-structs/ephemeral_array.js +59 -0
  60. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +3 -4
  61. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  62. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +9 -10
  63. package/dest/contract_function_simulator/noir-structs/fact.d.ts +16 -0
  64. package/dest/contract_function_simulator/noir-structs/fact.d.ts.map +1 -0
  65. package/dest/contract_function_simulator/noir-structs/fact.js +6 -0
  66. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts +27 -0
  67. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts.map +1 -0
  68. package/dest/contract_function_simulator/noir-structs/fact_collection.js +31 -0
  69. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +19 -10
  70. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  71. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +12 -24
  72. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +11 -9
  73. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  74. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +2 -63
  75. package/dest/contract_function_simulator/noir-structs/note_data.d.ts +27 -0
  76. package/dest/contract_function_simulator/noir-structs/note_data.d.ts.map +1 -0
  77. package/dest/contract_function_simulator/noir-structs/note_data.js +3 -0
  78. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +3 -5
  79. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  80. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +8 -12
  81. package/dest/contract_function_simulator/noir-structs/option.d.ts +59 -0
  82. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
  83. package/dest/contract_function_simulator/noir-structs/option.js +67 -0
  84. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts +11 -0
  85. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts.map +1 -0
  86. package/dest/contract_function_simulator/noir-structs/origin_block.js +5 -0
  87. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts +11 -0
  88. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts.map +1 -0
  89. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.js +4 -0
  90. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +8 -0
  91. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -0
  92. package/dest/contract_function_simulator/noir-structs/provided_secret.js +1 -0
  93. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts +28 -0
  94. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts.map +1 -0
  95. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.js +50 -0
  96. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts +19 -0
  97. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts.map +1 -0
  98. package/dest/contract_function_simulator/noir-structs/resolved_tx.js +9 -0
  99. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts +15 -0
  100. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts.map +1 -0
  101. package/dest/contract_function_simulator/noir-structs/tx_effect_data.js +5 -0
  102. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +6 -11
  103. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  104. package/dest/contract_function_simulator/noir-structs/utility_context.js +1 -20
  105. package/dest/contract_function_simulator/oracle/acir_callback.d.ts +21 -0
  106. package/dest/contract_function_simulator/oracle/acir_callback.d.ts.map +1 -0
  107. package/dest/contract_function_simulator/oracle/acir_callback.js +115 -0
  108. package/dest/contract_function_simulator/oracle/index.d.ts +2 -13
  109. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -1
  110. package/dest/contract_function_simulator/oracle/index.js +1 -1
  111. package/dest/contract_function_simulator/oracle/interfaces.d.ts +15 -98
  112. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  113. package/dest/contract_function_simulator/oracle/interfaces.js +2 -2
  114. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts +39 -0
  115. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts.map +1 -0
  116. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.js +107 -0
  117. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +3 -14
  118. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  119. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -24
  120. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +2 -2
  121. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  122. package/dest/contract_function_simulator/oracle/note_packing_utils.js +2 -2
  123. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +139 -0
  124. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
  125. package/dest/contract_function_simulator/oracle/oracle_registry.js +1016 -0
  126. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +274 -0
  127. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -0
  128. package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +1243 -0
  129. package/dest/contract_function_simulator/oracle/private_execution.d.ts +1 -1
  130. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  131. package/dest/contract_function_simulator/oracle/private_execution.js +7 -6
  132. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +56 -71
  133. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  134. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +200 -99
  135. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +183 -76
  136. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  137. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +662 -156
  138. package/dest/contract_function_simulator/pick_notes.d.ts +1 -1
  139. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  140. package/dest/contract_function_simulator/pick_notes.js +20 -3
  141. package/dest/contract_function_simulator/transient_array_service.d.ts +31 -0
  142. package/dest/contract_function_simulator/transient_array_service.d.ts.map +1 -0
  143. package/dest/contract_function_simulator/transient_array_service.js +62 -0
  144. package/dest/contract_logging.d.ts +9 -4
  145. package/dest/contract_logging.d.ts.map +1 -1
  146. package/dest/contract_logging.js +21 -6
  147. package/dest/debug/pxe_debug_utils.d.ts +4 -9
  148. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  149. package/dest/debug/pxe_debug_utils.js +0 -6
  150. package/dest/entrypoints/client/bundle/index.d.ts +2 -2
  151. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  152. package/dest/entrypoints/client/bundle/index.js +1 -1
  153. package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
  154. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  155. package/dest/entrypoints/client/bundle/utils.js +21 -8
  156. package/dest/entrypoints/client/lazy/index.d.ts +2 -2
  157. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  158. package/dest/entrypoints/client/lazy/index.js +1 -1
  159. package/dest/entrypoints/client/lazy/utils.d.ts +2 -2
  160. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  161. package/dest/entrypoints/client/lazy/utils.js +21 -8
  162. package/dest/entrypoints/client/store.d.ts +14 -0
  163. package/dest/entrypoints/client/store.d.ts.map +1 -0
  164. package/dest/entrypoints/client/store.js +42 -0
  165. package/dest/entrypoints/pxe_creation_options.d.ts +16 -2
  166. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  167. package/dest/entrypoints/pxe_creation_options.js +3 -1
  168. package/dest/entrypoints/server/index.d.ts +7 -4
  169. package/dest/entrypoints/server/index.d.ts.map +1 -1
  170. package/dest/entrypoints/server/index.js +5 -3
  171. package/dest/entrypoints/server/store.d.ts +18 -0
  172. package/dest/entrypoints/server/store.d.ts.map +1 -0
  173. package/dest/entrypoints/server/store.js +28 -0
  174. package/dest/entrypoints/server/utils.d.ts +4 -3
  175. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  176. package/dest/entrypoints/server/utils.js +22 -8
  177. package/dest/error_enriching.d.ts +5 -3
  178. package/dest/error_enriching.d.ts.map +1 -1
  179. package/dest/error_enriching.js +15 -12
  180. package/dest/events/event_service.d.ts +21 -5
  181. package/dest/events/event_service.d.ts.map +1 -1
  182. package/dest/events/event_service.js +51 -17
  183. package/dest/events/private_event_filter_validator.d.ts +3 -2
  184. package/dest/events/private_event_filter_validator.d.ts.map +1 -1
  185. package/dest/events/private_event_filter_validator.js +15 -0
  186. package/dest/hooks/authorize_utility_call.d.ts +41 -0
  187. package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
  188. package/dest/hooks/authorize_utility_call.js +4 -0
  189. package/dest/hooks/execution_hooks.d.ts +62 -0
  190. package/dest/hooks/execution_hooks.d.ts.map +1 -0
  191. package/dest/hooks/execution_hooks.js +9 -0
  192. package/dest/hooks/index.d.ts +5 -0
  193. package/dest/hooks/index.d.ts.map +1 -0
  194. package/dest/hooks/index.js +2 -0
  195. package/dest/hooks/resolve_custom_request.d.ts +23 -0
  196. package/dest/hooks/resolve_custom_request.d.ts.map +1 -0
  197. package/dest/hooks/resolve_custom_request.js +3 -0
  198. package/dest/hooks/resolve_tagging_secret_strategy.d.ts +50 -0
  199. package/dest/hooks/resolve_tagging_secret_strategy.d.ts.map +1 -0
  200. package/dest/hooks/resolve_tagging_secret_strategy.js +3 -0
  201. package/dest/logs/log_service.d.ts +21 -11
  202. package/dest/logs/log_service.d.ts.map +1 -1
  203. package/dest/logs/log_service.js +181 -82
  204. package/dest/messages/tx_resolver_service.d.ts +28 -0
  205. package/dest/messages/tx_resolver_service.d.ts.map +1 -0
  206. package/dest/messages/tx_resolver_service.js +62 -0
  207. package/dest/node/benchmarked_node.d.ts +20 -0
  208. package/dest/node/benchmarked_node.d.ts.map +1 -0
  209. package/dest/node/benchmarked_node.js +94 -0
  210. package/dest/node/caching_aztec_node.d.ts +24 -0
  211. package/dest/node/caching_aztec_node.d.ts.map +1 -0
  212. package/dest/node/caching_aztec_node.js +268 -0
  213. package/dest/notes/note_service.d.ts +34 -7
  214. package/dest/notes/note_service.d.ts.map +1 -1
  215. package/dest/notes/note_service.js +82 -57
  216. package/dest/notes_filter.d.ts +2 -3
  217. package/dest/notes_filter.d.ts.map +1 -1
  218. package/dest/oracle_version.d.ts +4 -3
  219. package/dest/oracle_version.d.ts.map +1 -1
  220. package/dest/oracle_version.js +20 -10
  221. package/dest/private_kernel/batch_planner.d.ts +47 -0
  222. package/dest/private_kernel/batch_planner.d.ts.map +1 -0
  223. package/dest/private_kernel/batch_planner.js +104 -0
  224. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +1 -1
  225. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  226. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +10 -5
  227. package/dest/private_kernel/hints/test_utils.d.ts +1 -1
  228. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -1
  229. package/dest/private_kernel/hints/test_utils.js +3 -4
  230. package/dest/private_kernel/private_kernel_execution_prover.d.ts +6 -2
  231. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  232. package/dest/private_kernel/private_kernel_execution_prover.js +160 -85
  233. package/dest/private_kernel/private_kernel_oracle.d.ts +12 -10
  234. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  235. package/dest/private_kernel/private_kernel_oracle.js +40 -26
  236. package/dest/pxe.d.ts +169 -54
  237. package/dest/pxe.d.ts.map +1 -1
  238. package/dest/pxe.js +378 -213
  239. package/dest/storage/address_store/address_store.d.ts +1 -1
  240. package/dest/storage/address_store/address_store.d.ts.map +1 -1
  241. package/dest/storage/address_store/address_store.js +2 -1
  242. package/dest/storage/allowed_scopes.d.ts +6 -0
  243. package/dest/storage/allowed_scopes.d.ts.map +1 -0
  244. package/dest/storage/allowed_scopes.js +7 -0
  245. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -6
  246. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -1
  247. package/dest/storage/anchor_block_store/anchor_block_store.js +9 -7
  248. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
  249. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
  250. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
  251. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
  252. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
  253. package/dest/storage/backwards_compatibility_tests/schema_tests.js +671 -0
  254. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
  255. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
  256. package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
  257. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  258. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  259. package/dest/storage/capsule_store/capsule_service.js +47 -0
  260. package/dest/storage/capsule_store/capsule_store.d.ts +9 -9
  261. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -1
  262. package/dest/storage/capsule_store/capsule_store.js +37 -29
  263. package/dest/storage/capsule_store/index.d.ts +2 -1
  264. package/dest/storage/capsule_store/index.d.ts.map +1 -1
  265. package/dest/storage/capsule_store/index.js +1 -0
  266. package/dest/storage/contract_store/contract_store.d.ts +27 -24
  267. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  268. package/dest/storage/contract_store/contract_store.js +72 -99
  269. package/dest/storage/contract_store/private_functions_tree.d.ts +1 -1
  270. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -1
  271. package/dest/storage/contract_store/private_functions_tree.js +2 -1
  272. package/dest/storage/fact_store/fact_service.d.ts +22 -0
  273. package/dest/storage/fact_store/fact_service.d.ts.map +1 -0
  274. package/dest/storage/fact_store/fact_service.js +45 -0
  275. package/dest/storage/fact_store/fact_store.d.ts +95 -0
  276. package/dest/storage/fact_store/fact_store.d.ts.map +1 -0
  277. package/dest/storage/fact_store/fact_store.js +411 -0
  278. package/dest/storage/fact_store/fact_store_keys.d.ts +34 -0
  279. package/dest/storage/fact_store/fact_store_keys.d.ts.map +1 -0
  280. package/dest/storage/fact_store/fact_store_keys.js +50 -0
  281. package/dest/storage/fact_store/index.d.ts +6 -0
  282. package/dest/storage/fact_store/index.d.ts.map +1 -0
  283. package/dest/storage/fact_store/index.js +4 -0
  284. package/dest/storage/fact_store/origin_state.d.ts +59 -0
  285. package/dest/storage/fact_store/origin_state.d.ts.map +1 -0
  286. package/dest/storage/fact_store/origin_state.js +60 -0
  287. package/dest/storage/fact_store/stored_fact.d.ts +32 -0
  288. package/dest/storage/fact_store/stored_fact.d.ts.map +1 -0
  289. package/dest/storage/fact_store/stored_fact.js +64 -0
  290. package/dest/storage/index.d.ts +3 -2
  291. package/dest/storage/index.d.ts.map +1 -1
  292. package/dest/storage/index.js +2 -1
  293. package/dest/storage/metadata.d.ts +2 -2
  294. package/dest/storage/metadata.d.ts.map +1 -1
  295. package/dest/storage/metadata.js +1 -1
  296. package/dest/storage/note_store/note_store.d.ts +42 -33
  297. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  298. package/dest/storage/note_store/note_store.js +202 -172
  299. package/dest/storage/note_store/stored_note.d.ts +3 -8
  300. package/dest/storage/note_store/stored_note.d.ts.map +1 -1
  301. package/dest/storage/note_store/stored_note.js +4 -20
  302. package/dest/storage/open_pxe_stores.d.ts +35 -0
  303. package/dest/storage/open_pxe_stores.d.ts.map +1 -0
  304. package/dest/storage/open_pxe_stores.js +29 -0
  305. package/dest/storage/private_event_store/private_event_store.d.ts +13 -16
  306. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
  307. package/dest/storage/private_event_store/private_event_store.js +48 -45
  308. package/dest/storage/private_event_store/stored_private_event.js +1 -1
  309. package/dest/storage/store_identity.d.ts +35 -0
  310. package/dest/storage/store_identity.d.ts.map +1 -0
  311. package/dest/storage/store_identity.js +44 -0
  312. package/dest/storage/tagging_store/index.d.ts +2 -2
  313. package/dest/storage/tagging_store/index.d.ts.map +1 -1
  314. package/dest/storage/tagging_store/index.js +1 -1
  315. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  316. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  317. package/dest/storage/tagging_store/sender_tagging_store.d.ts +63 -31
  318. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  319. package/dest/storage/tagging_store/sender_tagging_store.js +210 -129
  320. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts +51 -0
  321. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts.map +1 -0
  322. package/dest/storage/tagging_store/tagging_secret_sources_store.js +105 -0
  323. package/dest/tagging/constants.d.ts +11 -2
  324. package/dest/tagging/constants.d.ts.map +1 -1
  325. package/dest/tagging/constants.js +38 -10
  326. package/dest/tagging/get_all_logs_by_tags.d.ts +55 -10
  327. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  328. package/dest/tagging/get_all_logs_by_tags.js +55 -36
  329. package/dest/tagging/index.d.ts +8 -7
  330. package/dest/tagging/index.d.ts.map +1 -1
  331. package/dest/tagging/index.js +6 -5
  332. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
  333. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
  334. package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
  335. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +74 -0
  336. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
  337. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +235 -0
  338. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +3 -3
  339. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -1
  340. package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
  341. package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
  342. package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
  343. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +8 -6
  344. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  345. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +25 -19
  346. package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts +22 -0
  347. package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts.map +1 -0
  348. package/dest/tagging/sender_sync/utils/classify_pending_txs.js +62 -0
  349. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +17 -6
  350. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  351. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +46 -31
  352. package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts +29 -0
  353. package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts.map +1 -0
  354. package/dest/tagging/sender_sync/utils/resolve_pending_txs.js +42 -0
  355. package/dest/tagging/sender_sync/utils/test_utils.d.ts +16 -0
  356. package/dest/tagging/sender_sync/utils/test_utils.d.ts.map +1 -0
  357. package/dest/tagging/sender_sync/utils/test_utils.js +24 -0
  358. package/dest/tagging/testing/tag_query_test_utils.d.ts +6 -0
  359. package/dest/tagging/testing/tag_query_test_utils.d.ts.map +1 -0
  360. package/dest/tagging/testing/tag_query_test_utils.js +10 -0
  361. package/package.json +20 -17
  362. package/src/bin/check_oracle_version.ts +46 -135
  363. package/src/bin/index.ts +1 -0
  364. package/src/bin/oracle_version_helpers.ts +54 -0
  365. package/src/block_synchronizer/block_stream_source.ts +42 -0
  366. package/src/block_synchronizer/block_synchronizer.ts +86 -40
  367. package/src/config/index.ts +16 -9
  368. package/src/config/package_info.ts +1 -1
  369. package/src/contract/contract_class_service.ts +45 -0
  370. package/src/contract/contract_sync_service.ts +179 -0
  371. package/src/contract/helpers.ts +35 -0
  372. package/src/contract/skip_sync_contracts.ts +23 -0
  373. package/src/contract_function_simulator/anchored_contract_data.ts +74 -0
  374. package/src/contract_function_simulator/contract_function_simulator.ts +178 -82
  375. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  376. package/src/contract_function_simulator/execution_note_cache.ts +10 -30
  377. package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
  378. package/src/contract_function_simulator/index.ts +89 -4
  379. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +43 -0
  380. package/src/contract_function_simulator/noir-structs/contract_class_log_data.ts +9 -0
  381. package/src/contract_function_simulator/noir-structs/embedded_curve_point.ts +4 -0
  382. package/src/contract_function_simulator/noir-structs/ephemeral_array.ts +66 -0
  383. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +10 -9
  384. package/src/contract_function_simulator/noir-structs/fact.ts +13 -0
  385. package/src/contract_function_simulator/noir-structs/fact_collection.ts +64 -0
  386. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +27 -20
  387. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +14 -64
  388. package/src/contract_function_simulator/noir-structs/note_data.ts +27 -0
  389. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +6 -11
  390. package/src/contract_function_simulator/noir-structs/option.ts +75 -0
  391. package/src/contract_function_simulator/noir-structs/origin_block.ts +8 -0
  392. package/src/contract_function_simulator/noir-structs/pending_tagged_log.ts +12 -0
  393. package/src/contract_function_simulator/noir-structs/provided_secret.ts +5 -0
  394. package/src/contract_function_simulator/noir-structs/resolved_tagging_strategy.ts +66 -0
  395. package/src/contract_function_simulator/noir-structs/resolved_tx.ts +19 -0
  396. package/src/contract_function_simulator/noir-structs/tx_effect_data.ts +16 -0
  397. package/src/contract_function_simulator/noir-structs/utility_context.ts +5 -17
  398. package/src/contract_function_simulator/oracle/acir_callback.ts +154 -0
  399. package/src/contract_function_simulator/oracle/index.ts +1 -15
  400. package/src/contract_function_simulator/oracle/interfaces.ts +11 -176
  401. package/src/contract_function_simulator/oracle/legacy_oracle_registry.ts +147 -0
  402. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +6 -21
  403. package/src/contract_function_simulator/oracle/note_packing_utils.ts +3 -3
  404. package/src/contract_function_simulator/oracle/oracle_registry.ts +710 -0
  405. package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +1052 -0
  406. package/src/contract_function_simulator/oracle/private_execution.ts +6 -7
  407. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +249 -132
  408. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +978 -249
  409. package/src/contract_function_simulator/pick_notes.ts +22 -3
  410. package/src/contract_function_simulator/transient_array_service.ts +91 -0
  411. package/src/contract_logging.ts +18 -5
  412. package/src/debug/pxe_debug_utils.ts +4 -12
  413. package/src/entrypoints/client/bundle/index.ts +1 -1
  414. package/src/entrypoints/client/bundle/utils.ts +26 -8
  415. package/src/entrypoints/client/lazy/index.ts +1 -1
  416. package/src/entrypoints/client/lazy/utils.ts +26 -8
  417. package/src/entrypoints/client/store.ts +54 -0
  418. package/src/entrypoints/pxe_creation_options.ts +21 -1
  419. package/src/entrypoints/server/index.ts +7 -3
  420. package/src/entrypoints/server/store.ts +47 -0
  421. package/src/entrypoints/server/utils.ts +39 -14
  422. package/src/error_enriching.ts +30 -13
  423. package/src/events/event_service.ts +85 -26
  424. package/src/events/private_event_filter_validator.ts +21 -1
  425. package/src/hooks/authorize_utility_call.ts +44 -0
  426. package/src/hooks/execution_hooks.ts +68 -0
  427. package/src/hooks/index.ts +13 -0
  428. package/src/hooks/resolve_custom_request.ts +24 -0
  429. package/src/hooks/resolve_tagging_secret_strategy.ts +60 -0
  430. package/src/logs/log_service.ts +228 -147
  431. package/src/messages/tx_resolver_service.ts +81 -0
  432. package/src/node/benchmarked_node.ts +140 -0
  433. package/src/node/caching_aztec_node.ts +407 -0
  434. package/src/notes/note_service.ts +127 -86
  435. package/src/notes_filter.ts +1 -3
  436. package/src/oracle_version.ts +20 -10
  437. package/src/private_kernel/batch_planner.ts +169 -0
  438. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +15 -4
  439. package/src/private_kernel/hints/test_utils.ts +3 -10
  440. package/src/private_kernel/private_kernel_execution_prover.ts +246 -117
  441. package/src/private_kernel/private_kernel_oracle.ts +58 -29
  442. package/src/pxe.ts +595 -245
  443. package/src/storage/address_store/address_store.ts +2 -1
  444. package/src/storage/allowed_scopes.ts +14 -0
  445. package/src/storage/anchor_block_store/anchor_block_store.ts +9 -7
  446. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
  447. package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
  448. package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
  449. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
  450. package/src/storage/backwards_compatibility_tests/__snapshots__/FactStore.json +40 -0
  451. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
  452. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +40 -0
  453. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +56 -0
  454. package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
  455. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +26 -0
  456. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +30 -0
  457. package/src/storage/backwards_compatibility_tests/__snapshots__/TaggingSecretSourcesStore.json +30 -0
  458. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +117 -0
  459. package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
  460. package/src/storage/backwards_compatibility_tests/schema_tests.ts +803 -0
  461. package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
  462. package/src/storage/capsule_store/capsule_service.ts +85 -0
  463. package/src/storage/capsule_store/capsule_store.ts +45 -27
  464. package/src/storage/capsule_store/index.ts +1 -0
  465. package/src/storage/contract_store/contract_store.ts +98 -125
  466. package/src/storage/contract_store/private_functions_tree.ts +2 -1
  467. package/src/storage/fact_store/fact_service.ts +69 -0
  468. package/src/storage/fact_store/fact_store.ts +488 -0
  469. package/src/storage/fact_store/fact_store_keys.ts +75 -0
  470. package/src/storage/fact_store/index.ts +15 -0
  471. package/src/storage/fact_store/origin_state.ts +84 -0
  472. package/src/storage/fact_store/stored_fact.ts +80 -0
  473. package/src/storage/index.ts +2 -1
  474. package/src/storage/metadata.ts +1 -1
  475. package/src/storage/note_store/note_store.ts +233 -194
  476. package/src/storage/note_store/stored_note.ts +5 -27
  477. package/src/storage/open_pxe_stores.ts +52 -0
  478. package/src/storage/private_event_store/private_event_store.ts +55 -56
  479. package/src/storage/private_event_store/stored_private_event.ts +1 -1
  480. package/src/storage/store_identity.ts +72 -0
  481. package/src/storage/tagging_store/index.ts +1 -1
  482. package/src/storage/tagging_store/recipient_tagging_store.ts +5 -9
  483. package/src/storage/tagging_store/sender_tagging_store.ts +278 -158
  484. package/src/storage/tagging_store/tagging_secret_sources_store.ts +138 -0
  485. package/src/tagging/constants.ts +42 -10
  486. package/src/tagging/get_all_logs_by_tags.ts +115 -50
  487. package/src/tagging/index.ts +12 -6
  488. package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
  489. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +356 -0
  490. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
  491. package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
  492. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +32 -22
  493. package/src/tagging/sender_sync/utils/classify_pending_txs.ts +92 -0
  494. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +55 -39
  495. package/src/tagging/sender_sync/utils/resolve_pending_txs.ts +65 -0
  496. package/src/tagging/sender_sync/utils/test_utils.ts +46 -0
  497. package/src/tagging/testing/tag_query_test_utils.ts +11 -0
  498. package/dest/access_scopes.d.ts +0 -9
  499. package/dest/access_scopes.d.ts.map +0 -1
  500. package/dest/access_scopes.js +0 -6
  501. package/dest/contract_function_simulator/benchmarked_node.d.ts +0 -9
  502. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +0 -1
  503. package/dest/contract_function_simulator/benchmarked_node.js +0 -77
  504. package/dest/contract_function_simulator/oracle/oracle.d.ts +0 -60
  505. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +0 -1
  506. package/dest/contract_function_simulator/oracle/oracle.js +0 -411
  507. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +0 -6
  508. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +0 -1
  509. package/dest/contract_function_simulator/proxied_contract_data_source.js +0 -80
  510. package/dest/contract_sync/contract_sync_service.d.ts +0 -43
  511. package/dest/contract_sync/contract_sync_service.d.ts.map +0 -1
  512. package/dest/contract_sync/contract_sync_service.js +0 -97
  513. package/dest/contract_sync/helpers.d.ts +0 -29
  514. package/dest/contract_sync/helpers.d.ts.map +0 -1
  515. package/dest/contract_sync/helpers.js +0 -55
  516. package/dest/storage/tagging_store/sender_address_book_store.d.ts +0 -14
  517. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +0 -1
  518. package/dest/storage/tagging_store/sender_address_book_store.js +0 -36
  519. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +0 -14
  520. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +0 -1
  521. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +0 -99
  522. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +0 -14
  523. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +0 -1
  524. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +0 -33
  525. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +0 -11
  526. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +0 -1
  527. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +0 -29
  528. package/src/access_scopes.ts +0 -9
  529. package/src/contract_function_simulator/benchmarked_node.ts +0 -103
  530. package/src/contract_function_simulator/oracle/oracle.ts +0 -665
  531. package/src/contract_function_simulator/proxied_contract_data_source.ts +0 -83
  532. package/src/contract_sync/contract_sync_service.ts +0 -152
  533. package/src/contract_sync/helpers.ts +0 -98
  534. package/src/storage/tagging_store/sender_address_book_store.ts +0 -48
  535. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +0 -140
  536. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +0 -44
  537. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +0 -36
@@ -1,75 +1,91 @@
1
- import type { BlockHash } from '@aztec/stdlib/block';
1
+ import type { BlockNumber } from '@aztec/foundation/branded-types';
2
+ import { allToCompletion } from '@aztec/foundation/promise';
2
3
  import type { AztecNode } from '@aztec/stdlib/interfaces/server';
3
- import type { ExtendedDirectionalAppTaggingSecret } from '@aztec/stdlib/logs';
4
- import { SiloedTag } from '@aztec/stdlib/logs';
4
+ import { type AppTaggingSecret, type LogResult, SiloedTag } from '@aztec/stdlib/logs';
5
5
  import { TxHash } from '@aztec/stdlib/tx';
6
6
 
7
7
  import type { SenderTaggingStore } from '../../../storage/tagging_store/sender_tagging_store.js';
8
- import { getAllPrivateLogsByTags } from '../../get_all_logs_by_tags.js';
8
+ import { type LogQueryAnchor, getAllPrivateLogsByTags } from '../../get_all_logs_by_tags.js';
9
9
 
10
10
  /**
11
- * Loads tagging indexes from the Aztec node and stores them in the tagging data provider.
11
+ * Loads tagging indexes from the Aztec node and stores them in the tagging data provider. Returns the txs the
12
+ * window's logs carried, keyed by tx hash string, with the block each was mined in and the window indexes it used,
13
+ * so the caller can classify their finalization status without further node queries.
12
14
  * @remarks This function is one of two places by which a pending index can get to the tagging data provider. The other
13
15
  * place is when a tx is being sent from this PXE.
14
- * @param extendedSecret - The extended directional app tagging secret that's unique for (sender, recipient, app) tuple.
16
+ * @param extendedSecret - The app tagging secret whose indexes are being synced.
15
17
  * @param start - The starting index (inclusive) of the window to process.
16
18
  * @param end - The ending index (exclusive) of the window to process.
17
19
  * @param aztecNode - The Aztec node instance to query for logs.
18
20
  * @param taggingStore - The data provider to store pending indexes.
21
+ * @param anchor - Block the log query is anchored to.
19
22
  * @param jobId - Job identifier, used to keep writes in-memory until they can be persisted in a data integrity
20
23
  * preserving way.
21
24
  */
22
25
  export async function loadAndStoreNewTaggingIndexes(
23
- extendedSecret: ExtendedDirectionalAppTaggingSecret,
26
+ extendedSecret: AppTaggingSecret,
24
27
  start: number,
25
28
  end: number,
26
29
  aztecNode: AztecNode,
27
30
  taggingStore: SenderTaggingStore,
28
- anchorBlockHash: BlockHash,
31
+ anchor: LogQueryAnchor,
29
32
  jobId: string,
30
- ) {
33
+ ): Promise<Map<string, TxInLogs>> {
31
34
  // We compute the tags for the current window of indexes
32
- const siloedTagsForWindow = await Promise.all(
35
+ const siloedTagsForWindow = await allToCompletion(
33
36
  Array.from({ length: end - start }, (_, i) => SiloedTag.compute({ extendedSecret, index: start + i })),
34
37
  );
35
38
 
36
- const txsForTags = await getTxsContainingTags(siloedTagsForWindow, aztecNode, anchorBlockHash);
37
- const highestIndexMap = getTxHighestIndexMap(txsForTags, start, siloedTagsForWindow.length);
39
+ const allLogs = await getAllPrivateLogsByTags(aztecNode, siloedTagsForWindow, anchor);
40
+ if (allLogs.length !== siloedTagsForWindow.length) {
41
+ throw new Error(
42
+ `Number of log arrays does not match number of tags. ${allLogs.length} !== ${siloedTagsForWindow.length}`,
43
+ );
44
+ }
45
+
46
+ const txsInLogs = getTxsInLogs(allLogs, start);
38
47
 
39
- // Now we iterate over the map, reconstruct the preTags and tx hash and store them in the db.
40
- for (const [txHashStr, highestIndex] of highestIndexMap.entries()) {
48
+ // Now we iterate over the map, construct the tagging index ranges and store them in the db. A tx already tracked
49
+ // in the store is merged rather than range-checked: if this PXE sent the tx and it partially reverted, the chain
50
+ // only shows the surviving sub-range of the prove-time entry (the finalized receipt step of the sync owns
51
+ // resolving that difference), and a tx from another PXE may straddle a sync window boundary, in which case the
52
+ // entry is widened so the next index choice covers the full onchain range.
53
+ for (const [txHashStr, { taggingIndexes }] of txsInLogs.entries()) {
41
54
  const txHash = TxHash.fromString(txHashStr);
42
- await taggingStore.storePendingIndexes([{ extendedSecret, index: highestIndex }], txHash, jobId);
55
+ const ranges = [
56
+ { extendedSecret, lowestIndex: Math.min(...taggingIndexes), highestIndex: Math.max(...taggingIndexes) },
57
+ ];
58
+ await taggingStore.mergePendingIndexes(ranges, txHash, jobId);
43
59
  }
44
- }
45
60
 
46
- // Returns txs that used the given tags. A tag might have been used in multiple txs and for this reason we return
47
- // an array for each tag.
48
- async function getTxsContainingTags(
49
- tags: SiloedTag[],
50
- aztecNode: AztecNode,
51
- anchorBlockHash: BlockHash,
52
- ): Promise<TxHash[][]> {
53
- // We use the utility function below to retrieve all logs for the tags across all pages, so we don't need to handle
54
- // pagination here.
55
- const allLogs = await getAllPrivateLogsByTags(aztecNode, tags, anchorBlockHash);
56
- return allLogs.map(logs => logs.map(log => log.txHash));
61
+ return txsInLogs;
57
62
  }
58
63
 
59
- // Returns a map of txHash to the highest index for that txHash.
60
- function getTxHighestIndexMap(txHashesForTags: TxHash[][], start: number, count: number): Map<string, number> {
61
- if (txHashesForTags.length !== count) {
62
- throw new Error(`Number of tx hashes arrays does not match number of tags. ${txHashesForTags.length} !== ${count}`);
63
- }
64
+ /** A tx that a sync window's logs carried. */
65
+ export type TxInLogs = {
66
+ /** The block the tx was mined in, which decides whether it is finalized. */
67
+ blockNumber: BlockNumber;
68
+ /** The window's tagging indexes whose siloed tags this tx's logs carried. */
69
+ taggingIndexes: number[];
70
+ };
64
71
 
65
- const highestIndexMap = new Map<string, number>();
66
- for (let i = 0; i < txHashesForTags.length; i++) {
72
+ // Returns a map of txHash to the block it was mined in and all window indexes used by it.
73
+ function getTxsInLogs(logsForTags: LogResult[][], start: number): Map<string, TxInLogs> {
74
+ const txsInLogs = new Map<string, TxInLogs>();
75
+ // Iterate over indexes
76
+ for (let i = 0; i < logsForTags.length; i++) {
67
77
  const taggingIndex = start + i;
68
- const txHashesForTag = txHashesForTags[i];
69
- for (const txHash of txHashesForTag) {
70
- const key = txHash.toString();
71
- highestIndexMap.set(key, Math.max(highestIndexMap.get(key) ?? 0, taggingIndex));
78
+ // iterate over logs that used that index (tag)
79
+ for (const log of logsForTags[i]) {
80
+ const key = log.txHash.toString();
81
+ const existing = txsInLogs.get(key);
82
+ // Add the index to the tx's indexes
83
+ if (existing) {
84
+ existing.taggingIndexes.push(taggingIndex);
85
+ } else {
86
+ txsInLogs.set(key, { blockNumber: log.blockNumber, taggingIndexes: [taggingIndex] });
87
+ }
72
88
  }
73
89
  }
74
- return highestIndexMap;
90
+ return txsInLogs;
75
91
  }
@@ -0,0 +1,65 @@
1
+ import type { BlockNumber } from '@aztec/foundation/branded-types';
2
+ import { allToCompletion } from '@aztec/foundation/promise';
3
+ import type { AztecNode } from '@aztec/stdlib/interfaces/server';
4
+ import { type MinedTxReceipt, type TxHash, type TxReceipt, TxStatus } from '@aztec/stdlib/tx';
5
+
6
+ import type { PendingTx } from '../../../storage/tagging_store/sender_tagging_store.js';
7
+ import { classifyPendingTxsFromLogs, classifyPendingTxsFromReceipts } from './classify_pending_txs.js';
8
+ import type { TxInLogs } from './load_and_store_new_tagging_indexes.js';
9
+
10
+ /** What a window's node reads established about each of its pending txs. */
11
+ export type ResolvedPendingTxs = {
12
+ txHashesFinalizedFromLogs: TxHash[];
13
+ txHashesFinalizedFromReceipts: TxHash[];
14
+ txHashesDropped: TxHash[];
15
+ /** Both sources land here: the logs when a surviving tag fell inside the window, a receipt otherwise. */
16
+ receiptsWithExecutionReverted: MinedTxReceipt<{ includeTxEffect: true }>[];
17
+ };
18
+
19
+ /**
20
+ * Resolves a window's pending txs. All of the window's node reads happen here.
21
+ *
22
+ * The logs it is handed settle most txs on their own, as {@link classifyPendingTxsFromLogs} explains. Two groups are
23
+ * left over, and share one further round trip:
24
+ *
25
+ * - txs absent from the logs, whose receipt is what tells whether they are still in the mempool, dropped, or reverted;
26
+ * - txs the logs show as reverted, which only their tx effect resolves.
27
+ *
28
+ * A third round trip is paid only when those receipts reveal a reverted tx, since its effect cannot be requested
29
+ * before its status says it reverted.
30
+ */
31
+ export async function resolvePendingTxs(
32
+ pendingTxs: PendingTx[],
33
+ txsInLogs: Map<string, TxInLogs>,
34
+ finalizedBlockNumber: BlockNumber,
35
+ aztecNode: AztecNode,
36
+ ): Promise<ResolvedPendingTxs> {
37
+ const statusFromLogs = classifyPendingTxsFromLogs(pendingTxs, txsInLogs, finalizedBlockNumber);
38
+
39
+ const [statusOfAbsent, receiptsOfRevertedInLogs] = await allToCompletion([
40
+ classifyPendingTxsFromReceipts(statusFromLogs.txHashesAbsent, aztecNode),
41
+ getReceiptsWithEffect(statusFromLogs.txHashesWithExecutionReverted, aztecNode),
42
+ ]);
43
+
44
+ const receiptsOfRevertedAbsent = await getReceiptsWithEffect(statusOfAbsent.txHashesWithExecutionReverted, aztecNode);
45
+
46
+ return {
47
+ txHashesFinalizedFromLogs: statusFromLogs.txHashesFinalized,
48
+ txHashesFinalizedFromReceipts: statusOfAbsent.txHashesFinalized,
49
+ txHashesDropped: statusOfAbsent.txHashesDropped,
50
+ // Both groups were judged finalized before this fetch, the first off our own tip and the second off an earlier
51
+ // receipt, so both are confirmed against what the node says now. Finalizing off a reorgeable block would burn
52
+ // the indexes.
53
+ receiptsWithExecutionReverted: [...receiptsOfRevertedInLogs, ...receiptsOfRevertedAbsent].filter(isFinalized),
54
+ };
55
+ }
56
+
57
+ function getReceiptsWithEffect(txHashes: TxHash[], aztecNode: AztecNode) {
58
+ return allToCompletion(txHashes.map(txHash => aztecNode.getTxReceipt(txHash, { includeTxEffect: true })));
59
+ }
60
+
61
+ function isFinalized(
62
+ receipt: TxReceipt<{ includeTxEffect: true }>,
63
+ ): receipt is MinedTxReceipt<{ includeTxEffect: true }> {
64
+ return receipt.status === TxStatus.FINALIZED;
65
+ }
@@ -0,0 +1,46 @@
1
+ import { BlockNumber, EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
+ import { BlockHash } from '@aztec/stdlib/block';
3
+ import type { MinedTxStatus, TxEffect, TxHash } from '@aztec/stdlib/tx';
4
+ import { MinedTxReceipt, TxExecutionResult } from '@aztec/stdlib/tx';
5
+
6
+ import type { PendingTx } from '../../../storage/tagging_store/sender_tagging_store.js';
7
+ import type { TxInLogs } from './load_and_store_new_tagging_indexes.js';
8
+
9
+ /** A tx the store holds as pending, tracked up to the given index. */
10
+ export function pendingTx(txHash: TxHash, highestIndex: number): PendingTx {
11
+ return { txHash: txHash.toString(), highestIndex };
12
+ }
13
+
14
+ /** One tx as a window's logs show it: the block it was mined in and the tagging indexes its logs carried. */
15
+ export function minedIn(blockNumber: number, taggingIndexes: number[]): TxInLogs {
16
+ return { blockNumber: BlockNumber(blockNumber), taggingIndexes };
17
+ }
18
+
19
+ /** Builds the tx-hash-keyed map a window's logs would produce. */
20
+ export function txsInLogs(...entries: [TxHash, TxInLogs][]): Map<string, TxInLogs> {
21
+ return new Map(entries.map(([txHash, txInLogs]) => [txHash.toString(), txInLogs]));
22
+ }
23
+
24
+ /** The receipt of a mined tx, successful and without a tx effect unless stated otherwise. */
25
+ export function minedReceipt(
26
+ txHash: TxHash,
27
+ status: MinedTxStatus,
28
+ blockNumber: number,
29
+ {
30
+ executionResult = TxExecutionResult.SUCCESS,
31
+ txEffect,
32
+ }: { executionResult?: TxExecutionResult; txEffect?: TxEffect } = {},
33
+ ): MinedTxReceipt {
34
+ return new MinedTxReceipt(
35
+ txHash,
36
+ status,
37
+ executionResult,
38
+ 1n,
39
+ BlockHash.random(),
40
+ BlockNumber(blockNumber),
41
+ SlotNumber(Number(blockNumber)),
42
+ 0,
43
+ EpochNumber(1),
44
+ txEffect,
45
+ );
46
+ }
@@ -0,0 +1,11 @@
1
+ import { type AppTaggingSecret, type PrivateLogsQuery, SiloedTag, type TagQuery } from '@aztec/stdlib/logs';
2
+
3
+ /** Computes the siloed tag */
4
+ export function computeSiloedTagForIndex(secret: AppTaggingSecret, index: number): Promise<SiloedTag> {
5
+ return SiloedTag.compute({ extendedSecret: secret, index });
6
+ }
7
+
8
+ /** Extracts the bare-tag set from a query */
9
+ export function extractTags(query: PrivateLogsQuery): SiloedTag[] {
10
+ return query.tags.map((entry: TagQuery<SiloedTag>) => (entry instanceof SiloedTag ? entry : entry.tag));
11
+ }
@@ -1,9 +0,0 @@
1
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
2
- /**
3
- * Controls which accounts' private state and keys are accessible during execution.
4
- * - `'ALL_SCOPES'`: All registered accounts' private state and keys are accessible.
5
- * - `AztecAddress[]` with entries: Only the specified accounts' private state and keys are accessible.
6
- * - `[]` (empty array): Deny-all. No private state is visible and no keys are accessible.
7
- */
8
- export type AccessScopes = 'ALL_SCOPES' | AztecAddress[];
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzX3Njb3Blcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FjY2Vzc19zY29wZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFaEU7Ozs7O0dBS0c7QUFDSCxNQUFNLE1BQU0sWUFBWSxHQUFHLFlBQVksR0FBRyxZQUFZLEVBQUUsQ0FBQyJ9
@@ -1 +0,0 @@
1
- {"version":3,"file":"access_scopes.d.ts","sourceRoot":"","sources":["../src/access_scopes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,YAAY,EAAE,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Controls which accounts' private state and keys are accessible during execution.
3
- * - `'ALL_SCOPES'`: All registered accounts' private state and keys are accessible.
4
- * - `AztecAddress[]` with entries: Only the specified accounts' private state and keys are accessible.
5
- * - `[]` (empty array): Deny-all. No private state is visible and no keys are accessible.
6
- */ export { };
@@ -1,9 +0,0 @@
1
- import type { AztecNode } from '@aztec/stdlib/interfaces/client';
2
- import type { NodeStats } from '@aztec/stdlib/tx';
3
- export type BenchmarkedNode = AztecNode & {
4
- getStats(): NodeStats;
5
- };
6
- export declare class BenchmarkedNodeFactory {
7
- static create(node: AztecNode): BenchmarkedNode;
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVuY2htYXJrZWRfbm9kZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0X2Z1bmN0aW9uX3NpbXVsYXRvci9iZW5jaG1hcmtlZF9ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBa0IsTUFBTSxrQkFBa0IsQ0FBQztBQWlCbEUsTUFBTSxNQUFNLGVBQWUsR0FBRyxTQUFTLEdBQUc7SUFBRSxRQUFRLElBQUksU0FBUyxDQUFBO0NBQUUsQ0FBQztBQUVwRSxxQkFBYSxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsU0FBUyxHQUFHLGVBQWUsQ0ErRTlDO0NBQ0YifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"benchmarked_node.d.ts","sourceRoot":"","sources":["../../src/contract_function_simulator/benchmarked_node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,kBAAkB,CAAC;AAiBlE,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IAAE,QAAQ,IAAI,SAAS,CAAA;CAAE,CAAC;AAEpE,qBAAa,sBAAsB;IACjC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,eAAe,CA+E9C;CACF"}
@@ -1,77 +0,0 @@
1
- import { Timer } from '@aztec/foundation/timer';
2
- export class BenchmarkedNodeFactory {
3
- static create(node) {
4
- // Per-method call stats
5
- const perMethod = {};
6
- // Round trip tracking
7
- let inFlightCount = 0;
8
- let currentRoundTripTimer = null;
9
- let currentRoundTripMethods = [];
10
- const roundTrips = {
11
- roundTrips: 0,
12
- totalBlockingTime: 0,
13
- roundTripDurations: [],
14
- roundTripMethods: []
15
- };
16
- return new Proxy(node, {
17
- get (target, prop) {
18
- if (prop === 'getStats') {
19
- return ()=>{
20
- return {
21
- perMethod,
22
- roundTrips
23
- };
24
- };
25
- } else {
26
- return function(...args) {
27
- // Track per-method stats
28
- if (!perMethod[prop]) {
29
- perMethod[prop] = {
30
- times: []
31
- };
32
- }
33
- // Start of a new round trip batch?
34
- if (inFlightCount === 0) {
35
- roundTrips.roundTrips++;
36
- currentRoundTripTimer = new Timer();
37
- currentRoundTripMethods = [];
38
- }
39
- inFlightCount++;
40
- currentRoundTripMethods.push(prop);
41
- const callTimer = new Timer();
42
- const result = target[prop].apply(target, args);
43
- // Handle completion - called when the call finishes (after Promise resolves)
44
- const handleCompletion = ()=>{
45
- const callTime = callTimer.ms();
46
- perMethod[prop].times.push(callTime);
47
- inFlightCount--;
48
- // End of round trip batch - all concurrent calls completed
49
- if (inFlightCount === 0 && currentRoundTripTimer) {
50
- const roundTripTime = currentRoundTripTimer.ms();
51
- roundTrips.totalBlockingTime += roundTripTime;
52
- roundTrips.roundTripDurations.push(roundTripTime);
53
- roundTrips.roundTripMethods.push(currentRoundTripMethods);
54
- currentRoundTripTimer = null;
55
- currentRoundTripMethods = [];
56
- }
57
- };
58
- // If the result is a Promise, chain the completion handler
59
- if (result && typeof result.then === 'function') {
60
- return result.then((value)=>{
61
- handleCompletion();
62
- return value;
63
- }, (error)=>{
64
- handleCompletion();
65
- throw error;
66
- });
67
- } else {
68
- // Synchronous method - handle completion immediately
69
- handleCompletion();
70
- return result;
71
- }
72
- };
73
- }
74
- }
75
- });
76
- }
77
- }
@@ -1,60 +0,0 @@
1
- import { type ACIRCallback, type ACVMField } from '@aztec/simulator/client';
2
- import type { IMiscOracle, IPrivateExecutionOracle, IUtilityExecutionOracle } from './interfaces.js';
3
- export declare class UnavailableOracleError extends Error {
4
- constructor(oracleName: string);
5
- }
6
- /**
7
- * A data source that has all the apis required by Aztec.nr.
8
- */
9
- export declare class Oracle {
10
- private handler;
11
- constructor(handler: IMiscOracle | IUtilityExecutionOracle | IPrivateExecutionOracle);
12
- private handlerAsMisc;
13
- private handlerAsUtility;
14
- private handlerAsPrivate;
15
- toACIRCallback(): ACIRCallback;
16
- aztec_utl_assertCompatibleOracleVersion([version]: ACVMField[]): Promise<never[]>;
17
- aztec_utl_getRandomField(): Promise<ACVMField[]>;
18
- aztec_prv_storeInExecutionCache(values: ACVMField[], [hash]: ACVMField[]): Promise<ACVMField[]>;
19
- aztec_prv_loadFromExecutionCache([returnsHash]: ACVMField[]): Promise<ACVMField[][]>;
20
- aztec_utl_getUtilityContext(): Promise<(ACVMField | ACVMField[])[]>;
21
- aztec_utl_getKeyValidationRequest([pkMHash]: ACVMField[]): Promise<ACVMField[]>;
22
- aztec_utl_getContractInstance([address]: ACVMField[]): Promise<ACVMField[]>;
23
- aztec_utl_getNoteHashMembershipWitness([anchorBlockHash]: ACVMField[], [noteHash]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
24
- aztec_utl_getBlockHashMembershipWitness([anchorBlockHash]: ACVMField[], [blockHash]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
25
- aztec_utl_getNullifierMembershipWitness([blockHash]: ACVMField[], [nullifier]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
26
- aztec_utl_getLowNullifierMembershipWitness([blockHash]: ACVMField[], [nullifier]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
27
- aztec_utl_getPublicDataWitness([blockHash]: ACVMField[], [leafSlot]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
28
- aztec_utl_getBlockHeader([blockNumber]: ACVMField[]): Promise<ACVMField[]>;
29
- aztec_utl_getAuthWitness([messageHash]: ACVMField[]): Promise<ACVMField[][]>;
30
- aztec_utl_tryGetPublicKeysAndPartialAddress([address]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
31
- aztec_utl_getNotes([ownerSome]: ACVMField[], [ownerValue]: ACVMField[], [storageSlot]: ACVMField[], [numSelects]: ACVMField[], selectByIndexes: ACVMField[], selectByOffsets: ACVMField[], selectByLengths: ACVMField[], selectValues: ACVMField[], selectComparators: ACVMField[], sortByIndexes: ACVMField[], sortByOffsets: ACVMField[], sortByLengths: ACVMField[], sortOrder: ACVMField[], [limit]: ACVMField[], [offset]: ACVMField[], [status]: ACVMField[], [maxNotes]: ACVMField[], [packedHintedNoteLength]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
32
- aztec_prv_notifyCreatedNote([owner]: ACVMField[], [storageSlot]: ACVMField[], [randomness]: ACVMField[], [noteTypeId]: ACVMField[], note: ACVMField[], [noteHash]: ACVMField[], [counter]: ACVMField[]): Promise<ACVMField[]>;
33
- aztec_prv_notifyNullifiedNote([innerNullifier]: ACVMField[], [noteHash]: ACVMField[], [counter]: ACVMField[]): Promise<ACVMField[]>;
34
- aztec_prv_notifyCreatedNullifier([innerNullifier]: ACVMField[]): Promise<ACVMField[]>;
35
- aztec_prv_isNullifierPending([innerNullifier]: ACVMField[], [contractAddress]: ACVMField[]): Promise<ACVMField[]>;
36
- aztec_utl_checkNullifierExists([innerNullifier]: ACVMField[]): Promise<ACVMField[]>;
37
- aztec_utl_getL1ToL2MembershipWitness([contractAddress]: ACVMField[], [messageHash]: ACVMField[], [secret]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
38
- aztec_utl_storageRead([blockHash]: ACVMField[], [contractAddress]: ACVMField[], [startStorageSlot]: ACVMField[], [numberOfElements]: ACVMField[]): Promise<ACVMField[][]>;
39
- aztec_prv_notifyCreatedContractClassLog([contractAddress]: ACVMField[], message: ACVMField[], [length]: ACVMField[], [counter]: ACVMField[]): Promise<ACVMField[]>;
40
- aztec_utl_log(level: ACVMField[], message: ACVMField[], _ignoredFieldsSize: ACVMField[], fields: ACVMField[]): Promise<ACVMField[]>;
41
- aztec_prv_callPrivateFunction([contractAddress]: ACVMField[], [functionSelector]: ACVMField[], [argsHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField[][]>;
42
- aztec_prv_notifyEnqueuedPublicFunctionCall([contractAddress]: ACVMField[], [calldataHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField[]>;
43
- aztec_prv_notifySetPublicTeardownFunctionCall([contractAddress]: ACVMField[], [calldataHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField[]>;
44
- aztec_prv_notifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]: ACVMField[]): Promise<ACVMField[]>;
45
- aztec_prv_isSideEffectCounterRevertible([sideEffectCounter]: ACVMField[]): Promise<ACVMField[]>;
46
- aztec_prv_getNextAppTagAsSender([sender]: ACVMField[], [recipient]: ACVMField[]): Promise<ACVMField[]>;
47
- aztec_utl_fetchTaggedLogs([pendingTaggedLogArrayBaseSlot]: ACVMField[]): Promise<ACVMField[]>;
48
- aztec_utl_validateAndStoreEnqueuedNotesAndEvents([contractAddress]: ACVMField[], [noteValidationRequestsArrayBaseSlot]: ACVMField[], [eventValidationRequestsArrayBaseSlot]: ACVMField[]): Promise<ACVMField[]>;
49
- aztec_utl_bulkRetrieveLogs([contractAddress]: ACVMField[], [logRetrievalRequestsArrayBaseSlot]: ACVMField[], [logRetrievalResponsesArrayBaseSlot]: ACVMField[]): Promise<ACVMField[]>;
50
- aztec_utl_storeCapsule([contractAddress]: ACVMField[], [slot]: ACVMField[], capsule: ACVMField[]): Promise<ACVMField[]>;
51
- aztec_utl_loadCapsule([contractAddress]: ACVMField[], [slot]: ACVMField[], [tSize]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
52
- aztec_utl_deleteCapsule([contractAddress]: ACVMField[], [slot]: ACVMField[]): Promise<ACVMField[]>;
53
- aztec_utl_copyCapsule([contractAddress]: ACVMField[], [srcSlot]: ACVMField[], [dstSlot]: ACVMField[], [numEntries]: ACVMField[]): Promise<ACVMField[]>;
54
- aztec_utl_aes128Decrypt(ciphertextBVecStorage: ACVMField[], [ciphertextLength]: ACVMField[], iv: ACVMField[], symKey: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
55
- aztec_utl_getSharedSecret([address]: ACVMField[], [ephPKField0]: ACVMField[], [ephPKField1]: ACVMField[], [ephPKField2]: ACVMField[]): Promise<ACVMField[]>;
56
- aztec_utl_emitOffchainEffect(data: ACVMField[]): Promise<never[]>;
57
- aztec_prv_getSenderForTags(): Promise<ACVMField[]>;
58
- aztec_prv_setSenderForTags([senderForTags]: ACVMField[]): Promise<ACVMField[]>;
59
- }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JhY2xlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJhY3RfZnVuY3Rpb25fc2ltdWxhdG9yL29yYWNsZS9vcmFjbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUNMLEtBQUssWUFBWSxFQUNqQixLQUFLLFNBQVMsRUFNZixNQUFNLHlCQUF5QixDQUFDO0FBTWpDLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3JHLHFCQUFhLHNCQUF1QixTQUFRLEtBQUs7SUFDL0MsWUFBWSxVQUFVLEVBQUUsTUFBTSxFQUU3QjtDQUNGO0FBRUQ7O0dBRUc7QUFDSCxxQkFBYSxNQUFNO0lBQ0wsT0FBTyxDQUFDLE9BQU87SUFBM0IsWUFBb0IsT0FBTyxFQUFFLFdBQVcsR0FBRyx1QkFBdUIsR0FBRyx1QkFBdUIsRUFBSTtJQUVoRyxPQUFPLENBQUMsYUFBYTtJQVFyQixPQUFPLENBQUMsZ0JBQWdCO0lBUXhCLE9BQU8sQ0FBQyxnQkFBZ0I7SUFReEIsY0FBYyxJQUFJLFlBQVksQ0FvQzdCO0lBR0QsdUNBQXVDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsb0JBRzdEO0lBR0Qsd0JBQXdCLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBRy9DO0lBR0QsK0JBQStCLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBRzlGO0lBR0ssZ0NBQWdDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUd6RjtJQUdELDJCQUEyQixJQUFJLE9BQU8sQ0FBQyxDQUFDLFNBQVMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxF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
@@ -1 +0,0 @@
1
- {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/oracle.ts"],"names":[],"mappings":"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"}