@aztec/simulator 0.0.1-commit.993d240 → 0.0.1-commit.9a89641

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 (341) hide show
  1. package/dest/client.d.ts +1 -3
  2. package/dest/client.d.ts.map +1 -1
  3. package/dest/client.js +0 -2
  4. package/dest/private/circuit_recording/circuit_recorder.d.ts +36 -23
  5. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  6. package/dest/private/circuit_recording/circuit_recorder.js +65 -69
  7. package/dest/private/circuit_recording/file_circuit_recorder.d.ts +7 -19
  8. package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
  9. package/dest/private/circuit_recording/file_circuit_recorder.js +38 -42
  10. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
  11. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
  12. package/dest/private/circuit_recording/simulator_recorder_wrapper.js +11 -14
  13. package/dest/public/avm/testing/account_proof_fetcher.d.ts +2 -0
  14. package/dest/public/avm/testing/account_proof_fetcher.d.ts.map +1 -0
  15. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.d.ts +1 -1
  16. package/dest/public/avm/testing/base_avm_simulation_tester.d.ts.map +1 -0
  17. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.js +1 -1
  18. package/dest/public/avm/testing/utils.d.ts +32 -0
  19. package/dest/public/avm/testing/utils.d.ts.map +1 -0
  20. package/dest/public/avm/{fixtures → testing}/utils.js +1 -34
  21. package/dest/public/avm_simulator.d.ts +28 -0
  22. package/dest/public/avm_simulator.d.ts.map +1 -0
  23. package/dest/public/avm_simulator.js +4 -0
  24. package/dest/public/avm_simulator_pool.d.ts +45 -0
  25. package/dest/public/avm_simulator_pool.d.ts.map +1 -0
  26. package/dest/public/avm_simulator_pool.js +197 -0
  27. package/dest/public/cdb_ipc_server.d.ts +40 -0
  28. package/dest/public/cdb_ipc_server.d.ts.map +1 -0
  29. package/dest/public/cdb_ipc_server.js +153 -0
  30. package/dest/public/fixtures/amm_test.js +2 -2
  31. package/dest/public/fixtures/bulk_test.js +2 -2
  32. package/dest/public/fixtures/custom_bytecode_tester.d.ts +1 -1
  33. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  34. package/dest/public/fixtures/custom_bytecode_tester.js +2 -2
  35. package/dest/public/fixtures/index.d.ts +2 -4
  36. package/dest/public/fixtures/index.d.ts.map +1 -1
  37. package/dest/public/fixtures/index.js +1 -3
  38. package/dest/public/fixtures/public_processor_test_env.d.ts +30 -0
  39. package/dest/public/fixtures/public_processor_test_env.d.ts.map +1 -0
  40. package/dest/public/fixtures/public_processor_test_env.js +73 -0
  41. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +11 -7
  42. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  43. package/dest/public/fixtures/public_tx_simulation_tester.js +33 -43
  44. package/dest/public/fixtures/simple_contract_data_source.js +1 -1
  45. package/dest/public/fixtures/token_test.js +3 -3
  46. package/dest/public/fixtures/utils.d.ts +1 -1
  47. package/dest/public/fixtures/utils.d.ts.map +1 -1
  48. package/dest/public/fixtures/utils.js +5 -3
  49. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +11 -4
  50. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -1
  51. package/dest/public/fuzzing/avm_fuzzer_simulator.js +24 -10
  52. package/dest/public/fuzzing/avm_simulator_bin.js +4 -4
  53. package/dest/public/index.d.ts +5 -2
  54. package/dest/public/index.d.ts.map +1 -1
  55. package/dest/public/index.js +2 -1
  56. package/dest/public/public_db_sources.d.ts +2 -2
  57. package/dest/public/public_db_sources.d.ts.map +1 -1
  58. package/dest/public/public_db_sources.js +1 -1
  59. package/dest/public/public_processor/guarded_merkle_tree.d.ts +4 -3
  60. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  61. package/dest/public/public_processor/guarded_merkle_tree.js +3 -0
  62. package/dest/public/public_processor/public_processor.d.ts +8 -4
  63. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  64. package/dest/public/public_processor/public_processor.js +18 -14
  65. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts +17 -0
  66. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts.map +1 -0
  67. package/dest/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.js → dumping_public_tx_simulator.js} +10 -23
  68. package/dest/public/public_tx_simulator/factories.d.ts +8 -8
  69. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -1
  70. package/dest/public/public_tx_simulator/factories.js +8 -8
  71. package/dest/public/public_tx_simulator/index.d.ts +4 -6
  72. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  73. package/dest/public/public_tx_simulator/index.js +2 -4
  74. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +42 -75
  75. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  76. package/dest/public/public_tx_simulator/public_tx_simulator.js +98 -323
  77. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts +24 -0
  78. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts.map +1 -0
  79. package/dest/public/public_tx_simulator/public_tx_simulator_base.js +31 -0
  80. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +5 -5
  81. package/dest/public/test_executor_metrics.d.ts +1 -6
  82. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  83. package/dest/public/test_executor_metrics.js +0 -22
  84. package/package.json +20 -18
  85. package/src/client.ts +0 -2
  86. package/src/private/circuit_recording/circuit_recorder.ts +84 -78
  87. package/src/private/circuit_recording/file_circuit_recorder.ts +38 -48
  88. package/src/private/circuit_recording/simulator_recorder_wrapper.ts +9 -15
  89. package/src/public/avm/{fixtures → testing}/base_avm_simulation_tester.ts +1 -1
  90. package/src/public/avm/{fixtures → testing}/utils.ts +1 -40
  91. package/src/public/avm_simulator.ts +29 -0
  92. package/src/public/avm_simulator_pool.ts +226 -0
  93. package/src/public/cdb_ipc_server.ts +198 -0
  94. package/src/public/fixtures/amm_test.ts +2 -2
  95. package/src/public/fixtures/bulk_test.ts +2 -2
  96. package/src/public/fixtures/custom_bytecode_tester.ts +2 -2
  97. package/src/public/fixtures/index.ts +1 -3
  98. package/src/public/fixtures/public_processor_test_env.ts +88 -0
  99. package/src/public/fixtures/public_tx_simulation_tester.ts +41 -55
  100. package/src/public/fixtures/simple_contract_data_source.ts +1 -1
  101. package/src/public/fixtures/token_test.ts +3 -3
  102. package/src/public/fixtures/utils.ts +6 -11
  103. package/src/public/fuzzing/avm_fuzzer_simulator.ts +25 -10
  104. package/src/public/fuzzing/avm_simulator_bin.ts +3 -5
  105. package/src/public/index.ts +7 -3
  106. package/src/public/public_db_sources.ts +1 -1
  107. package/src/public/public_processor/guarded_merkle_tree.ts +5 -2
  108. package/src/public/public_processor/public_processor.ts +24 -17
  109. package/src/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.ts → dumping_public_tx_simulator.ts} +15 -31
  110. package/src/public/public_tx_simulator/factories.ts +27 -10
  111. package/src/public/public_tx_simulator/index.ts +6 -5
  112. package/src/public/public_tx_simulator/public_tx_simulator.ts +139 -480
  113. package/src/public/public_tx_simulator/public_tx_simulator_base.ts +37 -0
  114. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +5 -5
  115. package/src/public/test_executor_metrics.ts +0 -24
  116. package/dest/public/avm/avm_context.d.ts +0 -41
  117. package/dest/public/avm/avm_context.d.ts.map +0 -1
  118. package/dest/public/avm/avm_context.js +0 -44
  119. package/dest/public/avm/avm_contract_call_result.d.ts +0 -32
  120. package/dest/public/avm/avm_contract_call_result.d.ts.map +0 -1
  121. package/dest/public/avm/avm_contract_call_result.js +0 -54
  122. package/dest/public/avm/avm_execution_environment.d.ts +0 -24
  123. package/dest/public/avm/avm_execution_environment.d.ts.map +0 -1
  124. package/dest/public/avm/avm_execution_environment.js +0 -33
  125. package/dest/public/avm/avm_gas.d.ts +0 -44
  126. package/dest/public/avm/avm_gas.d.ts.map +0 -1
  127. package/dest/public/avm/avm_gas.js +0 -195
  128. package/dest/public/avm/avm_machine_state.d.ts +0 -98
  129. package/dest/public/avm/avm_machine_state.d.ts.map +0 -1
  130. package/dest/public/avm/avm_machine_state.js +0 -110
  131. package/dest/public/avm/avm_memory_types.d.ts +0 -275
  132. package/dest/public/avm/avm_memory_types.d.ts.map +0 -1
  133. package/dest/public/avm/avm_memory_types.js +0 -354
  134. package/dest/public/avm/avm_simulator.d.ts +0 -41
  135. package/dest/public/avm/avm_simulator.d.ts.map +0 -1
  136. package/dest/public/avm/avm_simulator.js +0 -192
  137. package/dest/public/avm/avm_simulator_interface.d.ts +0 -9
  138. package/dest/public/avm/avm_simulator_interface.d.ts.map +0 -1
  139. package/dest/public/avm/avm_simulator_interface.js +0 -3
  140. package/dest/public/avm/calldata.d.ts +0 -51
  141. package/dest/public/avm/calldata.d.ts.map +0 -1
  142. package/dest/public/avm/calldata.js +0 -64
  143. package/dest/public/avm/errors.d.ts +0 -104
  144. package/dest/public/avm/errors.d.ts.map +0 -1
  145. package/dest/public/avm/errors.js +0 -141
  146. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts +0 -2
  147. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts.map +0 -1
  148. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +0 -22
  149. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  150. package/dest/public/avm/fixtures/avm_simulation_tester.js +0 -84
  151. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  152. package/dest/public/avm/fixtures/initializers.d.ts +0 -42
  153. package/dest/public/avm/fixtures/initializers.d.ts.map +0 -1
  154. package/dest/public/avm/fixtures/initializers.js +0 -45
  155. package/dest/public/avm/fixtures/utils.d.ts +0 -39
  156. package/dest/public/avm/fixtures/utils.d.ts.map +0 -1
  157. package/dest/public/avm/index.d.ts +0 -2
  158. package/dest/public/avm/index.d.ts.map +0 -1
  159. package/dest/public/avm/index.js +0 -1
  160. package/dest/public/avm/opcodes/accrued_substate.d.ts +0 -74
  161. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +0 -1
  162. package/dest/public/avm/opcodes/accrued_substate.js +0 -254
  163. package/dest/public/avm/opcodes/addressing_mode.d.ts +0 -31
  164. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +0 -1
  165. package/dest/public/avm/opcodes/addressing_mode.js +0 -94
  166. package/dest/public/avm/opcodes/arithmetic.d.ts +0 -49
  167. package/dest/public/avm/opcodes/arithmetic.d.ts.map +0 -1
  168. package/dest/public/avm/opcodes/arithmetic.js +0 -97
  169. package/dest/public/avm/opcodes/bitwise.d.ts +0 -42
  170. package/dest/public/avm/opcodes/bitwise.d.ts.map +0 -1
  171. package/dest/public/avm/opcodes/bitwise.js +0 -99
  172. package/dest/public/avm/opcodes/comparators.d.ts +0 -25
  173. package/dest/public/avm/opcodes/comparators.d.ts.map +0 -1
  174. package/dest/public/avm/opcodes/comparators.js +0 -43
  175. package/dest/public/avm/opcodes/contract.d.ts +0 -21
  176. package/dest/public/avm/opcodes/contract.d.ts.map +0 -1
  177. package/dest/public/avm/opcodes/contract.js +0 -69
  178. package/dest/public/avm/opcodes/control_flow.d.ts +0 -41
  179. package/dest/public/avm/opcodes/control_flow.d.ts.map +0 -1
  180. package/dest/public/avm/opcodes/control_flow.js +0 -107
  181. package/dest/public/avm/opcodes/conversion.d.ts +0 -18
  182. package/dest/public/avm/opcodes/conversion.d.ts.map +0 -1
  183. package/dest/public/avm/opcodes/conversion.js +0 -333
  184. package/dest/public/avm/opcodes/ec_add.d.ts +0 -17
  185. package/dest/public/avm/opcodes/ec_add.d.ts.map +0 -1
  186. package/dest/public/avm/opcodes/ec_add.js +0 -79
  187. package/dest/public/avm/opcodes/environment_getters.d.ts +0 -28
  188. package/dest/public/avm/opcodes/environment_getters.d.ts.map +0 -1
  189. package/dest/public/avm/opcodes/environment_getters.js +0 -77
  190. package/dest/public/avm/opcodes/external_calls.d.ts +0 -59
  191. package/dest/public/avm/opcodes/external_calls.d.ts.map +0 -1
  192. package/dest/public/avm/opcodes/external_calls.js +0 -210
  193. package/dest/public/avm/opcodes/hashing.d.ts +0 -36
  194. package/dest/public/avm/opcodes/hashing.d.ts.map +0 -1
  195. package/dest/public/avm/opcodes/hashing.js +0 -119
  196. package/dest/public/avm/opcodes/index.d.ts +0 -16
  197. package/dest/public/avm/opcodes/index.d.ts.map +0 -1
  198. package/dest/public/avm/opcodes/index.js +0 -15
  199. package/dest/public/avm/opcodes/instruction.d.ts +0 -74
  200. package/dest/public/avm/opcodes/instruction.d.ts.map +0 -1
  201. package/dest/public/avm/opcodes/instruction.js +0 -95
  202. package/dest/public/avm/opcodes/instruction_impl.d.ts +0 -19
  203. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +0 -1
  204. package/dest/public/avm/opcodes/instruction_impl.js +0 -30
  205. package/dest/public/avm/opcodes/memory.d.ts +0 -74
  206. package/dest/public/avm/opcodes/memory.d.ts.map +0 -1
  207. package/dest/public/avm/opcodes/memory.js +0 -257
  208. package/dest/public/avm/opcodes/misc.d.ts +0 -18
  209. package/dest/public/avm/opcodes/misc.d.ts.map +0 -1
  210. package/dest/public/avm/opcodes/misc.js +0 -73
  211. package/dest/public/avm/opcodes/storage.d.ts +0 -25
  212. package/dest/public/avm/opcodes/storage.d.ts.map +0 -1
  213. package/dest/public/avm/opcodes/storage.js +0 -78
  214. package/dest/public/avm/revert_reason.d.ts +0 -18
  215. package/dest/public/avm/revert_reason.d.ts.map +0 -1
  216. package/dest/public/avm/revert_reason.js +0 -39
  217. package/dest/public/avm/serialization/buffer_cursor.d.ts +0 -26
  218. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +0 -1
  219. package/dest/public/avm/serialization/buffer_cursor.js +0 -99
  220. package/dest/public/avm/serialization/bytecode_serialization.d.ts +0 -17
  221. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  222. package/dest/public/avm/serialization/bytecode_serialization.js +0 -336
  223. package/dest/public/avm/serialization/instruction_serialization.d.ts +0 -114
  224. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +0 -1
  225. package/dest/public/avm/serialization/instruction_serialization.js +0 -261
  226. package/dest/public/avm/test_utils.d.ts +0 -15
  227. package/dest/public/avm/test_utils.d.ts.map +0 -1
  228. package/dest/public/avm/test_utils.js +0 -44
  229. package/dest/public/debug_fn_name.d.ts +0 -18
  230. package/dest/public/debug_fn_name.d.ts.map +0 -1
  231. package/dest/public/debug_fn_name.js +0 -37
  232. package/dest/public/fixtures/custom_bytecode_tests.d.ts +0 -14
  233. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +0 -1
  234. package/dest/public/fixtures/custom_bytecode_tests.js +0 -234
  235. package/dest/public/fixtures/minimal_public_tx.d.ts +0 -4
  236. package/dest/public/fixtures/minimal_public_tx.d.ts.map +0 -1
  237. package/dest/public/fixtures/minimal_public_tx.js +0 -19
  238. package/dest/public/fixtures/opcode_spammer.d.ts +0 -122
  239. package/dest/public/fixtures/opcode_spammer.d.ts.map +0 -1
  240. package/dest/public/fixtures/opcode_spammer.js +0 -1645
  241. package/dest/public/hinting_db_sources.d.ts +0 -80
  242. package/dest/public/hinting_db_sources.d.ts.map +0 -1
  243. package/dest/public/hinting_db_sources.js +0 -356
  244. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +0 -19
  245. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +0 -1
  246. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +0 -99
  247. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +0 -53
  248. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +0 -1
  249. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +0 -131
  250. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +0 -42
  251. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +0 -1
  252. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +0 -86
  253. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +0 -30
  254. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +0 -1
  255. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +0 -171
  256. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +0 -23
  257. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +0 -1
  258. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +0 -31
  259. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +0 -1
  260. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +0 -51
  261. package/dest/public/public_tx_simulator/public_tx_context.d.ts +0 -135
  262. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +0 -1
  263. package/dest/public/public_tx_simulator/public_tx_context.js +0 -298
  264. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +0 -21
  265. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +0 -1
  266. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +0 -415
  267. package/dest/public/side_effect_trace.d.ts +0 -87
  268. package/dest/public/side_effect_trace.d.ts.map +0 -1
  269. package/dest/public/side_effect_trace.js +0 -199
  270. package/dest/public/side_effect_trace_interface.d.ts +0 -22
  271. package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
  272. package/dest/public/side_effect_trace_interface.js +0 -1
  273. package/dest/public/state_manager/index.d.ts +0 -2
  274. package/dest/public/state_manager/index.d.ts.map +0 -1
  275. package/dest/public/state_manager/index.js +0 -1
  276. package/dest/public/state_manager/nullifiers.d.ts +0 -61
  277. package/dest/public/state_manager/nullifiers.d.ts.map +0 -1
  278. package/dest/public/state_manager/nullifiers.js +0 -92
  279. package/dest/public/state_manager/public_storage.d.ts +0 -66
  280. package/dest/public/state_manager/public_storage.d.ts.map +0 -1
  281. package/dest/public/state_manager/public_storage.js +0 -145
  282. package/dest/public/state_manager/state_manager.d.ts +0 -170
  283. package/dest/public/state_manager/state_manager.d.ts.map +0 -1
  284. package/dest/public/state_manager/state_manager.js +0 -402
  285. package/src/public/avm/avm_context.ts +0 -61
  286. package/src/public/avm/avm_contract_call_result.ts +0 -69
  287. package/src/public/avm/avm_execution_environment.ts +0 -51
  288. package/src/public/avm/avm_gas.ts +0 -183
  289. package/src/public/avm/avm_machine_state.ts +0 -170
  290. package/src/public/avm/avm_memory_types.ts +0 -440
  291. package/src/public/avm/avm_simulator.ts +0 -279
  292. package/src/public/avm/avm_simulator_interface.ts +0 -8
  293. package/src/public/avm/calldata.ts +0 -101
  294. package/src/public/avm/errors.ts +0 -177
  295. package/src/public/avm/fixtures/avm_simulation_tester.ts +0 -122
  296. package/src/public/avm/fixtures/initializers.ts +0 -103
  297. package/src/public/avm/index.ts +0 -1
  298. package/src/public/avm/opcodes/accrued_substate.ts +0 -285
  299. package/src/public/avm/opcodes/addressing_mode.ts +0 -111
  300. package/src/public/avm/opcodes/arithmetic.ts +0 -129
  301. package/src/public/avm/opcodes/bitwise.ts +0 -113
  302. package/src/public/avm/opcodes/comparators.ts +0 -55
  303. package/src/public/avm/opcodes/contract.ts +0 -76
  304. package/src/public/avm/opcodes/control_flow.ts +0 -123
  305. package/src/public/avm/opcodes/conversion.ts +0 -104
  306. package/src/public/avm/opcodes/ec_add.ts +0 -86
  307. package/src/public/avm/opcodes/environment_getters.ts +0 -87
  308. package/src/public/avm/opcodes/external_calls.ts +0 -262
  309. package/src/public/avm/opcodes/hashing.ts +0 -151
  310. package/src/public/avm/opcodes/index.ts +0 -15
  311. package/src/public/avm/opcodes/instruction.ts +0 -136
  312. package/src/public/avm/opcodes/instruction_impl.ts +0 -36
  313. package/src/public/avm/opcodes/memory.ts +0 -293
  314. package/src/public/avm/opcodes/misc.ts +0 -102
  315. package/src/public/avm/opcodes/storage.ts +0 -95
  316. package/src/public/avm/revert_reason.ts +0 -58
  317. package/src/public/avm/serialization/buffer_cursor.ts +0 -118
  318. package/src/public/avm/serialization/bytecode_serialization.ts +0 -215
  319. package/src/public/avm/serialization/instruction_serialization.ts +0 -249
  320. package/src/public/avm/test_utils.ts +0 -64
  321. package/src/public/debug_fn_name.ts +0 -52
  322. package/src/public/fixtures/custom_bytecode_tests.ts +0 -366
  323. package/src/public/fixtures/minimal_public_tx.ts +0 -26
  324. package/src/public/fixtures/opcode_spammer.ts +0 -1713
  325. package/src/public/hinting_db_sources.ts +0 -610
  326. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +0 -125
  327. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +0 -210
  328. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +0 -134
  329. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +0 -239
  330. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +0 -105
  331. package/src/public/public_tx_simulator/public_tx_context.ts +0 -482
  332. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +0 -63
  333. package/src/public/side_effect_trace.ts +0 -293
  334. package/src/public/side_effect_trace_interface.ts +0 -28
  335. package/src/public/state_manager/index.ts +0 -1
  336. package/src/public/state_manager/nullifiers.ts +0 -103
  337. package/src/public/state_manager/public_storage.ts +0 -174
  338. package/src/public/state_manager/state_manager.ts +0 -569
  339. /package/dest/public/avm/{fixtures → testing}/account_proof_fetcher.js +0 -0
  340. /package/src/public/avm/{fixtures → testing}/account_proof.json +0 -0
  341. /package/src/public/avm/{fixtures → testing}/account_proof_fetcher.ts +0 -0
