@aztec/simulator 0.76.4 → 0.77.0-testnet-ignition.17

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 (505) hide show
  1. package/README.md +3 -3
  2. package/dest/client.d.ts +5 -0
  3. package/dest/client.d.ts.map +1 -0
  4. package/dest/client.js +3 -0
  5. package/dest/{public → common}/db_interfaces.d.ts +8 -33
  6. package/dest/common/db_interfaces.d.ts.map +1 -0
  7. package/dest/common/db_interfaces.js +1 -0
  8. package/dest/common/debug_fn_name.d.ts +3 -2
  9. package/dest/common/debug_fn_name.d.ts.map +1 -1
  10. package/dest/common/debug_fn_name.js +2 -5
  11. package/dest/common/errors.d.ts +4 -4
  12. package/dest/common/errors.d.ts.map +1 -1
  13. package/dest/common/errors.js +30 -39
  14. package/dest/common/index.d.ts +2 -1
  15. package/dest/common/index.d.ts.map +1 -1
  16. package/dest/common/index.js +2 -2
  17. package/dest/common/message_load_oracle_inputs.d.ts +2 -2
  18. package/dest/common/message_load_oracle_inputs.d.ts.map +1 -1
  19. package/dest/common/message_load_oracle_inputs.js +8 -8
  20. package/dest/common/stats/index.d.ts.map +1 -0
  21. package/dest/{stats → common/stats}/stats.d.ts +2 -2
  22. package/dest/common/stats/stats.d.ts.map +1 -0
  23. package/dest/common/stats/stats.js +10 -0
  24. package/dest/{acvm → private/acvm}/acvm.d.ts +4 -4
  25. package/dest/private/acvm/acvm.d.ts.map +1 -0
  26. package/dest/private/acvm/acvm.js +70 -0
  27. package/dest/{acvm → private/acvm}/acvm_types.d.ts +1 -1
  28. package/dest/private/acvm/acvm_types.d.ts.map +1 -0
  29. package/dest/private/acvm/acvm_types.js +3 -0
  30. package/dest/{acvm → private/acvm}/deserialize.d.ts +2 -2
  31. package/dest/private/acvm/deserialize.d.ts.map +1 -0
  32. package/dest/private/acvm/deserialize.js +42 -0
  33. package/dest/private/acvm/index.d.ts.map +1 -0
  34. package/dest/private/acvm/index.js +5 -0
  35. package/dest/{acvm → private/acvm}/oracle/index.d.ts +1 -1
  36. package/dest/private/acvm/oracle/index.d.ts.map +1 -0
  37. package/dest/private/acvm/oracle/index.js +2 -0
  38. package/dest/{acvm → private/acvm}/oracle/oracle.d.ts +4 -3
  39. package/dest/private/acvm/oracle/oracle.d.ts.map +1 -0
  40. package/dest/private/acvm/oracle/oracle.js +263 -0
  41. package/dest/{acvm → private/acvm}/oracle/typed_oracle.d.ts +12 -6
  42. package/dest/private/acvm/oracle/typed_oracle.d.ts.map +1 -0
  43. package/dest/private/acvm/oracle/typed_oracle.js +132 -0
  44. package/dest/{acvm → private/acvm}/serialize.d.ts +7 -3
  45. package/dest/private/acvm/serialize.d.ts.map +1 -0
  46. package/dest/private/acvm/serialize.js +46 -0
  47. package/dest/{client → private}/client_execution_context.d.ts +20 -17
  48. package/dest/private/client_execution_context.d.ts.map +1 -0
  49. package/dest/private/client_execution_context.js +378 -0
  50. package/dest/{client → private}/db_oracle.d.ts +19 -7
  51. package/dest/private/db_oracle.d.ts.map +1 -0
  52. package/dest/private/db_oracle.js +14 -0
  53. package/dest/{client → private}/execution_note_cache.d.ts +2 -2
  54. package/dest/private/execution_note_cache.d.ts.map +1 -0
  55. package/dest/private/execution_note_cache.js +180 -0
  56. package/dest/{common → private}/hashed_values_cache.d.ts +2 -2
  57. package/dest/private/hashed_values_cache.d.ts.map +1 -0
  58. package/dest/private/hashed_values_cache.js +46 -0
  59. package/dest/private/index.d.ts +13 -0
  60. package/dest/private/index.d.ts.map +1 -0
  61. package/dest/private/index.js +12 -0
  62. package/dest/{client → private}/pick_notes.d.ts +1 -1
  63. package/dest/private/pick_notes.d.ts.map +1 -0
  64. package/dest/private/pick_notes.js +51 -0
  65. package/dest/private/private_execution.d.ts +24 -0
  66. package/dest/private/private_execution.d.ts.map +1 -0
  67. package/dest/private/private_execution.js +90 -0
  68. package/dest/{providers → private/providers}/acvm_native.d.ts +5 -5
  69. package/dest/private/providers/acvm_native.d.ts.map +1 -0
  70. package/dest/private/providers/acvm_native.js +139 -0
  71. package/dest/{providers → private/providers}/acvm_wasm.d.ts +4 -4
  72. package/dest/private/providers/acvm_wasm.d.ts.map +1 -0
  73. package/dest/private/providers/acvm_wasm.js +62 -0
  74. package/dest/{providers → private/providers}/acvm_wasm_with_blobs.d.ts +5 -5
  75. package/dest/private/providers/acvm_wasm_with_blobs.d.ts.map +1 -0
  76. package/dest/{providers → private/providers}/acvm_wasm_with_blobs.js +3 -6
  77. package/dest/{providers → private/providers}/factory.d.ts +1 -1
  78. package/dest/private/providers/factory.d.ts.map +1 -0
  79. package/dest/private/providers/factory.js +27 -0
  80. package/dest/{common → private/providers}/simulation_provider.d.ts +5 -5
  81. package/dest/private/providers/simulation_provider.d.ts.map +1 -0
  82. package/dest/private/providers/simulation_provider.js +24 -0
  83. package/dest/private/simulator.d.ts +36 -0
  84. package/dest/private/simulator.d.ts.map +1 -0
  85. package/dest/private/simulator.js +78 -0
  86. package/dest/{client → private}/unconstrained_execution.d.ts +5 -5
  87. package/dest/private/unconstrained_execution.d.ts.map +1 -0
  88. package/dest/private/unconstrained_execution.js +27 -0
  89. package/dest/{client → private}/view_data_oracle.d.ts +15 -7
  90. package/dest/private/view_data_oracle.d.ts.map +1 -0
  91. package/dest/private/view_data_oracle.js +260 -0
  92. package/dest/{avm → public/avm}/avm_context.d.ts +7 -5
  93. package/dest/public/avm/avm_context.d.ts.map +1 -0
  94. package/dest/public/avm/avm_context.js +44 -0
  95. package/dest/{avm → public/avm}/avm_contract_call_result.d.ts +5 -5
  96. package/dest/public/avm/avm_contract_call_result.d.ts.map +1 -0
  97. package/dest/public/avm/avm_contract_call_result.js +50 -0
  98. package/dest/{avm → public/avm}/avm_execution_environment.d.ts +2 -2
  99. package/dest/public/avm/avm_execution_environment.d.ts.map +1 -0
  100. package/dest/public/avm/avm_execution_environment.js +31 -0
  101. package/dest/public/avm/avm_gas.d.ts.map +1 -0
  102. package/dest/public/avm/avm_gas.js +202 -0
  103. package/dest/{avm → public/avm}/avm_machine_state.d.ts +2 -2
  104. package/dest/public/avm/avm_machine_state.d.ts.map +1 -0
  105. package/dest/public/avm/avm_machine_state.js +106 -0
  106. package/dest/{avm → public/avm}/avm_memory_types.d.ts +2 -2
  107. package/dest/public/avm/avm_memory_types.d.ts.map +1 -0
  108. package/dest/public/avm/avm_memory_types.js +340 -0
  109. package/dest/{avm → public/avm}/avm_simulator.d.ts +5 -3
  110. package/dest/public/avm/avm_simulator.d.ts.map +1 -0
  111. package/dest/public/avm/avm_simulator.js +202 -0
  112. package/dest/public/avm/bytecode_utils.d.ts.map +1 -0
  113. package/dest/public/avm/bytecode_utils.js +17 -0
  114. package/dest/{avm → public/avm}/errors.d.ts +5 -4
  115. package/dest/public/avm/errors.d.ts.map +1 -0
  116. package/dest/public/avm/errors.js +179 -0
  117. package/dest/{avm → public/avm}/fixtures/avm_simulation_tester.d.ts +6 -6
  118. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -0
  119. package/dest/public/avm/fixtures/avm_simulation_tester.js +76 -0
  120. package/dest/{avm → public/avm}/fixtures/base_avm_simulation_tester.d.ts +13 -11
  121. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +1 -0
  122. package/dest/public/avm/fixtures/base_avm_simulation_tester.js +77 -0
  123. package/dest/{avm → public/avm}/fixtures/index.d.ts +7 -7
  124. package/dest/public/avm/fixtures/index.d.ts.map +1 -0
  125. package/dest/public/avm/fixtures/index.js +140 -0
  126. package/dest/{avm → public/avm}/fixtures/simple_contract_data_source.d.ts +10 -4
  127. package/dest/public/avm/fixtures/simple_contract_data_source.d.ts.map +1 -0
  128. package/dest/public/avm/fixtures/simple_contract_data_source.js +112 -0
  129. package/dest/public/avm/index.d.ts +4 -0
  130. package/dest/public/avm/index.d.ts.map +1 -0
  131. package/dest/{avm/index.d.ts → public/avm/index.js} +1 -2
  132. package/dest/public/avm/journal/index.d.ts.map +1 -0
  133. package/dest/{avm → public/avm}/journal/journal.d.ts +51 -18
  134. package/dest/public/avm/journal/journal.d.ts.map +1 -0
  135. package/dest/public/avm/journal/journal.js +488 -0
  136. package/dest/{avm → public/avm}/journal/nullifiers.d.ts +8 -6
  137. package/dest/public/avm/journal/nullifiers.d.ts.map +1 -0
  138. package/dest/public/avm/journal/nullifiers.js +97 -0
  139. package/dest/{avm → public/avm}/journal/public_storage.d.ts +2 -2
  140. package/dest/public/avm/journal/public_storage.d.ts.map +1 -0
  141. package/dest/public/avm/journal/public_storage.js +145 -0
  142. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -0
  143. package/dest/public/avm/opcodes/accrued_substate.js +252 -0
  144. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +1 -0
  145. package/dest/public/avm/opcodes/addressing_mode.js +74 -0
  146. package/dest/public/avm/opcodes/arithmetic.d.ts.map +1 -0
  147. package/dest/public/avm/opcodes/arithmetic.js +73 -0
  148. package/dest/public/avm/opcodes/bitwise.d.ts.map +1 -0
  149. package/dest/public/avm/opcodes/bitwise.js +106 -0
  150. package/dest/public/avm/opcodes/comparators.d.ts.map +1 -0
  151. package/dest/public/avm/opcodes/comparators.js +43 -0
  152. package/dest/public/avm/opcodes/contract.d.ts.map +1 -0
  153. package/dest/public/avm/opcodes/contract.js +66 -0
  154. package/dest/public/avm/opcodes/control_flow.d.ts.map +1 -0
  155. package/dest/public/avm/opcodes/control_flow.js +105 -0
  156. package/dest/{avm → public/avm}/opcodes/conversion.d.ts +1 -1
  157. package/dest/public/avm/opcodes/conversion.d.ts.map +1 -0
  158. package/dest/public/avm/opcodes/conversion.js +69 -0
  159. package/dest/{avm → public/avm}/opcodes/ec_add.d.ts +1 -1
  160. package/dest/public/avm/opcodes/ec_add.d.ts.map +1 -0
  161. package/dest/public/avm/opcodes/ec_add.js +84 -0
  162. package/dest/public/avm/opcodes/environment_getters.d.ts.map +1 -0
  163. package/dest/public/avm/opcodes/environment_getters.js +79 -0
  164. package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -0
  165. package/dest/public/avm/opcodes/external_calls.js +180 -0
  166. package/dest/{avm → public/avm}/opcodes/hashing.d.ts +1 -1
  167. package/dest/public/avm/opcodes/hashing.d.ts.map +1 -0
  168. package/dest/public/avm/opcodes/hashing.js +114 -0
  169. package/dest/public/avm/opcodes/index.d.ts.map +1 -0
  170. package/dest/{avm → public/avm}/opcodes/instruction.d.ts +2 -2
  171. package/dest/public/avm/opcodes/instruction.d.ts.map +1 -0
  172. package/dest/public/avm/opcodes/instruction.js +91 -0
  173. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +1 -0
  174. package/dest/public/avm/opcodes/instruction_impl.js +30 -0
  175. package/dest/public/avm/opcodes/memory.d.ts.map +1 -0
  176. package/dest/public/avm/opcodes/memory.js +253 -0
  177. package/dest/{avm → public/avm}/opcodes/misc.d.ts +1 -1
  178. package/dest/public/avm/opcodes/misc.d.ts.map +1 -0
  179. package/dest/public/avm/opcodes/misc.js +48 -0
  180. package/dest/public/avm/opcodes/storage.d.ts.map +1 -0
  181. package/dest/public/avm/opcodes/storage.js +66 -0
  182. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +1 -0
  183. package/dest/public/avm/serialization/buffer_cursor.js +99 -0
  184. package/dest/{avm → public/avm}/serialization/bytecode_serialization.d.ts +1 -1
  185. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +1 -0
  186. package/dest/public/avm/serialization/bytecode_serialization.js +328 -0
  187. package/dest/{avm → public/avm}/serialization/instruction_serialization.d.ts +1 -2
  188. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +1 -0
  189. package/dest/public/avm/serialization/instruction_serialization.js +225 -0
  190. package/dest/{avm → public/avm}/test_utils.d.ts +6 -4
  191. package/dest/public/avm/test_utils.d.ts.map +1 -0
  192. package/dest/public/avm/test_utils.js +52 -0
  193. package/dest/public/bytecode_errors.js +1 -2
  194. package/dest/public/execution.d.ts +8 -2
  195. package/dest/public/execution.d.ts.map +1 -1
  196. package/dest/public/execution.js +4 -5
  197. package/dest/public/executor_metrics.js +16 -12
  198. package/dest/public/fixtures/index.js +0 -1
  199. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +12 -8
  200. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  201. package/dest/public/fixtures/public_tx_simulation_tester.js +37 -44
  202. package/dest/public/fixtures/utils.d.ts +3 -11
  203. package/dest/public/fixtures/utils.d.ts.map +1 -1
  204. package/dest/public/fixtures/utils.js +15 -35
  205. package/dest/public/index.d.ts +3 -2
  206. package/dest/public/index.d.ts.map +1 -1
  207. package/dest/public/index.js +3 -3
  208. package/dest/public/public_db_sources.d.ts +22 -28
  209. package/dest/public/public_db_sources.d.ts.map +1 -1
  210. package/dest/public/public_db_sources.js +75 -181
  211. package/dest/public/public_processor.d.ts +8 -6
  212. package/dest/public/public_processor.d.ts.map +1 -1
  213. package/dest/public/public_processor.js +329 -308
  214. package/dest/public/public_processor_metrics.d.ts +3 -3
  215. package/dest/public/public_processor_metrics.d.ts.map +1 -1
  216. package/dest/public/public_processor_metrics.js +46 -27
  217. package/dest/public/public_tx_context.d.ts +14 -8
  218. package/dest/public/public_tx_context.d.ts.map +1 -1
  219. package/dest/public/public_tx_context.js +122 -143
  220. package/dest/public/public_tx_simulator.d.ts +8 -5
  221. package/dest/public/public_tx_simulator.d.ts.map +1 -1
  222. package/dest/public/public_tx_simulator.js +306 -317
  223. package/dest/public/side_effect_errors.js +1 -2
  224. package/dest/public/side_effect_trace.d.ts +16 -10
  225. package/dest/public/side_effect_trace.d.ts.map +1 -1
  226. package/dest/public/side_effect_trace.js +65 -132
  227. package/dest/public/side_effect_trace_interface.d.ts +9 -7
  228. package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
  229. package/dest/public/side_effect_trace_interface.js +1 -2
  230. package/dest/public/unique_class_ids.js +23 -28
  231. package/dest/public/utils.d.ts +2 -2
  232. package/dest/public/utils.d.ts.map +1 -1
  233. package/dest/public/utils.js +17 -12
  234. package/dest/server.d.ts +4 -4
  235. package/dest/server.d.ts.map +1 -1
  236. package/dest/server.js +3 -5
  237. package/dest/test/utils.d.ts +3 -2
  238. package/dest/test/utils.d.ts.map +1 -1
  239. package/dest/test/utils.js +9 -7
  240. package/package.json +16 -18
  241. package/src/client.ts +4 -0
  242. package/src/{public → common}/db_interfaces.ts +8 -40
  243. package/src/common/debug_fn_name.ts +4 -2
  244. package/src/common/errors.ts +5 -5
  245. package/src/common/index.ts +2 -1
  246. package/src/common/message_load_oracle_inputs.ts +2 -2
  247. package/src/common/stats/index.ts +1 -0
  248. package/src/{stats → common/stats}/stats.ts +2 -2
  249. package/src/{acvm → private/acvm}/acvm.ts +5 -5
  250. package/src/{acvm → private/acvm}/acvm_types.ts +1 -1
  251. package/src/{acvm → private/acvm}/deserialize.ts +2 -2
  252. package/src/{acvm → private/acvm}/oracle/index.ts +1 -1
  253. package/src/{acvm → private/acvm}/oracle/oracle.ts +22 -12
  254. package/src/{acvm → private/acvm}/oracle/typed_oracle.ts +50 -55
  255. package/src/{acvm → private/acvm}/serialize.ts +10 -3
  256. package/src/{client → private}/client_execution_context.ts +54 -37
  257. package/src/{client → private}/db_oracle.ts +20 -20
  258. package/src/{client → private}/execution_note_cache.ts +3 -3
  259. package/src/{common → private}/hashed_values_cache.ts +2 -2
  260. package/src/private/index.ts +12 -0
  261. package/src/{client → private}/pick_notes.ts +1 -1
  262. package/src/{client → private}/private_execution.ts +46 -14
  263. package/src/{providers → private/providers}/acvm_native.ts +6 -6
  264. package/src/{providers → private/providers}/acvm_wasm.ts +4 -4
  265. package/src/{providers → private/providers}/acvm_wasm_with_blobs.ts +5 -5
  266. package/src/{providers → private/providers}/factory.ts +1 -1
  267. package/src/{common → private/providers}/simulation_provider.ts +5 -5
  268. package/src/{client → private}/simulator.ts +31 -123
  269. package/src/{client → private}/unconstrained_execution.ts +7 -7
  270. package/src/{client → private}/view_data_oracle.ts +25 -28
  271. package/src/{avm → public/avm}/avm_context.ts +12 -7
  272. package/src/{avm → public/avm}/avm_contract_call_result.ts +6 -6
  273. package/src/{avm → public/avm}/avm_execution_environment.ts +2 -2
  274. package/src/{avm → public/avm}/avm_gas.ts +1 -3
  275. package/src/{avm → public/avm}/avm_machine_state.ts +2 -2
  276. package/src/{avm → public/avm}/avm_memory_types.ts +4 -4
  277. package/src/{avm → public/avm}/avm_simulator.ts +12 -6
  278. package/src/{avm → public/avm}/errors.ts +5 -4
  279. package/src/{avm → public/avm}/fixtures/avm_simulation_tester.ts +16 -15
  280. package/src/{avm → public/avm}/fixtures/base_avm_simulation_tester.ts +38 -40
  281. package/src/{avm → public/avm}/fixtures/index.ts +17 -12
  282. package/src/{avm → public/avm}/fixtures/simple_contract_data_source.ts +64 -9
  283. package/src/{avm → public/avm}/index.ts +1 -1
  284. package/src/public/avm/journal/index.ts +1 -0
  285. package/src/{avm → public/avm}/journal/journal.ts +332 -305
  286. package/src/{avm → public/avm}/journal/nullifiers.ts +20 -19
  287. package/src/{avm → public/avm}/journal/public_storage.ts +2 -2
  288. package/src/{avm → public/avm}/opcodes/contract.ts +1 -1
  289. package/src/{avm → public/avm}/opcodes/control_flow.ts +1 -1
  290. package/src/{avm → public/avm}/opcodes/conversion.ts +1 -1
  291. package/src/{avm → public/avm}/opcodes/ec_add.ts +2 -2
  292. package/src/{avm → public/avm}/opcodes/external_calls.ts +5 -6
  293. package/src/{avm → public/avm}/opcodes/hashing.ts +1 -1
  294. package/src/public/avm/opcodes/index.ts +15 -0
  295. package/src/{avm → public/avm}/opcodes/instruction.ts +2 -2
  296. package/src/{avm → public/avm}/opcodes/misc.ts +1 -1
  297. package/src/public/avm/serialization/bytecode_serialization.ts +204 -0
  298. package/src/{avm → public/avm}/serialization/instruction_serialization.ts +0 -1
  299. package/src/{avm → public/avm}/test_utils.ts +10 -7
  300. package/src/public/execution.ts +9 -12
  301. package/src/public/fixtures/public_tx_simulation_tester.ts +45 -63
  302. package/src/public/fixtures/utils.ts +8 -43
  303. package/src/public/index.ts +3 -2
  304. package/src/public/public_db_sources.ts +55 -188
  305. package/src/public/public_processor.ts +66 -47
  306. package/src/public/public_processor_metrics.ts +3 -3
  307. package/src/public/public_tx_context.ts +69 -74
  308. package/src/public/public_tx_simulator.ts +35 -27
  309. package/src/public/side_effect_trace.ts +67 -140
  310. package/src/public/side_effect_trace_interface.ts +10 -23
  311. package/src/public/unique_class_ids.ts +1 -1
  312. package/src/public/utils.ts +2 -2
  313. package/src/server.ts +4 -4
  314. package/src/test/utils.ts +5 -3
  315. package/dest/acvm/acvm.d.ts.map +0 -1
  316. package/dest/acvm/acvm.js +0 -73
  317. package/dest/acvm/acvm_types.d.ts.map +0 -1
  318. package/dest/acvm/acvm_types.js +0 -2
  319. package/dest/acvm/deserialize.d.ts.map +0 -1
  320. package/dest/acvm/deserialize.js +0 -46
  321. package/dest/acvm/index.d.ts.map +0 -1
  322. package/dest/acvm/index.js +0 -6
  323. package/dest/acvm/oracle/index.d.ts.map +0 -1
  324. package/dest/acvm/oracle/index.js +0 -3
  325. package/dest/acvm/oracle/oracle.d.ts.map +0 -1
  326. package/dest/acvm/oracle/oracle.js +0 -230
  327. package/dest/acvm/oracle/typed_oracle.d.ts.map +0 -1
  328. package/dest/acvm/oracle/typed_oracle.js +0 -131
  329. package/dest/acvm/serialize.d.ts.map +0 -1
  330. package/dest/acvm/serialize.js +0 -48
  331. package/dest/avm/avm_context.d.ts.map +0 -1
  332. package/dest/avm/avm_context.js +0 -44
  333. package/dest/avm/avm_contract_call_result.d.ts.map +0 -1
  334. package/dest/avm/avm_contract_call_result.js +0 -45
  335. package/dest/avm/avm_execution_environment.d.ts.map +0 -1
  336. package/dest/avm/avm_execution_environment.js +0 -28
  337. package/dest/avm/avm_gas.d.ts.map +0 -1
  338. package/dest/avm/avm_gas.js +0 -170
  339. package/dest/avm/avm_machine_state.d.ts.map +0 -1
  340. package/dest/avm/avm_machine_state.js +0 -112
  341. package/dest/avm/avm_memory_types.d.ts.map +0 -1
  342. package/dest/avm/avm_memory_types.js +0 -327
  343. package/dest/avm/avm_simulator.d.ts.map +0 -1
  344. package/dest/avm/avm_simulator.js +0 -193
  345. package/dest/avm/avm_tree.d.ts +0 -282
  346. package/dest/avm/avm_tree.d.ts.map +0 -1
  347. package/dest/avm/avm_tree.js +0 -684
  348. package/dest/avm/bytecode_utils.d.ts.map +0 -1
  349. package/dest/avm/bytecode_utils.js +0 -15
  350. package/dest/avm/errors.d.ts.map +0 -1
  351. package/dest/avm/errors.js +0 -196
  352. package/dest/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  353. package/dest/avm/fixtures/avm_simulation_tester.js +0 -73
  354. package/dest/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  355. package/dest/avm/fixtures/base_avm_simulation_tester.js +0 -76
  356. package/dest/avm/fixtures/index.d.ts.map +0 -1
  357. package/dest/avm/fixtures/index.js +0 -134
  358. package/dest/avm/fixtures/simple_contract_data_source.d.ts.map +0 -1
  359. package/dest/avm/fixtures/simple_contract_data_source.js +0 -75
  360. package/dest/avm/index.d.ts.map +0 -1
  361. package/dest/avm/index.js +0 -4
  362. package/dest/avm/journal/index.d.ts.map +0 -1
  363. package/dest/avm/journal/index.js +0 -2
  364. package/dest/avm/journal/journal.d.ts.map +0 -1
  365. package/dest/avm/journal/journal.js +0 -499
  366. package/dest/avm/journal/nullifiers.d.ts.map +0 -1
  367. package/dest/avm/journal/nullifiers.js +0 -99
  368. package/dest/avm/journal/public_storage.d.ts.map +0 -1
  369. package/dest/avm/journal/public_storage.js +0 -159
  370. package/dest/avm/opcodes/accrued_substate.d.ts.map +0 -1
  371. package/dest/avm/opcodes/accrued_substate.js +0 -215
  372. package/dest/avm/opcodes/addressing_mode.d.ts.map +0 -1
  373. package/dest/avm/opcodes/addressing_mode.js +0 -81
  374. package/dest/avm/opcodes/arithmetic.d.ts.map +0 -1
  375. package/dest/avm/opcodes/arithmetic.js +0 -70
  376. package/dest/avm/opcodes/bitwise.d.ts.map +0 -1
  377. package/dest/avm/opcodes/bitwise.js +0 -90
  378. package/dest/avm/opcodes/comparators.d.ts.map +0 -1
  379. package/dest/avm/opcodes/comparators.js +0 -40
  380. package/dest/avm/opcodes/contract.d.ts.map +0 -1
  381. package/dest/avm/opcodes/contract.js +0 -63
  382. package/dest/avm/opcodes/control_flow.d.ts.map +0 -1
  383. package/dest/avm/opcodes/control_flow.js +0 -97
  384. package/dest/avm/opcodes/conversion.d.ts.map +0 -1
  385. package/dest/avm/opcodes/conversion.js +0 -64
  386. package/dest/avm/opcodes/ec_add.d.ts.map +0 -1
  387. package/dest/avm/opcodes/ec_add.js +0 -82
  388. package/dest/avm/opcodes/environment_getters.d.ts.map +0 -1
  389. package/dest/avm/opcodes/environment_getters.js +0 -78
  390. package/dest/avm/opcodes/external_calls.d.ts.map +0 -1
  391. package/dest/avm/opcodes/external_calls.js +0 -169
  392. package/dest/avm/opcodes/hashing.d.ts.map +0 -1
  393. package/dest/avm/opcodes/hashing.js +0 -103
  394. package/dest/avm/opcodes/index.d.ts.map +0 -1
  395. package/dest/avm/opcodes/index.js +0 -16
  396. package/dest/avm/opcodes/instruction.d.ts.map +0 -1
  397. package/dest/avm/opcodes/instruction.js +0 -100
  398. package/dest/avm/opcodes/instruction_impl.d.ts.map +0 -1
  399. package/dest/avm/opcodes/instruction_impl.js +0 -33
  400. package/dest/avm/opcodes/memory.d.ts.map +0 -1
  401. package/dest/avm/opcodes/memory.js +0 -226
  402. package/dest/avm/opcodes/misc.d.ts.map +0 -1
  403. package/dest/avm/opcodes/misc.js +0 -45
  404. package/dest/avm/opcodes/multi_scalar_mul.d.ts +0 -16
  405. package/dest/avm/opcodes/multi_scalar_mul.d.ts.map +0 -1
  406. package/dest/avm/opcodes/multi_scalar_mul.js +0 -112
  407. package/dest/avm/opcodes/storage.d.ts.map +0 -1
  408. package/dest/avm/opcodes/storage.js +0 -61
  409. package/dest/avm/serialization/buffer_cursor.d.ts.map +0 -1
  410. package/dest/avm/serialization/buffer_cursor.js +0 -99
  411. package/dest/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  412. package/dest/avm/serialization/bytecode_serialization.js +0 -132
  413. package/dest/avm/serialization/instruction_serialization.d.ts.map +0 -1
  414. package/dest/avm/serialization/instruction_serialization.js +0 -187
  415. package/dest/avm/test_utils.d.ts.map +0 -1
  416. package/dest/avm/test_utils.js +0 -52
  417. package/dest/client/client_execution_context.d.ts.map +0 -1
  418. package/dest/client/client_execution_context.js +0 -392
  419. package/dest/client/db_oracle.d.ts.map +0 -1
  420. package/dest/client/db_oracle.js +0 -17
  421. package/dest/client/execution_note_cache.d.ts.map +0 -1
  422. package/dest/client/execution_note_cache.js +0 -181
  423. package/dest/client/index.d.ts +0 -16
  424. package/dest/client/index.d.ts.map +0 -1
  425. package/dest/client/index.js +0 -15
  426. package/dest/client/pick_notes.d.ts.map +0 -1
  427. package/dest/client/pick_notes.js +0 -54
  428. package/dest/client/private_execution.d.ts +0 -19
  429. package/dest/client/private_execution.d.ts.map +0 -1
  430. package/dest/client/private_execution.js +0 -72
  431. package/dest/client/simulator.d.ts +0 -60
  432. package/dest/client/simulator.d.ts.map +0 -1
  433. package/dest/client/simulator.js +0 -136
  434. package/dest/client/unconstrained_execution.d.ts.map +0 -1
  435. package/dest/client/unconstrained_execution.js +0 -30
  436. package/dest/client/view_data_oracle.d.ts.map +0 -1
  437. package/dest/client/view_data_oracle.js +0 -268
  438. package/dest/common/hashed_values_cache.d.ts.map +0 -1
  439. package/dest/common/hashed_values_cache.js +0 -50
  440. package/dest/common/simulation_provider.d.ts.map +0 -1
  441. package/dest/common/simulation_provider.js +0 -27
  442. package/dest/common.d.ts +0 -2
  443. package/dest/common.d.ts.map +0 -1
  444. package/dest/common.js +0 -2
  445. package/dest/providers/acvm_native.d.ts.map +0 -1
  446. package/dest/providers/acvm_native.js +0 -125
  447. package/dest/providers/acvm_wasm.d.ts.map +0 -1
  448. package/dest/providers/acvm_wasm.js +0 -54
  449. package/dest/providers/acvm_wasm_with_blobs.d.ts.map +0 -1
  450. package/dest/providers/factory.d.ts.map +0 -1
  451. package/dest/providers/factory.js +0 -27
  452. package/dest/providers/index.d.ts +0 -5
  453. package/dest/providers/index.d.ts.map +0 -1
  454. package/dest/providers/index.js +0 -5
  455. package/dest/public/db_interfaces.d.ts.map +0 -1
  456. package/dest/public/db_interfaces.js +0 -2
  457. package/dest/public/fee_payment.d.ts +0 -11
  458. package/dest/public/fee_payment.d.ts.map +0 -1
  459. package/dest/public/fee_payment.js +0 -21
  460. package/dest/stats/index.d.ts.map +0 -1
  461. package/dest/stats/index.js +0 -2
  462. package/dest/stats/stats.d.ts.map +0 -1
  463. package/dest/stats/stats.js +0 -11
  464. package/src/avm/avm_tree.ts +0 -887
  465. package/src/avm/opcodes/multi_scalar_mul.ts +0 -121
  466. package/src/avm/serialization/bytecode_serialization.ts +0 -212
  467. package/src/client/index.ts +0 -15
  468. package/src/common.ts +0 -1
  469. package/src/providers/index.ts +0 -4
  470. package/src/public/fee_payment.ts +0 -23
  471. /package/dest/{stats → common/stats}/index.d.ts +0 -0
  472. /package/{src/stats/index.ts → dest/common/stats/index.js} +0 -0
  473. /package/dest/{acvm → private/acvm}/index.d.ts +0 -0
  474. /package/dest/{avm → public/avm}/avm_gas.d.ts +0 -0
  475. /package/dest/{avm → public/avm}/bytecode_utils.d.ts +0 -0
  476. /package/dest/{avm → public/avm}/journal/index.d.ts +0 -0
  477. /package/{src/avm/journal/index.ts → dest/public/avm/journal/index.js} +0 -0
  478. /package/dest/{avm → public/avm}/opcodes/accrued_substate.d.ts +0 -0
  479. /package/dest/{avm → public/avm}/opcodes/addressing_mode.d.ts +0 -0
  480. /package/dest/{avm → public/avm}/opcodes/arithmetic.d.ts +0 -0
  481. /package/dest/{avm → public/avm}/opcodes/bitwise.d.ts +0 -0
  482. /package/dest/{avm → public/avm}/opcodes/comparators.d.ts +0 -0
  483. /package/dest/{avm → public/avm}/opcodes/contract.d.ts +0 -0
  484. /package/dest/{avm → public/avm}/opcodes/control_flow.d.ts +0 -0
  485. /package/dest/{avm → public/avm}/opcodes/environment_getters.d.ts +0 -0
  486. /package/dest/{avm → public/avm}/opcodes/external_calls.d.ts +0 -0
  487. /package/dest/{avm → public/avm}/opcodes/index.d.ts +0 -0
  488. /package/{src/avm/opcodes/index.ts → dest/public/avm/opcodes/index.js} +0 -0
  489. /package/dest/{avm → public/avm}/opcodes/instruction_impl.d.ts +0 -0
  490. /package/dest/{avm → public/avm}/opcodes/memory.d.ts +0 -0
  491. /package/dest/{avm → public/avm}/opcodes/storage.d.ts +0 -0
  492. /package/dest/{avm → public/avm}/serialization/buffer_cursor.d.ts +0 -0
  493. /package/src/{acvm → private/acvm}/index.ts +0 -0
  494. /package/src/{avm → public/avm}/bytecode_utils.ts +0 -0
  495. /package/src/{avm → public/avm}/opcodes/.eslintrc.cjs +0 -0
  496. /package/src/{avm → public/avm}/opcodes/accrued_substate.ts +0 -0
  497. /package/src/{avm → public/avm}/opcodes/addressing_mode.ts +0 -0
  498. /package/src/{avm → public/avm}/opcodes/arithmetic.ts +0 -0
  499. /package/src/{avm → public/avm}/opcodes/bitwise.ts +0 -0
  500. /package/src/{avm → public/avm}/opcodes/comparators.ts +0 -0
  501. /package/src/{avm → public/avm}/opcodes/environment_getters.ts +0 -0
  502. /package/src/{avm → public/avm}/opcodes/instruction_impl.ts +0 -0
  503. /package/src/{avm → public/avm}/opcodes/memory.ts +0 -0
  504. /package/src/{avm → public/avm}/opcodes/storage.ts +0 -0
  505. /package/src/{avm → public/avm}/serialization/buffer_cursor.ts +0 -0
