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

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 (391) hide show
  1. package/README.md +6 -4
  2. package/dest/client.d.ts +1 -3
  3. package/dest/client.d.ts.map +1 -1
  4. package/dest/client.js +0 -2
  5. package/dest/common/errors.d.ts +8 -2
  6. package/dest/common/errors.d.ts.map +1 -1
  7. package/dest/private/acvm/acvm.d.ts +4 -2
  8. package/dest/private/acvm/acvm.d.ts.map +1 -1
  9. package/dest/private/acvm/acvm.js +4 -3
  10. package/dest/private/acvm/deserialize.d.ts +2 -2
  11. package/dest/private/acvm/deserialize.d.ts.map +1 -1
  12. package/dest/private/acvm/deserialize.js +1 -1
  13. package/dest/private/acvm/serialize.d.ts +2 -2
  14. package/dest/private/acvm/serialize.d.ts.map +1 -1
  15. package/dest/private/acvm/serialize.js +1 -1
  16. package/dest/private/acvm_native.d.ts +5 -3
  17. package/dest/private/acvm_native.d.ts.map +1 -1
  18. package/dest/private/acvm_native.js +8 -6
  19. package/dest/private/acvm_wasm.d.ts +4 -3
  20. package/dest/private/acvm_wasm.d.ts.map +1 -1
  21. package/dest/private/acvm_wasm.js +7 -5
  22. package/dest/private/circuit_recording/circuit_recorder.d.ts +39 -25
  23. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  24. package/dest/private/circuit_recording/circuit_recorder.js +71 -72
  25. package/dest/private/circuit_recording/file_circuit_recorder.d.ts +9 -20
  26. package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
  27. package/dest/private/circuit_recording/file_circuit_recorder.js +39 -43
  28. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts +7 -2
  29. package/dest/private/circuit_recording/memory_circuit_recorder.d.ts.map +1 -1
  30. package/dest/private/circuit_recording/memory_circuit_recorder.js +4 -4
  31. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts +1 -1
  32. package/dest/private/circuit_recording/simulator_recorder_wrapper.d.ts.map +1 -1
  33. package/dest/private/circuit_recording/simulator_recorder_wrapper.js +11 -14
  34. package/dest/private/factory.d.ts +3 -3
  35. package/dest/private/factory.d.ts.map +1 -1
  36. package/dest/private/factory.js +7 -4
  37. package/dest/public/avm/testing/account_proof_fetcher.d.ts +2 -0
  38. package/dest/public/avm/testing/account_proof_fetcher.d.ts.map +1 -0
  39. package/dest/public/avm/testing/account_proof_fetcher.js +152 -0
  40. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.d.ts +3 -2
  41. package/dest/public/avm/testing/base_avm_simulation_tester.d.ts.map +1 -0
  42. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.js +19 -4
  43. package/dest/public/avm/testing/utils.d.ts +32 -0
  44. package/dest/public/avm/testing/utils.d.ts.map +1 -0
  45. package/dest/public/avm/{fixtures → testing}/utils.js +5 -35
  46. package/dest/public/avm_simulator.d.ts +28 -0
  47. package/dest/public/avm_simulator.d.ts.map +1 -0
  48. package/dest/public/avm_simulator.js +4 -0
  49. package/dest/public/avm_simulator_pool.d.ts +45 -0
  50. package/dest/public/avm_simulator_pool.d.ts.map +1 -0
  51. package/dest/public/avm_simulator_pool.js +197 -0
  52. package/dest/public/cdb/generated/api_types.d.ts +171 -0
  53. package/dest/public/cdb/generated/api_types.d.ts.map +1 -0
  54. package/dest/public/cdb/generated/api_types.js +314 -0
  55. package/dest/public/cdb/generated/server.d.ts +26 -0
  56. package/dest/public/cdb/generated/server.d.ts.map +1 -0
  57. package/dest/public/cdb/generated/server.js +135 -0
  58. package/dest/public/cdb_ipc_server.d.ts +33 -0
  59. package/dest/public/cdb_ipc_server.d.ts.map +1 -0
  60. package/dest/public/cdb_ipc_server.js +153 -0
  61. package/dest/public/contracts_db_checkpoint.d.ts +3 -3
  62. package/dest/public/contracts_db_checkpoint.d.ts.map +1 -1
  63. package/dest/public/contracts_db_checkpoint.js +1 -1
  64. package/dest/public/db_interfaces.d.ts +2 -2
  65. package/dest/public/db_interfaces.d.ts.map +1 -1
  66. package/dest/public/executor_metrics.d.ts +1 -1
  67. package/dest/public/executor_metrics.d.ts.map +1 -1
  68. package/dest/public/executor_metrics.js +12 -33
  69. package/dest/public/fixtures/amm_test.js +6 -6
  70. package/dest/public/fixtures/bulk_test.d.ts +3 -3
  71. package/dest/public/fixtures/bulk_test.d.ts.map +1 -1
  72. package/dest/public/fixtures/bulk_test.js +38 -75
  73. package/dest/public/fixtures/custom_bytecode_tester.d.ts +28 -6
  74. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  75. package/dest/public/fixtures/custom_bytecode_tester.js +36 -12
  76. package/dest/public/fixtures/index.d.ts +3 -3
  77. package/dest/public/fixtures/index.d.ts.map +1 -1
  78. package/dest/public/fixtures/index.js +2 -2
  79. package/dest/public/fixtures/public_processor_test_env.d.ts +30 -0
  80. package/dest/public/fixtures/public_processor_test_env.d.ts.map +1 -0
  81. package/dest/public/fixtures/public_processor_test_env.js +73 -0
  82. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +24 -6
  83. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  84. package/dest/public/fixtures/public_tx_simulation_tester.js +66 -21
  85. package/dest/public/fixtures/simple_contract_data_source.d.ts +2 -2
  86. package/dest/public/fixtures/simple_contract_data_source.d.ts.map +1 -1
  87. package/dest/public/fixtures/simple_contract_data_source.js +1 -1
  88. package/dest/public/fixtures/token_test.js +4 -4
  89. package/dest/public/fixtures/utils.d.ts +3 -3
  90. package/dest/public/fixtures/utils.d.ts.map +1 -1
  91. package/dest/public/fixtures/utils.js +25 -23
  92. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +67 -0
  93. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -0
  94. package/dest/public/fuzzing/avm_fuzzer_simulator.js +185 -0
  95. package/dest/public/fuzzing/avm_simulator_bin.d.ts +2 -0
  96. package/dest/public/fuzzing/avm_simulator_bin.d.ts.map +1 -0
  97. package/dest/public/fuzzing/avm_simulator_bin.js +118 -0
  98. package/dest/public/index.d.ts +5 -2
  99. package/dest/public/index.d.ts.map +1 -1
  100. package/dest/public/index.js +2 -1
  101. package/dest/public/public_db_sources.d.ts +10 -6
  102. package/dest/public/public_db_sources.d.ts.map +1 -1
  103. package/dest/public/public_db_sources.js +21 -15
  104. package/dest/public/public_processor/guarded_merkle_tree.d.ts +8 -6
  105. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  106. package/dest/public/public_processor/guarded_merkle_tree.js +12 -4
  107. package/dest/public/public_processor/public_processor.d.ts +17 -8
  108. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  109. package/dest/public/public_processor/public_processor.js +535 -100
  110. package/dest/public/public_processor/public_processor_metrics.d.ts +5 -2
  111. package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
  112. package/dest/public/public_processor/public_processor_metrics.js +36 -45
  113. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts +17 -0
  114. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts.map +1 -0
  115. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.js +39 -0
  116. package/dest/public/public_tx_simulator/factories.d.ts +14 -0
  117. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -0
  118. package/dest/public/public_tx_simulator/factories.js +28 -0
  119. package/dest/public/public_tx_simulator/index.d.ts +5 -5
  120. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  121. package/dest/public/public_tx_simulator/index.js +3 -3
  122. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +43 -70
  123. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  124. package/dest/public/public_tx_simulator/public_tx_simulator.js +99 -312
  125. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts +24 -0
  126. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts.map +1 -0
  127. package/dest/public/public_tx_simulator/public_tx_simulator_base.js +31 -0
  128. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +24 -1
  129. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts.map +1 -1
  130. package/dest/public/test_executor_metrics.d.ts +3 -2
  131. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  132. package/dest/public/test_executor_metrics.js +2 -2
  133. package/package.json +23 -20
  134. package/src/client.ts +0 -2
  135. package/src/common/errors.ts +1 -1
  136. package/src/private/acvm/acvm.ts +4 -3
  137. package/src/private/acvm/deserialize.ts +1 -1
  138. package/src/private/acvm/serialize.ts +1 -1
  139. package/src/private/acvm_native.ts +11 -5
  140. package/src/private/acvm_wasm.ts +11 -4
  141. package/src/private/circuit_recording/circuit_recorder.ts +90 -81
  142. package/src/private/circuit_recording/file_circuit_recorder.ts +45 -50
  143. package/src/private/circuit_recording/memory_circuit_recorder.ts +6 -4
  144. package/src/private/circuit_recording/simulator_recorder_wrapper.ts +9 -15
  145. package/src/private/factory.ts +7 -4
  146. package/src/public/avm/testing/account_proof.json +553 -0
  147. package/src/public/avm/testing/account_proof_fetcher.ts +166 -0
  148. package/src/public/avm/{fixtures → testing}/base_avm_simulation_tester.ts +24 -4
  149. package/src/public/avm/{fixtures → testing}/utils.ts +5 -41
  150. package/src/public/avm_simulator.ts +29 -0
  151. package/src/public/avm_simulator_pool.ts +226 -0
  152. package/src/public/cdb/generated/api_types.ts +457 -0
  153. package/src/public/cdb/generated/server.ts +109 -0
  154. package/src/public/cdb_ipc_server.ts +197 -0
  155. package/src/public/contracts_db_checkpoint.ts +2 -2
  156. package/src/public/db_interfaces.ts +1 -1
  157. package/src/public/executor_metrics.ts +9 -33
  158. package/src/public/fixtures/amm_test.ts +6 -6
  159. package/src/public/fixtures/bulk_test.ts +40 -15
  160. package/src/public/fixtures/custom_bytecode_tester.ts +53 -19
  161. package/src/public/fixtures/index.ts +6 -2
  162. package/src/public/fixtures/public_processor_test_env.ts +88 -0
  163. package/src/public/fixtures/public_tx_simulation_tester.ts +82 -21
  164. package/src/public/fixtures/simple_contract_data_source.ts +2 -2
  165. package/src/public/fixtures/token_test.ts +4 -4
  166. package/src/public/fixtures/utils.ts +25 -27
  167. package/src/public/fuzzing/avm_fuzzer_simulator.ts +303 -0
  168. package/src/public/fuzzing/avm_simulator_bin.ts +173 -0
  169. package/src/public/index.ts +8 -2
  170. package/src/public/public_db_sources.ts +37 -20
  171. package/src/public/public_processor/guarded_merkle_tree.ts +14 -7
  172. package/src/public/public_processor/public_processor.ts +188 -102
  173. package/src/public/public_processor/public_processor_metrics.ts +28 -44
  174. package/src/public/public_tx_simulator/dumping_public_tx_simulator.ts +67 -0
  175. package/src/public/public_tx_simulator/factories.ts +61 -0
  176. package/src/public/public_tx_simulator/index.ts +7 -4
  177. package/src/public/public_tx_simulator/public_tx_simulator.ts +143 -458
  178. package/src/public/public_tx_simulator/public_tx_simulator_base.ts +37 -0
  179. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +23 -0
  180. package/src/public/test_executor_metrics.ts +3 -3
  181. package/dest/public/avm/avm_context.d.ts +0 -41
  182. package/dest/public/avm/avm_context.d.ts.map +0 -1
  183. package/dest/public/avm/avm_context.js +0 -44
  184. package/dest/public/avm/avm_contract_call_result.d.ts +0 -32
  185. package/dest/public/avm/avm_contract_call_result.d.ts.map +0 -1
  186. package/dest/public/avm/avm_contract_call_result.js +0 -54
  187. package/dest/public/avm/avm_execution_environment.d.ts +0 -23
  188. package/dest/public/avm/avm_execution_environment.d.ts.map +0 -1
  189. package/dest/public/avm/avm_execution_environment.js +0 -33
  190. package/dest/public/avm/avm_gas.d.ts +0 -44
  191. package/dest/public/avm/avm_gas.d.ts.map +0 -1
  192. package/dest/public/avm/avm_gas.js +0 -195
  193. package/dest/public/avm/avm_machine_state.d.ts +0 -97
  194. package/dest/public/avm/avm_machine_state.d.ts.map +0 -1
  195. package/dest/public/avm/avm_machine_state.js +0 -109
  196. package/dest/public/avm/avm_memory_types.d.ts +0 -275
  197. package/dest/public/avm/avm_memory_types.d.ts.map +0 -1
  198. package/dest/public/avm/avm_memory_types.js +0 -351
  199. package/dest/public/avm/avm_simulator.d.ts +0 -40
  200. package/dest/public/avm/avm_simulator.d.ts.map +0 -1
  201. package/dest/public/avm/avm_simulator.js +0 -191
  202. package/dest/public/avm/avm_simulator_interface.d.ts +0 -9
  203. package/dest/public/avm/avm_simulator_interface.d.ts.map +0 -1
  204. package/dest/public/avm/avm_simulator_interface.js +0 -3
  205. package/dest/public/avm/errors.d.ts +0 -104
  206. package/dest/public/avm/errors.d.ts.map +0 -1
  207. package/dest/public/avm/errors.js +0 -141
  208. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +0 -22
  209. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  210. package/dest/public/avm/fixtures/avm_simulation_tester.js +0 -83
  211. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  212. package/dest/public/avm/fixtures/initializers.d.ts +0 -42
  213. package/dest/public/avm/fixtures/initializers.d.ts.map +0 -1
  214. package/dest/public/avm/fixtures/initializers.js +0 -44
  215. package/dest/public/avm/fixtures/utils.d.ts +0 -39
  216. package/dest/public/avm/fixtures/utils.d.ts.map +0 -1
  217. package/dest/public/avm/index.d.ts +0 -2
  218. package/dest/public/avm/index.d.ts.map +0 -1
  219. package/dest/public/avm/index.js +0 -1
  220. package/dest/public/avm/opcodes/accrued_substate.d.ts +0 -75
  221. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +0 -1
  222. package/dest/public/avm/opcodes/accrued_substate.js +0 -255
  223. package/dest/public/avm/opcodes/addressing_mode.d.ts +0 -31
  224. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +0 -1
  225. package/dest/public/avm/opcodes/addressing_mode.js +0 -94
  226. package/dest/public/avm/opcodes/arithmetic.d.ts +0 -47
  227. package/dest/public/avm/opcodes/arithmetic.d.ts.map +0 -1
  228. package/dest/public/avm/opcodes/arithmetic.js +0 -87
  229. package/dest/public/avm/opcodes/bitwise.d.ts +0 -42
  230. package/dest/public/avm/opcodes/bitwise.d.ts.map +0 -1
  231. package/dest/public/avm/opcodes/bitwise.js +0 -99
  232. package/dest/public/avm/opcodes/comparators.d.ts +0 -25
  233. package/dest/public/avm/opcodes/comparators.d.ts.map +0 -1
  234. package/dest/public/avm/opcodes/comparators.js +0 -43
  235. package/dest/public/avm/opcodes/contract.d.ts +0 -20
  236. package/dest/public/avm/opcodes/contract.d.ts.map +0 -1
  237. package/dest/public/avm/opcodes/contract.js +0 -65
  238. package/dest/public/avm/opcodes/control_flow.d.ts +0 -41
  239. package/dest/public/avm/opcodes/control_flow.d.ts.map +0 -1
  240. package/dest/public/avm/opcodes/control_flow.js +0 -107
  241. package/dest/public/avm/opcodes/conversion.d.ts +0 -18
  242. package/dest/public/avm/opcodes/conversion.d.ts.map +0 -1
  243. package/dest/public/avm/opcodes/conversion.js +0 -333
  244. package/dest/public/avm/opcodes/ec_add.d.ts +0 -19
  245. package/dest/public/avm/opcodes/ec_add.d.ts.map +0 -1
  246. package/dest/public/avm/opcodes/ec_add.js +0 -84
  247. package/dest/public/avm/opcodes/environment_getters.d.ts +0 -28
  248. package/dest/public/avm/opcodes/environment_getters.d.ts.map +0 -1
  249. package/dest/public/avm/opcodes/environment_getters.js +0 -77
  250. package/dest/public/avm/opcodes/external_calls.d.ts +0 -59
  251. package/dest/public/avm/opcodes/external_calls.d.ts.map +0 -1
  252. package/dest/public/avm/opcodes/external_calls.js +0 -209
  253. package/dest/public/avm/opcodes/hashing.d.ts +0 -36
  254. package/dest/public/avm/opcodes/hashing.d.ts.map +0 -1
  255. package/dest/public/avm/opcodes/hashing.js +0 -114
  256. package/dest/public/avm/opcodes/index.d.ts +0 -16
  257. package/dest/public/avm/opcodes/index.d.ts.map +0 -1
  258. package/dest/public/avm/opcodes/index.js +0 -15
  259. package/dest/public/avm/opcodes/instruction.d.ts +0 -74
  260. package/dest/public/avm/opcodes/instruction.d.ts.map +0 -1
  261. package/dest/public/avm/opcodes/instruction.js +0 -95
  262. package/dest/public/avm/opcodes/instruction_impl.d.ts +0 -19
  263. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +0 -1
  264. package/dest/public/avm/opcodes/instruction_impl.js +0 -30
  265. package/dest/public/avm/opcodes/memory.d.ts +0 -74
  266. package/dest/public/avm/opcodes/memory.d.ts.map +0 -1
  267. package/dest/public/avm/opcodes/memory.js +0 -257
  268. package/dest/public/avm/opcodes/misc.d.ts +0 -18
  269. package/dest/public/avm/opcodes/misc.d.ts.map +0 -1
  270. package/dest/public/avm/opcodes/misc.js +0 -73
  271. package/dest/public/avm/opcodes/storage.d.ts +0 -24
  272. package/dest/public/avm/opcodes/storage.d.ts.map +0 -1
  273. package/dest/public/avm/opcodes/storage.js +0 -68
  274. package/dest/public/avm/revert_reason.d.ts +0 -18
  275. package/dest/public/avm/revert_reason.d.ts.map +0 -1
  276. package/dest/public/avm/revert_reason.js +0 -39
  277. package/dest/public/avm/serialization/buffer_cursor.d.ts +0 -26
  278. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +0 -1
  279. package/dest/public/avm/serialization/buffer_cursor.js +0 -99
  280. package/dest/public/avm/serialization/bytecode_serialization.d.ts +0 -17
  281. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  282. package/dest/public/avm/serialization/bytecode_serialization.js +0 -336
  283. package/dest/public/avm/serialization/instruction_serialization.d.ts +0 -114
  284. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +0 -1
  285. package/dest/public/avm/serialization/instruction_serialization.js +0 -261
  286. package/dest/public/avm/test_utils.d.ts +0 -15
  287. package/dest/public/avm/test_utils.d.ts.map +0 -1
  288. package/dest/public/avm/test_utils.js +0 -44
  289. package/dest/public/debug_fn_name.d.ts +0 -18
  290. package/dest/public/debug_fn_name.d.ts.map +0 -1
  291. package/dest/public/debug_fn_name.js +0 -28
  292. package/dest/public/fixtures/custom_bytecode_tests.d.ts +0 -9
  293. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +0 -1
  294. package/dest/public/fixtures/custom_bytecode_tests.js +0 -109
  295. package/dest/public/fixtures/minimal_public_tx.d.ts +0 -9
  296. package/dest/public/fixtures/minimal_public_tx.d.ts.map +0 -1
  297. package/dest/public/fixtures/minimal_public_tx.js +0 -29
  298. package/dest/public/hinting_db_sources.d.ts +0 -79
  299. package/dest/public/hinting_db_sources.d.ts.map +0 -1
  300. package/dest/public/hinting_db_sources.js +0 -350
  301. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +0 -30
  302. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +0 -1
  303. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +0 -133
  304. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +0 -38
  305. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +0 -1
  306. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +0 -93
  307. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +0 -42
  308. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +0 -1
  309. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +0 -86
  310. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +0 -30
  311. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +0 -1
  312. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +0 -170
  313. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +0 -31
  314. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +0 -1
  315. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +0 -51
  316. package/dest/public/public_tx_simulator/public_tx_context.d.ts +0 -130
  317. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +0 -1
  318. package/dest/public/public_tx_simulator/public_tx_context.js +0 -300
  319. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +0 -21
  320. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +0 -1
  321. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +0 -39
  322. package/dest/public/side_effect_trace.d.ts +0 -86
  323. package/dest/public/side_effect_trace.d.ts.map +0 -1
  324. package/dest/public/side_effect_trace.js +0 -199
  325. package/dest/public/side_effect_trace_interface.d.ts +0 -22
  326. package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
  327. package/dest/public/side_effect_trace_interface.js +0 -1
  328. package/dest/public/state_manager/index.d.ts +0 -2
  329. package/dest/public/state_manager/index.d.ts.map +0 -1
  330. package/dest/public/state_manager/index.js +0 -1
  331. package/dest/public/state_manager/nullifiers.d.ts +0 -61
  332. package/dest/public/state_manager/nullifiers.d.ts.map +0 -1
  333. package/dest/public/state_manager/nullifiers.js +0 -92
  334. package/dest/public/state_manager/public_storage.d.ts +0 -66
  335. package/dest/public/state_manager/public_storage.d.ts.map +0 -1
  336. package/dest/public/state_manager/public_storage.js +0 -145
  337. package/dest/public/state_manager/state_manager.d.ts +0 -164
  338. package/dest/public/state_manager/state_manager.d.ts.map +0 -1
  339. package/dest/public/state_manager/state_manager.js +0 -395
  340. package/src/public/avm/avm_context.ts +0 -61
  341. package/src/public/avm/avm_contract_call_result.ts +0 -67
  342. package/src/public/avm/avm_execution_environment.ts +0 -46
  343. package/src/public/avm/avm_gas.ts +0 -183
  344. package/src/public/avm/avm_machine_state.ts +0 -169
  345. package/src/public/avm/avm_memory_types.ts +0 -436
  346. package/src/public/avm/avm_simulator.ts +0 -276
  347. package/src/public/avm/avm_simulator_interface.ts +0 -8
  348. package/src/public/avm/errors.ts +0 -177
  349. package/src/public/avm/fixtures/avm_simulation_tester.ts +0 -116
  350. package/src/public/avm/fixtures/initializers.ts +0 -102
  351. package/src/public/avm/index.ts +0 -1
  352. package/src/public/avm/opcodes/accrued_substate.ts +0 -288
  353. package/src/public/avm/opcodes/addressing_mode.ts +0 -111
  354. package/src/public/avm/opcodes/arithmetic.ts +0 -117
  355. package/src/public/avm/opcodes/bitwise.ts +0 -113
  356. package/src/public/avm/opcodes/comparators.ts +0 -55
  357. package/src/public/avm/opcodes/contract.ts +0 -75
  358. package/src/public/avm/opcodes/control_flow.ts +0 -123
  359. package/src/public/avm/opcodes/conversion.ts +0 -104
  360. package/src/public/avm/opcodes/ec_add.ts +0 -96
  361. package/src/public/avm/opcodes/environment_getters.ts +0 -87
  362. package/src/public/avm/opcodes/external_calls.ts +0 -260
  363. package/src/public/avm/opcodes/hashing.ts +0 -145
  364. package/src/public/avm/opcodes/index.ts +0 -15
  365. package/src/public/avm/opcodes/instruction.ts +0 -136
  366. package/src/public/avm/opcodes/instruction_impl.ts +0 -36
  367. package/src/public/avm/opcodes/memory.ts +0 -293
  368. package/src/public/avm/opcodes/misc.ts +0 -102
  369. package/src/public/avm/opcodes/storage.ts +0 -87
  370. package/src/public/avm/revert_reason.ts +0 -58
  371. package/src/public/avm/serialization/buffer_cursor.ts +0 -118
  372. package/src/public/avm/serialization/bytecode_serialization.ts +0 -215
  373. package/src/public/avm/serialization/instruction_serialization.ts +0 -249
  374. package/src/public/avm/test_utils.ts +0 -64
  375. package/src/public/debug_fn_name.ts +0 -43
  376. package/src/public/fixtures/custom_bytecode_tests.ts +0 -135
  377. package/src/public/fixtures/minimal_public_tx.ts +0 -35
  378. package/src/public/hinting_db_sources.ts +0 -603
  379. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +0 -162
  380. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +0 -155
  381. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +0 -132
  382. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +0 -240
  383. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +0 -105
  384. package/src/public/public_tx_simulator/public_tx_context.ts +0 -477
  385. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +0 -63
  386. package/src/public/side_effect_trace.ts +0 -290
  387. package/src/public/side_effect_trace_interface.ts +0 -28
  388. package/src/public/state_manager/index.ts +0 -1
  389. package/src/public/state_manager/nullifiers.ts +0 -103
  390. package/src/public/state_manager/public_storage.ts +0 -174
  391. package/src/public/state_manager/state_manager.ts +0 -560
