@aztec/simulator 0.0.1-commit.b655e406 → 0.0.1-commit.d3ec352c

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 (248) hide show
  1. package/dest/client.d.ts +1 -1
  2. package/dest/common/errors.d.ts +1 -7
  3. package/dest/common/errors.d.ts.map +1 -1
  4. package/dest/common/index.d.ts +1 -1
  5. package/dest/common/stats/index.d.ts +1 -1
  6. package/dest/common/stats/stats.d.ts +1 -1
  7. package/dest/private/acvm/acvm.d.ts +1 -1
  8. package/dest/private/acvm/acvm_types.d.ts +1 -1
  9. package/dest/private/acvm/deserialize.d.ts +1 -1
  10. package/dest/private/acvm/index.d.ts +1 -1
  11. package/dest/private/acvm/serialize.d.ts +1 -1
  12. package/dest/private/acvm_native.d.ts +1 -1
  13. package/dest/private/acvm_native.d.ts.map +1 -1
  14. package/dest/private/acvm_wasm.d.ts +1 -1
  15. package/dest/private/acvm_wasm.d.ts.map +1 -1
  16. package/dest/private/acvm_wasm_with_blobs.d.ts +1 -1
  17. package/dest/private/acvm_wasm_with_blobs.d.ts.map +1 -1
  18. package/dest/private/circuit_recording/circuit_recorder.d.ts +1 -1
  19. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  20. package/dest/private/circuit_recording/file_circuit_recorder.d.ts +1 -1
  21. package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
  22. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts +1 -1
  23. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts.map +1 -1
  24. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
  25. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
  26. package/dest/private/circuit_simulator.d.ts +1 -1
  27. package/dest/private/factory.d.ts +1 -1
  28. package/dest/public/avm/avm_context.d.ts +1 -1
  29. package/dest/public/avm/avm_context.d.ts.map +1 -1
  30. package/dest/public/avm/avm_contract_call_result.d.ts +1 -1
  31. package/dest/public/avm/avm_contract_call_result.d.ts.map +1 -1
  32. package/dest/public/avm/avm_execution_environment.d.ts +4 -4
  33. package/dest/public/avm/avm_execution_environment.d.ts.map +1 -1
  34. package/dest/public/avm/avm_execution_environment.js +4 -7
  35. package/dest/public/avm/avm_gas.d.ts +2 -2
  36. package/dest/public/avm/avm_gas.d.ts.map +1 -1
  37. package/dest/public/avm/avm_machine_state.d.ts +1 -1
  38. package/dest/public/avm/avm_machine_state.d.ts.map +1 -1
  39. package/dest/public/avm/avm_memory_types.d.ts +13 -13
  40. package/dest/public/avm/avm_memory_types.d.ts.map +1 -1
  41. package/dest/public/avm/avm_simulator.d.ts +3 -2
  42. package/dest/public/avm/avm_simulator.d.ts.map +1 -1
  43. package/dest/public/avm/avm_simulator.js +7 -6
  44. package/dest/public/avm/avm_simulator_interface.d.ts +1 -1
  45. package/dest/public/avm/errors.d.ts +7 -1
  46. package/dest/public/avm/errors.d.ts.map +1 -1
  47. package/dest/public/avm/errors.js +14 -2
  48. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +1 -1
  49. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -1
  50. package/dest/public/avm/fixtures/avm_simulation_tester.js +11 -2
  51. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts +1 -1
  52. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +1 -1
  53. package/dest/public/avm/fixtures/initializers.d.ts +1 -2
  54. package/dest/public/avm/fixtures/initializers.d.ts.map +1 -1
  55. package/dest/public/avm/fixtures/initializers.js +6 -4
  56. package/dest/public/avm/fixtures/utils.d.ts +3 -2
  57. package/dest/public/avm/fixtures/utils.d.ts.map +1 -1
  58. package/dest/public/avm/fixtures/utils.js +2 -1
  59. package/dest/public/avm/index.d.ts +1 -1
  60. package/dest/public/avm/opcodes/accrued_substate.d.ts +1 -1
  61. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
  62. package/dest/public/avm/opcodes/addressing_mode.d.ts +1 -1
  63. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +1 -1
  64. package/dest/public/avm/opcodes/addressing_mode.js +2 -2
  65. package/dest/public/avm/opcodes/arithmetic.d.ts +8 -8
  66. package/dest/public/avm/opcodes/arithmetic.d.ts.map +1 -1
  67. package/dest/public/avm/opcodes/bitwise.d.ts +5 -5
  68. package/dest/public/avm/opcodes/bitwise.d.ts.map +1 -1
  69. package/dest/public/avm/opcodes/comparators.d.ts +4 -4
  70. package/dest/public/avm/opcodes/comparators.d.ts.map +1 -1
  71. package/dest/public/avm/opcodes/contract.d.ts +1 -1
  72. package/dest/public/avm/opcodes/contract.d.ts.map +1 -1
  73. package/dest/public/avm/opcodes/control_flow.d.ts +1 -1
  74. package/dest/public/avm/opcodes/control_flow.d.ts.map +1 -1
  75. package/dest/public/avm/opcodes/conversion.d.ts +1 -1
  76. package/dest/public/avm/opcodes/conversion.d.ts.map +1 -1
  77. package/dest/public/avm/opcodes/ec_add.d.ts +2 -2
  78. package/dest/public/avm/opcodes/ec_add.d.ts.map +1 -1
  79. package/dest/public/avm/opcodes/environment_getters.d.ts +1 -1
  80. package/dest/public/avm/opcodes/environment_getters.d.ts.map +1 -1
  81. package/dest/public/avm/opcodes/external_calls.d.ts +1 -1
  82. package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
  83. package/dest/public/avm/opcodes/hashing.d.ts +2 -2
  84. package/dest/public/avm/opcodes/hashing.d.ts.map +1 -1
  85. package/dest/public/avm/opcodes/index.d.ts +1 -1
  86. package/dest/public/avm/opcodes/instruction.d.ts +2 -2
  87. package/dest/public/avm/opcodes/instruction.d.ts.map +1 -1
  88. package/dest/public/avm/opcodes/instruction_impl.d.ts +1 -1
  89. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +1 -1
  90. package/dest/public/avm/opcodes/memory.d.ts +2 -2
  91. package/dest/public/avm/opcodes/memory.d.ts.map +1 -1
  92. package/dest/public/avm/opcodes/misc.d.ts +1 -1
  93. package/dest/public/avm/opcodes/misc.d.ts.map +1 -1
  94. package/dest/public/avm/opcodes/misc.js +4 -4
  95. package/dest/public/avm/opcodes/storage.d.ts +3 -3
  96. package/dest/public/avm/opcodes/storage.d.ts.map +1 -1
  97. package/dest/public/avm/revert_reason.d.ts +1 -1
  98. package/dest/public/avm/revert_reason.d.ts.map +1 -1
  99. package/dest/public/avm/revert_reason.js +3 -2
  100. package/dest/public/avm/serialization/buffer_cursor.d.ts +1 -1
  101. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +1 -1
  102. package/dest/public/avm/serialization/bytecode_serialization.d.ts +1 -1
  103. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +1 -1
  104. package/dest/public/avm/serialization/bytecode_serialization.js +9 -6
  105. package/dest/public/avm/serialization/instruction_serialization.d.ts +1 -1
  106. package/dest/public/avm/test_utils.d.ts +1 -1
  107. package/dest/public/contracts_db_checkpoint.d.ts +16 -0
  108. package/dest/public/contracts_db_checkpoint.d.ts.map +1 -0
  109. package/dest/public/contracts_db_checkpoint.js +30 -0
  110. package/dest/public/db_interfaces.d.ts +13 -1
  111. package/dest/public/db_interfaces.d.ts.map +1 -1
  112. package/dest/public/debug_fn_name.d.ts +14 -1
  113. package/dest/public/debug_fn_name.d.ts.map +1 -1
  114. package/dest/public/debug_fn_name.js +19 -0
  115. package/dest/public/executor_metrics.d.ts +3 -2
  116. package/dest/public/executor_metrics.d.ts.map +1 -1
  117. package/dest/public/executor_metrics.js +1 -1
  118. package/dest/public/executor_metrics_interface.d.ts +3 -2
  119. package/dest/public/executor_metrics_interface.d.ts.map +1 -1
  120. package/dest/public/fixtures/amm_test.d.ts +1 -1
  121. package/dest/public/fixtures/bulk_test.d.ts +1 -1
  122. package/dest/public/fixtures/custom_bytecode_tester.d.ts +2 -2
  123. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  124. package/dest/public/fixtures/custom_bytecode_tests.d.ts +1 -1
  125. package/dest/public/fixtures/index.d.ts +1 -1
  126. package/dest/public/fixtures/minimal_public_tx.d.ts +2 -3
  127. package/dest/public/fixtures/minimal_public_tx.d.ts.map +1 -1
  128. package/dest/public/fixtures/minimal_public_tx.js +2 -2
  129. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +10 -5
  130. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  131. package/dest/public/fixtures/public_tx_simulation_tester.js +26 -13
  132. package/dest/public/fixtures/simple_contract_data_source.d.ts +4 -3
  133. package/dest/public/fixtures/simple_contract_data_source.d.ts.map +1 -1
  134. package/dest/public/fixtures/simple_contract_data_source.js +4 -4
  135. package/dest/public/fixtures/token_test.d.ts +6 -2
  136. package/dest/public/fixtures/token_test.d.ts.map +1 -1
  137. package/dest/public/fixtures/token_test.js +12 -11
  138. package/dest/public/fixtures/utils.d.ts +1 -1
  139. package/dest/public/hinting_db_sources.d.ts +12 -3
  140. package/dest/public/hinting_db_sources.d.ts.map +1 -1
  141. package/dest/public/hinting_db_sources.js +64 -11
  142. package/dest/public/index.d.ts +3 -2
  143. package/dest/public/index.d.ts.map +1 -1
  144. package/dest/public/index.js +1 -1
  145. package/dest/public/public_db_sources.d.ts +21 -62
  146. package/dest/public/public_db_sources.d.ts.map +1 -1
  147. package/dest/public/public_db_sources.js +73 -130
  148. package/dest/public/public_errors.d.ts +1 -1
  149. package/dest/public/public_errors.d.ts.map +1 -1
  150. package/dest/public/public_processor/guarded_merkle_tree.d.ts +5 -4
  151. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  152. package/dest/public/public_processor/public_processor.d.ts +11 -18
  153. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  154. package/dest/public/public_processor/public_processor.js +34 -35
  155. package/dest/public/public_processor/public_processor_metrics.d.ts +1 -1
  156. package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
  157. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +30 -0
  158. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +1 -0
  159. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +133 -0
  160. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +19 -22
  161. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +1 -1
  162. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +54 -50
  163. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +42 -0
  164. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +1 -0
  165. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +86 -0
  166. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +30 -0
  167. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +1 -0
  168. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +170 -0
  169. package/dest/public/public_tx_simulator/index.d.ts +3 -1
  170. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  171. package/dest/public/public_tx_simulator/index.js +1 -0
  172. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +13 -6
  173. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +1 -1
  174. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +5 -5
  175. package/dest/public/public_tx_simulator/public_tx_context.d.ts +5 -2
  176. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
  177. package/dest/public/public_tx_simulator/public_tx_context.js +12 -4
  178. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +10 -30
  179. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  180. package/dest/public/public_tx_simulator/public_tx_simulator.js +106 -125
  181. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +2 -2
  182. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts.map +1 -1
  183. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +3 -3
  184. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +1 -1
  185. package/dest/public/side_effect_errors.d.ts +1 -1
  186. package/dest/public/side_effect_errors.d.ts.map +1 -1
  187. package/dest/public/side_effect_trace.d.ts +1 -2
  188. package/dest/public/side_effect_trace.d.ts.map +1 -1
  189. package/dest/public/side_effect_trace_interface.d.ts +2 -3
  190. package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
  191. package/dest/public/state_manager/index.d.ts +1 -1
  192. package/dest/public/state_manager/nullifiers.d.ts +1 -1
  193. package/dest/public/state_manager/nullifiers.d.ts.map +1 -1
  194. package/dest/public/state_manager/public_storage.d.ts +1 -1
  195. package/dest/public/state_manager/public_storage.d.ts.map +1 -1
  196. package/dest/public/state_manager/state_manager.d.ts +8 -10
  197. package/dest/public/state_manager/state_manager.d.ts.map +1 -1
  198. package/dest/public/state_manager/state_manager.js +9 -5
  199. package/dest/public/test_executor_metrics.d.ts +4 -3
  200. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  201. package/dest/public/test_executor_metrics.js +5 -4
  202. package/dest/public/unique_class_ids.d.ts +1 -1
  203. package/dest/public/unique_class_ids.d.ts.map +1 -1
  204. package/dest/public/utils.d.ts +1 -1
  205. package/dest/server.d.ts +1 -1
  206. package/dest/testing.d.ts +1 -1
  207. package/package.json +21 -20
  208. package/src/public/avm/avm_execution_environment.ts +3 -5
  209. package/src/public/avm/avm_simulator.ts +10 -8
  210. package/src/public/avm/errors.ts +16 -2
  211. package/src/public/avm/fixtures/avm_simulation_tester.ts +9 -1
  212. package/src/public/avm/fixtures/initializers.ts +7 -9
  213. package/src/public/avm/fixtures/utils.ts +2 -1
  214. package/src/public/avm/opcodes/addressing_mode.ts +2 -2
  215. package/src/public/avm/opcodes/misc.ts +4 -4
  216. package/src/public/avm/revert_reason.ts +5 -2
  217. package/src/public/avm/serialization/bytecode_serialization.ts +17 -6
  218. package/src/public/contracts_db_checkpoint.ts +41 -0
  219. package/src/public/db_interfaces.ts +15 -0
  220. package/src/public/debug_fn_name.ts +25 -0
  221. package/src/public/executor_metrics.ts +2 -1
  222. package/src/public/executor_metrics_interface.ts +2 -1
  223. package/src/public/fixtures/custom_bytecode_tester.ts +1 -1
  224. package/src/public/fixtures/minimal_public_tx.ts +3 -4
  225. package/src/public/fixtures/public_tx_simulation_tester.ts +45 -15
  226. package/src/public/fixtures/simple_contract_data_source.ts +7 -8
  227. package/src/public/fixtures/token_test.ts +17 -9
  228. package/src/public/hinting_db_sources.ts +106 -8
  229. package/src/public/index.ts +4 -4
  230. package/src/public/public_db_sources.ts +92 -171
  231. package/src/public/public_processor/guarded_merkle_tree.ts +4 -3
  232. package/src/public/public_processor/public_processor.ts +57 -47
  233. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +162 -0
  234. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +84 -57
  235. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +132 -0
  236. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +240 -0
  237. package/src/public/public_tx_simulator/index.ts +2 -0
  238. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +9 -13
  239. package/src/public/public_tx_simulator/public_tx_context.ts +8 -2
  240. package/src/public/public_tx_simulator/public_tx_simulator.ts +148 -191
  241. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +1 -2
  242. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +2 -2
  243. package/src/public/state_manager/state_manager.ts +12 -12
  244. package/src/public/test_executor_metrics.ts +7 -5
  245. package/dest/public/tx_contract_cache.d.ts +0 -41
  246. package/dest/public/tx_contract_cache.d.ts.map +0 -1
  247. package/dest/public/tx_contract_cache.js +0 -49
  248. package/src/public/tx_contract_cache.ts +0 -69