@@ -0,0 +1,328 @@
1
+ import { AvmExecutionError, AvmParsingError, InvalidOpcodeError, InvalidProgramCounterError } from '../errors.js';
2
+ import { Add, And, Call, CalldataCopy, Cast, DebugLog, Div, EcAdd, EmitNoteHash, EmitNullifier, EmitUnencryptedLog, Eq, FieldDiv, GetContractInstance, GetEnvVar, Instruction, InternalCall, InternalReturn, Jump, JumpI, KeccakF1600, L1ToL2MessageExists, Lt, Lte, Mov, Mul, Not, NoteHashExists, NullifierExists, Or, Poseidon2, Return, ReturndataCopy, ReturndataSize, Revert, SLoad, SStore, SendL2ToL1Message, Set, Sha256Compression, Shl, Shr, StaticCall, Sub, ToRadixBE, Xor } from '../opcodes/index.js';
3
+ import { BufferCursor } from './buffer_cursor.js';
4
+ import { MAX_OPCODE_VALUE, Opcode } from './instruction_serialization.js';
5
+ export const INSTRUCTION_SET = new Map([
6
+ [
7
+ Opcode.ADD_8,
8
+ Add.as(Add.wireFormat8).deserialize
9
+ ],
10
+ [
11
+ Opcode.ADD_16,
12
+ Add.as(Add.wireFormat16).deserialize
13
+ ],
14
+ [
15
+ Opcode.SUB_8,
16
+ Sub.as(Sub.wireFormat8).deserialize
17
+ ],
18
+ [
19
+ Opcode.SUB_16,
20
+ Sub.as(Sub.wireFormat16).deserialize
21
+ ],
22
+ [
23
+ Opcode.MUL_8,
24
+ Mul.as(Mul.wireFormat8).deserialize
25
+ ],
26
+ [
27
+ Opcode.MUL_16,
28
+ Mul.as(Mul.wireFormat16).deserialize
29
+ ],
30
+ [
31
+ Opcode.DIV_8,
32
+ Div.as(Div.wireFormat8).deserialize
33
+ ],
34
+ [
35
+ Opcode.DIV_16,
36
+ Div.as(Div.wireFormat16).deserialize
37
+ ],
38
+ [
39
+ Opcode.FDIV_8,
40
+ FieldDiv.as(FieldDiv.wireFormat8).deserialize
41
+ ],
42
+ [
43
+ Opcode.FDIV_16,
44
+ FieldDiv.as(FieldDiv.wireFormat16).deserialize
45
+ ],
46
+ [
47
+ Opcode.EQ_8,
48
+ Eq.as(Eq.wireFormat8).deserialize
49
+ ],
50
+ [
51
+ Opcode.EQ_16,
52
+ Eq.as(Eq.wireFormat16).deserialize
53
+ ],
54
+ [
55
+ Opcode.LT_8,
56
+ Lt.as(Lt.wireFormat8).deserialize
57
+ ],
58
+ [
59
+ Opcode.LT_16,
60
+ Lt.as(Lt.wireFormat16).deserialize
61
+ ],
62
+ [
63
+ Opcode.LTE_8,
64
+ Lte.as(Lte.wireFormat8).deserialize
65
+ ],
66
+ [
67
+ Opcode.LTE_16,
68
+ Lte.as(Lte.wireFormat16).deserialize
69
+ ],
70
+ [
71
+ Opcode.AND_8,
72
+ And.as(And.wireFormat8).deserialize
73
+ ],
74
+ [
75
+ Opcode.AND_16,
76
+ And.as(And.wireFormat16).deserialize
77
+ ],
78
+ [
79
+ Opcode.OR_8,
80
+ Or.as(Or.wireFormat8).deserialize
81
+ ],
82
+ [
83
+ Opcode.OR_16,
84
+ Or.as(Or.wireFormat16).deserialize
85
+ ],
86
+ [
87
+ Opcode.XOR_8,
88
+ Xor.as(Xor.wireFormat8).deserialize
89
+ ],
90
+ [
91
+ Opcode.XOR_16,
92
+ Xor.as(Xor.wireFormat16).deserialize
93
+ ],
94
+ [
95
+ Opcode.NOT_8,
96
+ Not.as(Not.wireFormat8).deserialize
97
+ ],
98
+ [
99
+ Opcode.NOT_16,
100
+ Not.as(Not.wireFormat16).deserialize
101
+ ],
102
+ [
103
+ Opcode.SHL_8,
104
+ Shl.as(Shl.wireFormat8).deserialize
105
+ ],
106
+ [
107
+ Opcode.SHL_16,
108
+ Shl.as(Shl.wireFormat16).deserialize
109
+ ],
110
+ [
111
+ Opcode.SHR_8,
112
+ Shr.as(Shr.wireFormat8).deserialize
113
+ ],
114
+ [
115
+ Opcode.SHR_16,
116
+ Shr.as(Shr.wireFormat16).deserialize
117
+ ],
118
+ [
119
+ Opcode.CAST_8,
120
+ Cast.as(Cast.wireFormat8).deserialize
121
+ ],
122
+ [
123
+ Opcode.CAST_16,
124
+ Cast.as(Cast.wireFormat16).deserialize
125
+ ],
126
+ // Execution Environment
127
+ [
128
+ Opcode.GETENVVAR_16,
129
+ GetEnvVar.as(GetEnvVar.wireFormat16).deserialize
130
+ ],
131
+ [
132
+ CalldataCopy.opcode,
133
+ Instruction.deserialize.bind(CalldataCopy)
134
+ ],
135
+ [
136
+ Opcode.RETURNDATASIZE,
137
+ Instruction.deserialize.bind(ReturndataSize)
138
+ ],
139
+ [
140
+ Opcode.RETURNDATACOPY,
141
+ Instruction.deserialize.bind(ReturndataCopy)
142
+ ],
143
+ // Machine State - Internal Control Flow
144
+ [
145
+ Jump.opcode,
146
+ Instruction.deserialize.bind(Jump)
147
+ ],
148
+ [
149
+ JumpI.opcode,
150
+ Instruction.deserialize.bind(JumpI)
151
+ ],
152
+ [
153
+ InternalCall.opcode,
154
+ Instruction.deserialize.bind(InternalCall)
155
+ ],
156
+ [
157
+ InternalReturn.opcode,
158
+ Instruction.deserialize.bind(InternalReturn)
159
+ ],
160
+ [
161
+ Opcode.SET_8,
162
+ Set.as(Set.wireFormat8).deserialize
163
+ ],
164
+ [
165
+ Opcode.SET_16,
166
+ Set.as(Set.wireFormat16).deserialize
167
+ ],
168
+ [
169
+ Opcode.SET_32,
170
+ Set.as(Set.wireFormat32).deserialize
171
+ ],
172
+ [
173
+ Opcode.SET_64,
174
+ Set.as(Set.wireFormat64).deserialize
175
+ ],
176
+ [
177
+ Opcode.SET_128,
178
+ Set.as(Set.wireFormat128).deserialize
179
+ ],
180
+ [
181
+ Opcode.SET_FF,
182
+ Set.as(Set.wireFormatFF).deserialize
183
+ ],
184
+ [
185
+ Opcode.MOV_8,
186
+ Mov.as(Mov.wireFormat8).deserialize
187
+ ],
188
+ [
189
+ Opcode.MOV_16,
190
+ Mov.as(Mov.wireFormat16).deserialize
191
+ ],
192
+ // World State
193
+ [
194
+ SLoad.opcode,
195
+ Instruction.deserialize.bind(SLoad)
196
+ ],
197
+ [
198
+ SStore.opcode,
199
+ Instruction.deserialize.bind(SStore)
200
+ ],
201
+ [
202
+ NoteHashExists.opcode,
203
+ Instruction.deserialize.bind(NoteHashExists)
204
+ ],
205
+ [
206
+ EmitNoteHash.opcode,
207
+ Instruction.deserialize.bind(EmitNoteHash)
208
+ ],
209
+ [
210
+ NullifierExists.opcode,
211
+ Instruction.deserialize.bind(NullifierExists)
212
+ ],
213
+ [
214
+ EmitNullifier.opcode,
215
+ Instruction.deserialize.bind(EmitNullifier)
216
+ ],
217
+ [
218
+ L1ToL2MessageExists.opcode,
219
+ Instruction.deserialize.bind(L1ToL2MessageExists)
220
+ ],
221
+ // Accrued Substate
222
+ [
223
+ EmitUnencryptedLog.opcode,
224
+ Instruction.deserialize.bind(EmitUnencryptedLog)
225
+ ],
226
+ [
227
+ SendL2ToL1Message.opcode,
228
+ Instruction.deserialize.bind(SendL2ToL1Message)
229
+ ],
230
+ [
231
+ GetContractInstance.opcode,
232
+ Instruction.deserialize.bind(GetContractInstance)
233
+ ],
234
+ // Control Flow - Contract Calls
235
+ [
236
+ Call.opcode,
237
+ Instruction.deserialize.bind(Call)
238
+ ],
239
+ [
240
+ StaticCall.opcode,
241
+ Instruction.deserialize.bind(StaticCall)
242
+ ],
243
+ [
244
+ Return.opcode,
245
+ Instruction.deserialize.bind(Return)
246
+ ],
247
+ [
248
+ Opcode.REVERT_8,
249
+ Revert.as(Revert.wireFormat8).deserialize
250
+ ],
251
+ [
252
+ Opcode.REVERT_16,
253
+ Revert.as(Revert.wireFormat16).deserialize
254
+ ],
255
+ // Misc
256
+ [
257
+ DebugLog.opcode,
258
+ Instruction.deserialize.bind(DebugLog)
259
+ ],
260
+ // Gadgets
261
+ [
262
+ EcAdd.opcode,
263
+ Instruction.deserialize.bind(EcAdd)
264
+ ],
265
+ [
266
+ Poseidon2.opcode,
267
+ Instruction.deserialize.bind(Poseidon2)
268
+ ],
269
+ [
270
+ Sha256Compression.opcode,
271
+ Instruction.deserialize.bind(Sha256Compression)
272
+ ],
273
+ [
274
+ KeccakF1600.opcode,
275
+ Instruction.deserialize.bind(KeccakF1600)
276
+ ],
277
+ // Conversions
278
+ [
279
+ ToRadixBE.opcode,
280
+ Instruction.deserialize.bind(ToRadixBE)
281
+ ]
282
+ ]);
283
+ /**
284
+ * Serializes an array of instructions to bytecode.
285
+ */ export function encodeToBytecode(instructions) {
286
+ return Buffer.concat(instructions.map((i)=>i.serialize()));
287
+ }
288
+ // For testing only
289
+ export function decodeFromBytecode(bytecode, instructionSet = INSTRUCTION_SET) {
290
+ const instructions = [];
291
+ let pc = 0;
292
+ while(pc < bytecode.length){
293
+ const [instruction, bytesConsumed] = decodeInstructionFromBytecode(bytecode, pc, instructionSet);
294
+ instructions.push(instruction);
295
+ pc += bytesConsumed;
296
+ }
297
+ return instructions;
298
+ }
299
+ // Returns the instruction and the number of bytes consumed.
300
+ export function decodeInstructionFromBytecode(bytecode, pc, instructionSet = INSTRUCTION_SET) {
301
+ if (pc >= bytecode.length) {
302
+ throw new InvalidProgramCounterError(pc, bytecode.length);
303
+ }
304
+ try {
305
+ const cursor = new BufferCursor(bytecode, pc);
306
+ const startingPosition = cursor.position();
307
+ const opcode = cursor.bufferAtPosition().readUint8(); // peek.
308
+ if (opcode > MAX_OPCODE_VALUE) {
309
+ throw new InvalidOpcodeError(`Opcode ${opcode} (0x${opcode.toString(16)}) value is not in the range of valid opcodes.`);
310
+ }
311
+ const instructionDeserializerOrUndef = instructionSet.get(opcode);
312
+ if (instructionDeserializerOrUndef === undefined) {
313
+ throw new InvalidOpcodeError(`Opcode ${Opcode[opcode]} (0x${opcode.toString(16)}) is not implemented`);
314
+ }
315
+ const instructionDeserializer = instructionDeserializerOrUndef;
316
+ const instruction = instructionDeserializer(cursor);
317
+ return [
318
+ instruction,
319
+ cursor.position() - startingPosition
320
+ ];
321
+ } catch (error) {
322
+ if (error instanceof InvalidOpcodeError || error instanceof AvmExecutionError) {
323
+ throw error;
324
+ } else {
325
+ throw new AvmParsingError(`${error}`);
326
+ }
327
+ }
328
+ }
@@ -72,8 +72,7 @@ export declare enum Opcode {
72
72
  SHA256COMPRESSION = 63,
73
73
  KECCAKF1600 = 64,
74
74
  ECADD = 65,
75
- MSM = 66,
76
- TORADIXBE = 67
75
+ TORADIXBE = 66
77
76
  }