@@ -0,0 +1,33 @@
1
+ import { type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
2
+ import type { CdbAddContracts, CdbAddContractsResponse, CdbCommitCheckpoint, CdbCommitCheckpointResponse, CdbCreateCheckpoint, CdbCreateCheckpointResponse, CdbGetBytecodeCommitment, CdbGetBytecodeCommitmentResponse, CdbGetContractClass, CdbGetContractClassResponse, CdbGetContractInstance, CdbGetContractInstanceResponse, CdbGetDebugFunctionName, CdbGetDebugFunctionNameResponse, CdbRevertCheckpoint, CdbRevertCheckpointResponse } from './cdb/generated/api_types.js';
3
+ import { type Handler as CdbHandler } from './cdb/generated/server.js';
4
+ import type { PublicContractsDB } from './public_db_sources.js';
5
+ /** Serializes contract instances to the AVM CDB wire shape. */
6
+ export declare function serializeContractInstance(instance: ContractInstanceWithAddress): Record<string, unknown>;
7
+ /** Routes AVM CDB IPC requests to registered PublicContractsDB forks. */
8
+ export declare class CdbIpcServer implements CdbHandler {
9
+ readonly ipcPath: string;
10
+ private server;
11
+ private log;
12
+ /** Maps WSDB fork IDs to contracts DB/timestamp pairs for concurrent simulations. */
13
+ private forks;
14
+ constructor();
15
+ /** Register a PublicContractsDB for a given WSDB fork ID. */
16
+ registerFork(forkId: number, contractsDB: PublicContractsDB, timestamp: bigint): void;
17
+ /** Unregister a fork's contracts DB (call after simulation completes). */
18
+ unregisterFork(forkId: number): void;
19
+ /** Close the server and all active connections. */
20
+ close(): Promise<void>;
21
+ [Symbol.asyncDispose](): Promise<void>;
22
+ /** Look up the contracts DB for a given fork ID, throwing if not registered. */
23
+ private getFork;
24
+ getContractInstance(command: CdbGetContractInstance): Promise<CdbGetContractInstanceResponse>;
25
+ getContractClass(command: CdbGetContractClass): Promise<CdbGetContractClassResponse>;
26
+ getBytecodeCommitment(command: CdbGetBytecodeCommitment): Promise<CdbGetBytecodeCommitmentResponse>;
27
+ getDebugFunctionName(command: CdbGetDebugFunctionName): Promise<CdbGetDebugFunctionNameResponse>;
28
+ addContracts(command: CdbAddContracts): Promise<CdbAddContractsResponse>;
29
+ createCheckpoint(command: CdbCreateCheckpoint): Promise<CdbCreateCheckpointResponse>;
30
+ commitCheckpoint(command: CdbCommitCheckpoint): Promise<CdbCommitCheckpointResponse>;
31
+ revertCheckpoint(command: CdbRevertCheckpoint): Promise<CdbRevertCheckpointResponse>;
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RiX2lwY19zZXJ2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvY2RiX2lwY19zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYUEsT0FBTyxFQUEwQixLQUFLLDJCQUEyQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFPbEcsT0FBTyxLQUFLLEVBQ1YsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQiwyQkFBMkIsRUFDM0Isd0JBQXdCLEVBQ3hCLGdDQUFnQyxFQUNoQyxtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0Qiw4QkFBOEIsRUFDOUIsdUJBQXVCLEVBQ3ZCLCtCQUErQixFQUMvQixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzVCLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssT0FBTyxJQUFJLFVBQVUsRUFBaUIsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBV2hFLCtEQUErRDtBQUMvRCx3QkFBZ0IseUJBQXlCLENBQUMsUUFBUSxFQUFFLDJCQUEyQixHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBb0J4RztBQWlCRCx5RUFBeUU7QUFDekUscUJBQWEsWUFBYSxZQUFXLFVBQVU7SUFDN0MsU0FBZ0IsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUNoQyxPQUFPLENBQUMsTUFBTSxDQUF3QjtJQUN0QyxPQUFPLENBQUMsR0FBRyxDQUFTO0lBQ3BCLHFGQUFxRjtJQUNyRixPQUFPLENBQUMsS0FBSyxDQUFtRTtJQUVoRixjQVVDO0lBRUQsNkRBQTZEO0lBQzdELFlBQVksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FFcEY7SUFFRCwwRUFBMEU7SUFDMUUsY0FBYyxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsSUFBSSxDQUVuQztJQUVELG1EQUFtRDtJQUM3QyxLQUFLLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUczQjtJQUVLLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFM0M7SUFFRCxnRkFBZ0Y7SUFDaEYsT0FBTyxDQUFDLE9BQU87SUFXVCxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsc0JBQXNCLEdBQUcsT0FBTyxDQUFDLDhCQUE4QixDQUFDLENBS2xHO0lBRUssZ0JBQWdCLENBQUMsT0FBTyxFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUt6RjtJQUVLLHFCQUFxQixDQUFDLE9BQU8sRUFBRSx3QkFBd0IsR0FBRyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FLeEc7SUFFSyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsdUJBQXVCLEdBQUcsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBT3JHO0lBRUQsWUFBWSxDQUFDLE9BQU8sRUFBRSxlQUFlLEdBQUcsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBT3ZFO0lBRUQsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUluRjtJQUVELGdCQUFnQixDQUFDLE9BQU8sRUFBRSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FJbkY7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixDQUFDLENBSW5GO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cdb_ipc_server.d.ts","sourceRoot":"","sources":["../../src/public/cdb_ipc_server.ts"],"names":[],"mappings":"AAaA,OAAO,EAA0B,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAOlG,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,EACxB,gCAAgC,EAChC,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,8BAA8B,EAC9B,uBAAuB,EACvB,+BAA+B,EAC/B,mBAAmB,EACnB,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,OAAO,IAAI,UAAU,EAAiB,MAAM,2BAA2B,CAAC;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAWhE,+DAA+D;AAC/D,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBxG;AAiBD,yEAAyE;AACzE,qBAAa,YAAa,YAAW,UAAU;IAC7C,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,GAAG,CAAS;IACpB,qFAAqF;IACrF,OAAO,CAAC,KAAK,CAAmE;IAEhF,cAUC;IAED,6DAA6D;IAC7D,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAEpF;IAED,0EAA0E;IAC1E,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAEnC;IAED,mDAAmD;IAC7C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3B;IAEK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAED,gFAAgF;IAChF,OAAO,CAAC,OAAO;IAWT,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAKlG;IAEK,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAKzF;IAEK,qBAAqB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAKxG;IAEK,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAOrG;IAED,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAOvE;IAED,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAInF;IAED,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAInF;IAED,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAInF;CACF"}
@@ -0,0 +1,153 @@
1
+ /**
2
+ * UDS server for AVM CDB requests.
3
+ *
4
+ * Transport (socket, framing, per-connection response ordering) is handled by the shared
5
+ * `UdsIpcServer` from `@aztec/ipc-runtime`; message dispatch comes from the generated CDB
6
+ * server. This class only implements the generated handler interface and routes requests to
7
+ * PublicContractsDB instances by fork ID.
8
+ */ var _computedKey;
9
+ import { Fr } from '@aztec/foundation/curves/bn254';
10
+ import { createLogger } from '@aztec/foundation/log';
11
+ import { UdsIpcServer } from '@aztec/ipc-runtime';
12
+ import { FunctionSelector } from '@aztec/stdlib/abi';
13
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
14
+ import { ContractDeploymentData } from '@aztec/stdlib/contract';
15
+ import { Decoder, Encoder } from 'msgpackr';
16
+ import * as os from 'node:os';
17
+ import * as path from 'node:path';
18
+ import { threadId } from 'node:worker_threads';
19
+ import { handleRequest } from './cdb/generated/server.js';
20
+ const encoder = new Encoder({
21
+ useRecords: false
22
+ });
23
+ const decoder = new Decoder({
24
+ useRecords: false
25
+ });
26
+ let instanceCounter = 0;
27
+ function toFieldBuffer(field) {
28
+ return field.toBuffer();
29
+ }
30
+ /** Serializes contract instances to the AVM CDB wire shape. */ export function serializeContractInstance(instance) {
31
+ return {
32
+ salt: toFieldBuffer(instance.salt),
33
+ deployer: toFieldBuffer(instance.deployer),
34
+ currentContractClassId: toFieldBuffer(instance.currentContractClassId),
35
+ originalContractClassId: toFieldBuffer(instance.originalContractClassId),
36
+ initializationHash: toFieldBuffer(instance.initializationHash),
37
+ immutablesHash: toFieldBuffer(instance.immutablesHash),
38
+ publicKeys: {
39
+ npkMHash: toFieldBuffer(instance.publicKeys.npkMHash),
40
+ ivpkM: {
41
+ x: toFieldBuffer(instance.publicKeys.ivpkM.x),
42
+ y: toFieldBuffer(instance.publicKeys.ivpkM.y)
43
+ },
44
+ ovpkMHash: toFieldBuffer(instance.publicKeys.ovpkMHash),
45
+ tpkMHash: toFieldBuffer(instance.publicKeys.tpkMHash),
46
+ mspkMHash: toFieldBuffer(instance.publicKeys.mspkMHash),
47
+ fbpkMHash: toFieldBuffer(instance.publicKeys.fbpkMHash)
48
+ }
49
+ };
50
+ }
51
+ /** Serializes contract classes to the AVM CDB wire shape. */ function serializeContractClass(contractClass) {
52
+ return {
53
+ id: toFieldBuffer(contractClass.id),
54
+ artifactHash: toFieldBuffer(contractClass.artifactHash),
55
+ privateFunctionsRoot: toFieldBuffer(contractClass.privateFunctionsRoot),
56
+ packedBytecode: contractClass.packedBytecode
57
+ };
58
+ }
59
+ _computedKey = Symbol.asyncDispose;
60
+ /** Routes AVM CDB IPC requests to registered PublicContractsDB forks. */ export class CdbIpcServer {
61
+ ipcPath;
62
+ server;
63
+ log;
64
+ /** Maps WSDB fork IDs to contracts DB/timestamp pairs for concurrent simulations. */ forks = new Map();
65
+ constructor(){
66
+ this.log = createLogger('cdb-ipc-server');
67
+ this.ipcPath = path.join(os.tmpdir(), `cdb-ts-${process.pid}-${threadId}-${instanceCounter++}.sock`);
68
+ // Listen asynchronously; the C++ AVM retries connecting until the socket is up.
69
+ this.server = UdsIpcServer.listen(this.ipcPath, (_clientId, request)=>handleRequest(this, request));
70
+ this.server.then(()=>this.log.debug(`CDB IPC server listening on ${this.ipcPath}`), (err)=>this.log.error(`CDB IPC server failed to listen on ${this.ipcPath}`, {
71
+ err
72
+ }));
73
+ }
74
+ /** Register a PublicContractsDB for a given WSDB fork ID. */ registerFork(forkId, contractsDB, timestamp) {
75
+ this.forks.set(forkId, {
76
+ db: contractsDB,
77
+ timestamp
78
+ });
79
+ }
80
+ /** Unregister a fork's contracts DB (call after simulation completes). */ unregisterFork(forkId) {
81
+ this.forks.delete(forkId);
82
+ }
83
+ /** Close the server and all active connections. */ async close() {
84
+ const server = await this.server.catch(()=>undefined);
85
+ await server?.close();
86
+ }
87
+ async [_computedKey]() {
88
+ await this.close();
89
+ }
90
+ /** Look up the contracts DB for a given fork ID, throwing if not registered. */ getFork(forkId) {
91
+ const fork = this.forks.get(forkId);
92
+ if (!fork) {
93
+ const registered = Array.from(this.forks.keys()).sort((a, b)=>a - b);
94
+ throw new Error(`CDB server: no contracts DB registered for forkId ${forkId} (registered=[${registered.join(',')}])`);
95
+ }
96
+ return fork;
97
+ }
98
+ async getContractInstance(command) {
99
+ const { db, timestamp } = this.getFork(command.forkId);
100
+ const address = AztecAddress.fromBuffer(Buffer.from(command.address));
101
+ const instance = await db.getContractInstance(address, timestamp);
102
+ return {
103
+ instance: instance ? encoder.encode(serializeContractInstance(instance)) : null
104
+ };
105
+ }
106
+ async getContractClass(command) {
107
+ const { db } = this.getFork(command.forkId);
108
+ const classId = Fr.fromBuffer(Buffer.from(command.classId));
109
+ const contractClass = await db.getContractClass(classId);
110
+ return {
111
+ contractClass: contractClass ? encoder.encode(serializeContractClass(contractClass)) : null
112
+ };
113
+ }
114
+ async getBytecodeCommitment(command) {
115
+ const { db } = this.getFork(command.forkId);
116
+ const classId = Fr.fromBuffer(Buffer.from(command.classId));
117
+ const commitment = await db.getBytecodeCommitment(classId);
118
+ return {
119
+ commitment: commitment ? toFieldBuffer(commitment) : null
120
+ };
121
+ }
122
+ async getDebugFunctionName(command) {
123
+ const { db } = this.getFork(command.forkId);
124
+ const address = AztecAddress.fromBuffer(Buffer.from(command.address));
125
+ const selectorField = Fr.fromBuffer(Buffer.from(command.selector));
126
+ const selector = FunctionSelector.fromFieldOrUndefined(selectorField);
127
+ const name = selector ? await db.getDebugFunctionName(address, selector) : undefined;
128
+ return {
129
+ name: name ?? null
130
+ };
131
+ }
132
+ addContracts(command) {
133
+ const { db } = this.getFork(command.forkId);
134
+ const contractDeploymentData = ContractDeploymentData.fromPlainObject(decoder.decode(command.contractDeploymentData));
135
+ db.addContractsFromLogs(contractDeploymentData);
136
+ return Promise.resolve({});
137
+ }
138
+ createCheckpoint(command) {
139
+ const { db } = this.getFork(command.forkId);
140
+ db.createCheckpoint();
141
+ return Promise.resolve({});
142
+ }
143
+ commitCheckpoint(command) {
144
+ const { db } = this.getFork(command.forkId);
145
+ db.commitCheckpoint();
146
+ return Promise.resolve({});
147
+ }
148
+ revertCheckpoint(command) {
149
+ const { db } = this.getFork(command.forkId);
150
+ db.revertCheckpoint();
151
+ return Promise.resolve({});
152
+ }
153
+ }
@@ -1,4 +1,4 @@
1
- import type { Fr } from '@aztec/foundation/fields';
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
3
3
  import type { ContractClassPublic, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
4
4
  export declare class ContractsDbCheckpoint {
@@ -11,6 +11,6 @@ export declare class ContractsDbCheckpoint {
11
11
  getInstance(address: AztecAddress): ContractInstanceWithAddress | undefined;
12
12
  getClass(classId: Fr): ContractClassPublic | undefined;
13
13
  getBytecodeCommitment(classId: Fr): Fr | undefined;
14
- deepCopy(): ContractsDbCheckpoint;
14
+ fork(): ContractsDbCheckpoint;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RzX2RiX2NoZWNrcG9pbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvY29udHJhY3RzX2RiX2NoZWNrcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRixxQkFBYSxxQkFBcUI7SUFDaEMsT0FBTyxDQUFDLFNBQVMsQ0FBdUQ7SUFDeEUsT0FBTyxDQUFDLE9BQU8sQ0FBK0M7SUFDOUQsT0FBTyxDQUFDLG1CQUFtQixDQUE4QjtJQUVsRCxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsMkJBQTJCLEdBQUcsSUFBSSxDQUVyRjtJQUVNLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsR0FBRyxJQUFJLENBRXJFO0lBRU0scUJBQXFCLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FFOUQ7SUFFTSxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksR0FBRywyQkFBMkIsR0FBRyxTQUFTLENBRWpGO0lBRU0sUUFBUSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsbUJBQW1CLEdBQUcsU0FBUyxDQUU1RDtJQUVNLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FFeEQ7SUFFTSxRQUFRLElBQUkscUJBQXFCLENBTXZDO0NBQ0YifQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RzX2RiX2NoZWNrcG9pbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvY29udHJhY3RzX2RiX2NoZWNrcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRixxQkFBYSxxQkFBcUI7SUFDaEMsT0FBTyxDQUFDLFNBQVMsQ0FBdUQ7SUFDeEUsT0FBTyxDQUFDLE9BQU8sQ0FBK0M7SUFDOUQsT0FBTyxDQUFDLG1CQUFtQixDQUE4QjtJQUVsRCxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsMkJBQTJCLEdBQUcsSUFBSSxDQUVyRjtJQUVNLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsR0FBRyxJQUFJLENBRXJFO0lBRU0scUJBQXFCLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FFOUQ7SUFFTSxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksR0FBRywyQkFBMkIsR0FBRyxTQUFTLENBRWpGO0lBRU0sUUFBUSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsbUJBQW1CLEdBQUcsU0FBUyxDQUU1RDtJQUVNLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FFeEQ7SUFFTSxJQUFJLElBQUkscUJBQXFCLENBTW5DO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"contracts_db_checkpoint.d.ts","sourceRoot":"","sources":["../../src/public/contracts_db_checkpoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE/F,qBAAa,qBAAqB;IAChC,OAAO,CAAC,SAAS,CAAuD;IACxE,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,mBAAmB,CAA8B;IAElD,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAErF;IAEM,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAErE;IAEM,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,IAAI,CAE9D;IAEM,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,2BAA2B,GAAG,SAAS,CAEjF;IAEM,QAAQ,CAAC,OAAO,EAAE,EAAE,GAAG,mBAAmB,GAAG,SAAS,CAE5D;IAEM,qBAAqB,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,CAExD;IAEM,QAAQ,IAAI,qBAAqB,CAMvC;CACF"}
1
+ {"version":3,"file":"contracts_db_checkpoint.d.ts","sourceRoot":"","sources":["../../src/public/contracts_db_checkpoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE/F,qBAAa,qBAAqB;IAChC,OAAO,CAAC,SAAS,CAAuD;IACxE,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,mBAAmB,CAA8B;IAElD,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAErF;IAEM,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAErE;IAEM,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,IAAI,CAE9D;IAEM,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,2BAA2B,GAAG,SAAS,CAEjF;IAEM,QAAQ,CAAC,OAAO,EAAE,EAAE,GAAG,mBAAmB,GAAG,SAAS,CAE5D;IAEM,qBAAqB,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,CAExD;IAEM,IAAI,IAAI,qBAAqB,CAMnC;CACF"}
@@ -20,7 +20,7 @@ export class ContractsDbCheckpoint {
20
20
  getBytecodeCommitment(classId) {
21
21
  return this.bytecodeCommitments.get(classId.toString());
22
22
  }
23
- deepCopy() {
23
+ fork() {
24
24
  const copy = new ContractsDbCheckpoint();
25
25
  this.instances.forEach((value, key)=>copy.instances.set(key, value));
26
26
  this.classes.forEach((value, key)=>copy.classes.set(key, value));
@@ -1,4 +1,4 @@
1
- import type { Fr } from '@aztec/foundation/fields';
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { FunctionSelector } from '@aztec/stdlib/abi';
3
3
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
4
  import type { ContractClassPublic, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
@@ -65,4 +65,4 @@ export interface PublicContractsDBInterface {
65
65
  */
66
66
  revertCheckpoint(): void;
67
67
  }
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGJfaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9kYl9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sV0FBVyxzQkFBc0I7SUFDckM7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUUzRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Q0FDN0U7QUFFRDs7R0FFRztBQUNILE1BQU0sV0FBVywwQkFBMEI7SUFDekM7Ozs7O09BS0c7SUFDSCxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRWhIOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoRjs7OztPQUlHO0lBQ0gscUJBQXFCLENBQUMsZUFBZSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRXBFOzs7OztPQUtHO0lBQ0gsb0JBQW9CLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU3Rzs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztJQUV6Qjs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztJQUV6Qjs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztDQUMxQiJ9
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGJfaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9kYl9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sV0FBVyxzQkFBc0I7SUFDckM7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUUzRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Q0FDN0U7QUFFRDs7R0FFRztBQUNILE1BQU0sV0FBVywwQkFBMEI7SUFDekM7Ozs7O09BS0c7SUFDSCxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRWhIOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoRjs7OztPQUlHO0lBQ0gscUJBQXFCLENBQUMsZUFBZSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRXBFOzs7OztPQUtHO0lBQ0gsb0JBQW9CLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU3Rzs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztJQUV6Qjs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztJQUV6Qjs7T0FFRztJQUNILGdCQUFnQixJQUFJLElBQUksQ0FBQztDQUMxQiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"db_interfaces.d.ts","sourceRoot":"","sources":["../../src/public/db_interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;IAEhH;;;;OAIG;IACH,gBAAgB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAEhF;;;;OAIG;IACH,qBAAqB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAEpE;;;;;OAKG;IACH,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7G;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;CAC1B"}
1
+ {"version":3,"file":"db_interfaces.d.ts","sourceRoot":"","sources":["../../src/public/db_interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;IAEhH;;;;OAIG;IACH,gBAAgB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAEhF;;;;OAIG;IACH,qBAAqB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAEpE;;;;;OAKG;IACH,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7G;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;IAEzB;;OAEG;IACH,gBAAgB,IAAI,IAAI,CAAC;CAC1B"}
@@ -18,4 +18,4 @@ export declare class ExecutorMetrics implements ExecutorMetricsInterface {
18
18
  recordEnqueuedCallSimulationFailure(_fnName: string, _durationMs: number, _manaUsed: number, _totalInstructionsExecuted: number): void;
19
19
  recordPrivateEffectsInsertion(durationUs: number, type: 'revertible' | 'non-revertible'): void;
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3JfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9leGVjdXRvcl9tZXRyaWNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFJTCxLQUFLLGVBQWUsRUFDcEIsS0FBSyxNQUFNLEVBR1osTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWhGLHFCQUFhLGVBQWdCLFlBQVcsd0JBQXdCO0lBQzlELFNBQWdCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBZ0I7SUFDL0IsT0FBTyxDQUFDLFVBQVUsQ0FBWTtJQUM5QixPQUFPLENBQUMsYUFBYSxDQUFZO0lBQ2pDLE9BQU8sQ0FBQyxRQUFRLENBQVk7SUFDNUIsT0FBTyxDQUFDLHlCQUF5QixDQUFZO0lBQzdDLE9BQU8sQ0FBQyxTQUFTLENBQVk7SUFDN0IsT0FBTyxDQUFDLHdCQUF3QixDQUFZO0lBRTVDLFlBQVksTUFBTSxFQUFFLGVBQWUsRUFBRSxJQUFJLFNBQW1CLEVBMkMzRDtJQUVELDBCQUEwQixDQUFDLFFBQVEsRUFBRSxNQUFNLFFBRTFDO0lBRUQseUJBQXlCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLEVBQUUsVUFBVSxRQUV6RjtJQUVELDRCQUE0QixDQUMxQixNQUFNLEVBQUUsTUFBTSxFQUNkLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLHlCQUF5QixFQUFFLE1BQU0sUUFxQmxDO0lBRUQsbUNBQW1DLENBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQ2YsV0FBVyxFQUFFLE1BQU0sRUFDbkIsU0FBUyxFQUFFLE1BQU0sRUFDakIsMEJBQTBCLEVBQUUsTUFBTSxRQUtuQztJQUVELDZCQUE2QixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVksR0FBRyxnQkFBZ0IsUUFJdEY7Q0FDRiJ9
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3JfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9leGVjdXRvcl9tZXRyaWNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFJTCxLQUFLLGVBQWUsRUFDcEIsS0FBSyxNQUFNLEVBR1osTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWhGLHFCQUFhLGVBQWdCLFlBQVcsd0JBQXdCO0lBQzlELFNBQWdCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBZ0I7SUFDL0IsT0FBTyxDQUFDLFVBQVUsQ0FBWTtJQUM5QixPQUFPLENBQUMsYUFBYSxDQUFZO0lBQ2pDLE9BQU8sQ0FBQyxRQUFRLENBQVk7SUFDNUIsT0FBTyxDQUFDLHlCQUF5QixDQUFZO0lBQzdDLE9BQU8sQ0FBQyxTQUFTLENBQVk7SUFDN0IsT0FBTyxDQUFDLHdCQUF3QixDQUFZO0lBRTVDLFlBQVksTUFBTSxFQUFFLGVBQWUsRUFBRSxJQUFJLFNBQW1CLEVBbUIzRDtJQUVELDBCQUEwQixDQUFDLFFBQVEsRUFBRSxNQUFNLFFBRTFDO0lBRUQseUJBQXlCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLEVBQUUsVUFBVSxRQUV6RjtJQUVELDRCQUE0QixDQUMxQixNQUFNLEVBQUUsTUFBTSxFQUNkLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLHlCQUF5QixFQUFFLE1BQU0sUUFxQmxDO0lBRUQsbUNBQW1DLENBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQ2YsV0FBVyxFQUFFLE1BQU0sRUFDbkIsU0FBUyxFQUFFLE1BQU0sRUFDakIsMEJBQTBCLEVBQUUsTUFBTSxRQUtuQztJQUVELDZCQUE2QixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVksR0FBRyxnQkFBZ0IsUUFJdEY7Q0FDRiJ9
@@ -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,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"}
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,EAmB3D;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"}
@@ -1,4 +1,4 @@
1
- import { Attributes, Metrics, ValueType } from '@aztec/telemetry-client';
1
+ import { Attributes, Metrics, createUpDownCounterWithDefault } from '@aztec/telemetry-client';
2
2
  export class ExecutorMetrics {
3
3
  tracer;
4
4
  fnCount;
@@ -11,39 +11,18 @@ export class ExecutorMetrics {
11
11
  constructor(client, name = 'PublicExecutor'){
12
12
  this.tracer = client.getTracer(name);
13
13
  const meter = client.getMeter(name);
14
- this.fnCount = meter.createUpDownCounter(Metrics.PUBLIC_EXECUTOR_SIMULATION_COUNT, {
15
- description: 'Number of functions executed'
16
- });
17
- this.fnDuration = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_DURATION, {
18
- description: 'How long it takes to execute a function',
19
- unit: 'ms',
20
- valueType: ValueType.INT
21
- });
22
- this.manaPerSecond = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_PER_SECOND, {
23
- description: 'Mana used per second',
24
- unit: 'mana/s',
25
- valueType: ValueType.INT
26
- });
27
- this.manaUsed = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_USED, {
28
- description: 'Total mana used',
29
- unit: 'mana',
30
- valueType: ValueType.INT
31
- });
32
- this.totalInstructionsExecuted = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_TOTAL_INSTRUCTIONS, {
33
- description: 'Total number of instructions executed',
34
- unit: '#instructions',
35
- valueType: ValueType.INT
36
- });
37
- this.txHashing = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_TX_HASHING, {
38
- description: 'Tx hashing time',
39
- unit: 'ms',
40
- valueType: ValueType.INT
41
- });
42
- this.privateEffectsInsertions = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_PRIVATE_EFFECTS_INSERTION, {
43
- description: 'Private effects insertion time',
44
- unit: 'us',
45
- valueType: ValueType.INT
14
+ this.fnCount = createUpDownCounterWithDefault(meter, Metrics.PUBLIC_EXECUTOR_SIMULATION_COUNT, {
15
+ [Attributes.OK]: [
16
+ true,
17
+ false
18
+ ]
46
19
  });
20
+ this.fnDuration = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_DURATION);
21
+ this.manaPerSecond = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_PER_SECOND);
22
+ this.manaUsed = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_USED);
23
+ this.totalInstructionsExecuted = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_TOTAL_INSTRUCTIONS);
24
+ this.txHashing = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_TX_HASHING);
25
+ this.privateEffectsInsertions = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_PRIVATE_EFFECTS_INSERTION);
47
26
  }
48
27
  startRecordingTxSimulation(_txLabel) {
49
28
  // do nothing (unimplemented)
@@ -1,6 +1,6 @@
1
- import { GeneratorIndex } from '@aztec/constants';
2
- import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
3
- import { Fr } from '@aztec/foundation/fields';
1
+ import { DomainSeparator } from '@aztec/constants';
2
+ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { Timer } from '@aztec/foundation/timer';
5
5
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
6
6
  import { setUpToken } from './token_test.js';
@@ -11,8 +11,8 @@ const INITIAL_TOKEN_BALANCE = 1_000_000_000n;
11
11
  * You do NOT need permission to remove this test!
12
12
  */ export async function ammTest(tester, logger, tokenArtifact, ammArtifact, expectToBeTrue) {
13
13
  const timer = new Timer();
14
- const admin = AztecAddress.fromNumber(42);
15
- const sender = AztecAddress.fromNumber(111);
14
+ const admin = AztecAddress.fromNumberUnsafe(42);
15
+ const sender = AztecAddress.fromNumberUnsafe(111);
16
16
  logger.debug(`Deploying tokens`);
17
17
  const token0 = await setUpToken(tester, tokenArtifact, admin, expectToBeTrue, /*seed=*/ 0);
18
18
  const token1 = await setUpToken(tester, tokenArtifact, admin, expectToBeTrue, /*seed=*/ 1);
@@ -209,5 +209,5 @@ async function computePartialNoteValidityCommitment(partialNote, completer) {
209
209
  return await poseidon2HashWithSeparator([
210
210
  partialNote.commitment,
211
211
  completer
212
- ], GeneratorIndex.PARTIAL_NOTE_VALIDITY_COMMITMENT);
212
+ ], DomainSeparator.PARTIAL_NOTE_VALIDITY_COMMITMENT);
213
213
  }
@@ -1,6 +1,6 @@
1
1
  import type { Logger } from '@aztec/foundation/log';
2
2
  import type { ContractArtifact } from '@aztec/stdlib/abi';
3
3
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
4
- export declare function bulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("../index.js").PublicTxResult>;
5
- export declare function megaBulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("../index.js").PublicTxResult>;
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsa190ZXN0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL2J1bGtfdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzFELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFLHdCQUFzQixRQUFRLENBQzVCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsaURBa0YxQztBQUVELHdCQUFzQixZQUFZLENBQ2hDLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsaURBc0UxQyJ9
4
+ export declare function bulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("@aztec/stdlib/avm").PublicTxResult>;
5
+ export declare function megaBulkTest(tester: PublicTxSimulationTester, logger: Logger, avmTestContractArtifact: ContractArtifact): Promise<import("@aztec/stdlib/avm").PublicTxResult>;
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsa190ZXN0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHVibGljL2ZpeHR1cmVzL2J1bGtfdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzFELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFLHdCQUFzQixRQUFRLENBQzVCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsdURBZ0cxQztBQUVELHdCQUFzQixZQUFZLENBQ2hDLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLE1BQU0sRUFDZCx1QkFBdUIsRUFBRSxnQkFBZ0IsdURBaUYxQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"bulk_test.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/bulk_test.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,uBAAuB,EAAE,gBAAgB,iDAkF1C;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,uBAAuB,EAAE,gBAAgB,iDAsE1C"}
1
+ {"version":3,"file":"bulk_test.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/bulk_test.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,uBAAuB,EAAE,gBAAgB,uDAgG1C;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,MAAM,EACd,uBAAuB,EAAE,gBAAgB,uDAiF1C"}
@@ -1,15 +1,16 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { Timer } from '@aztec/foundation/timer';
3
3
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
4
  export async function bulkTest(tester, logger, avmTestContractArtifact) {
5
5
  const timer = new Timer();
6
- const deployer = AztecAddress.fromNumber(42);
6
+ const deployer = AztecAddress.fromNumberUnsafe(42);
7
7
  const avmTestContract = await tester.registerAndDeployContract(/*constructorArgs=*/ [], deployer, avmTestContractArtifact);
8
8
  // Needed since we invoke the Fee Juice Contract in the bulk test.registerFeeJuiceContract
9
9
  await tester.registerFeeJuiceContract();
10
10
  // Register multiple different protocol contracts (to ensure we don't dedup bytecode hashing events):
11
11
  await tester.registerAuthContract();
12
12
  await tester.registerInstanceRegistryContract();
13
+ await tester.registerClassRegistryContract();
13
14
  // Get a deployed contract instance to pass to the contract
14
15
  // for it to use as "expected" values when testing contract instance retrieval.
15
16
  const expectContractInstance = avmTestContract;
@@ -33,10 +34,23 @@ export async function bulkTest(tester, logger, avmTestContractArtifact) {
33
34
  5,
34
35
  6,
35
36
  7,
36
- 8
37
+ 8,
38
+ 9,
39
+ 10
37
40
  ].map((x)=>new Fr(x));
38
- argsU8.push(new Fr(2n ** 128n + 9n)); // Trigger truncation from large (> 128 bits) value (canonical decomposition event)
39
- argsU8.push(new Fr(2n ** 125n + 10n)); // Trigger truncation from small (< 128 bits) value (no canonical decomposition event)
41
+ // Pinned grumpkin-Poseidon2 Schnorr signature (mirrors the C++ `pinned_test_vector_large`
42
+ // and noir-lang/schnorr v0.4.0's `pinned_vector_large`). Passing these in as calldata
43
+ // (rather than baking them into Noir as constants) keeps MSM + Poseidon2 from being folded
44
+ // by the Noir compiler.
45
+ const schnorrInputs = [
46
+ Fr.fromHexString('0x065812e335a97c2108ea8cf4ccfe2f9dd6b117a0714f5e18461575be93f61da6'),
47
+ Fr.fromHexString('0x1a915003e8ec534f9a15d926a7ded478e178468ccc4f28e236e67450a55ac622'),
48
+ Fr.fromHexString('0xf3bc3b7147acb9c621fd9f72dbf15ffa'),
49
+ Fr.fromHexString('0x08599f379f0301dfefdbd0272554454d'),
50
+ Fr.fromHexString('0x97065383ebbbd76620398792bd259bc2'),
51
+ Fr.fromHexString('0x2ceaee87f45b7a417f0ffb05451a8c92'),
52
+ Fr.fromHexString('0x0123456789abcdef0fedcba9876543210123456789abcdef0fedcba987654321')
53
+ ];
40
54
  const args = [
41
55
  argsField,
42
56
  argsU8,
@@ -44,6 +58,8 @@ export async function bulkTest(tester, logger, avmTestContractArtifact) {
44
58
  /*expectedDeployer=*/ expectContractInstance.deployer,
45
59
  /*expectedClassId=*/ expectContractInstance.currentContractClassId,
46
60
  /*expectedInitializationHash=*/ expectContractInstance.initializationHash,
61
+ /*expectedImmutablesHash=*/ expectContractInstance.immutablesHash,
62
+ /*schnorrInputs=*/ schnorrInputs,
47
63
  /*skip_strictly_limited_side_effects=*/ false
48
64
  ];
49
65
  const bulkResult = await tester.executeTxWithLabel(/*txLabel=*/ 'AvmTest/bulk_testing', /*sender=*/ deployer, /*setupCalls=*/ [], /*appCalls=*/ [
@@ -67,7 +83,7 @@ export async function bulkTest(tester, logger, avmTestContractArtifact) {
67
83
  address: avmTestContract.address,
68
84
  fnName: 'assert_calldata_copy',
69
85
  args: [
70
- argsField.slice(3),
86
+ argsField.slice(0, 3),
71
87
  /* with_selector: */ true
72
88
  ]
73
89
  },
@@ -120,7 +136,7 @@ export async function bulkTest(tester, logger, avmTestContractArtifact) {
120
136
  }
121
137
  export async function megaBulkTest(tester, logger, avmTestContractArtifact) {
122
138
  const timer = new Timer();
123
- const deployer = AztecAddress.fromNumber(42);
139
+ const deployer = AztecAddress.fromNumberUnsafe(42);
124
140
  const avmTestContract = await tester.registerAndDeployContract(/*constructorArgs=*/ [], deployer, avmTestContractArtifact);
125
141
  // Needed since we invoke the Fee Juice Contract in the bulk test.registerFeeJuiceContract
126
142
  await tester.registerFeeJuiceContract();
@@ -187,54 +203,10 @@ export async function megaBulkTest(tester, logger, avmTestContractArtifact) {
187
203
  9,
188
204
  10
189
205
  ].map((x)=>new Fr(x));
190
- const argsField5 = [
191
- 11,
192
- 2,
193
- 3,
194
- 4,
195
- 5,
196
- 6,
197
- 7,
198
- 8,
199
- 9,
200
- 10
201
- ].map((x)=>new Fr(x));
202
- const argsField6 = [
203
- 13,
204
- 2,
205
- 3,
206
- 4,
207
- 5,
208
- 6,
209
- 7,
210
- 8,
211
- 9,
212
- 10
213
- ].map((x)=>new Fr(x));
214
- const argsField7 = [
215
- 15,
216
- 2,
217
- 3,
218
- 4,
219
- 5,
220
- 6,
221
- 7,
222
- 8,
223
- 9,
224
- 10
225
- ].map((x)=>new Fr(x));
226
- const argsField8 = [
227
- 17,
228
- 2,
229
- 3,
230
- 4,
231
- 5,
232
- 6,
233
- 7,
234
- 8,
235
- 9,
236
- 10
237
- ].map((x)=>new Fr(x));
206
+ //const argsField5 = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(x => new Fr(x));
207
+ //const argsField6 = [13, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(x => new Fr(x));
208
+ //const argsField7 = [15, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(x => new Fr(x));
209
+ //const argsField8 = [17, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(x => new Fr(x));
238
210
  const argsU8 = [
239
211
  1,
240
212
  2,
@@ -247,6 +219,15 @@ export async function megaBulkTest(tester, logger, avmTestContractArtifact) {
247
219
  9,
248
220
  10
249
221
  ].map((x)=>new Fr(x));
222
+ const schnorrInputs = [
223
+ Fr.fromHexString('0x065812e335a97c2108ea8cf4ccfe2f9dd6b117a0714f5e18461575be93f61da6'),
224
+ Fr.fromHexString('0x1a915003e8ec534f9a15d926a7ded478e178468ccc4f28e236e67450a55ac622'),
225
+ Fr.fromHexString('0xf3bc3b7147acb9c621fd9f72dbf15ffa'),
226
+ Fr.fromHexString('0x08599f379f0301dfefdbd0272554454d'),
227
+ Fr.fromHexString('0x97065383ebbbd76620398792bd259bc2'),
228
+ Fr.fromHexString('0x2ceaee87f45b7a417f0ffb05451a8c92'),
229
+ Fr.fromHexString('0x0123456789abcdef0fedcba9876543210123456789abcdef0fedcba987654321')
230
+ ];
250
231
  const genArgs = (argsField)=>[
251
232
  argsField,
252
233
  argsU8,
@@ -254,6 +235,8 @@ export async function megaBulkTest(tester, logger, avmTestContractArtifact) {
254
235
  /*expectedDeployer=*/ expectContractInstance.deployer.toField(),
255
236
  /*expectedClassId=*/ expectContractInstance.currentContractClassId.toField(),
256
237
  /*expectedInitializationHash=*/ expectContractInstance.initializationHash.toField(),
238
+ /*expectedImmutablesHash=*/ expectContractInstance.immutablesHash.toField(),
239
+ /*schnorrInputs=*/ schnorrInputs,
257
240
  // Must skip strictly limited side effects (logs, messages) so we can spam the bulk test several times.
258
241
  /*skip_strictly_limited_side_effects=*/ true
259
242
  ];
@@ -282,26 +265,6 @@ export async function megaBulkTest(tester, logger, avmTestContractArtifact) {
282
265
  address: avmTestContract.address,
283
266
  fnName: 'bulk_testing',
284
267
  args: genArgs(argsField4)
285
- },
286
- {
287
- address: avmTestContract.address,
288
- fnName: 'bulk_testing',
289
- args: genArgs(argsField5)
290
- },
291
- {
292
- address: avmTestContract.address,
293
- fnName: 'bulk_testing',
294
- args: genArgs(argsField6)
295
- },
296
- {
297
- address: avmTestContract.address,
298
- fnName: 'bulk_testing',
299
- args: genArgs(argsField7)
300
- },
301
- {
302
- address: avmTestContract.address,
303
- fnName: 'bulk_testing',
304
- args: genArgs(argsField8)
305
268
  }
306
269
  ], /*teardownCall=*/ undefined, /*feePayer*/ undefined, /*privateInsertions=*/ {
307
270
  nonRevertible: {
@@ -1,12 +1,34 @@
1
1
  import type { PublicTxResult } from '@aztec/stdlib/avm';
2
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
3
+ import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
2
4
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
3
5
  /**
4
- *
5
- * Test custom bytecode (simulation or proving) with the provided bytecode.
6
+ * Deploy a contract with the provided bytecode.
6
7
  * @param bytecode - The bytecode buffer to use
7
- * @param tester - The tester to use (simulation or proving)
8
+ * @param tester - The tester to use
9
+ * @param contractName - The name of the contract
10
+ * @param deployer - The deployer address
11
+ * @returns The deployed contract instance
12
+ */
13
+ export declare function deployCustomBytecode(bytecode: Buffer, tester: PublicTxSimulationTester, contractName?: string, deployer?: AztecAddress): Promise<ContractInstanceWithAddress>;
14
+ /**
15
+ * Execute a custom bytecode contract.
16
+ * @param contract - The contract instance to execute
17
+ * @param tester - The tester to use
18
+ * @param txLabel - The label of the transaction
19
+ * @param calldata - The calldata to use
20
+ * @returns The execution result
21
+ */
22
+ export declare function executeCustomBytecode(contract: ContractInstanceWithAddress, tester: PublicTxSimulationTester, txLabel?: string, calldata?: any[]): Promise<PublicTxResult>;
23
+ /**
24
+ * Deploy and execute a custom bytecode contract.
25
+ * @param bytecode - The bytecode buffer to use
26
+ * @param tester - The tester to use
8
27
  * @param txLabel - The label of the transaction
9
- * @param contractName - The name of the contract (default: 'CustomBytecodeContract')
28
+ * @param contractName - The name of the contract
29
+ * @param deployer - The deployer address
30
+ * @param calldata - The calldata to use
31
+ * @returns The execution result
10
32
  */
11
- export declare function testCustomBytecode(bytecode: Buffer, tester: PublicTxSimulationTester, txLabel: string, contractName?: string): Promise<PublicTxResult>;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tX2J5dGVjb2RlX3Rlc3Rlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9maXh0dXJlcy9jdXN0b21fYnl0ZWNvZGVfdGVzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isa0JBQWtCLENBQ3RDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsT0FBTyxFQUFFLE1BQU0sRUFDZixZQUFZLEdBQUUsTUFBaUMsR0FDOUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQTZCekIifQ==
33
+ export declare function deployAndExecuteCustomBytecode(bytecode: Buffer, tester: PublicTxSimulationTester, txLabel?: string, contractName?: string, deployer?: AztecAddress, calldata?: any[]): Promise<PublicTxResult>;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tX2J5dGVjb2RlX3Rlc3Rlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9maXh0dXJlcy9jdXN0b21fYnl0ZWNvZGVfdGVzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0Isb0JBQW9CLENBQ3hDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsWUFBWSxHQUFFLE1BQWlDLEVBQy9DLFFBQVEsR0FBRSxZQUFnRCxHQUN6RCxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FpQnRDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFzQixxQkFBcUIsQ0FDekMsUUFBUSxFQUFFLDJCQUEyQixFQUNyQyxNQUFNLEVBQUUsd0JBQXdCLEVBQ2hDLE9BQU8sR0FBRSxNQUE2QixFQUN0QyxRQUFRLEdBQUUsR0FBRyxFQUFPLEdBQ25CLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FRekI7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0IsOEJBQThCLENBQ2xELFFBQVEsRUFBRSxNQUFNLEVBQ2hCLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsT0FBTyxHQUFFLE1BQTZCLEVBQ3RDLFlBQVksR0FBRSxNQUFpQyxFQUMvQyxRQUFRLEdBQUUsWUFBZ0QsRUFDMUQsUUFBUSxHQUFFLEdBQUcsRUFBTyxHQUNuQixPQUFPLENBQUMsY0FBYyxDQUFDLENBR3pCIn0=
@@ -1 +1 @@
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"}
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;AACxD,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;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,wBAAwB,EAChC,YAAY,GAAE,MAAiC,EAC/C,QAAQ,GAAE,YAAgD,GACzD,OAAO,CAAC,2BAA2B,CAAC,CAiBtC;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,2BAA2B,EACrC,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,MAA6B,EACtC,QAAQ,GAAE,GAAG,EAAO,GACnB,OAAO,CAAC,cAAc,CAAC,CAQzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,MAA6B,EACtC,YAAY,GAAE,MAAiC,EAC/C,QAAQ,GAAE,YAAgD,EAC1D,QAAQ,GAAE,GAAG,EAAO,GACnB,OAAO,CAAC,cAAc,CAAC,CAGzB"}