@@ -1 +1 @@
1
- {"version":3,"file":"executor_metrics.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAEhF,qBAAa,eAAgB,YAAW,wBAAwB;IAC9D,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,yBAAyB,CAAY;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,wBAAwB,CAAY;gBAEhC,MAAM,EAAE,eAAe,EAAE,IAAI,SAAmB;IA6C5D,0BAA0B,CAAC,QAAQ,EAAE,MAAM;IAI3C,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,UAAU;IAItE,4BAA4B,CAC1B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,MAAM;IAuBnC,mCAAmC,CACjC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,0BAA0B,EAAE,MAAM;IAOpC,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,gBAAgB;CAKxF"}
1
+ {"version":3,"file":"executor_metrics.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAEhF,qBAAa,eAAgB,YAAW,wBAAwB;IAC9D,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,yBAAyB,CAAY;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,wBAAwB,CAAY;IAE5C,YAAY,MAAM,EAAE,eAAe,EAAE,IAAI,SAAmB,EA2C3D;IAED,0BAA0B,CAAC,QAAQ,EAAE,MAAM,QAE1C;IAED,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,UAAU,QAEzF;IAED,4BAA4B,CAC1B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,MAAM,QAqBlC;IAED,mCAAmC,CACjC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,0BAA0B,EAAE,MAAM,QAKnC;IAED,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,gBAAgB,QAItF;CACF"}
@@ -48,7 +48,7 @@ export class ExecutorMetrics {
48
48
  startRecordingTxSimulation(_txLabel) {
49
49
  // do nothing (unimplemented)
50
50
  }
51
- stopRecordingTxSimulation(_txLabel, _revertedCode) {
51
+ stopRecordingTxSimulation(_txLabel, _gasUsed, _revertedCode) {
52
52
  // do nothing (unimplemented)
53
53
  }
54
54
  recordEnqueuedCallSimulation(fnName, durationMs, manaUsed, totalInstructionsExecuted) {
@@ -1,9 +1,10 @@
1
1
  import type { RevertCode } from '@aztec/stdlib/avm';
2
+ import type { GasUsed } from '@aztec/stdlib/gas';
2
3
  export interface ExecutorMetricsInterface {
3
4
  startRecordingTxSimulation(txLabel: string): void;
4
- stopRecordingTxSimulation(txLabel: string, revertedCode?: RevertCode): void;
5
+ stopRecordingTxSimulation(txLabel: string, gasUsed?: GasUsed, revertedCode?: RevertCode): void;
5
6
  recordEnqueuedCallSimulation(fnName: string, durationMs: number, manaUsed: number, totalInstructions: number): void;
6
7
  recordEnqueuedCallSimulationFailure(fnName: string, durationMs: number, manaUsed: number, totalInstructionsExecuted: number): void;
7
8
  recordPrivateEffectsInsertion(durationUs: number, type: 'revertible' | 'non-revertible'): void;
8
9
  }
9
- //# sourceMappingURL=executor_metrics_interface.d.ts.map
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3JfbWV0cmljc19pbnRlcmZhY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvZXhlY3V0b3JfbWV0cmljc19pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsTUFBTSxXQUFXLHdCQUF3QjtJQUN2QywwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FBQztJQUNsRCx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsRUFBRSxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQy9GLDRCQUE0QixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDcEgsbUNBQW1DLENBQ2pDLE1BQU0sRUFBRSxNQUFNLEVBQ2QsVUFBVSxFQUFFLE1BQU0sRUFDbEIsUUFBUSxFQUFFLE1BQU0sRUFDaEIseUJBQXlCLEVBQUUsTUFBTSxHQUNoQyxJQUFJLENBQUM7SUFDUiw2QkFBNkIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEdBQUcsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO0NBQ2hHIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"executor_metrics_interface.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics_interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,WAAW,wBAAwB;IACvC,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC5E,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpH,mCAAmC,CACjC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,MAAM,GAChC,IAAI,CAAC;IACR,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,gBAAgB,GAAG,IAAI,CAAC;CAChG"}
1
+ {"version":3,"file":"executor_metrics_interface.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics_interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACvC,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/F,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpH,mCAAmC,CACjC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,MAAM,GAChC,IAAI,CAAC;IACR,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,gBAAgB,GAAG,IAAI,CAAC;CAChG"}
@@ -7,4 +7,4 @@ import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
7
7
  * You do NOT need permission to remove this test!
8
8
  */
9
9
  export declare function ammTest(tester: PublicTxSimulationTester, logger: Logger, tokenArtifact: ContractArtifact, ammArtifact: ContractArtifact, expectToBeTrue: (x: boolean) => void): Promise<void>;
10
- //# sourceMappingURL=amm_test.d.ts.map
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1tX3Rlc3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvYW1tX3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUkxRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUk1RTs7OztHQUlHO0FBQ0gsd0JBQXNCLE9BQU8sQ0FDM0IsTUFBTSxFQUFFLHdCQUF3QixFQUNoQyxNQUFNLEVBQUUsTUFBTSxFQUNkLGFBQWEsRUFBRSxnQkFBZ0IsRUFDL0IsV0FBVyxFQUFFLGdCQUFnQixFQUM3QixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxLQUFLLElBQUksaUJBcUdyQyJ9
@@ -3,4 +3,4 @@ import type { ContractArtifact } from '@aztec/stdlib/abi';
3
3
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
4
4
  export declare function bulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("../index.js").PublicTxResult>;
5
5
  export declare function megaBulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("../index.js").PublicTxResult>;
6
- //# sourceMappingURL=bulk_test.d.ts.map
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsa190ZXN0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL2J1bGtfdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzFELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFLHdCQUFzQixRQUFRLENBQzVCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsaURBa0YxQztBQUVELHdCQUFzQixZQUFZLENBQ2hDLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsaURBc0UxQyJ9
@@ -1,4 +1,4 @@
1
- import type { PublicTxResult } from '../public_tx_simulator/public_tx_simulator.js';
1
+ import type { PublicTxResult } from '@aztec/stdlib/avm';
2
2
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
3
3
  /**
4
4
  *
@@ -9,4 +9,4 @@ import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
9
9
  * @param contractName - The name of the contract (default: 'CustomBytecodeContract')
10
10
  */
11
11
  export declare function testCustomBytecode(bytecode: Buffer, tester: PublicTxSimulationTester, txLabel: string, contractName?: string): Promise<PublicTxResult>;
12
- //# sourceMappingURL=custom_bytecode_tester.d.ts.map
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tX2J5dGVjb2RlX3Rlc3Rlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9maXh0dXJlcy9jdXN0b21fYnl0ZWNvZGVfdGVzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isa0JBQWtCLENBQ3RDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsT0FBTyxFQUFFLE1BQU0sRUFDZixZQUFZLEdBQUUsTUFBaUMsR0FDOUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQTZCekIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"custom_bytecode_tester.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/custom_bytecode_tester.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,MAAiC,GAC9C,OAAO,CAAC,cAAc,CAAC,CA6BzB"}
1
+ {"version":3,"file":"custom_bytecode_tester.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/custom_bytecode_tester.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,MAAiC,GAC9C,OAAO,CAAC,cAAc,CAAC,CA6BzB"}
@@ -6,4 +6,4 @@ export declare function invalidByteTest(tester: PublicTxSimulationTester): Promi
6
6
  export declare function instructionTruncatedTest(tester: PublicTxSimulationTester): Promise<import("../index.js").PublicTxResult>;
7
7
  export declare function invalidTagValueTest(tester: PublicTxSimulationTester): Promise<import("../index.js").PublicTxResult>;
8
8
  export declare function invalidTagValueAndInstructionTruncatedTest(tester: PublicTxSimulationTester): Promise<import("../index.js").PublicTxResult>;
9
- //# sourceMappingURL=custom_bytecode_tests.d.ts.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tX2J5dGVjb2RlX3Rlc3RzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL2N1c3RvbV9ieXRlY29kZV90ZXN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUk1RSx3QkFBc0IsOEJBQThCLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsd0JBQXdCLGlEQWN6RztBQUVELHdCQUFzQixnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsd0JBQXdCLGlEQVF0RTtBQUVELHdCQUFzQixpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsd0JBQXdCLGlEQWlCdkU7QUFHRCx3QkFBc0IsZUFBZSxDQUFDLE1BQU0sRUFBRSx3QkFBd0IsaURBT3JFO0FBR0Qsd0JBQXNCLHdCQUF3QixDQUFDLE1BQU0sRUFBRSx3QkFBd0IsaURBVTlFO0FBR0Qsd0JBQXNCLG1CQUFtQixDQUFDLE1BQU0sRUFBRSx3QkFBd0IsaURBWXpFO0FBR0Qsd0JBQXNCLDBDQUEwQyxDQUFDLE1BQU0sRUFBRSx3QkFBd0IsaURBY2hHIn0=
@@ -7,4 +7,4 @@ export { ammTest } from './amm_test.js';
7
7
  export { bulkTest, megaBulkTest } from './bulk_test.js';
8
8
  export { tokenTest } from './token_test.js';
9
9
  export * from './custom_bytecode_tests.js';
10
- //# sourceMappingURL=index.d.ts.map
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsY0FBYyw0QkFBNEIsQ0FBQyJ9
@@ -1,5 +1,4 @@
1
- import { AvmCircuitInputs } from '@aztec/stdlib/avm';
2
- import type { PublicTxResult } from '../public_tx_simulator/public_tx_simulator.js';
1
+ import { AvmCircuitInputs, type PublicTxResult } from '@aztec/stdlib/avm';
3
2
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
4
3
  export declare function executeAvmMinimalPublicTx(tester: PublicTxSimulationTester): Promise<PublicTxResult>;
5
4
  /**
@@ -7,4 +6,4 @@ export declare function executeAvmMinimalPublicTx(tester: PublicTxSimulationTest
7
6
  * @returns The AvmCircuitInputs for the minimal public tx.
8
7
  */
9
8
  export declare function readAvmMinimalPublicTxInputsFromFile(): AvmCircuitInputs;
10
- //# sourceMappingURL=minimal_public_tx.d.ts.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaW1hbF9wdWJsaWNfdHguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvbWluaW1hbF9wdWJsaWNfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFTMUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFNUUsd0JBQXNCLHlCQUF5QixDQUFDLE1BQU0sRUFBRSx3QkFBd0IsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLENBZXpHO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLG9DQUFvQyxJQUFJLGdCQUFnQixDQUV2RSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"minimal_public_tx.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/minimal_public_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,CAezG;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,IAAI,gBAAgB,CAEvE"}
1
+ {"version":3,"file":"minimal_public_tx.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/minimal_public_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAS1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,CAezG;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,IAAI,gBAAgB,CAEvE"}
@@ -17,8 +17,8 @@ export async function executeAvmMinimalPublicTx(tester) {
17
17
  ]);