78
77
  export declare const MAX_OPCODE_VALUE: number;
79
78
  export declare enum OperandType {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instruction_serialization.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/serialization/instruction_serialization.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;GAGG;AACH,oBAAY,MAAM;IAEhB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;IACN,OAAO,IAAA;IACP,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,MAAM,KAAA;IACN,OAAO,KAAA;IAEP,YAAY,KAAA;IACZ,YAAY,KAAA;IACZ,cAAc,KAAA;IACd,cAAc,KAAA;IAEd,OAAO,KAAA;IACP,QAAQ,KAAA;IACR,YAAY,KAAA;IACZ,cAAc,KAAA;IAEd,KAAK,KAAA;IACL,MAAM,KAAA;IACN,MAAM,KAAA;IACN,MAAM,KAAA;IACN,OAAO,KAAA;IACP,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IAEN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,cAAc,KAAA;IACd,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,eAAe,KAAA;IACf,mBAAmB,KAAA;IACnB,kBAAkB,KAAA;IAClB,aAAa,KAAA;IAEb,IAAI,KAAA;IACJ,UAAU,KAAA;IACV,MAAM,KAAA;IACN,QAAQ,KAAA;IACR,SAAS,KAAA;IAET,QAAQ,KAAA;IAER,SAAS,KAAA;IACT,iBAAiB,KAAA;IACjB,WAAW,KAAA;IACX,KAAK,KAAA;IAEL,SAAS,KAAA;CACV;AAED,eAAO,MAAM,gBAAgB,QAI5B,CAAC;AAMF,oBAAY,WAAW;IACrB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;IACN,OAAO,IAAA;IACP,EAAE,IAAA;CACH;AAmDD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAcvG;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAmBrF"}
@@ -0,0 +1,225 @@
1
+ import { strict as assert } from 'assert';
2
+ import { BufferCursor } from './buffer_cursor.js';
3
+ /**
4
+ * All AVM opcodes. (Keep in sync with cpp counterpart code avm_opcode.hpp and rs in opcodes.rs).
5
+ * Source: https://yp-aztec.netlify.app/docs/public-vm/instruction-set
6
+ */ export var Opcode = /*#__PURE__*/ function(Opcode) {
7
+ // Compute
8
+ Opcode[Opcode["ADD_8"] = 0] = "ADD_8";
9
+ Opcode[Opcode["ADD_16"] = 1] = "ADD_16";
10
+ Opcode[Opcode["SUB_8"] = 2] = "SUB_8";
11
+ Opcode[Opcode["SUB_16"] = 3] = "SUB_16";
12
+ Opcode[Opcode["MUL_8"] = 4] = "MUL_8";
13
+ Opcode[Opcode["MUL_16"] = 5] = "MUL_16";
14
+ Opcode[Opcode["DIV_8"] = 6] = "DIV_8";
15
+ Opcode[Opcode["DIV_16"] = 7] = "DIV_16";
16
+ Opcode[Opcode["FDIV_8"] = 8] = "FDIV_8";
17
+ Opcode[Opcode["FDIV_16"] = 9] = "FDIV_16";
18
+ Opcode[Opcode["EQ_8"] = 10] = "EQ_8";
19
+ Opcode[Opcode["EQ_16"] = 11] = "EQ_16";
20
+ Opcode[Opcode["LT_8"] = 12] = "LT_8";
21
+ Opcode[Opcode["LT_16"] = 13] = "LT_16";
22
+ Opcode[Opcode["LTE_8"] = 14] = "LTE_8";
23
+ Opcode[Opcode["LTE_16"] = 15] = "LTE_16";
24
+ Opcode[Opcode["AND_8"] = 16] = "AND_8";
25
+ Opcode[Opcode["AND_16"] = 17] = "AND_16";
26
+ Opcode[Opcode["OR_8"] = 18] = "OR_8";
27
+ Opcode[Opcode["OR_16"] = 19] = "OR_16";
28
+ Opcode[Opcode["XOR_8"] = 20] = "XOR_8";
29
+ Opcode[Opcode["XOR_16"] = 21] = "XOR_16";
30
+ Opcode[Opcode["NOT_8"] = 22] = "NOT_8";
31
+ Opcode[Opcode["NOT_16"] = 23] = "NOT_16";
32
+ Opcode[Opcode["SHL_8"] = 24] = "SHL_8";
33
+ Opcode[Opcode["SHL_16"] = 25] = "SHL_16";
34
+ Opcode[Opcode["SHR_8"] = 26] = "SHR_8";
35
+ Opcode[Opcode["SHR_16"] = 27] = "SHR_16";
36
+ Opcode[Opcode["CAST_8"] = 28] = "CAST_8";
37
+ Opcode[Opcode["CAST_16"] = 29] = "CAST_16";
38
+ // Execution environment
39
+ Opcode[Opcode["GETENVVAR_16"] = 30] = "GETENVVAR_16";
40
+ Opcode[Opcode["CALLDATACOPY"] = 31] = "CALLDATACOPY";
41
+ Opcode[Opcode["RETURNDATASIZE"] = 32] = "RETURNDATASIZE";
42
+ Opcode[Opcode["RETURNDATACOPY"] = 33] = "RETURNDATACOPY";
43
+ // Control flow
44
+ Opcode[Opcode["JUMP_32"] = 34] = "JUMP_32";
45
+ Opcode[Opcode["JUMPI_32"] = 35] = "JUMPI_32";
46
+ Opcode[Opcode["INTERNALCALL"] = 36] = "INTERNALCALL";
47
+ Opcode[Opcode["INTERNALRETURN"] = 37] = "INTERNALRETURN";
48
+ // Memory
49
+ Opcode[Opcode["SET_8"] = 38] = "SET_8";
50
+ Opcode[Opcode["SET_16"] = 39] = "SET_16";
51
+ Opcode[Opcode["SET_32"] = 40] = "SET_32";
52
+ Opcode[Opcode["SET_64"] = 41] = "SET_64";
53
+ Opcode[Opcode["SET_128"] = 42] = "SET_128";
54
+ Opcode[Opcode["SET_FF"] = 43] = "SET_FF";
55
+ Opcode[Opcode["MOV_8"] = 44] = "MOV_8";
56
+ Opcode[Opcode["MOV_16"] = 45] = "MOV_16";
57
+ // World state
58
+ Opcode[Opcode["SLOAD"] = 46] = "SLOAD";
59
+ Opcode[Opcode["SSTORE"] = 47] = "SSTORE";
60
+ Opcode[Opcode["NOTEHASHEXISTS"] = 48] = "NOTEHASHEXISTS";
61
+ Opcode[Opcode["EMITNOTEHASH"] = 49] = "EMITNOTEHASH";
62
+ Opcode[Opcode["NULLIFIEREXISTS"] = 50] = "NULLIFIEREXISTS";
63
+ Opcode[Opcode["EMITNULLIFIER"] = 51] = "EMITNULLIFIER";
64
+ Opcode[Opcode["L1TOL2MSGEXISTS"] = 52] = "L1TOL2MSGEXISTS";
65
+ Opcode[Opcode["GETCONTRACTINSTANCE"] = 53] = "GETCONTRACTINSTANCE";
66
+ Opcode[Opcode["EMITUNENCRYPTEDLOG"] = 54] = "EMITUNENCRYPTEDLOG";
67
+ Opcode[Opcode["SENDL2TOL1MSG"] = 55] = "SENDL2TOL1MSG";
68
+ // External calls
69
+ Opcode[Opcode["CALL"] = 56] = "CALL";
70
+ Opcode[Opcode["STATICCALL"] = 57] = "STATICCALL";
71
+ Opcode[Opcode["RETURN"] = 58] = "RETURN";
72
+ Opcode[Opcode["REVERT_8"] = 59] = "REVERT_8";
73
+ Opcode[Opcode["REVERT_16"] = 60] = "REVERT_16";
74
+ // Misc
75
+ Opcode[Opcode["DEBUGLOG"] = 61] = "DEBUGLOG";
76
+ // Gadgets
77
+ Opcode[Opcode["POSEIDON2"] = 62] = "POSEIDON2";
78
+ Opcode[Opcode["SHA256COMPRESSION"] = 63] = "SHA256COMPRESSION";
79
+ Opcode[Opcode["KECCAKF1600"] = 64] = "KECCAKF1600";
80
+ Opcode[Opcode["ECADD"] = 65] = "ECADD";
81
+ // Conversion
82
+ Opcode[Opcode["TORADIXBE"] = 66] = "TORADIXBE";
83
+ return Opcode;
84
+ }({});
85
+ export const MAX_OPCODE_VALUE = Math.max(...Object.values(Opcode).map((k)=>+k).filter((k)=>!isNaN(k)));
86
+ // Possible types for an instruction's operand in its wire format. (Keep in sync with CPP code.
87
+ // See vm/avm_trace/deserialization.cpp)
88
+ // Note that cpp code introduced an additional enum value TAG to express the instruction tag. In TS,
89
+ // this one is parsed as UINT8.
90
+ export var OperandType = /*#__PURE__*/ function(OperandType) {
91
+ OperandType[OperandType["UINT8"] = 0] = "UINT8";
92
+ OperandType[OperandType["UINT16"] = 1] = "UINT16";
93
+ OperandType[OperandType["UINT32"] = 2] = "UINT32";
94
+ OperandType[OperandType["UINT64"] = 3] = "UINT64";
95
+ OperandType[OperandType["UINT128"] = 4] = "UINT128";
96
+ OperandType[OperandType["FF"] = 5] = "FF";
97
+ return OperandType;
98
+ }({});
99
+ // Specifies how to read and write each operand type.
100
+ const OPERAND_SPEC = new Map([
101
+ [
102
+ 0,
103
+ [
104
+ 1,
105
+ Buffer.prototype.readUint8,
106
+ Buffer.prototype.writeUint8
107
+ ]
108
+ ],
109
+ [
110
+ 1,
111
+ [
112
+ 2,
113
+ Buffer.prototype.readUint16BE,
114
+ Buffer.prototype.writeUint16BE
115
+ ]
116
+ ],
117
+ [
118
+ 2,
119
+ [
120
+ 4,
121
+ Buffer.prototype.readUint32BE,
122
+ Buffer.prototype.writeUint32BE
123
+ ]
124
+ ],
125
+ [
126
+ 3,
127
+ [
128
+ 8,
129
+ Buffer.prototype.readBigInt64BE,
130
+ Buffer.prototype.writeBigInt64BE
131
+ ]
132
+ ],
133
+ [
134
+ 4,
135
+ [
136
+ 16,
137
+ readBigInt128BE,
138
+ writeBigInt128BE
139
+ ]
140
+ ],
141
+ [
142
+ 5,
143
+ [
144
+ 32,
145
+ readBigInt254BE,
146
+ writeBigInt254BE
147
+ ]
148
+ ]
149
+ ]);
150
+ function readBigInt254BE(offset) {
151
+ const totalBytes = 32;
152
+ let ret = 0n;
153
+ for(let i = 0; i < totalBytes; ++i){
154
+ ret <<= 8n;
155
+ ret |= BigInt(this.readUint8(i + offset));
156
+ }
157
+ return ret;
158
+ }
159
+ function writeBigInt254BE(value) {
160
+ const totalBytes = 32;
161
+ for(let offset = totalBytes - 1; offset >= 0; --offset){
162
+ this.writeUint8(Number(value & 0xffn), offset);
163
+ value >>= 8n;
164
+ }
165
+ }
166
+ function readBigInt128BE(offset) {
167
+ const totalBytes = 16;
168
+ let ret = 0n;
169
+ for(let i = 0; i < totalBytes; ++i){
170
+ ret <<= 8n;
171
+ ret |= BigInt(this.readUint8(i + offset));
172
+ }
173
+ return ret;
174
+ }
175
+ function writeBigInt128BE(value) {
176
+ const totalBytes = 16;
177
+ for(let offset = totalBytes - 1; offset >= 0; --offset){
178
+ this.writeUint8(Number(value & 0xffn), offset);
179
+ value >>= 8n;
180
+ }
181
+ }
182
+ /**
183
+ * Reads an array of operands from a buffer.
184
+ * @param cursor Buffer to read from. Might be longer than needed.
185
+ * @param operands Specification of the operand types.
186
+ * @returns An array as big as {@code operands}, with the converted TS values.
187
+ */ export function deserialize(cursor, operands) {
188
+ const argValues = [];
189
+ if (Buffer.isBuffer(cursor)) {
190
+ cursor = new BufferCursor(cursor);
191
+ }
192
+ for (const op of operands){
193
+ const opType = op;
194
+ const [sizeBytes, reader, _writer] = OPERAND_SPEC.get(opType);
195
+ argValues.push(reader.call(cursor.buffer(), cursor.position()));
196
+ cursor.advance(sizeBytes);
197
+ }
198
+ return argValues;
199
+ }
200
+ /**
201
+ * Serializes a class using the specified operand types.
202
+ * More specifically, this serializes {@code [cls.constructor.opcode, ...Object.values(cls)]}.
203
+ * Observe in particular that:
204
+ * (1) the first operand type specified must correspond to the opcode;
205
+ * (2) the rest of the operand types must be specified in the order returned by {@code Object.values()}.
206
+ * @param operands Type specification for the values to be serialized.
207
+ * @param cls The class to be serialized.
208
+ * @returns
209
+ */ export function serializeAs(operands, opcode, cls) {
210
+ const chunks = [];
211
+ const rawClassValues = [
212
+ opcode,
213
+ ...Object.values(cls)
214
+ ];
215
+ assert(rawClassValues.length === operands.length, `Got ${rawClassValues.length} values but only ${operands.length} serialization operands are specified!`);
216
+ const classValues = rawClassValues;
217
+ for(let i = 0; i < operands.length; i++){
218
+ const opType = operands[i];
219
+ const [sizeBytes, _reader, writer] = OPERAND_SPEC.get(opType);
220
+ const buf = Buffer.alloc(sizeBytes);
221
+ writer.call(buf, classValues[i]);
222
+ chunks.push(buf);
223
+ }
224
+ return Buffer.concat(chunks);
225
+ }
@@ -1,15 +1,17 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  /// <reference types="node" resolution-mode="require"/>
3
- import { type ContractClassPublic, type ContractInstanceWithAddress, Fr } from '@aztec/circuits.js';
4
- import { type WorldStateDB } from '../public/public_db_sources.js';
5
- import { type PublicSideEffectTraceInterface } from '../public/side_effect_trace_interface.js';
3
+ import { Fr } from '@aztec/foundation/fields';
4
+ import { type ContractClassPublic, type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
5
+ import type { WorldStateDB } from '../../public/public_db_sources.js';
6
+ import type { PublicSideEffectTraceInterface } from '../side_effect_trace_interface.js';
6
7
  export declare function mockGetBytecode(worldStateDB: WorldStateDB, bytecode: Buffer): Promise<void>;
7
8
  export declare function mockTraceFork(trace: PublicSideEffectTraceInterface, nestedTrace?: PublicSideEffectTraceInterface): void;
8
9
  export declare function mockStorageRead(worldStateDB: WorldStateDB, value: Fr): void;
9
10
  export declare function mockNoteHashCount(mockedTrace: PublicSideEffectTraceInterface, count: number): void;
10
11
  export declare function mockStorageReadWithMap(worldStateDB: WorldStateDB, mockedStorage: Map<bigint, Fr>): void;
12
+ export declare function mockGetBytecodeCommitment(worldStateDB: WorldStateDB, commitment: Fr): void;
11
13
  export declare function mockNoteHashExists(worldStateDB: WorldStateDB, _leafIndex: Fr, value?: Fr): void;
12
- export declare function mockNullifierExists(worldStateDB: WorldStateDB, leafIndex: Fr, _value?: Fr): void;
14
+ export declare function mockGetNullifierIndex(worldStateDB: WorldStateDB, leafIndex: Fr, _ignoredValue?: Fr): void;
13
15
  export declare function mockL1ToL2MessageExists(worldStateDB: WorldStateDB, leafIndex: Fr, value: Fr, valueAtOtherIndices?: Fr): void;
14
16
  export declare function mockGetContractInstance(worldStateDB: WorldStateDB, contractInstance: ContractInstanceWithAddress): void;
15
17
  export declare function mockGetContractClass(worldStateDB: WorldStateDB, contractClass: ContractClassPublic): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test_utils.d.ts","sourceRoot":"","sources":["../../../src/public/avm/test_utils.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAEjC,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAExF,wBAAsB,eAAe,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAGjF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,8BAA8B,EAAE,WAAW,CAAC,EAAE,8BAA8B,QAIhH;AAED,wBAAgB,eAAe,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,QAEpE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,8BAA8B,EAAE,KAAK,EAAE,MAAM,QAE3F;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,QAIhG;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,QAEnF;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,QASxF;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,QAElG;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,EAAE,EACb,KAAK,EAAE,EAAE,EACT,mBAAmB,CAAC,EAAE,EAAE,QAWzB;AAED,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,2BAA2B,QAEhH;AAED,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,QAElG"}
@@ -0,0 +1,52 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+ import { computePublicBytecodeCommitment } from '@aztec/stdlib/contract';
3
+ import { mock } from 'jest-mock-extended';
4
+ export async function mockGetBytecode(worldStateDB, bytecode) {
5
+ const commitment = await computePublicBytecodeCommitment(bytecode);
6
+ worldStateDB.getBytecodeCommitment.mockResolvedValue(commitment);
7
+ }
8
+ export function mockTraceFork(trace, nestedTrace) {
9
+ trace.fork.mockReturnValue(nestedTrace ?? mock());
10
+ }
11
+ export function mockStorageRead(worldStateDB, value) {
12
+ worldStateDB.storageRead.mockResolvedValue(value);
13
+ }
14
+ export function mockNoteHashCount(mockedTrace, count) {
15
+ mockedTrace.getNoteHashCount.mockReturnValue(count);
16
+ }
17
+ export function mockStorageReadWithMap(worldStateDB, mockedStorage) {
18
+ worldStateDB.storageRead.mockImplementation((_address, slot)=>Promise.resolve(mockedStorage.get(slot.toBigInt()) ?? Fr.ZERO));
19
+ }
20
+ export function mockGetBytecodeCommitment(worldStateDB, commitment) {
21
+ worldStateDB.getBytecodeCommitment.mockResolvedValue(commitment);
22
+ }
23
+ export function mockNoteHashExists(worldStateDB, _leafIndex, value) {
24
+ worldStateDB.getCommitmentValue.mockImplementation((index)=>{
25
+ if (index == _leafIndex.toBigInt()) {
26
+ return Promise.resolve(value);
27
+ } else {
28
+ // This is ok for now since the traceing functions handle it
29
+ return Promise.resolve(undefined);
30
+ }
31
+ });
32
+ }
33
+ export function mockGetNullifierIndex(worldStateDB, leafIndex, _ignoredValue) {
34
+ worldStateDB.getNullifierIndex.mockResolvedValue(leafIndex.toBigInt());
35
+ }
36
+ export function mockL1ToL2MessageExists(worldStateDB, leafIndex, value, valueAtOtherIndices) {
37
+ worldStateDB.getL1ToL2LeafValue.mockImplementation((index)=>{
38
+ if (index == leafIndex.toBigInt()) {
39
+ return Promise.resolve(value);
40
+ } else {
41
+ // any indices other than mockAtLeafIndex will return a different value
42
+ // (or undefined if no value is specified for other indices)
43
+ return Promise.resolve(valueAtOtherIndices);
44
+ }
45
+ });
46
+ }
47
+ export function mockGetContractInstance(worldStateDB, contractInstance) {
48
+ worldStateDB.getContractInstance.mockResolvedValue(contractInstance);
49
+ }
50
+ export function mockGetContractClass(worldStateDB, contractClass) {
51
+ worldStateDB.getContractClass.mockResolvedValue(contractClass);
52
+ }
@@ -1,7 +1,6 @@
1
1
  export class ContractClassBytecodeError extends Error {
2
- constructor(contractAddress) {
2
+ constructor(contractAddress){
3
3
  super(`Failed to get bytecode for contract at address ${contractAddress}`);
4
4
  this.name = 'ContractClassBytecodeError';
5
5
  }
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnl0ZWNvZGVfZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9ieXRlY29kZV9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLDBCQUEyQixTQUFRLEtBQUs7SUFDbkQsWUFBWSxlQUF1QjtRQUNqQyxLQUFLLENBQUMsa0RBQWtELGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLElBQUksR0FBRyw0QkFBNEIsQ0FBQztJQUMzQyxDQUFDO0NBQ0YifQ==
@@ -1,7 +1,13 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  /// <reference types="node" resolution-mode="require"/>
3
- import { type PublicExecutionRequest, type SimulationError } from '@aztec/circuit-types';
4
- import { type AvmExecutionHints, type ContractStorageRead, type ContractStorageUpdateRequest, type Fr, Gas, type L2ToL1Message, type NoteHash, type Nullifier, type PublicDataUpdateRequest, PublicInnerCallRequest, type PublicLog, type ReadRequest, type ScopedL2ToL1Message, type TreeLeafReadRequest } from '@aztec/circuits.js';
3
+ import type { Fr } from '@aztec/foundation/fields';
4
+ import { type AvmExecutionHints, type ContractStorageRead, type ContractStorageUpdateRequest, type PublicDataUpdateRequest, PublicInnerCallRequest } from '@aztec/stdlib/avm';
5
+ import type { SimulationError } from '@aztec/stdlib/errors';
6
+ import { Gas } from '@aztec/stdlib/gas';
7
+ import type { NoteHash, Nullifier, ReadRequest, TreeLeafReadRequest } from '@aztec/stdlib/kernel';
8
+ import type { PublicLog } from '@aztec/stdlib/logs';
9
+ import type { L2ToL1Message, ScopedL2ToL1Message } from '@aztec/stdlib/messaging';
10
+ import type { PublicExecutionRequest } from '@aztec/stdlib/tx';
5
11
  export interface PublicSideEffects {
6
12
  /** The contract storage update requests performed. */
7
13
  publicDataWrites: PublicDataUpdateRequest[];