@aztec/simulator 0.0.1-commit.3469e52 → 0.0.1-commit.350e0a4d

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 (352) hide show
  1. package/README.md +4 -4
  2. package/dest/client.d.ts +1 -3
  3. package/dest/client.d.ts.map +1 -1
  4. package/dest/client.js +0 -2
  5. package/dest/private/acvm/acvm.d.ts +4 -2
  6. package/dest/private/acvm/acvm.d.ts.map +1 -1
  7. package/dest/private/acvm/acvm.js +4 -3
  8. package/dest/private/acvm_native.d.ts +5 -3
  9. package/dest/private/acvm_native.d.ts.map +1 -1
  10. package/dest/private/acvm_native.js +8 -6
  11. package/dest/private/acvm_wasm.d.ts +4 -3
  12. package/dest/private/acvm_wasm.d.ts.map +1 -1
  13. package/dest/private/acvm_wasm.js +7 -5
  14. package/dest/private/circuit_recording/circuit_recorder.d.ts +39 -25
  15. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  16. package/dest/private/circuit_recording/circuit_recorder.js +70 -72
  17. package/dest/private/circuit_recording/file_circuit_recorder.d.ts +9 -20
  18. package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
  19. package/dest/private/circuit_recording/file_circuit_recorder.js +39 -43
  20. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts +7 -2
  21. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts.map +1 -1
  22. package/dest/private/circuit_recording/memory_circuit_recorder.js +4 -4
  23. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
  24. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
  25. package/dest/private/circuit_recording/simulator_recorder_wrapper.js +11 -14
  26. package/dest/private/factory.d.ts +3 -3
  27. package/dest/private/factory.d.ts.map +1 -1
  28. package/dest/private/factory.js +7 -4
  29. package/dest/public/avm/testing/account_proof_fetcher.d.ts +2 -0
  30. package/dest/public/avm/testing/account_proof_fetcher.d.ts.map +1 -0
  31. package/dest/public/avm/testing/account_proof_fetcher.js +152 -0
  32. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.d.ts +2 -1
  33. package/dest/public/avm/testing/base_avm_simulation_tester.d.ts.map +1 -0
  34. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.js +18 -3
  35. package/dest/public/avm/testing/utils.d.ts +32 -0
  36. package/dest/public/avm/testing/utils.d.ts.map +1 -0
  37. package/dest/public/avm/{fixtures → testing}/utils.js +4 -34
  38. package/dest/public/contracts_db_checkpoint.d.ts +2 -2
  39. package/dest/public/contracts_db_checkpoint.d.ts.map +1 -1
  40. package/dest/public/contracts_db_checkpoint.js +1 -1
  41. package/dest/public/executor_metrics.d.ts +1 -1
  42. package/dest/public/executor_metrics.d.ts.map +1 -1
  43. package/dest/public/executor_metrics.js +7 -2
  44. package/dest/public/fixtures/amm_test.js +4 -4
  45. package/dest/public/fixtures/bulk_test.d.ts +1 -1
  46. package/dest/public/fixtures/bulk_test.d.ts.map +1 -1
  47. package/dest/public/fixtures/bulk_test.js +33 -6
  48. package/dest/public/fixtures/custom_bytecode_tester.d.ts +1 -1
  49. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  50. package/dest/public/fixtures/custom_bytecode_tester.js +2 -2
  51. package/dest/public/fixtures/index.d.ts +1 -4
  52. package/dest/public/fixtures/index.d.ts.map +1 -1
  53. package/dest/public/fixtures/index.js +0 -3
  54. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +8 -7
  55. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  56. package/dest/public/fixtures/public_tx_simulation_tester.js +17 -16
  57. package/dest/public/fixtures/simple_contract_data_source.js +1 -1
  58. package/dest/public/fixtures/token_test.js +3 -3
  59. package/dest/public/fixtures/utils.d.ts +2 -2
  60. package/dest/public/fixtures/utils.d.ts.map +1 -1
  61. package/dest/public/fixtures/utils.js +21 -20
  62. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +6 -4
  63. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -1
  64. package/dest/public/fuzzing/avm_fuzzer_simulator.js +12 -7
  65. package/dest/public/fuzzing/avm_simulator_bin.js +11 -8
  66. package/dest/public/index.d.ts +2 -2
  67. package/dest/public/index.d.ts.map +1 -1
  68. package/dest/public/index.js +1 -1
  69. package/dest/public/public_db_sources.d.ts +9 -5
  70. package/dest/public/public_db_sources.d.ts.map +1 -1
  71. package/dest/public/public_db_sources.js +20 -14
  72. package/dest/public/public_processor/guarded_merkle_tree.d.ts +8 -7
  73. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  74. package/dest/public/public_processor/guarded_merkle_tree.js +8 -5
  75. package/dest/public/public_processor/public_processor.d.ts +11 -6
  76. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  77. package/dest/public/public_processor/public_processor.js +112 -74
  78. package/dest/public/public_processor/public_processor_metrics.d.ts +5 -2
  79. package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
  80. package/dest/public/public_processor/public_processor_metrics.js +28 -4
  81. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +3 -2
  82. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +1 -1
  83. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +7 -6
  84. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts +23 -0
  85. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts.map +1 -0
  86. package/dest/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.js → dumping_public_tx_simulator.js} +4 -4
  87. package/dest/public/public_tx_simulator/factories.d.ts +7 -6
  88. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -1
  89. package/dest/public/public_tx_simulator/factories.js +8 -8
  90. package/dest/public/public_tx_simulator/index.d.ts +3 -5
  91. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  92. package/dest/public/public_tx_simulator/index.js +2 -4
  93. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +42 -70
  94. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  95. package/dest/public/public_tx_simulator/public_tx_simulator.js +99 -317
  96. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts +22 -0
  97. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts.map +1 -0
  98. package/dest/public/public_tx_simulator/public_tx_simulator_base.js +28 -0
  99. package/dest/public/test_executor_metrics.d.ts +3 -2
  100. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  101. package/dest/public/test_executor_metrics.js +2 -2
  102. package/package.json +17 -18
  103. package/src/client.ts +0 -2
  104. package/src/private/acvm/acvm.ts +4 -3
  105. package/src/private/acvm_native.ts +11 -5
  106. package/src/private/acvm_wasm.ts +11 -4
  107. package/src/private/circuit_recording/circuit_recorder.ts +89 -81
  108. package/src/private/circuit_recording/file_circuit_recorder.ts +45 -50
  109. package/src/private/circuit_recording/memory_circuit_recorder.ts +6 -4
  110. package/src/private/circuit_recording/simulator_recorder_wrapper.ts +9 -15
  111. package/src/private/factory.ts +7 -4
  112. package/src/public/avm/testing/account_proof.json +553 -0
  113. package/src/public/avm/testing/account_proof_fetcher.ts +166 -0
  114. package/src/public/avm/{fixtures → testing}/base_avm_simulation_tester.ts +23 -3
  115. package/src/public/avm/{fixtures → testing}/utils.ts +4 -40
  116. package/src/public/contracts_db_checkpoint.ts +1 -1
  117. package/src/public/executor_metrics.ts +4 -1
  118. package/src/public/fixtures/amm_test.ts +4 -4
  119. package/src/public/fixtures/bulk_test.ts +31 -6
  120. package/src/public/fixtures/custom_bytecode_tester.ts +2 -2
  121. package/src/public/fixtures/index.ts +0 -3
  122. package/src/public/fixtures/public_tx_simulation_tester.ts +28 -14
  123. package/src/public/fixtures/simple_contract_data_source.ts +1 -1
  124. package/src/public/fixtures/token_test.ts +3 -3
  125. package/src/public/fixtures/utils.ts +23 -24
  126. package/src/public/fuzzing/avm_fuzzer_simulator.ts +16 -19
  127. package/src/public/fuzzing/avm_simulator_bin.ts +14 -6
  128. package/src/public/index.ts +3 -3
  129. package/src/public/public_db_sources.ts +36 -19
  130. package/src/public/public_processor/guarded_merkle_tree.ts +11 -8
  131. package/src/public/public_processor/public_processor.ts +156 -94
  132. package/src/public/public_processor/public_processor_metrics.ts +22 -4
  133. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +11 -7
  134. package/src/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.ts → dumping_public_tx_simulator.ts} +5 -3
  135. package/src/public/public_tx_simulator/factories.ts +10 -7
  136. package/src/public/public_tx_simulator/index.ts +2 -4
  137. package/src/public/public_tx_simulator/public_tx_simulator.ts +153 -470
  138. package/src/public/public_tx_simulator/public_tx_simulator_base.ts +35 -0
  139. package/src/public/test_executor_metrics.ts +3 -3
  140. package/dest/public/avm/avm_context.d.ts +0 -41
  141. package/dest/public/avm/avm_context.d.ts.map +0 -1
  142. package/dest/public/avm/avm_context.js +0 -44
  143. package/dest/public/avm/avm_contract_call_result.d.ts +0 -32
  144. package/dest/public/avm/avm_contract_call_result.d.ts.map +0 -1
  145. package/dest/public/avm/avm_contract_call_result.js +0 -54
  146. package/dest/public/avm/avm_execution_environment.d.ts +0 -23
  147. package/dest/public/avm/avm_execution_environment.d.ts.map +0 -1
  148. package/dest/public/avm/avm_execution_environment.js +0 -33
  149. package/dest/public/avm/avm_gas.d.ts +0 -44
  150. package/dest/public/avm/avm_gas.d.ts.map +0 -1
  151. package/dest/public/avm/avm_gas.js +0 -195
  152. package/dest/public/avm/avm_machine_state.d.ts +0 -97
  153. package/dest/public/avm/avm_machine_state.d.ts.map +0 -1
  154. package/dest/public/avm/avm_machine_state.js +0 -109
  155. package/dest/public/avm/avm_memory_types.d.ts +0 -275
  156. package/dest/public/avm/avm_memory_types.d.ts.map +0 -1
  157. package/dest/public/avm/avm_memory_types.js +0 -351
  158. package/dest/public/avm/avm_simulator.d.ts +0 -40
  159. package/dest/public/avm/avm_simulator.d.ts.map +0 -1
  160. package/dest/public/avm/avm_simulator.js +0 -191
  161. package/dest/public/avm/avm_simulator_interface.d.ts +0 -9
  162. package/dest/public/avm/avm_simulator_interface.d.ts.map +0 -1
  163. package/dest/public/avm/avm_simulator_interface.js +0 -3
  164. package/dest/public/avm/errors.d.ts +0 -104
  165. package/dest/public/avm/errors.d.ts.map +0 -1
  166. package/dest/public/avm/errors.js +0 -141
  167. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +0 -22
  168. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  169. package/dest/public/avm/fixtures/avm_simulation_tester.js +0 -83
  170. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  171. package/dest/public/avm/fixtures/initializers.d.ts +0 -42
  172. package/dest/public/avm/fixtures/initializers.d.ts.map +0 -1
  173. package/dest/public/avm/fixtures/initializers.js +0 -44
  174. package/dest/public/avm/fixtures/utils.d.ts +0 -39
  175. package/dest/public/avm/fixtures/utils.d.ts.map +0 -1
  176. package/dest/public/avm/index.d.ts +0 -2
  177. package/dest/public/avm/index.d.ts.map +0 -1
  178. package/dest/public/avm/index.js +0 -1
  179. package/dest/public/avm/opcodes/accrued_substate.d.ts +0 -75
  180. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +0 -1
  181. package/dest/public/avm/opcodes/accrued_substate.js +0 -255
  182. package/dest/public/avm/opcodes/addressing_mode.d.ts +0 -31
  183. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +0 -1
  184. package/dest/public/avm/opcodes/addressing_mode.js +0 -94
  185. package/dest/public/avm/opcodes/arithmetic.d.ts +0 -49
  186. package/dest/public/avm/opcodes/arithmetic.d.ts.map +0 -1
  187. package/dest/public/avm/opcodes/arithmetic.js +0 -97
  188. package/dest/public/avm/opcodes/bitwise.d.ts +0 -42
  189. package/dest/public/avm/opcodes/bitwise.d.ts.map +0 -1
  190. package/dest/public/avm/opcodes/bitwise.js +0 -99
  191. package/dest/public/avm/opcodes/comparators.d.ts +0 -25
  192. package/dest/public/avm/opcodes/comparators.d.ts.map +0 -1
  193. package/dest/public/avm/opcodes/comparators.js +0 -43
  194. package/dest/public/avm/opcodes/contract.d.ts +0 -20
  195. package/dest/public/avm/opcodes/contract.d.ts.map +0 -1
  196. package/dest/public/avm/opcodes/contract.js +0 -65
  197. package/dest/public/avm/opcodes/control_flow.d.ts +0 -41
  198. package/dest/public/avm/opcodes/control_flow.d.ts.map +0 -1
  199. package/dest/public/avm/opcodes/control_flow.js +0 -107
  200. package/dest/public/avm/opcodes/conversion.d.ts +0 -18
  201. package/dest/public/avm/opcodes/conversion.d.ts.map +0 -1
  202. package/dest/public/avm/opcodes/conversion.js +0 -333
  203. package/dest/public/avm/opcodes/ec_add.d.ts +0 -19
  204. package/dest/public/avm/opcodes/ec_add.d.ts.map +0 -1
  205. package/dest/public/avm/opcodes/ec_add.js +0 -93
  206. package/dest/public/avm/opcodes/environment_getters.d.ts +0 -28
  207. package/dest/public/avm/opcodes/environment_getters.d.ts.map +0 -1
  208. package/dest/public/avm/opcodes/environment_getters.js +0 -77
  209. package/dest/public/avm/opcodes/external_calls.d.ts +0 -59
  210. package/dest/public/avm/opcodes/external_calls.d.ts.map +0 -1
  211. package/dest/public/avm/opcodes/external_calls.js +0 -210
  212. package/dest/public/avm/opcodes/hashing.d.ts +0 -36
  213. package/dest/public/avm/opcodes/hashing.d.ts.map +0 -1
  214. package/dest/public/avm/opcodes/hashing.js +0 -119
  215. package/dest/public/avm/opcodes/index.d.ts +0 -16
  216. package/dest/public/avm/opcodes/index.d.ts.map +0 -1
  217. package/dest/public/avm/opcodes/index.js +0 -15
  218. package/dest/public/avm/opcodes/instruction.d.ts +0 -74
  219. package/dest/public/avm/opcodes/instruction.d.ts.map +0 -1
  220. package/dest/public/avm/opcodes/instruction.js +0 -95
  221. package/dest/public/avm/opcodes/instruction_impl.d.ts +0 -19
  222. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +0 -1
  223. package/dest/public/avm/opcodes/instruction_impl.js +0 -30
  224. package/dest/public/avm/opcodes/memory.d.ts +0 -74
  225. package/dest/public/avm/opcodes/memory.d.ts.map +0 -1
  226. package/dest/public/avm/opcodes/memory.js +0 -257
  227. package/dest/public/avm/opcodes/misc.d.ts +0 -18
  228. package/dest/public/avm/opcodes/misc.d.ts.map +0 -1
  229. package/dest/public/avm/opcodes/misc.js +0 -73
  230. package/dest/public/avm/opcodes/storage.d.ts +0 -24
  231. package/dest/public/avm/opcodes/storage.d.ts.map +0 -1
  232. package/dest/public/avm/opcodes/storage.js +0 -68
  233. package/dest/public/avm/revert_reason.d.ts +0 -18
  234. package/dest/public/avm/revert_reason.d.ts.map +0 -1
  235. package/dest/public/avm/revert_reason.js +0 -39
  236. package/dest/public/avm/serialization/buffer_cursor.d.ts +0 -26
  237. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +0 -1
  238. package/dest/public/avm/serialization/buffer_cursor.js +0 -99
  239. package/dest/public/avm/serialization/bytecode_serialization.d.ts +0 -17
  240. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  241. package/dest/public/avm/serialization/bytecode_serialization.js +0 -336
  242. package/dest/public/avm/serialization/instruction_serialization.d.ts +0 -114
  243. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +0 -1
  244. package/dest/public/avm/serialization/instruction_serialization.js +0 -261
  245. package/dest/public/avm/test_utils.d.ts +0 -15
  246. package/dest/public/avm/test_utils.d.ts.map +0 -1
  247. package/dest/public/avm/test_utils.js +0 -44
  248. package/dest/public/debug_fn_name.d.ts +0 -18
  249. package/dest/public/debug_fn_name.d.ts.map +0 -1
  250. package/dest/public/debug_fn_name.js +0 -35
  251. package/dest/public/fixtures/custom_bytecode_tests.d.ts +0 -12
  252. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +0 -1
  253. package/dest/public/fixtures/custom_bytecode_tests.js +0 -174
  254. package/dest/public/fixtures/minimal_public_tx.d.ts +0 -4
  255. package/dest/public/fixtures/minimal_public_tx.d.ts.map +0 -1
  256. package/dest/public/fixtures/minimal_public_tx.js +0 -19
  257. package/dest/public/fixtures/opcode_spammer.d.ts +0 -123
  258. package/dest/public/fixtures/opcode_spammer.d.ts.map +0 -1
  259. package/dest/public/fixtures/opcode_spammer.js +0 -1681
  260. package/dest/public/hinting_db_sources.d.ts +0 -80
  261. package/dest/public/hinting_db_sources.d.ts.map +0 -1
  262. package/dest/public/hinting_db_sources.js +0 -355
  263. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +0 -53
  264. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +0 -1
  265. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +0 -132
  266. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +0 -42
  267. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +0 -1
  268. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +0 -86
  269. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +0 -30
  270. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +0 -1
  271. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +0 -171
  272. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +0 -22
  273. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +0 -1
  274. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +0 -31
  275. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +0 -1
  276. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +0 -51
  277. package/dest/public/public_tx_simulator/public_tx_context.d.ts +0 -130
  278. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +0 -1
  279. package/dest/public/public_tx_simulator/public_tx_context.js +0 -300
  280. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +0 -21
  281. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +0 -1
  282. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +0 -415
  283. package/dest/public/side_effect_trace.d.ts +0 -87
  284. package/dest/public/side_effect_trace.d.ts.map +0 -1
  285. package/dest/public/side_effect_trace.js +0 -199
  286. package/dest/public/side_effect_trace_interface.d.ts +0 -22
  287. package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
  288. package/dest/public/side_effect_trace_interface.js +0 -1
  289. package/dest/public/state_manager/index.d.ts +0 -2
  290. package/dest/public/state_manager/index.d.ts.map +0 -1
  291. package/dest/public/state_manager/index.js +0 -1
  292. package/dest/public/state_manager/nullifiers.d.ts +0 -61
  293. package/dest/public/state_manager/nullifiers.d.ts.map +0 -1
  294. package/dest/public/state_manager/nullifiers.js +0 -92
  295. package/dest/public/state_manager/public_storage.d.ts +0 -66
  296. package/dest/public/state_manager/public_storage.d.ts.map +0 -1
  297. package/dest/public/state_manager/public_storage.js +0 -145
  298. package/dest/public/state_manager/state_manager.d.ts +0 -164
  299. package/dest/public/state_manager/state_manager.d.ts.map +0 -1
  300. package/dest/public/state_manager/state_manager.js +0 -395
  301. package/src/public/avm/avm_context.ts +0 -61
  302. package/src/public/avm/avm_contract_call_result.ts +0 -67
  303. package/src/public/avm/avm_execution_environment.ts +0 -46
  304. package/src/public/avm/avm_gas.ts +0 -183
  305. package/src/public/avm/avm_machine_state.ts +0 -169
  306. package/src/public/avm/avm_memory_types.ts +0 -436
  307. package/src/public/avm/avm_simulator.ts +0 -276
  308. package/src/public/avm/avm_simulator_interface.ts +0 -8
  309. package/src/public/avm/errors.ts +0 -177
  310. package/src/public/avm/fixtures/avm_simulation_tester.ts +0 -116
  311. package/src/public/avm/fixtures/initializers.ts +0 -102
  312. package/src/public/avm/index.ts +0 -1
  313. package/src/public/avm/opcodes/accrued_substate.ts +0 -288
  314. package/src/public/avm/opcodes/addressing_mode.ts +0 -111
  315. package/src/public/avm/opcodes/arithmetic.ts +0 -129
  316. package/src/public/avm/opcodes/bitwise.ts +0 -113
  317. package/src/public/avm/opcodes/comparators.ts +0 -55
  318. package/src/public/avm/opcodes/contract.ts +0 -75
  319. package/src/public/avm/opcodes/control_flow.ts +0 -123
  320. package/src/public/avm/opcodes/conversion.ts +0 -104
  321. package/src/public/avm/opcodes/ec_add.ts +0 -105
  322. package/src/public/avm/opcodes/environment_getters.ts +0 -87
  323. package/src/public/avm/opcodes/external_calls.ts +0 -261
  324. package/src/public/avm/opcodes/hashing.ts +0 -151
  325. package/src/public/avm/opcodes/index.ts +0 -15
  326. package/src/public/avm/opcodes/instruction.ts +0 -136
  327. package/src/public/avm/opcodes/instruction_impl.ts +0 -36
  328. package/src/public/avm/opcodes/memory.ts +0 -293
  329. package/src/public/avm/opcodes/misc.ts +0 -102
  330. package/src/public/avm/opcodes/storage.ts +0 -87
  331. package/src/public/avm/revert_reason.ts +0 -58
  332. package/src/public/avm/serialization/buffer_cursor.ts +0 -118
  333. package/src/public/avm/serialization/bytecode_serialization.ts +0 -215
  334. package/src/public/avm/serialization/instruction_serialization.ts +0 -249
  335. package/src/public/avm/test_utils.ts +0 -64
  336. package/src/public/debug_fn_name.ts +0 -50
  337. package/src/public/fixtures/custom_bytecode_tests.ts +0 -228
  338. package/src/public/fixtures/minimal_public_tx.ts +0 -26
  339. package/src/public/fixtures/opcode_spammer.ts +0 -1725
  340. package/src/public/hinting_db_sources.ts +0 -607
  341. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +0 -208
  342. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +0 -132
  343. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +0 -237
  344. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +0 -105
  345. package/src/public/public_tx_simulator/public_tx_context.ts +0 -477
  346. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +0 -63
  347. package/src/public/side_effect_trace.ts +0 -290
  348. package/src/public/side_effect_trace_interface.ts +0 -28
  349. package/src/public/state_manager/index.ts +0 -1
  350. package/src/public/state_manager/nullifiers.ts +0 -103
  351. package/src/public/state_manager/public_storage.ts +0 -174
  352. package/src/public/state_manager/state_manager.ts +0 -546