18
18
  const result = await testCustomBytecode(minimalBytecode, tester, 'MinimalTx', 'AvmMinimalContract');
19
19
  // Modify the protocol contracts to be all zeros
20
- result.avmProvingRequest.inputs.hints.protocolContracts = ProtocolContracts.empty();
21
- result.avmProvingRequest.inputs.publicInputs.protocolContracts = ProtocolContracts.empty();
20
+ result.hints.protocolContracts = ProtocolContracts.empty();
21
+ result.publicInputs.protocolContracts = ProtocolContracts.empty();
22
22
  return result;
23
23
  }
24
24
  /**
@@ -1,10 +1,12 @@
1
1
  import { type ContractArtifact } from '@aztec/stdlib/abi';
2
+ import { PublicSimulatorConfig, type PublicTxResult } from '@aztec/stdlib/avm';
2
3
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
3
4
  import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
4
5
  import { GlobalVariables, type Tx } from '@aztec/stdlib/tx';
5
6
  import { NativeWorldStateService } from '@aztec/world-state';
6
7
  import { BaseAvmSimulationTester } from '../avm/fixtures/base_avm_simulation_tester.js';
7
- import type { PublicTxResult } from '../public_tx_simulator/public_tx_simulator.js';
8
+ import { PublicContractsDB } from '../public_db_sources.js';
9
+ import type { MeasuredPublicTxSimulatorInterface } from '../public_tx_simulator/public_tx_simulator_interface.js';
8
10
  import { TestExecutorMetrics } from '../test_executor_metrics.js';
9
11
  import { SimpleContractDataSource } from './simple_contract_data_source.js';
10
12
  import { type TestPrivateInsertions } from './utils.js';
@@ -16,6 +18,10 @@ export type TestEnqueuedCall = {
16
18
  isStaticCall?: boolean;
17
19
  contractArtifact?: ContractArtifact;
18
20
  };
21
+ /**
22
+ * Factory type for creating a MeasuredPublicTxSimulatorInterface.
23
+ */
24
+ export type MeasuredSimulatorFactory = (merkleTree: MerkleTreeWriteOperations, contractsDB: PublicContractsDB, globals: GlobalVariables, metrics: TestExecutorMetrics, config: PublicSimulatorConfig) => MeasuredPublicTxSimulatorInterface;
19
25
  /**
20
26
  * A test class that extends the BaseAvmSimulationTester to enable real-app testing of the PublicTxSimulator.
21
27
  * It provides an interface for simulating one transaction at a time and maintains state between subsequent
@@ -27,9 +33,8 @@ export declare class PublicTxSimulationTester extends BaseAvmSimulationTester {
27
33
  protected txCount: number;
28
34
  private simulator;
29
35
  private metricsPrefix?;
30
- constructor(merkleTree: MerkleTreeWriteOperations, contractDataSource: SimpleContractDataSource, globals?: GlobalVariables, metrics?: TestExecutorMetrics, useCppSimulator?: boolean);
31
- static create(worldStateService: NativeWorldStateService, // make sure to close this later
32
- globals?: GlobalVariables, metrics?: TestExecutorMetrics, useCppSimulator?: boolean): Promise<PublicTxSimulationTester>;
36
+ constructor(merkleTree: MerkleTreeWriteOperations, contractDataSource: SimpleContractDataSource, globals?: GlobalVariables, metrics?: TestExecutorMetrics, simulatorFactory?: MeasuredSimulatorFactory, config?: PublicSimulatorConfig);
37
+ static create(worldStateService: NativeWorldStateService, globals?: GlobalVariables, metrics?: TestExecutorMetrics, useCppSimulator?: boolean, config?: PublicSimulatorConfig): Promise<PublicTxSimulationTester>;
33
38
  setMetricsPrefix(prefix: string): void;
34
39
  createTx(sender: AztecAddress, setupCalls?: TestEnqueuedCall[], appCalls?: TestEnqueuedCall[], teardownCall?: TestEnqueuedCall, feePayer?: AztecAddress, privateInsertions?: TestPrivateInsertions): Promise<Tx>;
35
40
  simulateTx(sender: AztecAddress, setupCalls?: TestEnqueuedCall[], appCalls?: TestEnqueuedCall[], teardownCall?: TestEnqueuedCall, feePayer?: AztecAddress, privateInsertions?: TestPrivateInsertions, txLabel?: string): Promise<PublicTxResult>;
@@ -51,4 +56,4 @@ export declare class PublicTxSimulationTester extends BaseAvmSimulationTester {
51
56
  prettyPrintMetrics(): void;
52
57
  }
53
58
  export declare function defaultGlobals(): GlobalVariables;
54
- //# sourceMappingURL=public_tx_simulation_tester.d.ts.map
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3R4X3NpbXVsYXRpb25fdGVzdGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL3B1YmxpY190eF9zaW11bGF0aW9uX3Rlc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBbUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsS0FBSyxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxlQUFlLEVBQWlDLEtBQUssRUFBRSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFPeEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHNUQsT0FBTyxLQUFLLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNsSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsS0FBSyxxQkFBcUIsRUFBMEIsTUFBTSxZQUFZLENBQUM7QUFJaEYsTUFBTSxNQUFNLGdCQUFnQixHQUFHO0lBQzdCLE1BQU0sQ0FBQyxFQUFFLFlBQVksQ0FBQztJQUN0QixPQUFPLEVBQUUsWUFBWSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUM7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
@@ -1 +1 @@
1
- {"version":3,"file":"public_tx_simulation_tester.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/public_tx_simulation_tester.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public_tx_simulation_tester.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/public_tx_simulation_tester.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,28 @@
1
+ import { DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT } from '@aztec/constants';
1
2
  import { asyncMap } from '@aztec/foundation/async-map';
3
+ import { BlockNumber } from '@aztec/foundation/branded-types';
2
4
  import { Fr } from '@aztec/foundation/fields';
3
5
  import { encodeArguments } from '@aztec/stdlib/abi';
6
+ import { PublicSimulatorConfig } from '@aztec/stdlib/avm';
4
7
  import { Gas, GasFees } from '@aztec/stdlib/gas';
5
8
  import { PublicCallRequest } from '@aztec/stdlib/kernel';
6
9
  import { GlobalVariables, PublicCallRequestWithCalldata } from '@aztec/stdlib/tx';
7
10
  import { BaseAvmSimulationTester } from '../avm/fixtures/base_avm_simulation_tester.js';
8
11
  import { DEFAULT_BLOCK_NUMBER, DEFAULT_TIMESTAMP, getContractFunctionAbi, getFunctionSelector } from '../avm/fixtures/utils.js';
9
12
  import { PublicContractsDB } from '../public_db_sources.js';
10
- import { MeasuredCppPublicTxSimulatorHintedDbs } from '../public_tx_simulator/cpp_public_tx_simulator.js';
11
- import { MeasuredPublicTxSimulator } from '../public_tx_simulator/measured_public_tx_simulator.js';
13
+ import { MeasuredCppPublicTxSimulator } from '../public_tx_simulator/cpp_public_tx_simulator.js';
14
+ import { MeasuredCppVsTsPublicTxSimulator } from '../public_tx_simulator/cpp_vs_ts_public_tx_simulator.js';
12
15
  import { TestExecutorMetrics } from '../test_executor_metrics.js';
13
16
  import { SimpleContractDataSource } from './simple_contract_data_source.js';
14
17
  import { createTxForPublicCalls } from './utils.js';
15
18
  const DEFAULT_GAS_FEES = new GasFees(2, 3);
19
+ const defaultConfig = PublicSimulatorConfig.from({
20
+ skipFeeEnforcement: false,
21
+ collectCallMetadata: true,
22
+ collectDebugLogs: true,
23
+ collectHints: false,
24
+ collectStatistics: false
25
+ });
16
26
  /**
17
27
  * A test class that extends the BaseAvmSimulationTester to enable real-app testing of the PublicTxSimulator.
18
28
  * It provides an interface for simulating one transaction at a time and maintains state between subsequent
@@ -22,20 +32,20 @@ const DEFAULT_GAS_FEES = new GasFees(2, 3);
22
32
  txCount;
23
33
  simulator;
24
34
  metricsPrefix;
25
- constructor(merkleTree, contractDataSource, globals = defaultGlobals(), metrics = new TestExecutorMetrics(), useCppSimulator = false){
35
+ constructor(merkleTree, contractDataSource, globals = defaultGlobals(), metrics = new TestExecutorMetrics(), simulatorFactory, config = defaultConfig){
26
36
  super(contractDataSource, merkleTree), this.metrics = metrics, this.txCount = 0;
27
37
  const contractsDB = new PublicContractsDB(contractDataSource);
28
- const config = {
29
- doMerkleOperations: true,
30
- skipFeeEnforcement: false,
31
- clientInitiatedSimulation: true
32
- };
33
- this.simulator = useCppSimulator ? new MeasuredCppPublicTxSimulatorHintedDbs(merkleTree, contractsDB, globals, this.metrics, config) : new MeasuredPublicTxSimulator(merkleTree, contractsDB, globals, this.metrics, config);
38
+ if (simulatorFactory) {
39
+ this.simulator = simulatorFactory(merkleTree, contractsDB, globals, this.metrics, config);
40
+ } else {
41
+ this.simulator = new MeasuredCppPublicTxSimulator(merkleTree, contractsDB, globals, this.metrics, config);
42
+ }
34
43
  }
35
- static async create(worldStateService, globals = defaultGlobals(), metrics = new TestExecutorMetrics(), useCppSimulator = false) {
44
+ static async create(worldStateService, globals = defaultGlobals(), metrics = new TestExecutorMetrics(), useCppSimulator = false, config = defaultConfig) {
36
45
  const contractDataSource = new SimpleContractDataSource();
37
46
  const merkleTree = await worldStateService.fork();
38
- return new PublicTxSimulationTester(merkleTree, contractDataSource, globals, metrics, useCppSimulator);
47
+ const simulatorFactory = useCppSimulator ? (mt, cdb, g, m, c)=>new MeasuredCppPublicTxSimulator(mt, cdb, g, m, c) : (mt, cdb, g, m, c)=>new MeasuredCppVsTsPublicTxSimulator(mt, cdb, g, m, c);
48
+ return new PublicTxSimulationTester(merkleTree, contractDataSource, globals, metrics, simulatorFactory, config);
39
49
  }
40
50
  setMetricsPrefix(prefix) {
41
51
  this.metricsPrefix = prefix;
@@ -51,13 +61,16 @@ const DEFAULT_GAS_FEES = new GasFees(2, 3);
51
61
  const appCallRequests = await asyncMap(appCalls, (call)=>this.#createPubicCallRequestForCall(call, call.sender ?? sender));
52
62
  const teardownCallRequest = teardownCall ? await this.#createPubicCallRequestForCall(teardownCall, teardownCall.sender ?? sender) : undefined;
53
63
  this.txCount++;
54
- return createTxForPublicCalls(privateInsertions, setupCallRequests, appCallRequests, teardownCallRequest, feePayer, /*gasUsedByPrivate*/ Gas.empty(), defaultGlobals());
64
+ return createTxForPublicCalls(privateInsertions, setupCallRequests, appCallRequests, teardownCallRequest, feePayer, /*gasUsedByPrivate*/ teardownCall ? new Gas(DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT) : Gas.empty(), defaultGlobals());
55
65
  }