@@ -1,135 +0,0 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { type LoggerBindings } from '@aztec/foundation/log';
3
- import { AvmCircuitPublicInputs, RevertCode } from '@aztec/stdlib/avm';
4
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
5
- import { type ContractDeploymentData } from '@aztec/stdlib/contract';
6
- import type { SimulationError } from '@aztec/stdlib/errors';
7
- import { Gas } from '@aztec/stdlib/gas';
8
- import { PrivateToPublicAccumulatedData } from '@aztec/stdlib/kernel';
9
- import { type GlobalVariables, ProtocolContracts, PublicCallRequestWithCalldata, type Tx, TxExecutionPhase, type TxHash } from '@aztec/stdlib/tx';
10
- import type { PublicContractsDBInterface } from '../db_interfaces.js';
11
- import type { PublicTreesDB } from '../public_db_sources.js';
12
- import { PublicPersistableStateManager } from '../state_manager/state_manager.js';
13
- /**
14
- * The transaction-level context for public execution.
15
- */
16
- export declare class PublicTxContext {
17
- readonly txHash: TxHash;
18
- readonly state: PhaseStateManager;
19
- private readonly startTreeSnapshots;
20
- private readonly globalVariables;
21
- private readonly protocolContracts;
22
- private readonly proverId;
23
- private readonly gasSettings;
24
- private readonly gasUsedByPrivate;
25
- private readonly gasAllocatedToPublic;
26
- private readonly gasAllocatedToPublicTeardown;
27
- private readonly setupCallRequests;
28
- private readonly appLogicCallRequests;
29
- private readonly teardownCallRequests;
30
- readonly nonRevertibleContractDeploymentData: ContractDeploymentData;
31
- readonly revertibleContractDeploymentData: ContractDeploymentData;
32
- readonly nonRevertibleAccumulatedDataFromPrivate: PrivateToPublicAccumulatedData;
33
- readonly revertibleAccumulatedDataFromPrivate: PrivateToPublicAccumulatedData;
34
- readonly feePayer: AztecAddress;
35
- private readonly trace;
36
- private log;
37
- private gasUsedByPublic;
38
- teardownGasUsed: Gas;
39
- private halted;
40
- private revertCode;
41
- revertReason: SimulationError | undefined;
42
- private constructor();
43
- static create(treesDB: PublicTreesDB, contractsDB: PublicContractsDBInterface, tx: Tx, globalVariables: GlobalVariables, protocolContracts: ProtocolContracts, proverId: Fr, bindings?: LoggerBindings): Promise<PublicTxContext>;
44
- /**
45
- * Signal that the entire transaction execution is done.
46
- * All phases have been processed.
47
- * Actual transaction fee and actual total consumed gas can now be queried.
48
- */
49
- halt(): void;
50
- /**
51
- * Revert execution a phase. Populate revertReason & revertCode.
52
- * If in setup, throw an error (transaction will be thrown out).
53
- * NOTE: this does not "halt" the entire transaction execution.
54
- */
55
- revert(phase: TxExecutionPhase, revertReason?: SimulationError | undefined, culprit?: string): void;
56
- /**
57
- * Get the revert code.
58
- * @returns The revert code.
59
- */
60
- getFinalRevertCode(): RevertCode;
61
- /**
62
- * Are there any call requests for the speciiied phase?
63
- */
64
- hasPhase(phase: TxExecutionPhase): boolean;
65
- /**
66
- * Get the call requests for the specified phase (including args hashes).
67
- */
68
- getCallRequestsForPhase(phase: TxExecutionPhase): PublicCallRequestWithCalldata[];
69
- /**
70
- * How much gas is left as of the specified phase?
71
- */
72
- getGasLeftAtPhase(phase: TxExecutionPhase): Gas;
73
- /**
74
- * Consume gas. Track gas for teardown phase separately.
75
- */
76
- consumeGas(phase: TxExecutionPhase, gas: Gas): void;
77
- /**
78
- * The gasUsed by public and private, as if the entire teardown gas limit was consumed.
79
- *
80
- * This is intentional: teardown is used for gas accounting and refunds, so the transaction
81
- * fee must be deterministic _before_ teardown executes. If fees depended on teardown's actual
82
- * consumption there would be a circular dependency. Billing the full teardown gas limit
83
- * (set by the user) makes the fee known in advance and available to the teardown function.
84
- */
85
- getTotalGasUsed(): Gas;
86
- /**
87
- * Compute the gas used using the actual gas used during teardown instead
88
- * of the teardown gas limit.
89
- * Note that this.gasUsed is initialized from private's gasUsed which includes
90
- * teardown gas limit.
91
- */
92
- getActualGasUsed(): Gas;
93
- /**
94
- * Compute the public gas used using the actual gas used during teardown instead
95
- * of the teardown gas limit.
96
- */
97
- getActualPublicGasUsed(): Gas;
98
- /**
99
- * Get the transaction fee as is available to the specified phase.
100
- * Only teardown should have access to the actual transaction fee.
101
- */
102
- getTransactionFee(phase: TxExecutionPhase): Fr;
103
- /**
104
- * Compute the transaction fee.
105
- * Should only be called during or after teardown.
106
- */
107
- private getTransactionFeeUnsafe;
108
- /**
109
- * Generate the public inputs for the AVM circuit.
110
- */
111
- generateAvmCircuitPublicInputs(): Promise<AvmCircuitPublicInputs>;
112
- }
113
- /**
114
- * Thin wrapper around the state manager to handle forking and merging for phases.
115
- *
116
- * This lets us keep track of whether the state has already been forked
117
- * so that we can conditionally fork at the start of a phase.
118
- *
119
- * There is a state manager that lives at the level of the entire transaction,
120
- * but for app logic and teardown the active state manager will be a fork of the
121
- * transaction level one.
122
- */
123
- declare class PhaseStateManager {
124
- private readonly txStateManager;
125
- private log;
126
- private currentlyActiveStateManager;
127
- constructor(txStateManager: PublicPersistableStateManager, bindings?: LoggerBindings);
128
- fork(): Promise<void>;
129
- getActiveStateManager(): PublicPersistableStateManager;
130
- isForked(): boolean;
131
- mergeForkedState(): Promise<void>;
132
- discardForkedState(): Promise<void>;
133
- }
134
- export {};
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3R4X2NvbnRleHQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvcHVibGljX3R4X3NpbXVsYXRvci9wdWJsaWNfdHhfY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFlLEtBQUssY0FBYyxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ3ZGLE9BQU8sRUFHTCxzQkFBc0IsRUFFdEIsVUFBVSxFQUNYLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUE2QixLQUFLLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFNUQsT0FBTyxFQUFFLEdBQUcsRUFBZSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFHTCw4QkFBOEIsRUFJL0IsTUFBTSxzQkFBc0IsQ0FBQztBQUk5QixPQUFPLEVBQ0wsS0FBSyxlQUFlLEVBQ3BCLGlCQUFpQixFQUNqQiw2QkFBNkIsRUFFN0IsS0FBSyxFQUFFLEVBQ1AsZ0JBQWdCLEVBQ2hCLEtBQUssTUFBTSxFQUNaLE1BQU0sa0JBQWtCLENBQUM7QUFLMUIsT0FBTyxLQUFLLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUdsRjs7R0FFRztBQUNILHFCQUFhLGVBQWU7YUFlUixNQUFNLEVBQUUsTUFBTTthQUNkLEtBQUssRUFBRSxpQkFBaUI7SUFDeEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxr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
@@ -1 +0,0 @@
1
- {"version":3,"file":"public_tx_context.d.ts","sourceRoot":"","sources":["../../../src/public/public_tx_simulator/public_tx_context.ts"],"names":[],"mappings":"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"}
@@ -1,298 +0,0 @@
1
- import { MAX_ENQUEUED_CALLS_PER_TX, MAX_L2_TO_L1_MSGS_PER_TX, MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX, MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX } from '@aztec/constants';
2
- import { padArrayEnd } from '@aztec/foundation/collection';
3
- import { Fr } from '@aztec/foundation/curves/bn254';
4
- import { createLogger } from '@aztec/foundation/log';
5
- import { AvmAccumulatedData, AvmAccumulatedDataArrayLengths, AvmCircuitPublicInputs, PublicDataWrite, RevertCode } from '@aztec/stdlib/avm';
6
- import { AllContractDeploymentData } from '@aztec/stdlib/contract';
7
- import { computeEffectiveGasFees, computeTransactionFee } from '@aztec/stdlib/fees';
8
- import { Gas } from '@aztec/stdlib/gas';
9
- import { PrivateToAvmAccumulatedData, PrivateToAvmAccumulatedDataArrayLengths, PublicCallRequest, PublicCallRequestArrayLengths, countAccumulatedItems } from '@aztec/stdlib/kernel';
10
- import { FlatPublicLogs } from '@aztec/stdlib/logs';
11
- import { ScopedL2ToL1Message } from '@aztec/stdlib/messaging';
12
- import { MerkleTreeId } from '@aztec/stdlib/trees';
13
- import { TxExecutionPhase } from '@aztec/stdlib/tx';
14
- import { strict as assert } from 'assert';
15
- import { inspect } from 'util';
16
- import { SideEffectTrace } from '../side_effect_trace.js';
17
- import { PublicPersistableStateManager } from '../state_manager/state_manager.js';
18
- import { getCallRequestsWithCalldataByPhase } from '../utils.js';
19
- /**
20
- * The transaction-level context for public execution.
21
- */ export class PublicTxContext {
22
- txHash;
23
- state;
24
- startTreeSnapshots;
25
- globalVariables;
26
- protocolContracts;
27
- proverId;
28
- gasSettings;
29
- gasUsedByPrivate;
30
- gasAllocatedToPublic;
31
- gasAllocatedToPublicTeardown;
32
- setupCallRequests;
33
- appLogicCallRequests;
34
- teardownCallRequests;
35
- nonRevertibleContractDeploymentData;
36
- revertibleContractDeploymentData;
37
- nonRevertibleAccumulatedDataFromPrivate;
38
- revertibleAccumulatedDataFromPrivate;
39
- feePayer;
40
- trace;
41
- log;
42
- /* Gas used including private, teardown gas _limit_, setup and app logic */ gasUsedByPublic;
43
- /* Gas actually used during teardown (different from limit) */ teardownGasUsed;
44
- /* Entire transaction execution is done. */ halted;
45
- /* Where did reverts happen (if at all)? */ revertCode;
46
- /* What caused a revert (if one occurred)? */ revertReason;
47
- constructor(txHash, state, startTreeSnapshots, globalVariables, protocolContracts, proverId, gasSettings, gasUsedByPrivate, gasAllocatedToPublic, gasAllocatedToPublicTeardown, setupCallRequests, appLogicCallRequests, teardownCallRequests, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedDataFromPrivate, revertibleAccumulatedDataFromPrivate, feePayer, trace, bindings){
48
- this.txHash = txHash;
49
- this.state = state;
50
- this.startTreeSnapshots = startTreeSnapshots;
51
- this.globalVariables = globalVariables;
52
- this.protocolContracts = protocolContracts;
53
- this.proverId = proverId;
54
- this.gasSettings = gasSettings;
55
- this.gasUsedByPrivate = gasUsedByPrivate;
56
- this.gasAllocatedToPublic = gasAllocatedToPublic;
57
- this.gasAllocatedToPublicTeardown = gasAllocatedToPublicTeardown;
58
- this.setupCallRequests = setupCallRequests;
59
- this.appLogicCallRequests = appLogicCallRequests;
60
- this.teardownCallRequests = teardownCallRequests;
61
- this.nonRevertibleContractDeploymentData = nonRevertibleContractDeploymentData;
62
- this.revertibleContractDeploymentData = revertibleContractDeploymentData;
63
- this.nonRevertibleAccumulatedDataFromPrivate = nonRevertibleAccumulatedDataFromPrivate;
64
- this.revertibleAccumulatedDataFromPrivate = revertibleAccumulatedDataFromPrivate;
65
- this.feePayer = feePayer;
66
- this.trace = trace;
67
- this.gasUsedByPublic = Gas.empty();
68
- this.teardownGasUsed = Gas.empty();
69
- this.halted = false;
70
- this.revertCode = RevertCode.OK;
71
- this.log = createLogger(`simulator:public_tx_context`, bindings);
72
- }
73
- static async create(treesDB, contractsDB, tx, globalVariables, protocolContracts, proverId, bindings) {
74
- const contractDeploymentData = AllContractDeploymentData.fromTx(tx);
75
- const nonRevertibleContractDeploymentData = contractDeploymentData.getNonRevertibleContractDeploymentData();
76
- const revertibleContractDeploymentData = contractDeploymentData.getRevertibleContractDeploymentData();
77
- const nonRevertibleAccumulatedDataFromPrivate = tx.data.forPublic.nonRevertibleAccumulatedData;
78
- const trace = new SideEffectTrace(0, bindings);
79
- const firstNullifier = nonRevertibleAccumulatedDataFromPrivate.nullifiers[0];
80
- // Transaction level state manager that will be forked for revertible phases.
81
- const txStateManager = PublicPersistableStateManager.create(treesDB, contractsDB, trace, firstNullifier, globalVariables.timestamp, bindings);
82
- const gasSettings = tx.data.constants.txContext.gasSettings;
83
- const gasUsedByPrivate = tx.data.gasUsed;
84
- const gasAllocatedToPublic = gasSettings.gasLimits.sub(gasUsedByPrivate);
85
- const gasAllocatedToPublicTeardown = gasSettings.teardownGasLimits;
86
- return new PublicTxContext(tx.getTxHash(), new PhaseStateManager(txStateManager, bindings), await txStateManager.getTreeSnapshots(), globalVariables, protocolContracts, proverId, gasSettings, gasUsedByPrivate, gasAllocatedToPublic, gasAllocatedToPublicTeardown, getCallRequestsWithCalldataByPhase(tx, TxExecutionPhase.SETUP), getCallRequestsWithCalldataByPhase(tx, TxExecutionPhase.APP_LOGIC), getCallRequestsWithCalldataByPhase(tx, TxExecutionPhase.TEARDOWN), nonRevertibleContractDeploymentData, revertibleContractDeploymentData, tx.data.forPublic.nonRevertibleAccumulatedData, tx.data.forPublic.revertibleAccumulatedData, tx.data.feePayer, trace, bindings);
87
- }
88
- /**
89
- * Signal that the entire transaction execution is done.
90
- * All phases have been processed.
91
- * Actual transaction fee and actual total consumed gas can now be queried.
92
- */ halt() {
93
- assert(!this.state.isForked(), 'Cannot halt when state is forked');
94
- this.halted = true;
95
- }
96
- /**
97
- * Revert execution a phase. Populate revertReason & revertCode.
98
- * If in setup, throw an error (transaction will be thrown out).
99
- * NOTE: this does not "halt" the entire transaction execution.
100
- */ revert(phase, revertReason = undefined, culprit = '') {
101
- this.log.warn(`${TxExecutionPhase[phase]} phase reverted! ${culprit} failed with reason: ${revertReason?.message}`);
102
- if (revertReason && !this.revertReason) {
103
- // don't override revertReason
104
- // (if app logic and teardown both revert, we want app logic's reason)
105
- this.revertReason = revertReason;
106
- }
107
- if (phase === TxExecutionPhase.SETUP) {
108
- this.log.warn(`Setup phase reverted! The transaction will be thrown out.`);
109
- } else if (phase === TxExecutionPhase.APP_LOGIC || phase === TxExecutionPhase.TEARDOWN) {
110
- this.revertCode = RevertCode.REVERTED;
111
- }
112
- }
113
- /**
114
- * Get the revert code.
115
- * @returns The revert code.
116
- */ getFinalRevertCode() {
117
- assert(this.halted, 'Cannot know the final revert code until tx execution ends');
118
- return this.revertCode;
119
- }
120
- /**
121
- * Are there any call requests for the speciiied phase?
122
- */ hasPhase(phase) {
123
- if (phase === TxExecutionPhase.SETUP) {
124
- return this.setupCallRequests.length > 0;
125
- } else if (phase === TxExecutionPhase.APP_LOGIC) {
126
- return this.appLogicCallRequests.length > 0;
127
- } else {
128
- // phase === TxExecutionPhase.TEARDOWN
129
- return this.teardownCallRequests.length > 0;
130
- }
131
- }
132
- /**
133
- * Get the call requests for the specified phase (including args hashes).
134
- */ getCallRequestsForPhase(phase) {
135
- switch(phase){
136
- case TxExecutionPhase.SETUP:
137
- return this.setupCallRequests;
138
- case TxExecutionPhase.APP_LOGIC:
139
- return this.appLogicCallRequests;
140
- case TxExecutionPhase.TEARDOWN:
141
- return this.teardownCallRequests;
142
- }
143
- }
144
- /**
145
- * How much gas is left as of the specified phase?
146
- */ getGasLeftAtPhase(phase) {
147
- if (phase === TxExecutionPhase.TEARDOWN) {
148
- const gasLeftForPublicTeardown = this.gasAllocatedToPublicTeardown.sub(this.teardownGasUsed);
149
- return gasLeftForPublicTeardown;
150
- } else {
151
- const gasLeftForPublic = this.gasAllocatedToPublic.sub(this.gasUsedByPublic);
152
- return gasLeftForPublic;
153
- }
154
- }
155
- /**
156
- * Consume gas. Track gas for teardown phase separately.
157
- */ consumeGas(phase, gas) {
158
- if (phase === TxExecutionPhase.TEARDOWN) {
159
- this.teardownGasUsed = this.teardownGasUsed.add(gas);
160
- } else {
161
- this.gasUsedByPublic = this.gasUsedByPublic.add(gas);
162
- }
163
- }
164
- /**
165
- * The gasUsed by public and private, as if the entire teardown gas limit was consumed.
166
- *
167
- * This is intentional: teardown is used for gas accounting and refunds, so the transaction
168
- * fee must be deterministic _before_ teardown executes. If fees depended on teardown's actual
169
- * consumption there would be a circular dependency. Billing the full teardown gas limit
170
- * (set by the user) makes the fee known in advance and available to the teardown function.
171
- */ getTotalGasUsed() {
172
- return this.gasUsedByPrivate.add(this.gasUsedByPublic);
173
- }
174
- /**
175
- * Compute the gas used using the actual gas used during teardown instead
176
- * of the teardown gas limit.
177
- * Note that this.gasUsed is initialized from private's gasUsed which includes
178
- * teardown gas limit.
179
- */ getActualGasUsed() {
180
- assert(this.halted, 'Can only compute actual gas used after tx execution ends');
181
- const requireTeardown = this.teardownCallRequests.length > 0;
182
- const teardownGasLimits = requireTeardown ? this.gasSettings.teardownGasLimits : Gas.empty();
183
- return this.getTotalGasUsed().sub(teardownGasLimits).add(this.teardownGasUsed);
184
- }
185
- /**
186
- * Compute the public gas used using the actual gas used during teardown instead
187
- * of the teardown gas limit.
188
- */ getActualPublicGasUsed() {
189
- assert(this.halted, 'Can only compute actual gas used after tx execution ends');
190
- return this.gasUsedByPublic.add(this.teardownGasUsed);
191
- }
192
- /**
193
- * Get the transaction fee as is available to the specified phase.
194
- * Only teardown should have access to the actual transaction fee.
195
- */ getTransactionFee(phase) {
196
- if (phase === TxExecutionPhase.TEARDOWN) {
197
- return this.getTransactionFeeUnsafe();
198
- } else {
199
- return Fr.zero();
200
- }
201
- }
202
- /**
203
- * Compute the transaction fee.
204
- * Should only be called during or after teardown.
205
- */ getTransactionFeeUnsafe() {
206
- const gasUsed = this.getTotalGasUsed();
207
- const txFee = computeTransactionFee(this.globalVariables.gasFees, this.gasSettings, gasUsed);
208
- this.log.debug(`Computed tx fee`, {
209
- txFee,
210
- gasUsed: inspect(gasUsed),
211
- gasFees: inspect(this.globalVariables.gasFees)
212
- });
213
- return txFee;
214
- }
215
- /**
216
- * Generate the public inputs for the AVM circuit.
217
- */ async generateAvmCircuitPublicInputs() {
218
- assert(this.halted, 'Can only get AvmCircuitPublicInputs after tx execution ends');
219
- const stateManager = this.state.getActiveStateManager();
220
- // We get the side effects from the AVM.
221
- // The AVM will already have handled the conditional insertion of most private side-effects.
222
- // (depending on the revert code of each stage). Only l2ToL1Msgs and publicLogs still need to be "merged".
223
- const { publicDataWrites: avmPublicDataWrites, noteHashes: avmNoteHashes, nullifiers: avmNullifiers, l2ToL1Msgs: avmL2ToL1Msgs, publicLogs: avmPublicLogs } = this.trace.getSideEffects();
224
- // Private generates PrivateLogs, and public execution generates PublicLogs.
225
- // Since these are two different categories, they should not be merged.
226
- const finalPublicLogs = avmPublicLogs;
227
- // We squash public data writes.
228
- // Maps slot to value. Maps in TS are iterable in insertion order, which is exactly what we want for
229
- // squashing "to the left", where the first occurrence of a slot uses the value of the last write to it,
230
- // and the rest occurrences are omitted.
231
- // Note: you can't write public state from private, so we only squash what we got from the AVM.
232
- const finalPublicDataWrites = (()=>{
233
- const squashedPublicDataWrites = new Map();
234
- for (const publicDataWrite of avmPublicDataWrites){
235
- squashedPublicDataWrites.set(publicDataWrite.leafSlot.toBigInt(), publicDataWrite.newValue);
236
- }
237
- return Array.from(squashedPublicDataWrites.entries()).map(([slot, value])=>new PublicDataWrite(new Fr(slot), value));
238
- })();
239
- // Count before padding.
240
- const accumulatedDataArrayLengths = new AvmAccumulatedDataArrayLengths(avmNoteHashes.length, avmNullifiers.length, avmL2ToL1Msgs.length, finalPublicDataWrites.length);
241
- const accumulatedData = new AvmAccumulatedData(/*noteHashes=*/ padArrayEnd(avmNoteHashes.map((n)=>n.value), Fr.zero(), MAX_NOTE_HASHES_PER_TX), /*nullifiers=*/ padArrayEnd(avmNullifiers.map((n)=>n.value), Fr.zero(), MAX_NULLIFIERS_PER_TX), /*l2ToL1Msgs=*/ padArrayEnd(avmL2ToL1Msgs, ScopedL2ToL1Message.empty(), MAX_L2_TO_L1_MSGS_PER_TX), /*publicLogs=*/ FlatPublicLogs.fromLogs(finalPublicLogs), /*publicDataWrites=*/ padArrayEnd(finalPublicDataWrites, PublicDataWrite.empty(), MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX));
242
- // Now we finally have enough information to pad the trees.
243
- // NOTE(fcarreiro): a bit weird that a method that generates the PIs does this,
244
- // but we do need the end tree snapshots. We can consider moving things to the caller.
245
- const numNoteHashesToPad = MAX_NOTE_HASHES_PER_TX - avmNoteHashes.length;
246
- const numNullifiersToPad = MAX_NULLIFIERS_PER_TX - avmNullifiers.length;
247
- await stateManager.padTree(MerkleTreeId.NOTE_HASH_TREE, numNoteHashesToPad);
248
- await stateManager.padTree(MerkleTreeId.NULLIFIER_TREE, numNullifiersToPad);
249
- const endTreeSnapshots = await stateManager.getTreeSnapshots();
250
- // This converts the private accumulated data to the avm accumulated data format.
251
- const convertAccumulatedData = (from)=>new PrivateToAvmAccumulatedData(from.noteHashes, from.nullifiers, from.l2ToL1Msgs);
252
- const getPreviousAccumulatedDataArrayLengths = (from)=>new PrivateToAvmAccumulatedDataArrayLengths(countAccumulatedItems(from.noteHashes), countAccumulatedItems(from.nullifiers), countAccumulatedItems(from.l2ToL1Msgs));
253
- return new AvmCircuitPublicInputs(this.globalVariables, this.protocolContracts, this.startTreeSnapshots, /*startGasUsed=*/ this.gasUsedByPrivate, this.gasSettings, computeEffectiveGasFees(this.globalVariables.gasFees, this.gasSettings), this.feePayer, this.proverId, /*publicCallRequestArrayLengths=*/ new PublicCallRequestArrayLengths(this.setupCallRequests.length, this.appLogicCallRequests.length, this.teardownCallRequests.length > 0), /*publicSetupCallRequests=*/ padArrayEnd(this.setupCallRequests.map((r)=>r.request), PublicCallRequest.empty(), MAX_ENQUEUED_CALLS_PER_TX), /*publicAppLogicCallRequests=*/ padArrayEnd(this.appLogicCallRequests.map((r)=>r.request), PublicCallRequest.empty(), MAX_ENQUEUED_CALLS_PER_TX), /*publicTeardownCallRequests=*/ this.teardownCallRequests.length > 0 ? this.teardownCallRequests[0].request : PublicCallRequest.empty(), getPreviousAccumulatedDataArrayLengths(this.nonRevertibleAccumulatedDataFromPrivate), getPreviousAccumulatedDataArrayLengths(this.revertibleAccumulatedDataFromPrivate), convertAccumulatedData(this.nonRevertibleAccumulatedDataFromPrivate), convertAccumulatedData(this.revertibleAccumulatedDataFromPrivate), endTreeSnapshots, this.getTotalGasUsed(), accumulatedDataArrayLengths, accumulatedData, /*transactionFee=*/ this.getTransactionFeeUnsafe(), /*isReverted=*/ !this.revertCode.isOK());
254
- }
255
- }
256
- /**
257
- * Thin wrapper around the state manager to handle forking and merging for phases.
258
- *
259
- * This lets us keep track of whether the state has already been forked
260
- * so that we can conditionally fork at the start of a phase.
261
- *
262
- * There is a state manager that lives at the level of the entire transaction,
263
- * but for app logic and teardown the active state manager will be a fork of the
264
- * transaction level one.
265
- */ class PhaseStateManager {
266
- txStateManager;
267
- log;
268
- currentlyActiveStateManager;
269
- constructor(txStateManager, bindings){
270
- this.txStateManager = txStateManager;
271
- this.log = createLogger(`simulator:public_phase_state_manager`, bindings);
272
- }
273
- async fork() {
274
- assert(!this.currentlyActiveStateManager, 'Cannot fork when already forked');
275
- this.log.debug(`Forking phase state manager`);
276
- this.currentlyActiveStateManager = await this.txStateManager.fork();
277
- }
278
- getActiveStateManager() {
279
- return this.currentlyActiveStateManager || this.txStateManager;
280
- }
281
- isForked() {
282
- return !!this.currentlyActiveStateManager;
283
- }
284
- async mergeForkedState() {
285
- assert(this.currentlyActiveStateManager, 'No forked state to merge');
286
- this.log.debug(`Merging in forked state`);
287
- await this.txStateManager.merge(this.currentlyActiveStateManager);
288
- // Drop the forked state manager now that it is merged
289
- this.currentlyActiveStateManager = undefined;
290
- }
291
- async discardForkedState() {
292
- this.log.debug(`Discarding forked state`);
293
- assert(this.currentlyActiveStateManager, 'No forked state to discard');
294
- await this.txStateManager.reject(this.currentlyActiveStateManager);
295
- // Drop the forked state manager. We don't want it!
296
- this.currentlyActiveStateManager = undefined;
297
- }
298
- }
@@ -1,21 +0,0 @@
1
- import type { Fr } from '@aztec/foundation/curves/bn254';
2
- import type { PublicSimulatorConfig } from '@aztec/stdlib/avm';
3
- import type { Gas } from '@aztec/stdlib/gas';
4
- import type { MerkleTreeWriteOperations } from '@aztec/stdlib/trees';
5
- import { type GlobalVariables, PublicCallRequestWithCalldata, TxExecutionPhase } from '@aztec/stdlib/tx';
6
- import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
7
- import type { AvmFinalizedCallResult } from '../avm/avm_contract_call_result.js';
8
- import type { PublicContractsDB } from '../public_db_sources.js';
9
- import type { PublicPersistableStateManager } from '../state_manager/state_manager.js';
10
- import { MeasuredPublicTxSimulator } from './measured_public_tx_simulator.js';
11
- import { PublicTxContext } from './public_tx_context.js';
12
- /**
13
- * A public tx simulator that tracks runtime/production metrics with telemetry.
14
- */
15
- export declare class TelemetryPublicTxSimulator extends MeasuredPublicTxSimulator {
16
- readonly tracer: Tracer;
17
- constructor(merkleTree: MerkleTreeWriteOperations, contractsDB: PublicContractsDB, globalVariables: GlobalVariables, telemetryClient?: TelemetryClient, config?: Partial<PublicSimulatorConfig>);
18
- protected simulateEnqueuedCall(phase: TxExecutionPhase, context: PublicTxContext, callRequest: PublicCallRequestWithCalldata): Promise<AvmFinalizedCallResult>;
19
- protected simulateEnqueuedCallInternal(stateManager: PublicPersistableStateManager, callRequest: PublicCallRequestWithCalldata, allocatedGas: Gas, transactionFee: Fr, fnName: string): Promise<AvmFinalizedCallResult>;
20
- }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsZW1ldHJ5X3B1YmxpY190eF9zaW11bGF0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvcHVibGljX3R4X3NpbXVsYXRvci90ZWxlbWV0cnlfcHVibGljX3R4X3NpbXVsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9ELE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFFLDZCQUE2QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekcsT0FBTyxFQUFjLEtBQUssZUFBZSxFQUFFLEtBQUssTUFBTSxFQUFpQyxNQUFNLHlCQUF5QixDQUFDO0FBRXZILE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEtBQUssRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV6RDs7R0FFRztBQUNILHFCQUFhLDBCQUEyQixTQUFRLHlCQUF5QjtJQUV2RSxTQUFnQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBRS9CLFlBQ0UsVUFBVSxFQUFFLHlCQUF5QixFQUNyQyxXQUFXLEVBQUUsaUJBQWlCLEVBQzlCLGVBQWUsRUFBRSxlQUFlLEVBQ2hDLGVBQWUsR0FBRSxlQUFzQyxFQUN2RCxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMscUJBQXFCLENBQUMsRUFLeEM7SUFFRCxVQU15QixvQkFBb0IsQ0FDM0MsS0FBSyxFQUFFLGdCQUFnQixFQUN2QixPQUFPLEVBQUUsZUFBZSxFQUN4QixXQUFXLEVBQUUsNkJBQTZCLEdBQ3pDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUVqQztJQUVELFVBTXlCLDRCQUE0QixDQUNuRCxZQUFZLEVBQUUsNkJBQTZCLEVBQzNDLFdBQVcsRUFBRSw2QkFBNkIsRUFDMUMsWUFBWSxFQUFFLEdBQUcsRUFDakIsY0FBYyxFQUFFLEVBQUUsRUFDbEIsTUFBTSxFQUFFLE1BQU0sR0FDYixPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FFakM7Q0FDRiJ9
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry_public_tx_simulator.d.ts","sourceRoot":"","sources":["../../../src/public/public_tx_simulator/telemetry_public_tx_simulator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,KAAK,eAAe,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,EAAc,KAAK,eAAe,EAAE,KAAK,MAAM,EAAiC,MAAM,yBAAyB,CAAC;AAEvH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAEjF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,yBAAyB;IAEvE,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,YACE,UAAU,EAAE,yBAAyB,EACrC,WAAW,EAAE,iBAAiB,EAC9B,eAAe,EAAE,eAAe,EAChC,eAAe,GAAE,eAAsC,EACvD,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAKxC;IAED,UAMyB,oBAAoB,CAC3C,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,6BAA6B,GACzC,OAAO,CAAC,sBAAsB,CAAC,CAEjC;IAED,UAMyB,4BAA4B,CACnD,YAAY,EAAE,6BAA6B,EAC3C,WAAW,EAAE,6BAA6B,EAC1C,YAAY,EAAE,GAAG,EACjB,cAAc,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,sBAAsB,CAAC,CAEjC;CACF"}