@@ -1,4 +1,4 @@
1
- import { CONTRACT_CLASS_PUBLISHED_MAGIC_VALUE, CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS, CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS, DEFAULT_DA_GAS_LIMIT, DEFAULT_L2_GAS_LIMIT, DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT, PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
1
+ import { CONTRACT_CLASS_PUBLISHED_MAGIC_VALUE, CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS, CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS, PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
2
  import { padArrayEnd } from '@aztec/foundation/collection';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { CONTRACT_INSTANCE_PUBLISHED_EVENT_TAG } from '@aztec/protocol-contracts';
@@ -11,12 +11,14 @@ import { ContractClassLogFields, PrivateLog } from '@aztec/stdlib/logs';
11
11
  import { ChonkProof } from '@aztec/stdlib/proofs';
12
12
  import { BlockHeader, GlobalVariables, HashedValues, Tx, TxConstantData, TxContext } from '@aztec/stdlib/tx';
13
13
  import { strict as assert } from 'assert';
14
+ const TEARDOWN_DA_GAS_LIMIT = 98_304;
15
+ const TEARDOWN_L2_GAS_LIMIT = 817_500;
14
16
  /**
15
17
  * Craft a carrier transaction for some public calls for simulation by PublicTxSimulator.
16
- */ export async function createTxForPublicCalls(privateInsertions, setupCallRequests, appCallRequests, teardownCallRequest, feePayer = AztecAddress.zero(), gasUsedByPrivate = Gas.empty(), globals = GlobalVariables.empty()) {
18
+ */ export async function createTxForPublicCalls(privateInsertions, setupCallRequests, appCallRequests, teardownCallRequest, feePayer = AztecAddress.zero(), gasUsedByPrivate = Gas.empty(), globals = GlobalVariables.empty(), gasLimits) {
17
19
  assert(setupCallRequests.length > 0 || appCallRequests.length > 0 || teardownCallRequest !== undefined, "Can't create public tx with no enqueued calls");
18
20
  // use max limits
19
- const gasLimits = new Gas(DEFAULT_DA_GAS_LIMIT, DEFAULT_L2_GAS_LIMIT);
21
+ gasLimits = gasLimits ?? new Gas(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS);
20
22
  const forPublic = PartialPrivateTailPublicInputsForPublic.empty();
21
23
  // Non revertible private insertions
22
24
  if (!privateInsertions.nonRevertible?.nullifiers?.length) {
@@ -69,15 +71,15 @@ import { strict as assert } from 'assert';
69
71
  forPublic.publicTeardownCallRequest = teardownCallRequest.request;
70
72
  }
71
73
  const maxFeesPerGas = feePayer.isZero() ? GasFees.empty() : new GasFees(10, 10);
72
- const teardownGasLimits = teardownCallRequest ? new Gas(DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT) : Gas.empty();
74
+ const teardownGasLimits = teardownCallRequest ? new Gas(TEARDOWN_DA_GAS_LIMIT, TEARDOWN_L2_GAS_LIMIT) : Gas.empty();
73
75
  const gasSettings = new GasSettings(gasLimits, teardownGasLimits, maxFeesPerGas, GasFees.empty());
74
76
  const txContext = new TxContext(Fr.zero(), Fr.zero(), gasSettings);
75
77
  const header = BlockHeader.empty({
76
78
  globalVariables: globals
77
79
  });
78
80
  const constantData = new TxConstantData(header, txContext, Fr.zero(), Fr.zero());
79
- const includeByTimestamp = 0n; // Not used in the simulator.
80
- const txData = new PrivateKernelTailCircuitPublicInputs(constantData, /*gasUsed=*/ gasUsedByPrivate, feePayer, includeByTimestamp, forPublic);
81
+ const expirationTimestamp = 0n; // Not used in the simulator.
82
+ const txData = new PrivateKernelTailCircuitPublicInputs(constantData, /*gasUsed=*/ gasUsedByPrivate, feePayer, expirationTimestamp, forPublic);
81
83
  const calldata = [
82
84
  ...setupCallRequests,
83
85
  ...appCallRequests,
@@ -94,14 +96,14 @@ import { strict as assert } from 'assert';
94
96
  }
95
97
  export async function createTxForPrivateOnly(feePayer = AztecAddress.zero(), gasUsedByPrivate = new Gas(10, 10)) {
96
98
  // use max limits
97
- const gasLimits = new Gas(DEFAULT_DA_GAS_LIMIT, DEFAULT_L2_GAS_LIMIT);
99
+ const gasLimits = new Gas(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS);
98
100
  const forRollup = PartialPrivateTailPublicInputsForRollup.empty();
99
101
  const maxFeesPerGas = feePayer.isZero() ? GasFees.empty() : new GasFees(10, 10);
100
102
  const gasSettings = new GasSettings(gasLimits, Gas.empty(), maxFeesPerGas, GasFees.empty());
101
103
  const txContext = new TxContext(Fr.zero(), Fr.zero(), gasSettings);
102
104
  const constantData = new TxConstantData(BlockHeader.empty(), txContext, Fr.zero(), Fr.zero());
103
- const includeByTimestamp = 0n; // Not used in the simulator.
104
- const txData = new PrivateKernelTailCircuitPublicInputs(constantData, /*gasUsed=*/ gasUsedByPrivate, feePayer, includeByTimestamp, /*forPublic=*/ undefined, forRollup);
105
+ const expirationTimestamp = 0n; // Not used in the simulator.
106
+ const txData = new PrivateKernelTailCircuitPublicInputs(constantData, /*gasUsed=*/ gasUsedByPrivate, feePayer, expirationTimestamp, /*forPublic=*/ undefined, forRollup);
105
107
  return await Tx.create({
106
108
  data: txData,
107
109
  chonkProof: ChonkProof.empty(),
@@ -135,17 +137,15 @@ export async function addNewContractClassToTx(tx, contractClass, skipNullifierIn
135
137
  tx.contractClassLogFields.push(logFields);
136
138
  }
137
139
  export async function addNewContractInstanceToTx(tx, contractInstance, skipNullifierInsertion = false) {
138
- // can't use publicKeys.toFields() because it includes isInfinite which
139
- // is not broadcast in such private logs
140
+ // Only ivpk_m is broadcast as a point (x, y); the other five keys are hashes.
140
141
  const publicKeysAsFields = [
141
- contractInstance.publicKeys.masterNullifierPublicKey.x,
142
- contractInstance.publicKeys.masterNullifierPublicKey.y,
143
- contractInstance.publicKeys.masterIncomingViewingPublicKey.x,
144
- contractInstance.publicKeys.masterIncomingViewingPublicKey.y,
145
- contractInstance.publicKeys.masterOutgoingViewingPublicKey.x,
146
- contractInstance.publicKeys.masterOutgoingViewingPublicKey.y,
147
- contractInstance.publicKeys.masterTaggingPublicKey.x,
148
- contractInstance.publicKeys.masterTaggingPublicKey.y
142
+ contractInstance.publicKeys.npkMHash,
143
+ contractInstance.publicKeys.ivpkM.x,
144
+ contractInstance.publicKeys.ivpkM.y,
145
+ contractInstance.publicKeys.ovpkMHash,
146
+ contractInstance.publicKeys.tpkMHash,
147
+ contractInstance.publicKeys.mspkMHash,
148
+ contractInstance.publicKeys.fbpkMHash
149
149
  ];
150
150
  const logFields = [
151
151
  CONTRACT_INSTANCE_PUBLISHED_EVENT_TAG,
@@ -154,11 +154,12 @@ export async function addNewContractInstanceToTx(tx, contractInstance, skipNulli
154
154
  new Fr(contractInstance.salt),
155
155
  contractInstance.currentContractClassId,
156
156
  contractInstance.initializationHash,
157
+ contractInstance.immutablesHash,
157
158
  ...publicKeysAsFields,
158
159
  contractInstance.deployer.toField()
159
160
  ];
160
161
  const contractInstanceLog = new PrivateLog(padArrayEnd(logFields, Fr.ZERO, PRIVATE_LOG_SIZE_IN_FIELDS), logFields.length);
161
- const contractAddressNullifier = await siloNullifier(AztecAddress.fromNumber(CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS), contractInstance.address.toField());
162
+ const contractAddressNullifier = await siloNullifier(AztecAddress.fromNumberUnsafe(CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS), contractInstance.address.toField());
162
163
  const accumulatedData = tx.data.forPublic ? tx.data.forPublic.revertibleAccumulatedData : tx.data.forRollup.end;
163
164
  if (!skipNullifierInsertion) {
164
165
  const nextNullifierIndex = countAccumulatedItems(accumulatedData.nullifiers);
@@ -2,7 +2,7 @@ import { AvmTxHint, type PublicTxResult } from '@aztec/stdlib/avm';
2
2
  import { type MerkleTreeWriteOperations } from '@aztec/stdlib/trees';
3
3
  import { GlobalVariables, ProtocolContracts } from '@aztec/stdlib/tx';
4
4
  import type { NativeWorldStateService } from '@aztec/world-state';
5
- import { BaseAvmSimulationTester } from '../avm/fixtures/base_avm_simulation_tester.js';
5
+ import { BaseAvmSimulationTester } from '../avm/testing/base_avm_simulation_tester.js';
6
6
  import { SimpleContractDataSource } from '../fixtures/simple_contract_data_source.js';
7
7
  /**
8
8
  * Request structure for fuzzer simulation communication from C++.
@@ -24,14 +24,16 @@ export declare class FuzzerSimulationRequest {
24
24
  /**
25
25
  * A simulator class for the AVM fuzzer that extends BaseAvmSimulationTester.
26
26
  * It provides methods for registering contracts from C++ msgpack data and simulating transactions.
27
+ * The simulation itself runs on the production C++ AVM simulator, so the fuzzer compares brillig
28
+ * execution against the real AVM rather than a TS reference.
27
29
  */
28
30
  export declare class AvmFuzzerSimulator extends BaseAvmSimulationTester {
29
31
  private simulator;
30
- constructor(merkleTrees: MerkleTreeWriteOperations, contractDataSource: SimpleContractDataSource, globals: GlobalVariables, protocolContracts: ProtocolContracts);
32
+ constructor(merkleTrees: MerkleTreeWriteOperations, contractDataSource: SimpleContractDataSource, globals: GlobalVariables);
31
33
  /**
32
34
  * Static factory method to create an AvmFuzzerSimulator.
33
35
  */
34
- static create(worldStateService: NativeWorldStateService, globals: GlobalVariables, protocolContracts: ProtocolContracts): Promise<AvmFuzzerSimulator>;
36
+ static create(worldStateService: NativeWorldStateService, globals: GlobalVariables): Promise<AvmFuzzerSimulator>;
35
37
  /**
36
38
  * Simulate a transaction from a C++ AvmTxHint.
37
39
  */
@@ -57,4 +59,4 @@ export declare class AvmFuzzerSimulator extends BaseAvmSimulationTester {
57
59
  */
58
60
  applyNoteHashes(rawNoteHashes: any[]): Promise<void>;
59
61
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2Z1enplcl9zaW11bGF0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZnV6emluZy9hdm1fZnV6emVyX3NpbXVsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFZbkUsT0FBTyxFQUFnQixLQUFLLHlCQUF5QixFQUFzQixNQUFNLHFCQUFxQixDQUFDO0FBQ3ZHLE9BQU8sRUFFTCxlQUFlLEVBRWYsaUJBQWlCLEVBS2xCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUl0Rjs7O0dBR0c7QUFDSCxxQkFBYSx1QkFBdUI7YUFFaEIsU0FBUyxFQUFFLE1BQU07YUFDakIsV0FBVyxFQUFFLE1BQU07YUFDbkIsRUFBRSxFQUFFLFNBQVM7YUFDYixPQUFPLEVBQUUsZUFBZTthQUN4QixlQUFlLEVBQUUsR0FBRyxFQUFFO2FBQ3RCLGlCQUFpQixFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2FBQy9CLGdCQUFnQixFQUFFLEdBQUcsRUFBRTthQUN2QixVQUFVLEVBQUUsR0FBRyxFQUFFO2FBQ2pCLGlCQUFpQixFQUFFLGlCQUFpQjtJQVR0RCxZQUNrQixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsTUFBTSxFQUNuQixFQUFFLEVBQUUsU0FBUyxFQUNiLE9BQU8sRUFBRSxlQUFlLEVBQ3hCLGVBQWUsRUFBRSxHQUFHLEVBQUUsRUFDdEIsaUJBQWlCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFDL0IsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFLEVBQ3ZCLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFDakIsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ2xEO0lBRUosTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHVCQUF1QixDQWV4RDtDQUNGO0FBbUhEOzs7R0FHRztBQUNILHFCQUFhLGtCQUFtQixTQUFRLHVCQUF1QjtJQUM3RCxPQUFPLENBQUMsU0FBUyxDQUFvQjtJQUVyQyxZQUNFLFdBQVcsRUFBRSx5QkFBeUIsRUFDdEMsa0JBQWtCLEVBQUUsd0JBQXdCLEVBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQ3hCLGlCQUFpQixFQUFFLGlCQUFpQixFQWlCckM7SUFFRDs7T0FFRztJQUNILE9BQW9CLE1BQU0sQ0FDeEIsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQzFDLE9BQU8sRUFBRSxlQUFlLEVBQ3hCLGlCQUFpQixFQUFFLGlCQUFpQixHQUNuQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FJN0I7SUFFRDs7T0FFRztJQUNVLFFBQVEsQ0FBQyxNQUFNLEVBQUUsU0FBUyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FVaEU7SUFFRDs7T0FFRztJQUNVLHVCQUF1QixDQUFDLFFBQVEsRUFBRSxHQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUdqRTtJQUVEOzs7O09BSUc7SUFDVSwwQkFBMEIsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxHQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQU14RjtJQUVEOzs7T0FHRztJQUNVLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBS2xFO0lBRUQ7OztPQUdHO0lBQ1UsZUFBZSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBSWhFO0NBQ0YifQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2Z1enplcl9zaW11bGF0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZnV6emluZy9hdm1fZnV6emVyX3NpbXVsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFZbkUsT0FBTyxFQUFnQixLQUFLLHlCQUF5QixFQUFzQixNQUFNLHFCQUFxQixDQUFDO0FBQ3ZHLE9BQU8sRUFFTCxlQUFlLEVBRWYsaUJBQWlCLEVBS2xCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN2RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUl0Rjs7O0dBR0c7QUFDSCxxQkFBYSx1QkFBdUI7YUFFaEIsU0FBUyxFQUFFLE1BQU07YUFDakIsV0FBVyxFQUFFLE1BQU07YUFDbkIsRUFBRSxFQUFFLFNBQVM7YUFDYixPQUFPLEVBQUUsZUFBZTthQUN4QixlQUFlLEVBQUUsR0FBRyxFQUFFO2FBQ3RCLGlCQUFpQixFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2FBQy9CLGdCQUFnQixFQUFFLEdBQUcsRUFBRTthQUN2QixVQUFVLEVBQUUsR0FBRyxFQUFFO2FBQ2pCLGlCQUFpQixFQUFFLGlCQUFpQjtJQVR0RCxZQUNrQixTQUFTLEVBQUUsTUFBTSxFQUNqQixXQUFXLEVBQUUsTUFBTSxFQUNuQixFQUFFLEVBQUUsU0FBUyxFQUNiLE9BQU8sRUFBRSxlQUFlLEVBQ3hCLGVBQWUsRUFBRSxHQUFHLEVBQUUsRUFDdEIsaUJBQWlCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFDL0IsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFLEVBQ3ZCLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFDakIsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQ2xEO0lBRUosTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHVCQUF1QixDQWV4RDtDQUNGO0FBbUhEOzs7OztHQUtHO0FBQ0gscUJBQWEsa0JBQW1CLFNBQVEsdUJBQXVCO0lBQzdELE9BQU8sQ0FBQyxTQUFTLENBQW9CO0lBRXJDLFlBQ0UsV0FBVyxFQUFFLHlCQUF5QixFQUN0QyxrQkFBa0IsRUFBRSx3QkFBd0IsRUFDNUMsT0FBTyxFQUFFLGVBQWUsRUFjekI7SUFFRDs7T0FFRztJQUNILE9BQW9CLE1BQU0sQ0FDeEIsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQzFDLE9BQU8sRUFBRSxlQUFlLEdBQ3ZCLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUk3QjtJQUVEOztPQUVHO0lBQ1UsUUFBUSxDQUFDLE1BQU0sRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQVVoRTtJQUVEOztPQUVHO0lBQ1UsdUJBQXVCLENBQUMsUUFBUSxFQUFFLEdBQUcsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBR2pFO0lBRUQ7Ozs7T0FJRztJQUNVLDBCQUEwQixDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEdBQUcsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBTXhGO0lBRUQ7OztPQUdHO0lBQ1UscUJBQXFCLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FLbEU7SUFFRDs7O09BR0c7SUFDVSxlQUFlLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FJaEU7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"avm_fuzzer_simulator.d.ts","sourceRoot":"","sources":["../../../src/public/fuzzing/avm_fuzzer_simulator.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAYnE,OAAO,EAAgB,KAAK,yBAAyB,EAAsB,MAAM,qBAAqB,CAAC;AACvG,OAAO,EAEL,eAAe,EAEf,iBAAiB,EAKlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAItF;;;GAGG;AACH,qBAAa,uBAAuB;aAEhB,SAAS,EAAE,MAAM;aACjB,WAAW,EAAE,MAAM;aACnB,EAAE,EAAE,SAAS;aACb,OAAO,EAAE,eAAe;aACxB,eAAe,EAAE,GAAG,EAAE;aACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;aAC/B,gBAAgB,EAAE,GAAG,EAAE;aACvB,UAAU,EAAE,GAAG,EAAE;aACjB,iBAAiB,EAAE,iBAAiB;IATtD,YACkB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,eAAe,EACxB,eAAe,EAAE,GAAG,EAAE,EACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAC/B,gBAAgB,EAAE,GAAG,EAAE,EACvB,UAAU,EAAE,GAAG,EAAE,EACjB,iBAAiB,EAAE,iBAAiB,EAClD;IAEJ,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,uBAAuB,CAexD;CACF;AAmHD;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,OAAO,CAAC,SAAS,CAAoB;IAErC,YACE,WAAW,EAAE,yBAAyB,EACtC,kBAAkB,EAAE,wBAAwB,EAC5C,OAAO,EAAE,eAAe,EACxB,iBAAiB,EAAE,iBAAiB,EAiBrC;IAED;;OAEG;IACH,OAAoB,MAAM,CACxB,iBAAiB,EAAE,uBAAuB,EAC1C,OAAO,EAAE,eAAe,EACxB,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,kBAAkB,CAAC,CAI7B;IAED;;OAEG;IACU,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,CAUhE;IAED;;OAEG;IACU,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjE;IAED;;;;OAIG;IACU,0BAA0B,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAMxF;IAED;;;OAGG;IACU,qBAAqB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKlE;IAED;;;OAGG;IACU,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAIhE;CACF"}
1
+ {"version":3,"file":"avm_fuzzer_simulator.d.ts","sourceRoot":"","sources":["../../../src/public/fuzzing/avm_fuzzer_simulator.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAYnE,OAAO,EAAgB,KAAK,yBAAyB,EAAsB,MAAM,qBAAqB,CAAC;AACvG,OAAO,EAEL,eAAe,EAEf,iBAAiB,EAKlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAItF;;;GAGG;AACH,qBAAa,uBAAuB;aAEhB,SAAS,EAAE,MAAM;aACjB,WAAW,EAAE,MAAM;aACnB,EAAE,EAAE,SAAS;aACb,OAAO,EAAE,eAAe;aACxB,eAAe,EAAE,GAAG,EAAE;aACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;aAC/B,gBAAgB,EAAE,GAAG,EAAE;aACvB,UAAU,EAAE,GAAG,EAAE;aACjB,iBAAiB,EAAE,iBAAiB;IATtD,YACkB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,eAAe,EACxB,eAAe,EAAE,GAAG,EAAE,EACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAC/B,gBAAgB,EAAE,GAAG,EAAE,EACvB,UAAU,EAAE,GAAG,EAAE,EACjB,iBAAiB,EAAE,iBAAiB,EAClD;IAEJ,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,uBAAuB,CAexD;CACF;AAmHD;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,OAAO,CAAC,SAAS,CAAoB;IAErC,YACE,WAAW,EAAE,yBAAyB,EACtC,kBAAkB,EAAE,wBAAwB,EAC5C,OAAO,EAAE,eAAe,EAczB;IAED;;OAEG;IACH,OAAoB,MAAM,CACxB,iBAAiB,EAAE,uBAAuB,EAC1C,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAI7B;IAED;;OAEG;IACU,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,CAUhE;IAED;;OAEG;IACU,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjE;IAED;;;;OAIG;IACU,0BAA0B,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAMxF;IAED;;;OAGG;IACU,qBAAqB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKlE;IAED;;;OAGG;IACU,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAIhE;CACF"}
@@ -10,7 +10,7 @@ import { ScopedL2ToL1Message } from '@aztec/stdlib/messaging';
10
10
  import { ChonkProof } from '@aztec/stdlib/proofs';
11
11
  import { MerkleTreeId, PublicDataTreeLeaf } from '@aztec/stdlib/trees';
12
12
  import { BlockHeader, GlobalVariables, HashedValues, ProtocolContracts, Tx, TxConstantData, TxContext, TxHash } from '@aztec/stdlib/tx';
13
- import { BaseAvmSimulationTester } from '../avm/fixtures/base_avm_simulation_tester.js';
13
+ import { BaseAvmSimulationTester } from '../avm/testing/base_avm_simulation_tester.js';
14
14
  import { SimpleContractDataSource } from '../fixtures/simple_contract_data_source.js';
15
15
  import { PublicContractsDB } from '../public_db_sources.js';
16
16
  import { PublicTxSimulator } from '../public_tx_simulator/public_tx_simulator.js';
@@ -47,7 +47,7 @@ import { PublicTxSimulator } from '../public_tx_simulator/public_tx_simulator.js
47
47
  }
48
48
  /**
49
49
  * Creates a TypeScript Tx object from a deserialized C++ Tx (AvmTxHint-like structure).
50
- * This allows using PublicTxSimulator.simulate() with fuzzer-generated transactions.
50
+ * This allows simulating fuzzer-generated transactions with the C++ public tx simulator.
51
51
  */ async function createTxFromHint(cppTx) {
52
52
  // Create TxHash from the C++ tx hash string
53
53
  if (!cppTx.hash) {
@@ -100,25 +100,30 @@ import { PublicTxSimulator } from '../public_tx_simulator/public_tx_simulator.js
100
100
  /**
101
101
  * A simulator class for the AVM fuzzer that extends BaseAvmSimulationTester.
102
102
  * It provides methods for registering contracts from C++ msgpack data and simulating transactions.
103
+ * The simulation itself runs on the production C++ AVM simulator, so the fuzzer compares brillig
104
+ * execution against the real AVM rather than a TS reference.
103
105
  */ export class AvmFuzzerSimulator extends BaseAvmSimulationTester {
104
106
  simulator;
105
- constructor(merkleTrees, contractDataSource, globals, protocolContracts){
107
+ constructor(merkleTrees, contractDataSource, globals){
106
108
  super(contractDataSource, merkleTrees);
107
109
  const contractsDb = new PublicContractsDB(contractDataSource);
110
+ // collectPublicInputs and collectCallMetadata are required so the C++ result carries the end
111
+ // tree snapshots and app-logic return values that the fuzzer bin reports back to the harness.
108
112
  this.simulator = new PublicTxSimulator(merkleTrees, contractsDb, globals, {
109
113
  skipFeeEnforcement: false,
110
114
  collectDebugLogs: false,
111
115
  collectHints: false,
116
+ collectPublicInputs: true,
112
117
  collectStatistics: false,
113
- collectCallMetadata: false
114
- }, protocolContracts);
118
+ collectCallMetadata: true
119
+ });
115
120
  }
116
121
  /**
117
122
  * Static factory method to create an AvmFuzzerSimulator.
118
- */ static async create(worldStateService, globals, protocolContracts) {
123
+ */ static async create(worldStateService, globals) {
119
124
  const contractDataSource = new SimpleContractDataSource();
120
125
  const merkleTrees = await worldStateService.fork();
121
- return new AvmFuzzerSimulator(merkleTrees, contractDataSource, globals, protocolContracts);
126
+ return new AvmFuzzerSimulator(merkleTrees, contractDataSource, globals);
122
127
  }
123
128
  /**
124
129
  * Simulate a transaction from a C++ AvmTxHint.
@@ -1,5 +1,5 @@
1
1
  import { EthAddress } from '@aztec/foundation/eth-address';
2
- import { deserializeFromMessagePack, serializeWithMessagePack } from '@aztec/stdlib/avm';
2
+ import { PublicTxEffect, deserializeFromMessagePack, serializeWithMessagePack } from '@aztec/stdlib/avm';
3
3
  import { TreeSnapshots } from '@aztec/stdlib/tx';
4
4
  import { NativeWorldStateService } from '@aztec/world-state';
5
5
  import { createInterface } from 'readline';
@@ -33,9 +33,9 @@ async function openExistingWorldState(dataDir, mapSizeKb) {
33
33
  worldStateCache.set(dataDir, ws);
34
34
  return ws;
35
35
  }
36
- async function simulateWithFuzzer(dataDir, mapSizeKb, txHint, globals, rawContractClasses, rawContractInstances, rawPublicDataWrites, rawNoteHashes, protocolContracts) {
36
+ async function simulateWithFuzzer(dataDir, mapSizeKb, txHint, globals, rawContractClasses, rawContractInstances, rawPublicDataWrites, rawNoteHashes) {
37
37
  const worldStateService = await openExistingWorldState(dataDir, mapSizeKb);
38
- const simulator = await AvmFuzzerSimulator.create(worldStateService, globals, protocolContracts);
38
+ const simulator = await AvmFuzzerSimulator.create(worldStateService, globals);
39
39
  await simulator.applyNoteHashes(rawNoteHashes);
40
40
  // Register contract classes from C++ (must happen before public data writes to match C++ order)
41
41
  for (const rawClass of rawContractClasses){
@@ -54,7 +54,8 @@ async function simulateWithFuzzer(dataDir, mapSizeKb, txHint, globals, rawContra
54
54
  reverted: !result.revertCode.isOK(),
55
55
  output,
56
56
  revertReason: result.findRevertReason()?.message,
57
- publicInputs: result.publicInputs
57
+ publicInputs: result.publicInputs,
58
+ publicTxEffect: result.publicTxEffect
58
59
  };
59
60
  }
60
61
  async function execute(base64Line) {
@@ -63,14 +64,15 @@ async function execute(base64Line) {
63
64
  const buffer = Buffer.from(base64Line.trim(), 'base64');
64
65
  const rawRequest = deserializeFromMessagePack(buffer);
65
66
  const request = FuzzerSimulationRequest.fromPlainObject(rawRequest);
66
- // Run the TS simulation
67
- const result = await simulateWithFuzzer(request.wsDataDir, request.wsMapSizeKb, request.tx, request.globals, request.contractClasses, request.contractInstances, request.publicDataWrites, request.noteHashes, request.protocolContracts);
67
+ // Run the simulation on the C++ AVM simulator
68
+ const result = await simulateWithFuzzer(request.wsDataDir, request.wsMapSizeKb, request.tx, request.globals, request.contractClasses, request.contractInstances, request.publicDataWrites, request.noteHashes);
68
69
  // Serialize the result to msgpack and encode it in base64 for output
69
70
  const resultBuffer = serializeWithMessagePack({
70
71
  reverted: result.reverted,
71
72
  output: result.output,
72
73
  revertReason: result.revertReason ?? '',
73
- endTreeSnapshots: result.publicInputs.endTreeSnapshots
74
+ endTreeSnapshots: result.publicInputs.endTreeSnapshots,
75
+ publicTxEffect: result.publicTxEffect
74
76
  });
75
77
  const base64Response = resultBuffer.toString('base64') + '\n';
76
78
  await writeOutput(base64Response);
@@ -80,7 +82,8 @@ async function execute(base64Line) {
80
82
  reverted: true,
81
83
  output: [],
82
84
  revertReason: `Unexpected Error ${error.message}`,
83
- endTreeSnapshots: TreeSnapshots.empty()
85
+ endTreeSnapshots: TreeSnapshots.empty(),
86
+ publicTxEffect: PublicTxEffect.empty()
84
87
  });
85
88
  await writeOutput(errorResult.toString('base64') + '\n');
86
89
  }
@@ -1,7 +1,7 @@
1
1
  export { PublicContractsDB } from './public_db_sources.js';
2
2
  export { GuardedMerkleTreeOperations } from './public_processor/guarded_merkle_tree.js';
3
3
  export { PublicProcessor, PublicProcessorFactory } from './public_processor/public_processor.js';
4
- export { CppPublicTxSimulator, createPublicTxSimulatorForBlockBuilding, DumpingCppPublicTxSimulator, type PublicTxSimulatorInterface, TelemetryCppPublicTxSimulator, } from './public_tx_simulator/index.js';
4
+ export { PublicTxSimulator, createPublicTxSimulatorForBlockBuilding, DumpingPublicTxSimulator, type PublicTxSimulatorInterface, TelemetryPublicTxSimulator, } from './public_tx_simulator/index.js';
5
5
  export type { PublicTxResult, PublicSimulatorConfig as PublicTxSimulatorConfig } from '@aztec/stdlib/avm';
6
6
  export { getCallRequestsWithCalldataByPhase } from './utils.js';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2pHLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsdUNBQXVDLEVBQ3ZDLDJCQUEyQixFQUMzQixLQUFLLDBCQUEwQixFQUMvQiw2QkFBNkIsR0FDOUIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxZQUFZLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixJQUFJLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sWUFBWSxDQUFDIn0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2pHLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsdUNBQXVDLEVBQ3ZDLHdCQUF3QixFQUN4QixLQUFLLDBCQUEwQixFQUMvQiwwQkFBMEIsR0FDM0IsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxZQUFZLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixJQUFJLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sWUFBWSxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACjG,OAAO,EACL,oBAAoB,EACpB,uCAAuC,EACvC,2BAA2B,EAC3B,KAAK,0BAA0B,EAC/B,6BAA6B,GAC9B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,qBAAqB,IAAI,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,kCAAkC,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACjG,OAAO,EACL,iBAAiB,EACjB,uCAAuC,EACvC,wBAAwB,EACxB,KAAK,0BAA0B,EAC/B,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,qBAAqB,IAAI,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,kCAAkC,EAAE,MAAM,YAAY,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { PublicContractsDB } from './public_db_sources.js';
2
2
  export { GuardedMerkleTreeOperations } from './public_processor/guarded_merkle_tree.js';
3
3
  export { PublicProcessor, PublicProcessorFactory } from './public_processor/public_processor.js';
4
- export { CppPublicTxSimulator, createPublicTxSimulatorForBlockBuilding, DumpingCppPublicTxSimulator, TelemetryCppPublicTxSimulator } from './public_tx_simulator/index.js';
4
+ export { PublicTxSimulator, createPublicTxSimulatorForBlockBuilding, DumpingPublicTxSimulator, TelemetryPublicTxSimulator } from './public_tx_simulator/index.js';
5
5
  export { getCallRequestsWithCalldataByPhase } from './utils.js';
@@ -1,4 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { type LoggerBindings } from '@aztec/foundation/log';
2
3
  import type { FunctionSelector } from '@aztec/stdlib/abi';
3
4
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
5
  import { type ContractClassPublic, type ContractDataSource, type ContractDeploymentData, type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
@@ -15,9 +16,12 @@ export declare class PublicContractsDB implements PublicContractsDBInterface {
15
16
  private dataSource;
16
17
  private contractStateStack;
17
18
  private log;
18
- constructor(dataSource: ContractDataSource);
19
- addContracts(contractDeploymentData: ContractDeploymentData): Promise<void>;
20
- addNewContracts(tx: Tx): Promise<void>;
19
+ constructor(dataSource: ContractDataSource, bindings?: LoggerBindings);
20
+ /** Parses raw log data from the C++/NAPI bridge and inserts the resulting contracts into the current checkpoint. */
21
+ addContractsFromLogs(contractDeploymentData: ContractDeploymentData): void;
22
+ addNewContracts(tx: Tx): void;
23
+ /** Inserts typed contract instances directly into the current checkpoint. */
24
+ addContracts(contractInstances?: ContractInstanceWithAddress[]): void;
21
25
  /**
22
26
  * Creates a new checkpoint, copying the current state for upcoming modifications,
23
27
  * and enabling rollbacks to current state in case of a revert.
@@ -62,7 +66,7 @@ export declare class PublicContractsDB implements PublicContractsDBInterface {
62
66
  export declare class PublicTreesDB implements PublicStateDBInterface {
63
67
  private readonly db;
64
68
  private logger;
65
- constructor(db: MerkleTreeWriteOperations);
69
+ constructor(db: MerkleTreeWriteOperations, bindings?: LoggerBindings);
66
70
  storageRead(contract: AztecAddress, slot: Fr): Promise<Fr>;
67
71
  storageWrite(contract: AztecAddress, slot: Fr, newValue: Fr): Promise<void>;
68
72
  getL1ToL2LeafValue(leafIndex: bigint): Promise<Fr>;
@@ -76,4 +80,4 @@ export declare class PublicTreesDB implements PublicStateDBInterface {
76
80
  revertCheckpoint(): Promise<void>;
77
81
  getTreeSnapshots(): Promise<TreeSnapshots>;
78
82
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2RiX3NvdXJjZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvcHVibGljX2RiX3NvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBS3BELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUVMLEtBQUssbUJBQW1CLEVBQ3hCLEtBQUssa0JBQWtCLEVBQ3ZCLEtBQUssc0JBQXNCLEVBQzNCLEtBQUssMkJBQTJCLEVBRWpDLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxLQUFLLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQ0wsWUFBWSxFQUtiLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBS2xELE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHN0Y7OztHQUdHO0FBQ0gscUJBQWEsaUJBQWtCLFlBQVcsMEJBQTBCO0lBS3RELE9BQU8sQ0FBQyxVQUFVO0lBSjlCLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBMEQ7SUFFcEYsT0FBTyxDQUFDLEdBQUcsQ0FBbUQ7SUFFOUQsWUFBb0IsVUFBVSxFQUFFLGtCQUFrQixFQUFJO0lBRXpDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRSxzQkFBc0IsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBWXZGO0lBRVksZUFBZSxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUlsRDtJQUVEOzs7T0FHRztJQUNJLGdCQUFnQixJQUFJLElBQUksQ0FJOUI7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixJQUFJLElBQUksQ0FNOUI7SUFFRDs7Ozs7T0FLRztJQUNJLHdCQUF3QixJQUFJLElBQUksQ0FNdEM7SUFFRDs7O09BR0c7SUFDSSxnQkFBZ0IsSUFBSSxJQUFJLENBSzlCO0lBRUQsT0FBTyxDQUFDLGVBQWU7SUFhVixtQkFBbUIsQ0FDOUIsT0FBTyxFQUFFLFlBQVksRUFDckIsU0FBUyxFQUFFLE1BQU0sR0FDaEIsT0FBTyxDQUFDLDJCQUEyQixHQUFHLFNBQVMsQ0FBQyxDQUdsRDtJQUVZLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQUczRjtJQUVZLHFCQUFxQixDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FxQi9FO0lBRVksb0JBQW9CLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FFaEg7WUFFYSw0QkFBNEI7SUFhMUMsT0FBTyxDQUFDLDhCQUE4QjtDQVd2QztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gscUJBQWEsYUFBYyxZQUFXLHNCQUFzQjtJQUc5QyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7SUFGL0IsT0FBTyxDQUFDLE1BQU0sQ0FBNkM7SUFFM0QsWUFBNkIsRUFBRSxFQUFFLHlCQUF5QixFQUFJO0lBRWpELFdBQVcsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQXlCdEU7SUFFWSxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVd2RjtJQUVZLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQWdCOUQ7SUFFWSxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBZ0J2RDtJQUVZLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FTdEQ7SUFFWSxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FrQmpFO0lBRVksY0FBYyxDQUFDLGVBQWUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVM5RDtJQUVZLE9BQU8sQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWlDaEY7SUFFWSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTdDO0lBRVksZ0JBQWdCLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUU3QztJQUVZLGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFN0M7SUFFWSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBUXREO0NBQ0YifQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2RiX3NvdXJjZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvcHVibGljX2RiX3NvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBZSxLQUFLLGNBQWMsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUl2RixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTFELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFFTCxLQUFLLG1CQUFtQixFQUN4QixLQUFLLGtCQUFrQixFQUN2QixLQUFLLHNCQUFzQixFQUMzQixLQUFLLDJCQUEyQixFQUVqQyxNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakYsT0FBTyxFQUNMLFlBQVksRUFLYixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUtsRCxPQUFPLEtBQUssRUFBRSwwQkFBMEIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRzdGOzs7R0FHRztBQUNILHFCQUFhLGlCQUFrQixZQUFXLDBCQUEwQjtJQU1oRSxPQUFPLENBQUMsVUFBVTtJQUxwQixPQUFPLENBQUMsa0JBQWtCLENBQTBEO0lBRXBGLE9BQU8sQ0FBQyxHQUFHLENBQVM7SUFFcEIsWUFDVSxVQUFVLEVBQUUsa0JBQWtCLEVBQ3RDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsRUFHMUI7SUFFRCxvSEFBb0g7SUFDN0csb0JBQW9CLENBQUMs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
@@ -1 +1 @@
1
- {"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAKpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAEjC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EACL,YAAY,EAKb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAKlD,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAG7F;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,0BAA0B;IAKtD,OAAO,CAAC,UAAU;IAJ9B,OAAO,CAAC,kBAAkB,CAA0D;IAEpF,OAAO,CAAC,GAAG,CAAmD;IAE9D,YAAoB,UAAU,EAAE,kBAAkB,EAAI;IAEzC,YAAY,CAAC,sBAAsB,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYvF;IAEY,eAAe,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAIlD;IAED;;;OAGG;IACI,gBAAgB,IAAI,IAAI,CAI9B;IAED;;OAEG;IACI,gBAAgB,IAAI,IAAI,CAM9B;IAED;;;;;OAKG;IACI,wBAAwB,IAAI,IAAI,CAMtC;IAED;;;OAGG;IACI,gBAAgB,IAAI,IAAI,CAK9B;IAED,OAAO,CAAC,eAAe;IAaV,mBAAmB,CAC9B,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAGlD;IAEY,gBAAgB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAG3F;IAEY,qBAAqB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAqB/E;IAEY,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEhH;YAEa,4BAA4B;IAa1C,OAAO,CAAC,8BAA8B;CAWvC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,aAAc,YAAW,sBAAsB;IAG9C,OAAO,CAAC,QAAQ,CAAC,EAAE;IAF/B,OAAO,CAAC,MAAM,CAA6C;IAE3D,YAA6B,EAAE,EAAE,yBAAyB,EAAI;IAEjD,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAyBtE;IAEY,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAWvF;IAEY,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAgB9D;IAEY,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAgBvD;IAEY,aAAa,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAStD;IAEY,oBAAoB,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBjE;IAEY,cAAc,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9D;IAEY,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiChF;IAEY,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;IAEY,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;IAEY,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7C;IAEY,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,CAQtD;CACF"}
1
+ {"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":"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"}
@@ -19,29 +19,35 @@ import { L1ToL2MessageIndexOutOfRangeError, NoteHashIndexOutOfRangeError } from
19
19
  dataSource;
20
20
  contractStateStack;
21
21
  log;
22
- constructor(dataSource){
22
+ constructor(dataSource, bindings){
23
23
  this.dataSource = dataSource;
24
24
  this.contractStateStack = [
25
25
  new ContractsDbCheckpoint()
26
26
  ];
27
- this.log = createLogger('simulator:contracts-data-source');
27
+ this.log = createLogger('simulator:contracts-data-source', bindings);
28
28
  }
29
- async addContracts(contractDeploymentData) {
29
+ /** Parses raw log data from the C++/NAPI bridge and inserts the resulting contracts into the current checkpoint. */ addContractsFromLogs(contractDeploymentData) {
30
30
  const currentState = this.getCurrentState();
31
- await this.addContractClassesFromEvents(ContractClassPublishedEvent.extractContractClassEvents(contractDeploymentData.getContractClassLogs()), currentState);
31
+ this.addContractClassesFromEvents(ContractClassPublishedEvent.extractContractClassEvents(contractDeploymentData.getContractClassLogs()), currentState);
32
32
  this.addContractInstancesFromEvents(ContractInstancePublishedEvent.extractContractInstanceEvents(contractDeploymentData.getPrivateLogs()), currentState);
33
33
  }
34
- async addNewContracts(tx) {
34
+ addNewContracts(tx) {
35
35
  const contractDeploymentData = AllContractDeploymentData.fromTx(tx);
36
- await this.addContracts(contractDeploymentData.getNonRevertibleContractDeploymentData());
37
- await this.addContracts(contractDeploymentData.getRevertibleContractDeploymentData());
36
+ this.addContractsFromLogs(contractDeploymentData.getNonRevertibleContractDeploymentData());
37
+ this.addContractsFromLogs(contractDeploymentData.getRevertibleContractDeploymentData());
38
+ }
39
+ /** Inserts typed contract instances directly into the current checkpoint. */ addContracts(contractInstances) {
40
+ const currentState = this.getCurrentState();
41
+ for (const instance of contractInstances ?? []){
42
+ currentState.addInstance(instance.address, instance);
43
+ }
38
44
  }
39
45
  /**
40
46
  * Creates a new checkpoint, copying the current state for upcoming modifications,
41
47
  * and enabling rollbacks to current state in case of a revert.
42
48
  */ createCheckpoint() {
43
49
  const currentState = this.getCurrentState();
44
- const newState = currentState.deepCopy();
50
+ const newState = currentState.fork();
45
51
  this.contractStateStack.push(newState);
46
52
  }
47
53
  /**
@@ -115,12 +121,12 @@ import { L1ToL2MessageIndexOutOfRangeError, NoteHashIndexOutOfRangeError } from
115
121
  async getDebugFunctionName(address, selector) {
116
122
  return await this.dataSource.getDebugFunctionName(address, selector);
117
123
  }
118
- async addContractClassesFromEvents(contractClassEvents, state) {
119
- await Promise.all(contractClassEvents.map(async (event)=>{
124
+ addContractClassesFromEvents(contractClassEvents, state) {
125
+ for (const event of contractClassEvents){
120
126
  this.log.debug(`Adding class ${event.contractClassId.toString()} to contract state`);
121
- const contractClass = await event.toContractClassPublic();
127
+ const contractClass = event.toContractClassPublic();
122
128
  state.addClass(event.contractClassId, contractClass);
123
- }));
129
+ }
124
130
  }
125
131
  addContractInstancesFromEvents(contractInstanceEvents, state) {
126
132
  contractInstanceEvents.forEach((e)=>{
@@ -143,9 +149,9 @@ import { L1ToL2MessageIndexOutOfRangeError, NoteHashIndexOutOfRangeError } from
143
149
  */ export class PublicTreesDB {
144
150
  db;
145
151
  logger;
146
- constructor(db){
152
+ constructor(db, bindings){
147
153
  this.db = db;
148
- this.logger = createLogger('simulator:public-trees-db');
154
+ this.logger = createLogger('simulator:public-trees-db', bindings);
149
155
  }
150
156
  async storageRead(contract, slot) {
151
157
  const timer = new Timer();
@@ -2,7 +2,7 @@ import type { BlockNumber } from '@aztec/foundation/branded-types';
2
2
  import type { IndexedTreeLeafPreimage, SiblingPath } from '@aztec/foundation/trees';
3
3
  import type { BatchInsertionResult, IndexedTreeId, MerkleTreeId, MerkleTreeLeafType, MerkleTreeWriteOperations, SequentialInsertionResult, TreeHeights, TreeInfo } from '@aztec/stdlib/trees';
4
4
  import type { BlockHeader, StateReference } from '@aztec/stdlib/tx';
5
- import type { WorldStateRevision, WorldStateRevisionWithHandle } from '@aztec/stdlib/world-state';
5
+ import type { WorldStateRevision } from '@aztec/stdlib/world-state';
6
6
  /**
7
7
  * Wraps an instance of `MerkleTreeWriteOperations` to allow the sequencer to gate access.
8
8
  * If transactions execution goes past the deadline, the simulator will continue to execute and update the world state
@@ -23,11 +23,12 @@ export declare class GuardedMerkleTreeOperations implements MerkleTreeWriteOpera
23
23
  batchInsert<TreeHeight extends number, SubtreeSiblingPathHeight extends number, ID extends IndexedTreeId>(treeId: ID, leaves: Buffer[], subtreeHeight: number): Promise<BatchInsertionResult<TreeHeight, SubtreeSiblingPathHeight>>;
24
24
  sequentialInsert<TreeHeight extends number, ID extends IndexedTreeId>(treeId: ID, leaves: Buffer[]): Promise<SequentialInsertionResult<TreeHeight>>;
25
25
  close(): Promise<void>;
26
- [Symbol.dispose](): Promise<void>;
26
+ [Symbol.asyncDispose](): Promise<void>;
27
27
  getTreeInfo(treeId: MerkleTreeId): Promise<TreeInfo>;
28
28
  getStateReference(): Promise<StateReference>;
29
29
  getInitialHeader(): BlockHeader;
30
- getRevision(): WorldStateRevision | WorldStateRevisionWithHandle;
30
+ getRevision(): WorldStateRevision;
31
+ getIpcPath(): string;
31
32
  getSiblingPath<ID extends MerkleTreeId>(treeId: ID, index: bigint): Promise<SiblingPath<TreeHeights[ID]>>;
32
33
  getPreviousValueIndex<ID extends IndexedTreeId>(treeId: ID, value: bigint): Promise<{
33
34
  index: bigint;
@@ -38,14 +39,14 @@ export declare class GuardedMerkleTreeOperations implements MerkleTreeWriteOpera
38
39
  findLeafIndicesAfter<ID extends MerkleTreeId>(treeId: ID, values: MerkleTreeLeafType<ID>[], startIndex: bigint): Promise<(bigint | undefined)[]>;
39
40
  getLeafValue<ID extends MerkleTreeId>(treeId: ID, index: bigint): Promise<MerkleTreeLeafType<typeof treeId> | undefined>;
40
41
  getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(BlockNumber | undefined)[]>;
41
- createCheckpoint(): Promise<void>;
42
+ createCheckpoint(): Promise<number>;
42
43
  commitCheckpoint(): Promise<void>;
43
44
  revertCheckpoint(): Promise<void>;
44
- commitAllCheckpoints(): Promise<void>;
45
- revertAllCheckpoints(): Promise<void>;
45
+ commitAllCheckpointsTo(depth: number): Promise<void>;
46
+ revertAllCheckpointsTo(depth: number): Promise<void>;
46
47
  findSiblingPaths<ID extends MerkleTreeId>(treeId: ID, values: MerkleTreeLeafType<ID>[]): Promise<({
47
48
  path: SiblingPath<TreeHeights[ID]>;
48
49
  index: bigint;
49
50
  } | undefined)[]>;
50
51
  }
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VhcmRlZF9tZXJrbGVfdHJlZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9wdWJsaWNfcHJvY2Vzc29yL2d1YXJkZWRfbWVya2xlX3RyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQ1Ysb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsV0FBVyxFQUNYLFFBQVEsRUFDVCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxHOzs7OztHQUtHO0FBRUgscUJBQWEsMkJBQTRCLFlBQVcseUJBQXlCO0lBSS9ELE9BQU8sQ0FBQyxNQUFNO0lBSDFCLE9BQU8sQ0FBQyxTQUFTLENBQVM7SUFDMUIsT0FBTyxDQUFDLFdBQVcsQ0FBcUI7SUFFeEMsWUFBb0IsTUFBTSxFQUFFLHlCQUF5QixFQUVwRDtJQUVELE9BQU8sQ0FBQyxLQUFLO0lBT2IsT0FBTyxDQUFDLFlBQVk7SUFRYixpQkFBaUIsSUFBSSx5QkFBeUIsQ0FFcEQ7SUFHSyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQU0xQjtJQUdELFlBQVksQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVqRztJQUVELGFBQWEsQ0FBQyxNQUFNLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFaEQ7SUFDRCxXQUFXLENBQUMsVUFBVSxTQUFTLE1BQU0sRUFBRSx3QkFBd0IsU0FBUyxNQUFNLEVBQUUsRUFBRSxTQUFTLGFBQWEsRUFDdEcsTUFBTSxFQUFFLEVBQUUsRUFDVixNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQ2hCLGFBQWEsRUFBRSxNQUFNLEdBQ3BCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsd0JBQXdCLENBQUMsQ0FBQyxDQUVyRTtJQUNELGdCQUFnQixDQUFDLFVBQVUsU0FBUyxNQUFNLEVBQUUsRUFBRSxTQUFTLGFBQWEsRUFDbEUsTUFBTSxFQUFFLEVBQUUsRUFDVixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQ2YsT0FBTyxDQUFDLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBRWhEO0lBQ0QsS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFckI7SUFFSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXRDO0lBQ0QsV0FBVyxDQUFDLE1BQU0sRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUVuRDtJQUNELGlCQUFpQixJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FFM0M7SUFDRCxnQkFBZ0IsSUFBSSxXQUFXLENBRTlCO0lBQ00sV0FBVyxJQUFJLGtCQUFrQixHQUFHLDRCQUE0QixDQUV0RTtJQUNELGNBQWMsQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBRXhHO0lBQ0QscUJBQXFCLENBQUMsRUFBRSxTQUFTLGFBQWEsRUFDNUMsTUFBTSxFQUFFLEVBQUUsRUFDVixLQUFLLEVBQUUsTUFBTSxHQUNaLE9BQU8sQ0FBQztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUM7UUFBQyxjQUFjLEVBQUUsT0FBTyxDQUFBO0tBQUUsR0FBRyxTQUFTLENBQUMsQ0FFakU7SUFDRCxlQUFlLENBQUMsRUFBRSxTQUFTLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLHVCQUF1QixHQUFHLFNBQVMsQ0FBQyxDQUVqSDtJQUNELGVBQWUsQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUNyQyxNQUFNLEVBQUUsRUFBRSxFQUNWLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUMvQixPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUVqQztJQUNELG9CQUFvQixDQUFDLEVBQUUsU0FBUyxZQUFZLEVBQzFDLE1BQU0sRUFBRSxFQUFFLEVBQ1YsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQ2hDLFVBQVUsRUFBRSxNQUFNLEdBQ2pCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsRUFBRSxDQUFDLENBRWpDO0lBQ0QsWUFBWSxDQUFDLEVBQUUsU0FBUyxZQUFZLEVBQ2xDLE1BQU0sRUFBRSxFQUFFLEVBQ1YsS0FBSyxFQUFFLE1BQU0sR0FDWixPQUFPLENBQUMsa0JBQWtCLENBQUMsT0FBTyxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FFeEQ7SUFDRCw2QkFBNkIsQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUNuRCxNQUFNLEVBQUUsRUFBRSxFQUNWLFdBQVcsRUFBRSxNQUFNLEVBQUUsR0FDcEIsT0FBTyxDQUFDLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FFdEM7SUFDRCxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRWhDO0lBQ0QsZ0JBQWdCLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVoQztJQUNELGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFaEM7SUFDRCxvQkFBb0IsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXBDO0lBQ0Qsb0JBQW9CLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVwQztJQUNELGdCQUFnQixDQUFDLEVBQUUsU0FBUyxZQUFZLEVBQ3RDLE1BQU0sRUFBRSxFQUFFLEVBQ1YsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQy9CLE9BQU8sQ0FBQyxDQUFDO1FBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUFDLEtBQUssRUFBRSxNQUFNLENBQUE7S0FBRSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FFaEY7Q0FDRiJ9
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VhcmRlZF9tZXJrbGVfdHJlZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9wdWJsaWNfcHJvY2Vzc29yL2d1YXJkZWRfbWVya2xlX3RyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQ1Ysb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsV0FBVyxFQUNYLFFBQVEsRUFDVCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFOzs7OztHQUtHO0FBRUgscUJBQWEsMkJBQTRCLFlBQVcseUJBQXlCO0lBSS9ELE9BQU8sQ0FBQyxNQUFNO0lBSDFCLE9BQU8sQ0FBQyxTQUFTLENBQVM7SUFDMUIsT0FBTyxDQUFDLFdBQVcsQ0FBcUI7SUFFeEMsWUFBb0IsTUFBTSxFQUFFLHlCQUF5QixFQUVwRDtJQUVELE9BQU8sQ0FBQyxLQUFLO0lBT2IsT0FBTyxDQUFDLFlBQVk7SUFRYixpQkFBaUIsSUFBSSx5QkFBeUIsQ0FFcEQ7SUFHSyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQU0xQjtJQUdELFlBQVksQ0FBQyxFQUFFLFNBQVMsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVqRztJQUVELGFB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
@@ -1 +1 @@
1
- {"version":3,"file":"guarded_merkle_tree.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/guarded_merkle_tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guarded_merkle_tree.d.ts","sourceRoot":"","sources":["../../../src/public/public_processor/guarded_merkle_tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,WAAW,EACX,QAAQ,EACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;;GAKG;AAEH,qBAAa,2BAA4B,YAAW,yBAAyB;IAI/D,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAqB;IAExC,YAAoB,MAAM,EAAE,yBAAyB,EAEpD;IAED,OAAO,CAAC,KAAK;IAOb,OAAO,CAAC,YAAY;IAQb,iBAAiB,IAAI,yBAAyB,CAEpD;IAGK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1B;IAGD,YAAY,CAAC,EAAE,SAAS,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjG;IAED,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhD;IACD,WAAW,CAAC,UAAU,SAAS,MAAM,EAAE,wBAAwB,SAAS,MAAM,EAAE,EAAE,SAAS,aAAa,EACtG,MAAM,EAAE,EAAE,EACV,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,oBAAoB,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,CAErE;IACD,gBAAgB,CAAC,UAAU,SAAS,MAAM,EAAE,EAAE,SAAS,aAAa,EAClE,MAAM,EAAE,EAAE,EACV,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAEhD;IACD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErB;IAEK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IACD,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,CAEnD;IACD,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAE3C;IACD,gBAAgB,IAAI,WAAW,CAE9B;IACM,WAAW,IAAI,kBAAkB,CAEvC;IACM,UAAU,IAAI,MAAM,CAE1B;IACD,cAAc,CAAC,EAAE,SAAS,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAExG;IACD,qBAAqB,CAAC,EAAE,SAAS,aAAa,EAC5C,MAAM,EAAE,EAAE,EACV,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC,CAEjE;IACD,eAAe,CAAC,EAAE,SAAS,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAEjH;IACD,eAAe,CAAC,EAAE,SAAS,YAAY,EACrC,MAAM,EAAE,EAAE,EACV,MAAM,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAAE,GAC/B,OAAO,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAEjC;IACD,oBAAoB,CAAC,EAAE,SAAS,YAAY,EAC1C,MAAM,EAAE,EAAE,EACV,MAAM,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAEjC;IACD,YAAY,CAAC,EAAE,SAAS,YAAY,EAClC,MAAM,EAAE,EAAE,EACV,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC,OAAO,MAAM,CAAC,GAAG,SAAS,CAAC,CAExD;IACD,6BAA6B,CAAC,EAAE,SAAS,YAAY,EACnD,MAAM,EAAE,EAAE,EACV,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC,CAEtC;IACD,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAElC;IACD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhC;IACD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhC;IACD,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnD;IACD,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnD;IACD,gBAAgB,CAAC,EAAE,SAAS,YAAY,EACtC,MAAM,EAAE,EAAE,EACV,MAAM,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAAE,GAC/B,OAAO,CAAC,CAAC;QAAE,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,EAAE,CAAC,CAEhF;CACF"}
@@ -1,6 +1,6 @@
1
1
  var _computedKey;
2
2
  import { SerialQueue } from '@aztec/foundation/queue';
3
- _computedKey = Symbol.dispose;
3
+ _computedKey = Symbol.asyncDispose;
4
4
  /**
5
5
  * Wraps an instance of `MerkleTreeWriteOperations` to allow the sequencer to gate access.
6
6
  * If transactions execution goes past the deadline, the simulator will continue to execute and update the world state
@@ -71,6 +71,9 @@ _computedKey = Symbol.dispose;
71
71
  getRevision() {
72
72
  return this.target.getRevision();
73
73
  }
74
+ getIpcPath() {
75
+ return this.target.getIpcPath();
76
+ }
74
77
  getSiblingPath(treeId, index) {
75
78
  return this.guardAndPush(()=>this.target.getSiblingPath(treeId, index));
76
79
  }
@@ -101,11 +104,11 @@ _computedKey = Symbol.dispose;
101
104
  revertCheckpoint() {
102
105
  return this.guardAndPush(()=>this.target.revertCheckpoint());
103
106
  }
104
- commitAllCheckpoints() {
105
- return this.guardAndPush(()=>this.target.commitAllCheckpoints());
107
+ commitAllCheckpointsTo(depth) {
108
+ return this.guardAndPush(()=>this.target.commitAllCheckpointsTo(depth));
106
109
  }
107
- revertAllCheckpoints() {
108
- return this.guardAndPush(()=>this.target.revertAllCheckpoints());
110
+ revertAllCheckpointsTo(depth) {
111
+ return this.guardAndPush(()=>this.target.revertAllCheckpointsTo(depth));
109
112
  }
110
113
  findSiblingPaths(treeId, values) {
111
114
  return this.guardAndPush(()=>this.target.findSiblingPaths(treeId, values));