56
66
  async simulateTx(sender, setupCalls = [], appCalls = [], teardownCall, feePayer = sender, /* need some unique first nullifier for note-nonce computations */ privateInsertions, txLabel = 'unlabeledTx') {
57
67
  const tx = await this.createTx(sender, setupCalls, appCalls, teardownCall, feePayer, privateInsertions);
58
68
  await this.setFeePayerBalance(feePayer);
59
69
  const txLabelWithCount = `${txLabel}/${this.txCount - 1}`;
60
70
  const fullTxLabel = this.metricsPrefix ? `${this.metricsPrefix}/${txLabelWithCount}` : txLabelWithCount;
71
+ if (!this.simulator) {
72
+ throw new Error('No simulator configured. Pass a simulatorFactory to the constructor or use PublicTxSimulationTester.create()');
73
+ }
61
74
  const avmResult = await this.simulator.simulate(tx, fullTxLabel);
62
75
  // Something like this is often useful for debugging:
63
76
  //if (avmResult.revertReason) {
@@ -113,6 +126,6 @@ export function defaultGlobals() {
113
126
  const globals = GlobalVariables.empty();
114
127
  globals.timestamp = DEFAULT_TIMESTAMP;
115
128
  globals.gasFees = DEFAULT_GAS_FEES; // apply some nonzero default gas fees
116
- globals.blockNumber = DEFAULT_BLOCK_NUMBER;
129
+ globals.blockNumber = BlockNumber(DEFAULT_BLOCK_NUMBER);
117
130
  return globals;
118
131
  }
@@ -1,3 +1,4 @@
1
+ import type { BlockNumber } from '@aztec/foundation/branded-types';
1
2
  import type { Fr } from '@aztec/foundation/fields';
2
3
  import type { ContractArtifact, FunctionSelector } from '@aztec/stdlib/abi';
3
4
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
@@ -21,15 +22,15 @@ export declare class SimpleContractDataSource implements ContractDataSource {
21
22
  */
22
23
  addNewContract(contractArtifact: ContractArtifact, contractClass: ContractClassPublic, contractInstance: ContractInstanceWithAddress): Promise<void>;
23
24
  addContractArtifact(classId: Fr, artifact: ContractArtifact): Promise<void>;
24
- getBlockNumber(): Promise<number>;
25
+ getBlockNumber(): Promise<BlockNumber>;
25
26
  getContractClass(id: Fr): Promise<ContractClassPublic | undefined>;
26
27
  getBytecodeCommitment(_id: Fr): Promise<Fr | undefined>;
27
28
  getContract(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
28
29
  getContractClassIds(): Promise<Fr[]>;
29
30
  getContractArtifact(address: AztecAddress): Promise<ContractArtifact | undefined>;
30
- getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string>;
31
+ getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
31
32
  registerContractFunctionSignatures(_signatures: string[]): Promise<void>;
32
33
  addContractClass(contractClass: ContractClassPublic): Promise<void>;
33
34
  addContractInstance(contractInstance: ContractInstanceWithAddress): Promise<void>;
34
35
  }
35
- //# sourceMappingURL=simple_contract_data_source.d.ts.map
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlX2NvbnRyYWN0X2RhdGFfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL3NpbXBsZV9jb250cmFjdF9kYXRhX3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVuRCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJbkg7Ozs7OztHQU1HO0FBQ0gscUJBQWEsd0JBQXlCLFlBQVcsa0JBQWtCO0lBQzFELE1BQU0seUNBQStDO0lBRzVELE9BQU8sQ0FBQyxlQUFlLENBQStDO0lBRXRFLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBdUQ7SUFFaEYsT0FBTyxDQUFDLGlCQUFpQixDQUE0QztJQUVyRSxPQUFPLENBQUMsaUJBQWlCLENBQWtDO0lBSTNEOzs7T0FHRztJQUNHLGNBQWMsQ0FDbEIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLGFBQWEsRUFBRSxtQkFBbUIsRUFDbEMsZ0JBQWdCLEVBQUUsMkJBQTJCLGlCQUs5QztJQUVLLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixpQkFjaEU7SUFJRCxjQUFjLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUVyQztJQUVELGdCQUFnQixDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQUVqRTtJQUVELHFCQUFxQixDQUFDLEdBQUcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FFdEQ7SUFFRCxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksR0FBRyxPQUFPLENBQUMsMkJBQTJCLEdBQUcsU0FBUyxDQUFDLENBRW5GO0lBRUQsbUJBQW1CLElBQUksT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBRW5DO0lBRUssbUJBQW1CLENBQUMsT0FBTyxFQUFFLFlBQVksR0FBRyxPQUFPLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLENBU3RGO0lBRUssb0JBQW9CLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0Fhekc7SUFFRCxrQ0FBa0MsQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUV2RTtJQUVELGdCQUFnQixDQUFDLGFBQWEsRUFBRSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBR2xFO0lBRUQsbUJBQW1CLENBQUMsZ0JBQWdCLEVBQUUsMkJBQTJCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUdoRjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"simple_contract_data_source.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/simple_contract_data_source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAInH;;;;;;GAMG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IAC1D,MAAM,yCAA+C;IAG5D,OAAO,CAAC,eAAe,CAA+C;IAEtE,OAAO,CAAC,iBAAiB,CAAuD;IAEhF,OAAO,CAAC,iBAAiB,CAA4C;IAErE,OAAO,CAAC,iBAAiB,CAAkC;IAI3D;;;OAGG;IACG,cAAc,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,mBAAmB,EAClC,gBAAgB,EAAE,2BAA2B;IAOzC,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,gBAAgB;IAkBjE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjC,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAIlE,qBAAqB,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAIvD,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAIpF,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAI9B,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAWjF,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB9F,kCAAkC,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxE,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,mBAAmB,CAAC,gBAAgB,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;CAIlF"}
1
+ {"version":3,"file":"simple_contract_data_source.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/simple_contract_data_source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAInH;;;;;;GAMG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IAC1D,MAAM,yCAA+C;IAG5D,OAAO,CAAC,eAAe,CAA+C;IAEtE,OAAO,CAAC,iBAAiB,CAAuD;IAEhF,OAAO,CAAC,iBAAiB,CAA4C;IAErE,OAAO,CAAC,iBAAiB,CAAkC;IAI3D;;;OAGG;IACG,cAAc,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,mBAAmB,EAClC,gBAAgB,EAAE,2BAA2B,iBAK9C;IAEK,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,gBAAgB,iBAchE;IAID,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAErC;IAED,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAEjE;IAED,qBAAqB,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAEtD;IAED,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAEnF;IAED,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAEnC;IAEK,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAStF;IAEK,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAazG;IAED,kCAAkC,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEvE;IAED,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;IAED,mBAAmB,CAAC,gBAAgB,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhF;CACF"}
@@ -70,14 +70,14 @@ import { getFunctionSelector } from '../avm/fixtures/utils.js';
70
70
  async getDebugFunctionName(address, selector) {
71
71
  const contractInstance = await this.getContract(address);
72
72
  if (!contractInstance) {
73
- this.logger.warn(`Couldn't get fn name for debugging. Contract not in tester's ContractDataSource. Using selector:${selector} instead...`);
74
- return `selector:${selector.toString()}`;
73
+ this.logger.warn(`Couldn't get fn name for debugging. Contract not in tester's ContractDataSource.`);
74
+ return undefined;
75
75
  }
76
76
  const key = `${contractInstance.currentContractClassId.toString()}:${selector.toString()}`;
77
77
  const fnName = this.debugFunctionName.get(key);
78
78
  if (!fnName) {
79
- this.logger.warn(`Couldn't get fn name for debugging. Using selector:${selector} instead...`);
80
- return selector.toString();
79
+ this.logger.warn(`Couldn't get fn name for debugging...`);
80
+ return undefined;
81
81
  }
82
82
  return fnName;
83
83
  }
@@ -3,6 +3,10 @@ import type { ContractArtifact } from '@aztec/stdlib/abi';
3
3
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
4
  import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
5
5
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
6
- export declare function tokenTest(tester: PublicTxSimulationTester, logger: Logger, tokenArtifact: ContractArtifact, expectToBeTrue: (x: boolean) => void): Promise<void>;
6
+ export type TokenTestOptions = {
7
+ /** Skip return value assertions in balance checks (useful for benchmarking with collectCallMetadata=false) */
8
+ skipReturnValueAssertions?: boolean;
9
+ };
10
+ export declare function tokenTest(tester: PublicTxSimulationTester, logger: Logger, tokenArtifact: ContractArtifact, expectToBeTrue: (x: boolean) => void, options?: TokenTestOptions): Promise<void>;
7
11
  export declare function setUpToken(tester: PublicTxSimulationTester, tokenArtifact: ContractArtifact, admin: AztecAddress, expectToBeTrue: (x: boolean) => void, seed?: number): Promise<ContractInstanceWithAddress>;
8
- //# sourceMappingURL=token_test.d.ts.map
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5fdGVzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9maXh0dXJlcy90b2tlbl90ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXBELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFNUUsTUFBTSxNQUFNLGdCQUFnQixHQUFHO0lBQzdCLDhHQUE4RztJQUM5Ryx5QkFBeUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztDQUNyQyxDQUFDO0FBRUYsd0JBQXNCLFNBQVMsQ0FDN0IsTUFBTSxFQUFFLHdCQUF3QixFQUNoQyxNQUFNLEVBQUUsTUFBTSxFQUNkLGFBQWEsRUFBRSxnQkFBZ0IsRUFDL0IsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sS0FBSyxJQUFJLEVBQ3BDLE9BQU8sR0FBRSxnQkFBcUIsaUJBK0QvQjtBQUVELHdCQUFzQixVQUFVLENBQzlCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsYUFBYSxFQUFFLGdCQUFnQixFQUMvQixLQUFLLEVBQUUsWUFBWSxFQUNuQixjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxLQUFLLElBQUksRUFDcEMsSUFBSSxTQUFJLHdDQTBCVCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"token_test.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/token_test.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,wBAAsB,SAAS,CAC7B,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,gBAAgB,EAC/B,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,iBA+DrC;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,wBAAwB,EAChC,aAAa,EAAE,gBAAgB,EAC/B,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,EACpC,IAAI,SAAI,wCA0BT"}
1
+ {"version":3,"file":"token_test.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/token_test.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,8GAA8G;IAC9G,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,CAAC;AAEF,wBAAsB,SAAS,CAC7B,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,gBAAgB,EAC/B,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,EACpC,OAAO,GAAE,gBAAqB,iBA+D/B;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,wBAAwB,EAChC,aAAa,EAAE,gBAAgB,EAC/B,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,EACpC,IAAI,SAAI,wCA0BT"}
@@ -1,7 +1,7 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
2
  import { Timer } from '@aztec/foundation/timer';
