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

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 (273) hide show
  1. package/README.md +2 -0
  2. package/dest/common/errors.d.ts +8 -2
  3. package/dest/common/errors.d.ts.map +1 -1
  4. package/dest/private/acvm/deserialize.d.ts +2 -2
  5. package/dest/private/acvm/deserialize.d.ts.map +1 -1
  6. package/dest/private/acvm/deserialize.js +1 -1
  7. package/dest/private/acvm/serialize.d.ts +2 -2
  8. package/dest/private/acvm/serialize.d.ts.map +1 -1
  9. package/dest/private/acvm/serialize.js +1 -1
  10. package/dest/private/circuit_recording/circuit_recorder.d.ts +1 -1
  11. package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
  12. package/dest/private/circuit_recording/circuit_recorder.js +16 -15
  13. package/dest/public/avm/avm_context.d.ts +2 -2
  14. package/dest/public/avm/avm_context.d.ts.map +1 -1
  15. package/dest/public/avm/avm_contract_call_result.d.ts +2 -2
  16. package/dest/public/avm/avm_contract_call_result.d.ts.map +1 -1
  17. package/dest/public/avm/avm_execution_environment.d.ts +2 -2
  18. package/dest/public/avm/avm_execution_environment.d.ts.map +1 -1
  19. package/dest/public/avm/avm_execution_environment.js +1 -1
  20. package/dest/public/avm/avm_gas.d.ts +1 -1
  21. package/dest/public/avm/avm_gas.d.ts.map +1 -1
  22. package/dest/public/avm/avm_machine_state.d.ts +2 -2
  23. package/dest/public/avm/avm_machine_state.d.ts.map +1 -1
  24. package/dest/public/avm/avm_memory_types.d.ts +2 -2
  25. package/dest/public/avm/avm_memory_types.d.ts.map +1 -1
  26. package/dest/public/avm/avm_memory_types.js +4 -1
  27. package/dest/public/avm/avm_simulator.d.ts +2 -2
  28. package/dest/public/avm/avm_simulator.d.ts.map +1 -1
  29. package/dest/public/avm/avm_simulator.js +1 -1
  30. package/dest/public/avm/errors.d.ts +2 -2
  31. package/dest/public/avm/errors.d.ts.map +1 -1
  32. package/dest/public/avm/fixtures/avm_simulation_tester.js +1 -1
  33. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts +2 -2
  34. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +1 -1
  35. package/dest/public/avm/fixtures/base_avm_simulation_tester.js +1 -1
  36. package/dest/public/avm/fixtures/initializers.d.ts +2 -2
  37. package/dest/public/avm/fixtures/initializers.d.ts.map +1 -1
  38. package/dest/public/avm/fixtures/initializers.js +1 -1
  39. package/dest/public/avm/fixtures/utils.d.ts +2 -2
  40. package/dest/public/avm/fixtures/utils.d.ts.map +1 -1
  41. package/dest/public/avm/fixtures/utils.js +1 -1
  42. package/dest/public/avm/opcodes/accrued_substate.d.ts +15 -15
  43. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
  44. package/dest/public/avm/opcodes/accrued_substate.js +29 -29
  45. package/dest/public/avm/opcodes/arithmetic.d.ts +10 -8
  46. package/dest/public/avm/opcodes/arithmetic.d.ts.map +1 -1
  47. package/dest/public/avm/opcodes/arithmetic.js +12 -2
  48. package/dest/public/avm/opcodes/bitwise.d.ts +7 -7
  49. package/dest/public/avm/opcodes/bitwise.d.ts.map +1 -1
  50. package/dest/public/avm/opcodes/bitwise.js +5 -5
  51. package/dest/public/avm/opcodes/comparators.d.ts +4 -4
  52. package/dest/public/avm/opcodes/comparators.d.ts.map +1 -1
  53. package/dest/public/avm/opcodes/comparators.js +1 -1
  54. package/dest/public/avm/opcodes/contract.d.ts +3 -3
  55. package/dest/public/avm/opcodes/contract.d.ts.map +1 -1
  56. package/dest/public/avm/opcodes/contract.js +8 -8
  57. package/dest/public/avm/opcodes/control_flow.d.ts +3 -3
  58. package/dest/public/avm/opcodes/control_flow.d.ts.map +1 -1
  59. package/dest/public/avm/opcodes/control_flow.js +4 -4
  60. package/dest/public/avm/opcodes/conversion.d.ts +3 -3
  61. package/dest/public/avm/opcodes/conversion.d.ts.map +1 -1
  62. package/dest/public/avm/opcodes/conversion.js +4 -4
  63. package/dest/public/avm/opcodes/ec_add.d.ts +4 -4
  64. package/dest/public/avm/opcodes/ec_add.d.ts.map +1 -1
  65. package/dest/public/avm/opcodes/ec_add.js +17 -8
  66. package/dest/public/avm/opcodes/environment_getters.d.ts +5 -5
  67. package/dest/public/avm/opcodes/environment_getters.d.ts.map +1 -1
  68. package/dest/public/avm/opcodes/environment_getters.js +6 -6
  69. package/dest/public/avm/opcodes/external_calls.d.ts +9 -9
  70. package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
  71. package/dest/public/avm/opcodes/external_calls.js +17 -16
  72. package/dest/public/avm/opcodes/hashing.d.ts +8 -8
  73. package/dest/public/avm/opcodes/hashing.d.ts.map +1 -1
  74. package/dest/public/avm/opcodes/hashing.js +21 -16
  75. package/dest/public/avm/opcodes/instruction_impl.d.ts +4 -4
  76. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +1 -1
  77. package/dest/public/avm/opcodes/instruction_impl.js +4 -4
  78. package/dest/public/avm/opcodes/memory.d.ts +14 -14
  79. package/dest/public/avm/opcodes/memory.d.ts.map +1 -1
  80. package/dest/public/avm/opcodes/memory.js +25 -25
  81. package/dest/public/avm/opcodes/misc.d.ts +3 -3
  82. package/dest/public/avm/opcodes/misc.d.ts.map +1 -1
  83. package/dest/public/avm/opcodes/misc.js +4 -4
  84. package/dest/public/avm/opcodes/storage.d.ts +16 -15
  85. package/dest/public/avm/opcodes/storage.d.ts.map +1 -1
  86. package/dest/public/avm/opcodes/storage.js +34 -24
  87. package/dest/public/avm/revert_reason.d.ts +2 -2
  88. package/dest/public/avm/revert_reason.d.ts.map +1 -1
  89. package/dest/public/avm/serialization/instruction_serialization.js +1 -1
  90. package/dest/public/avm/test_utils.d.ts +2 -2
  91. package/dest/public/avm/test_utils.d.ts.map +1 -1
  92. package/dest/public/avm/test_utils.js +1 -1
  93. package/dest/public/contracts_db_checkpoint.d.ts +2 -2
  94. package/dest/public/contracts_db_checkpoint.d.ts.map +1 -1
  95. package/dest/public/db_interfaces.d.ts +2 -2
  96. package/dest/public/db_interfaces.d.ts.map +1 -1
  97. package/dest/public/debug_fn_name.d.ts +2 -2
  98. package/dest/public/debug_fn_name.d.ts.map +1 -1
  99. package/dest/public/debug_fn_name.js +10 -3
  100. package/dest/public/executor_metrics.d.ts +1 -1
  101. package/dest/public/executor_metrics.d.ts.map +1 -1
  102. package/dest/public/executor_metrics.js +8 -34
  103. package/dest/public/fixtures/amm_test.js +2 -2
  104. package/dest/public/fixtures/bulk_test.d.ts +3 -3
  105. package/dest/public/fixtures/bulk_test.d.ts.map +1 -1
  106. package/dest/public/fixtures/bulk_test.js +5 -69
  107. package/dest/public/fixtures/custom_bytecode_tester.d.ts +28 -6
  108. package/dest/public/fixtures/custom_bytecode_tester.d.ts.map +1 -1
  109. package/dest/public/fixtures/custom_bytecode_tester.js +36 -12
  110. package/dest/public/fixtures/custom_bytecode_tests.d.ts +11 -8
  111. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +1 -1
  112. package/dest/public/fixtures/custom_bytecode_tests.js +83 -18
  113. package/dest/public/fixtures/index.d.ts +4 -2
  114. package/dest/public/fixtures/index.d.ts.map +1 -1
  115. package/dest/public/fixtures/index.js +3 -1
  116. package/dest/public/fixtures/minimal_public_tx.d.ts +2 -7
  117. package/dest/public/fixtures/minimal_public_tx.d.ts.map +1 -1
  118. package/dest/public/fixtures/minimal_public_tx.js +4 -14
  119. package/dest/public/fixtures/opcode_spammer.d.ts +123 -0
  120. package/dest/public/fixtures/opcode_spammer.d.ts.map +1 -0
  121. package/dest/public/fixtures/opcode_spammer.js +1693 -0
  122. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +15 -2
  123. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  124. package/dest/public/fixtures/public_tx_simulation_tester.js +36 -8
  125. package/dest/public/fixtures/simple_contract_data_source.d.ts +2 -2
  126. package/dest/public/fixtures/simple_contract_data_source.d.ts.map +1 -1
  127. package/dest/public/fixtures/token_test.js +1 -1
  128. package/dest/public/fixtures/utils.d.ts +2 -2
  129. package/dest/public/fixtures/utils.d.ts.map +1 -1
  130. package/dest/public/fixtures/utils.js +4 -3
  131. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +60 -0
  132. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -0
  133. package/dest/public/fuzzing/avm_fuzzer_simulator.js +171 -0
  134. package/dest/public/fuzzing/avm_simulator_bin.d.ts +2 -0
  135. package/dest/public/fuzzing/avm_simulator_bin.d.ts.map +1 -0
  136. package/dest/public/fuzzing/avm_simulator_bin.js +118 -0
  137. package/dest/public/hinting_db_sources.d.ts +3 -2
  138. package/dest/public/hinting_db_sources.d.ts.map +1 -1
  139. package/dest/public/hinting_db_sources.js +7 -2
  140. package/dest/public/index.d.ts +2 -2
  141. package/dest/public/index.d.ts.map +1 -1
  142. package/dest/public/index.js +1 -1
  143. package/dest/public/public_db_sources.d.ts +2 -2
  144. package/dest/public/public_db_sources.d.ts.map +1 -1
  145. package/dest/public/public_db_sources.js +1 -1
  146. package/dest/public/public_processor/guarded_merkle_tree.d.ts +2 -1
  147. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  148. package/dest/public/public_processor/guarded_merkle_tree.js +5 -0
  149. package/dest/public/public_processor/public_processor.d.ts +3 -3
  150. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  151. package/dest/public/public_processor/public_processor.js +425 -32
  152. package/dest/public/public_processor/public_processor_metrics.d.ts +1 -1
  153. package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
  154. package/dest/public/public_processor/public_processor_metrics.js +12 -45
  155. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +1 -13
  156. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +1 -1
  157. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +18 -53
  158. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +16 -1
  159. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +1 -1
  160. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +42 -3
  161. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +1 -1
  162. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +1 -1
  163. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +7 -6
  164. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +22 -0
  165. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +1 -0
  166. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.js +52 -0
  167. package/dest/public/public_tx_simulator/factories.d.ts +13 -0
  168. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -0
  169. package/dest/public/public_tx_simulator/factories.js +28 -0
  170. package/dest/public/public_tx_simulator/index.d.ts +3 -1
  171. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  172. package/dest/public/public_tx_simulator/index.js +2 -0
  173. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +3 -3
  174. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +1 -1
  175. package/dest/public/public_tx_simulator/public_tx_context.d.ts +2 -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 +1 -1
  178. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +5 -4
  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 +10 -6
  181. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +24 -1
  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 +2 -2
  184. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +1 -1
  185. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +395 -19
  186. package/dest/public/side_effect_trace.d.ts +3 -2
  187. package/dest/public/side_effect_trace.d.ts.map +1 -1
  188. package/dest/public/side_effect_trace.js +1 -1
  189. package/dest/public/side_effect_trace_interface.d.ts +2 -2
  190. package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
  191. package/dest/public/state_manager/nullifiers.d.ts +2 -2
  192. package/dest/public/state_manager/nullifiers.d.ts.map +1 -1
  193. package/dest/public/state_manager/public_storage.d.ts +2 -2
  194. package/dest/public/state_manager/public_storage.d.ts.map +1 -1
  195. package/dest/public/state_manager/public_storage.js +1 -1
  196. package/dest/public/state_manager/state_manager.d.ts +2 -2
  197. package/dest/public/state_manager/state_manager.d.ts.map +1 -1
  198. package/dest/public/state_manager/state_manager.js +3 -3
  199. package/package.json +18 -18
  200. package/src/common/errors.ts +1 -1
  201. package/src/private/acvm/deserialize.ts +1 -1
  202. package/src/private/acvm/serialize.ts +1 -1
  203. package/src/private/circuit_recording/circuit_recorder.ts +17 -16
  204. package/src/public/avm/avm_context.ts +1 -1
  205. package/src/public/avm/avm_contract_call_result.ts +1 -1
  206. package/src/public/avm/avm_execution_environment.ts +1 -1
  207. package/src/public/avm/avm_gas.ts +3 -3
  208. package/src/public/avm/avm_machine_state.ts +1 -1
  209. package/src/public/avm/avm_memory_types.ts +5 -1
  210. package/src/public/avm/avm_simulator.ts +1 -1
  211. package/src/public/avm/errors.ts +1 -1
  212. package/src/public/avm/fixtures/avm_simulation_tester.ts +1 -1
  213. package/src/public/avm/fixtures/base_avm_simulation_tester.ts +1 -1
  214. package/src/public/avm/fixtures/initializers.ts +1 -1
  215. package/src/public/avm/fixtures/utils.ts +1 -1
  216. package/src/public/avm/opcodes/accrued_substate.ts +15 -15
  217. package/src/public/avm/opcodes/arithmetic.ts +14 -2
  218. package/src/public/avm/opcodes/bitwise.ts +3 -3
  219. package/src/public/avm/opcodes/comparators.ts +1 -1
  220. package/src/public/avm/opcodes/contract.ts +4 -7
  221. package/src/public/avm/opcodes/control_flow.ts +2 -2
  222. package/src/public/avm/opcodes/conversion.ts +3 -3
  223. package/src/public/avm/opcodes/ec_add.ts +15 -6
  224. package/src/public/avm/opcodes/environment_getters.ts +7 -7
  225. package/src/public/avm/opcodes/external_calls.ts +10 -9
  226. package/src/public/avm/opcodes/hashing.ts +16 -10
  227. package/src/public/avm/opcodes/instruction_impl.ts +2 -2
  228. package/src/public/avm/opcodes/memory.ts +19 -19
  229. package/src/public/avm/opcodes/misc.ts +2 -2
  230. package/src/public/avm/opcodes/storage.ts +30 -22
  231. package/src/public/avm/revert_reason.ts +1 -1
  232. package/src/public/avm/serialization/instruction_serialization.ts +1 -1
  233. package/src/public/avm/test_utils.ts +1 -1
  234. package/src/public/contracts_db_checkpoint.ts +1 -1
  235. package/src/public/db_interfaces.ts +1 -1
  236. package/src/public/debug_fn_name.ts +11 -4
  237. package/src/public/executor_metrics.ts +7 -34
  238. package/src/public/fixtures/amm_test.ts +2 -2
  239. package/src/public/fixtures/bulk_test.ts +9 -9
  240. package/src/public/fixtures/custom_bytecode_tester.ts +53 -19
  241. package/src/public/fixtures/custom_bytecode_tests.ts +111 -18
  242. package/src/public/fixtures/index.ts +7 -1
  243. package/src/public/fixtures/minimal_public_tx.ts +6 -15
  244. package/src/public/fixtures/opcode_spammer.ts +1754 -0
  245. package/src/public/fixtures/public_tx_simulation_tester.ts +40 -6
  246. package/src/public/fixtures/simple_contract_data_source.ts +1 -1
  247. package/src/public/fixtures/token_test.ts +1 -1
  248. package/src/public/fixtures/utils.ts +2 -3
  249. package/src/public/fuzzing/avm_fuzzer_simulator.ts +288 -0
  250. package/src/public/fuzzing/avm_simulator_bin.ts +175 -0
  251. package/src/public/hinting_db_sources.ts +6 -2
  252. package/src/public/index.ts +2 -0
  253. package/src/public/public_db_sources.ts +1 -1
  254. package/src/public/public_processor/guarded_merkle_tree.ts +4 -0
  255. package/src/public/public_processor/public_processor.ts +31 -14
  256. package/src/public/public_processor/public_processor_metrics.ts +11 -45
  257. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +19 -60
  258. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +56 -3
  259. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +1 -1
  260. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +7 -10
  261. package/src/public/public_tx_simulator/dumping_cpp_public_tx_simulator.ts +81 -0
  262. package/src/public/public_tx_simulator/factories.ts +41 -0
  263. package/src/public/public_tx_simulator/index.ts +2 -0
  264. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +1 -1
  265. package/src/public/public_tx_simulator/public_tx_context.ts +1 -1
  266. package/src/public/public_tx_simulator/public_tx_simulator.ts +18 -5
  267. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +23 -0
  268. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +1 -1
  269. package/src/public/side_effect_trace.ts +1 -1
  270. package/src/public/side_effect_trace_interface.ts +1 -1
  271. package/src/public/state_manager/nullifiers.ts +1 -1
  272. package/src/public/state_manager/public_storage.ts +1 -1
  273. package/src/public/state_manager/state_manager.ts +4 -18