3
3
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
- export async function tokenTest(tester, logger, tokenArtifact, expectToBeTrue) {
4
+ export async function tokenTest(tester, logger, tokenArtifact, expectToBeTrue, options = {}) {
5
5
  const timer = new Timer();
6
6
  const admin = AztecAddress.fromNumber(42);
7
7
  const sender = AztecAddress.fromNumber(111);
@@ -20,7 +20,7 @@ export async function tokenTest(tester, logger, tokenArtifact, expectToBeTrue) {
20
20
  }
21
21
  ]);
22
22
  expectToBeTrue(mintResult.revertCode.isOK());
23
- await checkBalance(tester, token, sender, sender, mintAmount, expectToBeTrue);
23
+ await checkBalance(tester, token, sender, sender, mintAmount, expectToBeTrue, options);
24
24
  const authwitNonce = new Fr(0);
25
25
  const transferAmount = 50n;
26
26
  // EXECUTE! This means that if using AvmProvingTester subclass, it will PROVE the transaction!
@@ -37,8 +37,8 @@ export async function tokenTest(tester, logger, tokenArtifact, expectToBeTrue) {
37
37
  }
38
38
  ]);
39
39
  expectToBeTrue(transferResult.revertCode.isOK());
40
- await checkBalance(tester, token, sender, receiver, mintAmount - transferAmount, expectToBeTrue);
41
- await checkBalance(tester, token, sender, receiver, transferAmount, expectToBeTrue);
40
+ await checkBalance(tester, token, sender, sender, mintAmount - transferAmount, expectToBeTrue, options);
41
+ await checkBalance(tester, token, sender, receiver, transferAmount, expectToBeTrue, options);
42
42
  // EXECUTE! This means that if using AvmProvingTester subclass, it will PROVE the transaction!