@@ -1,35 +1,26 @@
1
- import { AvmCircuitInputs, type PublicTxResult } from '@aztec/stdlib/avm';
1
+ import type { PublicTxResult } from '@aztec/stdlib/avm';
2
2
  import { ProtocolContracts } from '@aztec/stdlib/tx';
3
3
 
4
- import avmMinimalCircuitInputsJson from '../../../artifacts/avm_minimal_inputs.json' with { type: 'json' };
5
4
  import { TypeTag } from '../avm/avm_memory_types.js';
6
5
  import { Add, Return, Set } from '../avm/opcodes/index.js';
7
6
  import { encodeToBytecode } from '../avm/serialization/bytecode_serialization.js';
8
7
  import { Opcode } from '../avm/serialization/instruction_serialization.js';
9
- import { testCustomBytecode } from './custom_bytecode_tester.js';
8
+ import { deployAndExecuteCustomBytecode } from './custom_bytecode_tester.js';
10
9
  import { PublicTxSimulationTester } from './public_tx_simulation_tester.js';
11
10
 
12
11
  export async function executeAvmMinimalPublicTx(tester: PublicTxSimulationTester): Promise<PublicTxResult> {
13
12
  const minimalBytecode = encodeToBytecode([
14
13
  new Set(/*indirect*/ 0, /*dstOffset*/ 0, TypeTag.UINT32, /*value*/ 1).as(Opcode.SET_8, Set.wireFormat8),
15
14
  new Set(/*indirect*/ 0, /*dstOffset*/ 1, TypeTag.UINT32, /*value*/ 2).as(Opcode.SET_8, Set.wireFormat8),
16
- new Add(/*indirect=*/ 0, /*aOffset=*/ 0, /*bOffset=*/ 1, /*dstOffset=*/ 2).as(Opcode.ADD_8, Add.wireFormat8),
17
- new Return(/*indirect=*/ 0, /*copySizeOffset=*/ 0, /*returnOffset=*/ 2),
15
+ new Add(/*addressing_mode=*/ 0, /*aOffset=*/ 0, /*bOffset=*/ 1, /*dstOffset=*/ 2).as(Opcode.ADD_8, Add.wireFormat8),
16
+ new Return(/*addressing_mode=*/ 0, /*copySizeOffset=*/ 0, /*returnOffset=*/ 2),
18
17
  ]);
19
18
 
20
- const result = await testCustomBytecode(minimalBytecode, tester, 'MinimalTx', 'AvmMinimalContract');
19
+ const result = await deployAndExecuteCustomBytecode(minimalBytecode, tester, 'MinimalTx', 'AvmMinimalContract');
21
20
 
22
21
  // Modify the protocol contracts to be all zeros
23
22
  result.hints!.protocolContracts = ProtocolContracts.empty();
24
- result.publicInputs.protocolContracts = ProtocolContracts.empty();
23
+ result.publicInputs!.protocolContracts = ProtocolContracts.empty();
25
24
 
26
25
  return result;
27
26
  }
28
-
29
- /**
30
- * Reads the AVM circuit inputs for the minimal public tx from a pre-generated JSON file.
31
- * @returns The AvmCircuitInputs for the minimal public tx.
32
- */
33
- export function readAvmMinimalPublicTxInputsFromFile(): AvmCircuitInputs {
34
- return AvmCircuitInputs.schema.parse(avmMinimalCircuitInputsJson);
35
- }