43
43
  const burnResult = await tester.executeTxWithLabel(/*txLabel=*/ 'Token/burn_public', /*sender=*/ receiver, /*setupCalls=*/ [], /*appCalls=*/ [
44
44
  {
@@ -52,7 +52,7 @@ export async function tokenTest(tester, logger, tokenArtifact, expectToBeTrue) {
52
52
  }
53
53
  ]);
54
54
  expectToBeTrue(burnResult.revertCode.isOK());
55
- await checkBalance(tester, token, sender, receiver, 0n, expectToBeTrue);
55
+ await checkBalance(tester, token, sender, receiver, 0n, expectToBeTrue, options);
56
56
  logger.info(`TokenContract test took ${timer.ms()}ms\n`);
57
57
  }
58
58
  export async function setUpToken(tester, tokenArtifact, admin, expectToBeTrue, seed = 0) {
@@ -74,7 +74,7 @@ export async function setUpToken(tester, tokenArtifact, admin, expectToBeTrue, s
74
74
  expectToBeTrue(result.revertCode.isOK());
75
75
  return token;
76
76
  }
77
- async function checkBalance(tester, token, sender, account, expectedBalance, expectToBeTrue) {
77
+ async function checkBalance(tester, token, sender, account, expectedBalance, expectToBeTrue, options = {}) {
78
78
  // Strictly simulate this! No need to "execute" (aka prove if using AvmProvingTester subclass).
79
79
  const balResult = await tester.simulateTxWithLabel(/*txLabel=*/ 'Token/balance_of_public', sender, /*setupCalls=*/ [], /*appCalls=*/ [
80
80
  {
@@ -87,9 +87,10 @@ async function checkBalance(tester, token, sender, account, expectedBalance, exp
87
87
  }
88
88
  ]);
89
89
  expectToBeTrue(balResult.revertCode.isOK());
90
- // should be 1 call with 1 return value that is expectedBalance
91
- expectToBeTrue(balResult.processedPhases.length == 1);
92
- expectToBeTrue(balResult.processedPhases[0].returnValues.length == 1);
93
- expectToBeTrue(balResult.processedPhases[0].returnValues[0].values.length == 1);
94
- expectToBeTrue(balResult.processedPhases[0].returnValues[0].values[0].toBigInt() == expectedBalance);
90
+ if (!options.skipReturnValueAssertions) {
91
+ // should be 1 call with 1 return value that is expectedBalance
92
+ const appLogicReturnValues = balResult.getAppLogicReturnValues();
93
+ expectToBeTrue(appLogicReturnValues.length === 1);
94
+ expectToBeTrue(appLogicReturnValues[0].values?.[0]?.toBigInt() === expectedBalance);
95
+ }
95
96
  }
@@ -23,4 +23,4 @@ export declare function createTxForPublicCalls(privateInsertions: TestPrivateIns
23
23
  export declare function createTxForPrivateOnly(feePayer?: AztecAddress, gasUsedByPrivate?: Gas): Promise<Tx>;
24
24
  export declare function addNewContractClassToTx(tx: Tx, contractClass: ContractClassPublic, skipNullifierInsertion?: boolean): Promise<void>;
25
25
  export declare function addNewContractInstanceToTx(tx: Tx, contractInstance: ContractInstanceWithAddress, skipNullifierInsertion?: boolean): Promise<void>;
26
- //# sourceMappingURL=utils.d.ts.map
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9GLE9BQU8sRUFBRSxHQUFHLEVBQXdCLE1BQU0sbUJBQW1CLENBQUM7QUFVOUQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBRUwsZUFBZSxFQUVmLDZCQUE2QixFQUM3QixFQUFFLEVBR0gsTUFBTSxrQkFBa0IsQ0FBQztBQUkxQixNQUFNLE1BQU0scUJBQXFCLEdBQUc7SUFDbEMsVUFBVSxDQUFDLEVBQUU7UUFDWCxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNsQixVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNsQixVQUFVLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDO0tBQ3BDLENBQUM7SUFDRixhQUFhLENBQUMsRUFBRTtRQUNkLFVBQVUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ2xCLFVBQVUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ2xCLFVBQVUsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUM7S0FDcEMsQ0FBQztDQUNILENBQUM7QUFFRjs7R0FFRztBQUNILHdCQUFzQixzQkFBc0IsQ0FDMUMsaUJBQWlCLEVBQUUscUJBQXFCLEVBQ3hDLGlCQUFpQixFQUFFLDZCQUE2QixFQUFFLEVBQ2xELGVBQWUsRUFBRSw2QkFBNkIsRUFBRSxFQUNoRCxtQkFBbUIsQ0FBQyxFQUFFLDZCQUE2QixFQUNuRCxRQUFRLGVBQXNCLEVBQzlCLGdCQUFnQixHQUFFLEdBQWlCLEVBQ25DLE9BQU8sR0FBRSxlQUF5QyxHQUNqRCxPQUFPLENBQUMsRUFBRSxDQUFDLENBK0ZiO0FBRUQsd0JBQXNCLHNCQUFzQixDQUMxQyxRQUFRLGVBQXNCLEVBQzlCLGdCQUFnQixHQUFFLEdBQXFCLEdBQ3RDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0EwQmI7QUFFRCx3QkFBc0IsdUJBQXVCLENBQzNDLEVBQUUsRUFBRSxFQUFFLEVBQ04sYUFBYSxFQUFFLG1CQUFtQixFQUNsQyxzQkFBc0IsVUFBUSxpQkE2Qi9CO0FBRUQsd0JBQXNCLDBCQUEwQixDQUM5QyxFQUFFLEVBQUUsRUFBRSxFQUNOLGdCQUFnQixFQUFFLDJCQUEyQixFQUM3QyxzQkFBc0IsVUFBUSxpQkEwQy9CIn0=
@@ -1,3 +1,4 @@
1
+ import type { BlockNumber } from '@aztec/foundation/branded-types';
1
2
  import { Fr } from '@aztec/foundation/fields';
2
3
  import type { IndexedTreeLeafPreimage, SiblingPath } from '@aztec/foundation/trees';
3
4
  import type { FunctionSelector } from '@aztec/stdlib/abi';
@@ -14,12 +15,20 @@ import type { PublicContractsDBInterface } from './db_interfaces.js';
14
15
  export declare class HintingPublicContractsDB implements PublicContractsDBInterface {
15
16
  private readonly db;
16
17
  private hints;
17
- private contractClassIds;
18
+ private static readonly log;
19
+ private checkpointActionCounter;
20
+ private nextCheckpointId;
21
+ private checkpointStack;
18
22
  constructor(db: PublicContractsDBInterface, hints: AvmExecutionHints);
19
23
  getContractInstance(address: AztecAddress, timestamp: UInt64): Promise<ContractInstanceWithAddress | undefined>;
20
24
  getContractClass(contractClassId: Fr): Promise<ContractClassPublic | undefined>;
21
25
  getBytecodeCommitment(contractClassId: Fr): Promise<Fr | undefined>;
22
26
  getDebugFunctionName(contractAddress: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
27
+ createCheckpoint(): void;
28
+ commitCheckpoint(): void;
29
+ revertCheckpoint(): void;
30
+ private getHintKey;
31
+ private getCurrentCheckpointId;
23
32
  }
24
33
  /**
25
34
  * A low-level merkle DB that collects hints.
@@ -65,6 +74,6 @@ export declare class HintingMerkleWriteOperations implements MerkleTreeWriteOper
65
74
  index: bigint;
66
75
  } | undefined)[]>;
67
76
  findLeafIndicesAfter<ID extends MerkleTreeId>(treeId: ID, values: MerkleTreeLeafType<ID>[], startIndex: bigint): Promise<(bigint | undefined)[]>;
68
- getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(bigint | undefined)[]>;
77
+ getBlockNumbersForLeafIndices<ID extends MerkleTreeId>(treeId: ID, leafIndices: bigint[]): Promise<(BlockNumber | undefined)[]>;
69
78
  }
70
- //# sourceMappingURL=hinting_db_sources.d.ts.map
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludGluZ19kYl9zb3VyY2VzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL2hpbnRpbmdfZGJfc291cmNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUMsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBV0wsS0FBSyxpQkFBaUIsRUFTdkIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9GLE9BQU8sRUFFTCxLQUFLLG9CQUFvQixFQUN6QixLQUFLLGFBQWEsRUFDbEIsWUFBWSxFQUNaLEtBQUssa0JBQWtCLEVBQ3ZCLEtBQUsseUJBQXlCLEVBSzlCLEtBQUsseUJBQXlCLEVBQzlCLEtBQUssV0FBVyxFQUdqQixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJcEUsT0FBTyxLQUFLLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRTs7R0FFRztBQUNILHFCQUFhLHdCQUF5QixZQUFXLDBCQUEwQjtJQVF2RSxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7SUFDbkIsT0FBTyxDQUFDLEtBQUs7SUFSZixPQUFPLENB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
@@ -1 +1 @@
1
- {"version":3,"file":"hinting_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/hinting_db_sources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hinting_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/hinting_db_sources.ts"],"names":[],"mappings":"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"}