@aztec/simulator 0.40.1 → 0.42.0

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 (234) hide show
  1. package/dest/acvm/acvm.d.ts +2 -2
  2. package/dest/acvm/acvm.d.ts.map +1 -1
  3. package/dest/acvm/acvm.js +3 -3
  4. package/dest/acvm/oracle/oracle.d.ts +6 -2
  5. package/dest/acvm/oracle/oracle.d.ts.map +1 -1
  6. package/dest/acvm/oracle/oracle.js +31 -19
  7. package/dest/acvm/oracle/typed_oracle.d.ts +8 -11
  8. package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
  9. package/dest/acvm/oracle/typed_oracle.js +17 -5
  10. package/dest/acvm/serialize.js +2 -2
  11. package/dest/avm/avm_execution_environment.d.ts +4 -3
  12. package/dest/avm/avm_execution_environment.d.ts.map +1 -1
  13. package/dest/avm/avm_execution_environment.js +7 -5
  14. package/dest/avm/avm_gas.d.ts +1 -5
  15. package/dest/avm/avm_gas.d.ts.map +1 -1
  16. package/dest/avm/avm_gas.js +67 -73
  17. package/dest/avm/avm_simulator.d.ts +5 -0
  18. package/dest/avm/avm_simulator.d.ts.map +1 -1
  19. package/dest/avm/avm_simulator.js +12 -4
  20. package/dest/avm/errors.d.ts +6 -0
  21. package/dest/avm/errors.d.ts.map +1 -1
  22. package/dest/avm/errors.js +10 -1
  23. package/dest/avm/fixtures/index.d.ts +3 -0
  24. package/dest/avm/fixtures/index.d.ts.map +1 -1
  25. package/dest/avm/fixtures/index.js +15 -3
  26. package/dest/avm/index.d.ts +2 -0
  27. package/dest/avm/index.d.ts.map +1 -0
  28. package/dest/avm/index.js +2 -0
  29. package/dest/avm/journal/host_storage.d.ts +1 -1
  30. package/dest/avm/journal/host_storage.d.ts.map +1 -1
  31. package/dest/avm/journal/journal.d.ts +4 -3
  32. package/dest/avm/journal/journal.d.ts.map +1 -1
  33. package/dest/avm/journal/journal.js +10 -11
  34. package/dest/avm/journal/nullifiers.d.ts +17 -5
  35. package/dest/avm/journal/nullifiers.d.ts.map +1 -1
  36. package/dest/avm/journal/nullifiers.js +27 -10
  37. package/dest/avm/journal/public_storage.d.ts +19 -6
  38. package/dest/avm/journal/public_storage.d.ts.map +1 -1
  39. package/dest/avm/journal/public_storage.js +30 -12
  40. package/dest/avm/journal/trace.d.ts +2 -0
  41. package/dest/avm/journal/trace.d.ts.map +1 -1
  42. package/dest/avm/journal/trace.js +7 -1
  43. package/dest/avm/journal/trace_types.d.ts +1 -0
  44. package/dest/avm/journal/trace_types.d.ts.map +1 -1
  45. package/dest/avm/journal/trace_types.js +1 -1
  46. package/dest/avm/opcodes/accrued_substate.d.ts.map +1 -1
  47. package/dest/avm/opcodes/accrued_substate.js +6 -7
  48. package/dest/avm/opcodes/arithmetic.d.ts +1 -7
  49. package/dest/avm/opcodes/arithmetic.d.ts.map +1 -1
  50. package/dest/avm/opcodes/arithmetic.js +1 -12
  51. package/dest/avm/opcodes/conversion.js +2 -2
  52. package/dest/avm/opcodes/external_calls.d.ts +2 -2
  53. package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
  54. package/dest/avm/opcodes/external_calls.js +25 -13
  55. package/dest/avm/opcodes/instruction.d.ts +1 -1
  56. package/dest/avm/opcodes/instruction.d.ts.map +1 -1
  57. package/dest/avm/opcodes/instruction.js +6 -4
  58. package/dest/avm/opcodes/memory.d.ts +0 -4
  59. package/dest/avm/opcodes/memory.d.ts.map +1 -1
  60. package/dest/avm/opcodes/memory.js +1 -7
  61. package/dest/avm/opcodes/storage.d.ts +0 -12
  62. package/dest/avm/opcodes/storage.d.ts.map +1 -1
  63. package/dest/avm/opcodes/storage.js +3 -18
  64. package/dest/avm/serialization/bytecode_serialization.js +2 -2
  65. package/dest/client/client_execution_context.d.ts +30 -20
  66. package/dest/client/client_execution_context.d.ts.map +1 -1
  67. package/dest/client/client_execution_context.js +59 -39
  68. package/dest/client/db_oracle.d.ts +17 -12
  69. package/dest/client/db_oracle.d.ts.map +1 -1
  70. package/dest/client/execution_note_cache.js +2 -2
  71. package/dest/client/execution_result.d.ts +17 -2
  72. package/dest/client/execution_result.d.ts.map +1 -1
  73. package/dest/client/execution_result.js +32 -4
  74. package/dest/client/private_execution.d.ts +2 -3
  75. package/dest/client/private_execution.d.ts.map +1 -1
  76. package/dest/client/private_execution.js +22 -8
  77. package/dest/client/simulator.d.ts +0 -16
  78. package/dest/client/simulator.d.ts.map +1 -1
  79. package/dest/client/simulator.js +13 -30
  80. package/dest/client/unconstrained_execution.d.ts +2 -3
  81. package/dest/client/unconstrained_execution.d.ts.map +1 -1
  82. package/dest/client/unconstrained_execution.js +5 -7
  83. package/dest/client/view_data_oracle.d.ts +12 -10
  84. package/dest/client/view_data_oracle.d.ts.map +1 -1
  85. package/dest/client/view_data_oracle.js +17 -11
  86. package/dest/common/index.d.ts +1 -0
  87. package/dest/common/index.d.ts.map +1 -1
  88. package/dest/common/index.js +2 -1
  89. package/dest/common/return_values.d.ts +11 -0
  90. package/dest/common/return_values.d.ts.map +1 -0
  91. package/dest/common/return_values.js +13 -0
  92. package/dest/index.d.ts +3 -1
  93. package/dest/index.d.ts.map +1 -1
  94. package/dest/index.js +4 -2
  95. package/dest/mocks/fixtures.d.ts +15 -10
  96. package/dest/mocks/fixtures.d.ts.map +1 -1
  97. package/dest/mocks/fixtures.js +22 -17
  98. package/dest/{simulator → providers}/acvm_native.d.ts.map +1 -1
  99. package/dest/{simulator → providers}/acvm_native.js +13 -14
  100. package/dest/providers/acvm_wasm.d.ts.map +1 -0
  101. package/dest/providers/acvm_wasm.js +15 -0
  102. package/dest/providers/index.d.ts.map +1 -0
  103. package/dest/{simulator → providers}/index.js +1 -1
  104. package/dest/{simulator → providers}/simulation_provider.d.ts.map +1 -1
  105. package/dest/{simulator → providers}/simulation_provider.js +1 -1
  106. package/dest/public/abstract_phase_manager.d.ts +43 -42
  107. package/dest/public/abstract_phase_manager.d.ts.map +1 -1
  108. package/dest/public/abstract_phase_manager.js +81 -103
  109. package/dest/public/app_logic_phase_manager.d.ts +7 -8
  110. package/dest/public/app_logic_phase_manager.d.ts.map +1 -1
  111. package/dest/public/app_logic_phase_manager.js +14 -14
  112. package/dest/public/{db.d.ts → db_interfaces.d.ts} +3 -3
  113. package/dest/public/db_interfaces.d.ts.map +1 -0
  114. package/dest/public/db_interfaces.js +2 -0
  115. package/dest/public/execution.d.ts +17 -14
  116. package/dest/public/execution.d.ts.map +1 -1
  117. package/dest/public/execution.js +1 -1
  118. package/dest/public/executor.d.ts +3 -30
  119. package/dest/public/executor.d.ts.map +1 -1
  120. package/dest/public/executor.js +32 -279
  121. package/dest/public/fee_payment.d.ts +11 -0
  122. package/dest/public/fee_payment.d.ts.map +1 -0
  123. package/dest/public/fee_payment.js +24 -0
  124. package/dest/public/hints_builder.d.ts +3 -2
  125. package/dest/public/hints_builder.d.ts.map +1 -1
  126. package/dest/public/hints_builder.js +8 -4
  127. package/dest/public/index.d.ts +4 -2
  128. package/dest/public/index.d.ts.map +1 -1
  129. package/dest/public/index.js +5 -3
  130. package/dest/public/phase_manager_factory.d.ts +1 -1
  131. package/dest/public/phase_manager_factory.d.ts.map +1 -1
  132. package/dest/public/{public_executor.d.ts → public_db_sources.d.ts} +3 -2
  133. package/dest/public/public_db_sources.d.ts.map +1 -0
  134. package/dest/public/public_db_sources.js +198 -0
  135. package/dest/public/public_kernel.js +14 -14
  136. package/dest/public/public_processor.d.ts +8 -6
  137. package/dest/public/public_processor.d.ts.map +1 -1
  138. package/dest/public/public_processor.js +48 -29
  139. package/dest/public/setup_phase_manager.d.ts +7 -9
  140. package/dest/public/setup_phase_manager.d.ts.map +1 -1
  141. package/dest/public/setup_phase_manager.js +11 -20
  142. package/dest/public/tail_phase_manager.d.ts +5 -11
  143. package/dest/public/tail_phase_manager.d.ts.map +1 -1
  144. package/dest/public/tail_phase_manager.js +16 -36
  145. package/dest/public/teardown_phase_manager.d.ts +7 -9
  146. package/dest/public/teardown_phase_manager.d.ts.map +1 -1
  147. package/dest/public/teardown_phase_manager.js +15 -21
  148. package/dest/public/transitional_adaptors.d.ts +3 -2
  149. package/dest/public/transitional_adaptors.d.ts.map +1 -1
  150. package/dest/public/transitional_adaptors.js +24 -8
  151. package/dest/public/utils.d.ts +2 -2
  152. package/dest/public/utils.d.ts.map +1 -1
  153. package/dest/public/utils.js +21 -14
  154. package/package.json +12 -9
  155. package/src/acvm/acvm.ts +0 -3
  156. package/src/acvm/oracle/oracle.ts +53 -27
  157. package/src/acvm/oracle/typed_oracle.ts +25 -16
  158. package/src/acvm/serialize.ts +1 -1
  159. package/src/avm/avm_execution_environment.ts +9 -5
  160. package/src/avm/avm_gas.ts +66 -73
  161. package/src/avm/avm_simulator.ts +14 -3
  162. package/src/avm/errors.ts +10 -0
  163. package/src/avm/fixtures/index.ts +22 -2
  164. package/src/avm/index.ts +1 -0
  165. package/src/avm/journal/host_storage.ts +1 -1
  166. package/src/avm/journal/journal.ts +15 -14
  167. package/src/avm/journal/nullifiers.ts +27 -14
  168. package/src/avm/journal/public_storage.ts +30 -16
  169. package/src/avm/journal/trace.ts +12 -0
  170. package/src/avm/journal/trace_types.ts +1 -0
  171. package/src/avm/opcodes/accrued_substate.ts +5 -6
  172. package/src/avm/opcodes/arithmetic.ts +1 -14
  173. package/src/avm/opcodes/conversion.ts +1 -1
  174. package/src/avm/opcodes/external_calls.ts +26 -10
  175. package/src/avm/opcodes/instruction.ts +5 -3
  176. package/src/avm/opcodes/memory.ts +1 -8
  177. package/src/avm/opcodes/storage.ts +3 -20
  178. package/src/avm/serialization/bytecode_serialization.ts +1 -1
  179. package/src/client/client_execution_context.ts +70 -44
  180. package/src/client/db_oracle.ts +18 -12
  181. package/src/client/execution_note_cache.ts +1 -1
  182. package/src/client/execution_result.ts +41 -3
  183. package/src/client/private_execution.ts +38 -20
  184. package/src/client/simulator.ts +11 -32
  185. package/src/client/unconstrained_execution.ts +9 -12
  186. package/src/client/view_data_oracle.ts +20 -12
  187. package/src/common/index.ts +1 -0
  188. package/src/common/return_values.ts +18 -0
  189. package/src/index.ts +3 -1
  190. package/src/mocks/fixtures.ts +31 -33
  191. package/src/{simulator → providers}/acvm_native.ts +21 -19
  192. package/src/{simulator → providers}/acvm_wasm.ts +2 -16
  193. package/src/public/abstract_phase_manager.ts +146 -207
  194. package/src/public/app_logic_phase_manager.ts +23 -39
  195. package/src/public/{db.ts → db_interfaces.ts} +2 -2
  196. package/src/public/execution.ts +17 -14
  197. package/src/public/executor.ts +51 -391
  198. package/src/public/fee_payment.ts +26 -0
  199. package/src/public/hints_builder.ts +17 -3
  200. package/src/public/index.ts +4 -2
  201. package/src/public/phase_manager_factory.ts +1 -1
  202. package/src/public/{public_executor.ts → public_db_sources.ts} +3 -2
  203. package/src/public/public_kernel.ts +24 -24
  204. package/src/public/public_processor.ts +82 -38
  205. package/src/public/setup_phase_manager.ts +20 -45
  206. package/src/public/tail_phase_manager.ts +18 -68
  207. package/src/public/teardown_phase_manager.ts +22 -41
  208. package/src/public/transitional_adaptors.ts +24 -13
  209. package/src/public/utils.ts +20 -14
  210. package/dest/client/logs_cache.d.ts +0 -33
  211. package/dest/client/logs_cache.d.ts.map +0 -1
  212. package/dest/client/logs_cache.js +0 -59
  213. package/dest/public/db.d.ts.map +0 -1
  214. package/dest/public/db.js +0 -2
  215. package/dest/public/public_execution_context.d.ts +0 -121
  216. package/dest/public/public_execution_context.d.ts.map +0 -1
  217. package/dest/public/public_execution_context.js +0 -214
  218. package/dest/public/public_executor.d.ts.map +0 -1
  219. package/dest/public/public_executor.js +0 -197
  220. package/dest/public/state_actions.d.ts +0 -39
  221. package/dest/public/state_actions.d.ts.map +0 -1
  222. package/dest/public/state_actions.js +0 -80
  223. package/dest/simulator/acvm_wasm.d.ts.map +0 -1
  224. package/dest/simulator/acvm_wasm.js +0 -22
  225. package/dest/simulator/index.d.ts.map +0 -1
  226. package/src/client/logs_cache.ts +0 -65
  227. package/src/public/public_execution_context.ts +0 -289
  228. package/src/public/state_actions.ts +0 -102
  229. /package/dest/{simulator → providers}/acvm_native.d.ts +0 -0
  230. /package/dest/{simulator → providers}/acvm_wasm.d.ts +0 -0
  231. /package/dest/{simulator → providers}/index.d.ts +0 -0
  232. /package/dest/{simulator → providers}/simulation_provider.d.ts +0 -0
  233. /package/src/{simulator → providers}/index.ts +0 -0
  234. /package/src/{simulator → providers}/simulation_provider.ts +0 -0
@@ -32,90 +32,84 @@ export const EmptyGas = {
32
32
  };
33
33
  /** Dimensions of gas usage: L1, L2, and DA. */
34
34
  export const GasDimensions = ['l2Gas', 'daGas'];
35
- /** Null object to represent a gas cost that's dynamic instead of fixed for a given instruction. */
36
- export const DynamicGasCost = Symbol('DynamicGasCost');
37
- /** Temporary default gas cost. We should eventually remove all usage of this variable in favor of actual gas for each opcode. */
38
- const TemporaryDefaultGasCost = { l2Gas: 10, daGas: 0 };
35
+ /** Default gas cost for an opcode. */
36
+ const DefaultBaseGasCost = { l2Gas: 10, daGas: 0 };
39
37
  /** Base gas costs for each instruction. Additional gas cost may be added on top due to memory or storage accesses, etc. */
40
- export const GasCosts = {
41
- [Opcode.ADD]: TemporaryDefaultGasCost,
42
- [Opcode.SUB]: TemporaryDefaultGasCost,
43
- [Opcode.MUL]: TemporaryDefaultGasCost,
44
- [Opcode.DIV]: TemporaryDefaultGasCost,
45
- [Opcode.FDIV]: TemporaryDefaultGasCost,
46
- [Opcode.EQ]: TemporaryDefaultGasCost,
47
- [Opcode.LT]: TemporaryDefaultGasCost,
48
- [Opcode.LTE]: TemporaryDefaultGasCost,
49
- [Opcode.AND]: TemporaryDefaultGasCost,
50
- [Opcode.OR]: TemporaryDefaultGasCost,
51
- [Opcode.XOR]: TemporaryDefaultGasCost,
52
- [Opcode.NOT]: TemporaryDefaultGasCost,
53
- [Opcode.SHL]: TemporaryDefaultGasCost,
54
- [Opcode.SHR]: TemporaryDefaultGasCost,
55
- [Opcode.CAST]: TemporaryDefaultGasCost,
38
+ const BaseGasCosts = {
39
+ [Opcode.ADD]: DefaultBaseGasCost,
40
+ [Opcode.SUB]: DefaultBaseGasCost,
41
+ [Opcode.MUL]: DefaultBaseGasCost,
42
+ [Opcode.DIV]: DefaultBaseGasCost,
43
+ [Opcode.FDIV]: DefaultBaseGasCost,
44
+ [Opcode.EQ]: DefaultBaseGasCost,
45
+ [Opcode.LT]: DefaultBaseGasCost,
46
+ [Opcode.LTE]: DefaultBaseGasCost,
47
+ [Opcode.AND]: DefaultBaseGasCost,
48
+ [Opcode.OR]: DefaultBaseGasCost,
49
+ [Opcode.XOR]: DefaultBaseGasCost,
50
+ [Opcode.NOT]: DefaultBaseGasCost,
51
+ [Opcode.SHL]: DefaultBaseGasCost,
52
+ [Opcode.SHR]: DefaultBaseGasCost,
53
+ [Opcode.CAST]: DefaultBaseGasCost,
56
54
  // Execution environment
57
- [Opcode.ADDRESS]: TemporaryDefaultGasCost,
58
- [Opcode.STORAGEADDRESS]: TemporaryDefaultGasCost,
59
- [Opcode.SENDER]: TemporaryDefaultGasCost,
60
- [Opcode.FEEPERL2GAS]: TemporaryDefaultGasCost,
61
- [Opcode.FEEPERDAGAS]: TemporaryDefaultGasCost,
62
- [Opcode.TRANSACTIONFEE]: TemporaryDefaultGasCost,
63
- [Opcode.CONTRACTCALLDEPTH]: TemporaryDefaultGasCost,
64
- [Opcode.CHAINID]: TemporaryDefaultGasCost,
65
- [Opcode.VERSION]: TemporaryDefaultGasCost,
66
- [Opcode.BLOCKNUMBER]: TemporaryDefaultGasCost,
67
- [Opcode.TIMESTAMP]: TemporaryDefaultGasCost,
68
- [Opcode.COINBASE]: TemporaryDefaultGasCost,
69
- [Opcode.BLOCKL2GASLIMIT]: TemporaryDefaultGasCost,
70
- [Opcode.BLOCKDAGASLIMIT]: TemporaryDefaultGasCost,
71
- [Opcode.CALLDATACOPY]: TemporaryDefaultGasCost,
55
+ [Opcode.ADDRESS]: DefaultBaseGasCost,
56
+ [Opcode.STORAGEADDRESS]: DefaultBaseGasCost,
57
+ [Opcode.SENDER]: DefaultBaseGasCost,
58
+ [Opcode.FEEPERL2GAS]: DefaultBaseGasCost,
59
+ [Opcode.FEEPERDAGAS]: DefaultBaseGasCost,
60
+ [Opcode.TRANSACTIONFEE]: DefaultBaseGasCost,
61
+ [Opcode.CONTRACTCALLDEPTH]: DefaultBaseGasCost,
62
+ [Opcode.CHAINID]: DefaultBaseGasCost,
63
+ [Opcode.VERSION]: DefaultBaseGasCost,
64
+ [Opcode.BLOCKNUMBER]: DefaultBaseGasCost,
65
+ [Opcode.TIMESTAMP]: DefaultBaseGasCost,
66
+ [Opcode.COINBASE]: DefaultBaseGasCost,
67
+ [Opcode.BLOCKL2GASLIMIT]: DefaultBaseGasCost,
68
+ [Opcode.BLOCKDAGASLIMIT]: DefaultBaseGasCost,
69
+ [Opcode.CALLDATACOPY]: DefaultBaseGasCost,
72
70
  // Gas
73
- [Opcode.L2GASLEFT]: TemporaryDefaultGasCost,
74
- [Opcode.DAGASLEFT]: TemporaryDefaultGasCost,
71
+ [Opcode.L2GASLEFT]: DefaultBaseGasCost,
72
+ [Opcode.DAGASLEFT]: DefaultBaseGasCost,
75
73
  // Control flow
76
- [Opcode.JUMP]: TemporaryDefaultGasCost,
77
- [Opcode.JUMPI]: TemporaryDefaultGasCost,
78
- [Opcode.INTERNALCALL]: TemporaryDefaultGasCost,
79
- [Opcode.INTERNALRETURN]: TemporaryDefaultGasCost,
74
+ [Opcode.JUMP]: DefaultBaseGasCost,
75
+ [Opcode.JUMPI]: DefaultBaseGasCost,
76
+ [Opcode.INTERNALCALL]: DefaultBaseGasCost,
77
+ [Opcode.INTERNALRETURN]: DefaultBaseGasCost,
80
78
  // Memory
81
- [Opcode.SET]: TemporaryDefaultGasCost,
82
- [Opcode.MOV]: TemporaryDefaultGasCost,
83
- [Opcode.CMOV]: TemporaryDefaultGasCost,
79
+ [Opcode.SET]: DefaultBaseGasCost,
80
+ [Opcode.MOV]: DefaultBaseGasCost,
81
+ [Opcode.CMOV]: DefaultBaseGasCost,
84
82
  // World state
85
- [Opcode.SLOAD]: TemporaryDefaultGasCost,
86
- [Opcode.SSTORE]: TemporaryDefaultGasCost,
87
- [Opcode.NOTEHASHEXISTS]: TemporaryDefaultGasCost,
88
- [Opcode.EMITNOTEHASH]: TemporaryDefaultGasCost,
89
- [Opcode.NULLIFIEREXISTS]: TemporaryDefaultGasCost,
90
- [Opcode.EMITNULLIFIER]: TemporaryDefaultGasCost,
91
- [Opcode.L1TOL2MSGEXISTS]: TemporaryDefaultGasCost,
92
- [Opcode.HEADERMEMBER]: TemporaryDefaultGasCost,
93
- [Opcode.EMITUNENCRYPTEDLOG]: TemporaryDefaultGasCost,
94
- [Opcode.SENDL2TOL1MSG]: TemporaryDefaultGasCost,
95
- [Opcode.GETCONTRACTINSTANCE]: TemporaryDefaultGasCost,
83
+ [Opcode.SLOAD]: DefaultBaseGasCost,
84
+ [Opcode.SSTORE]: DefaultBaseGasCost,
85
+ [Opcode.NOTEHASHEXISTS]: DefaultBaseGasCost,
86
+ [Opcode.EMITNOTEHASH]: DefaultBaseGasCost,
87
+ [Opcode.NULLIFIEREXISTS]: DefaultBaseGasCost,
88
+ [Opcode.EMITNULLIFIER]: DefaultBaseGasCost,
89
+ [Opcode.L1TOL2MSGEXISTS]: DefaultBaseGasCost,
90
+ [Opcode.HEADERMEMBER]: DefaultBaseGasCost,
91
+ [Opcode.EMITUNENCRYPTEDLOG]: DefaultBaseGasCost,
92
+ [Opcode.SENDL2TOL1MSG]: DefaultBaseGasCost,
93
+ [Opcode.GETCONTRACTINSTANCE]: DefaultBaseGasCost,
96
94
  // External calls
97
- [Opcode.CALL]: TemporaryDefaultGasCost,
98
- [Opcode.STATICCALL]: TemporaryDefaultGasCost,
99
- [Opcode.DELEGATECALL]: TemporaryDefaultGasCost,
100
- [Opcode.RETURN]: TemporaryDefaultGasCost,
101
- [Opcode.REVERT]: TemporaryDefaultGasCost,
95
+ [Opcode.CALL]: DefaultBaseGasCost,
96
+ [Opcode.STATICCALL]: DefaultBaseGasCost,
97
+ [Opcode.DELEGATECALL]: DefaultBaseGasCost,
98
+ [Opcode.RETURN]: DefaultBaseGasCost,
99
+ [Opcode.REVERT]: DefaultBaseGasCost,
102
100
  // Misc
103
- [Opcode.DEBUGLOG]: TemporaryDefaultGasCost,
101
+ [Opcode.DEBUGLOG]: DefaultBaseGasCost,
104
102
  // Gadgets
105
- [Opcode.KECCAK]: TemporaryDefaultGasCost,
106
- [Opcode.POSEIDON2]: TemporaryDefaultGasCost,
107
- [Opcode.SHA256]: TemporaryDefaultGasCost, // temp - may be removed, but alot of contracts rely on i: TemporaryDefaultGasCost,
108
- [Opcode.PEDERSEN]: TemporaryDefaultGasCost, // temp - may be removed, but alot of contracts rely on i: TemporaryDefaultGasCost,t
103
+ [Opcode.KECCAK]: DefaultBaseGasCost,
104
+ [Opcode.POSEIDON2]: DefaultBaseGasCost,
105
+ [Opcode.SHA256]: DefaultBaseGasCost,
106
+ [Opcode.PEDERSEN]: DefaultBaseGasCost,
109
107
  // Conversions
110
- [Opcode.TORADIXLE]: TemporaryDefaultGasCost,
108
+ [Opcode.TORADIXLE]: DefaultBaseGasCost,
111
109
  };
112
- /** Returns the fixed base gas cost for a given opcode, or throws if set to dynamic. */
110
+ /** Returns the fixed base gas cost for a given opcode. */
113
111
  export function getBaseGasCost(opcode) {
114
- const cost = GasCosts[opcode];
115
- if (cost === DynamicGasCost) {
116
- throw new Error(`Opcode ${Opcode[opcode]} has dynamic gas cost`);
117
- }
118
- return cost;
112
+ return BaseGasCosts[opcode];
119
113
  }
120
114
  /** Returns the gas cost associated with the memory operations performed. */
121
115
  export function getMemoryGasCost(args) {
@@ -156,4 +150,4 @@ function getGasCostMultiplierFromTypeTag(tag) {
156
150
  throw new InstructionExecutionError(`Invalid tag type for gas cost multiplier: ${TypeTag[tag]}`);
157
151
  }
158
152
  }
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2dhcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2dhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBUXRFLCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVE7SUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEQsQ0FBQztBQUVELCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQWlEO0lBQzVFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2hFLENBQUM7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxVQUFVLE9BQU8sQ0FBQyxPQUFxQjtJQUMzQyxPQUFPLEVBQUUsR0FBRyxRQUFRLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztBQUNyQyxDQUFDO0FBRUQsK0NBQStDO0FBQy9DLE1BQU0sVUFBVSxNQUFNLENBQUMsR0FBRyxLQUFxQjtJQUM3QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQ2pCLENBQUMsR0FBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ25DLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxHQUFHLENB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
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2dhcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2dhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBUXRFLCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVE7SUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEQsQ0FBQztBQUVELCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQWlEO0lBQzVFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2hFLENBQUM7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxVQUFVLE9BQU8sQ0FBQyxPQUFxQjtJQUMzQyxPQUFPLEVBQUUsR0FBRyxRQUFRLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztBQUNyQyxDQUFDO0FBRUQsK0NBQStDO0FBQy9DLE1BQU0sVUFBVSxNQUFNLENBQUMsR0FBRyxLQUFxQjtJQUM3QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQ2pCLENBQUMsR0FBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ25DLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxHQUFHLENB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
@@ -5,11 +5,16 @@ import type { Instruction } from './opcodes/index.js';
5
5
  export declare class AvmSimulator {
6
6
  private context;
7
7
  private log;
8
+ private bytecode;
8
9
  constructor(context: AvmContext);
9
10
  /**
10
11
  * Fetch the bytecode and execute it in the current context.
11
12
  */
12
13
  execute(): Promise<AvmContractCallResults>;
14
+ /**
15
+ * Return the bytecode used for execution, if any.
16
+ */
17
+ getBytecode(): Buffer | undefined;
13
18
  /**
14
19
  * Executes the provided bytecode in the current context.
15
20
  * This method is useful for testing and debugging.
@@ -1 +1 @@
1
- {"version":3,"file":"avm_simulator.d.ts","sourceRoot":"","sources":["../../src/avm/avm_simulator.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAQtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,qBAAa,YAAY;IAGX,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,GAAG,CAAc;gBAEL,OAAO,EAAE,UAAU;IAMvC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAiBvD;;;OAGG;IACU,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI/E;;;OAGG;IACU,mBAAmB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAgD/F"}
1
+ {"version":3,"file":"avm_simulator.d.ts","sourceRoot":"","sources":["../../src/avm/avm_simulator.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAQtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,qBAAa,YAAY;IAIX,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,QAAQ,CAAqB;gBAEjB,OAAO,EAAE,UAAU;IAMvC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAgBvD;;OAEG;IACI,WAAW,IAAI,MAAM,GAAG,SAAS;IAIxC;;;OAGG;IACU,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAQ/E;;;OAGG;IACU,mBAAmB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAgD/F"}
@@ -1,6 +1,6 @@
1
1
  import { createDebugLogger } from '@aztec/foundation/log';
2
2
  import { strict as assert } from 'assert';
3
- import { isAvmBytecode } from '../public/transitional_adaptors.js';
3
+ import { decompressBytecodeIfCompressed, isAvmBytecode } from '../public/transitional_adaptors.js';
4
4
  import { AvmContractCallResults } from './avm_message_call_result.js';
5
5
  import { AvmExecutionError, InvalidProgramCounterError, NoBytecodeForContractError, revertReasonFromExceptionalHalt, revertReasonFromExplicitRevert, } from './errors.js';
6
6
  import { decodeFromBytecode } from './serialization/bytecode_serialization.js';
@@ -20,15 +20,23 @@ export class AvmSimulator {
20
20
  if (!bytecode) {
21
21
  throw new NoBytecodeForContractError(this.context.environment.address);
22
22
  }
23
- assert(isAvmBytecode(bytecode), "AVM simulator can't execute non-AVM bytecode");
24
23
  return await this.executeBytecode(bytecode);
25
24
  }
25
+ /**
26
+ * Return the bytecode used for execution, if any.
27
+ */
28
+ getBytecode() {
29
+ return this.bytecode;
30
+ }
26
31
  /**
27
32
  * Executes the provided bytecode in the current context.
28
33
  * This method is useful for testing and debugging.
29
34
  */
30
35
  async executeBytecode(bytecode) {
31
- return await this.executeInstructions(decodeFromBytecode(bytecode));
36
+ const decompressedBytecode = await decompressBytecodeIfCompressed(bytecode);
37
+ assert(isAvmBytecode(decompressedBytecode), "AVM simulator can't execute non-AVM bytecode");
38
+ this.bytecode = decompressedBytecode;
39
+ return await this.executeInstructions(decodeFromBytecode(decompressedBytecode));
32
40
  }
33
41
  /**
34
42
  * Executes the provided instructions in the current context.
@@ -77,4 +85,4 @@ export class AvmSimulator {
77
85
  }
78
86
  }
79
87
  }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX3NpbXVsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX3NpbXVsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRW5FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsOEJBQThCLEdBQy9CLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE1BQU0sT0FBTyxZQUFZO0lBR3ZCLFlBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDckMsSUFBSSxDQUFDLEdBQUcsR0FBRyxpQkFBaUIsQ0FDMUIsOEJBQThCLE9BQU8sQ0FBQyxXQUFXLENBQUMseUJBQXlCLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FDMUYsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDO1FBQ3BFLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FDdEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUNoQyxRQUFRLENBQ1QsQ0FBQztRQUVGLGtGQUFrRjtRQUNsRiw2Q0FBNkM7UUFDN0MsSUFB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
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX3NpbXVsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX3NpbXVsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFMUMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRW5HLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsOEJBQThCLEdBQy9CLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE1BQU0sT0FBTyxZQUFZO0lBSXZCLFlBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDckMsSUFBSSxDQUFDLEdBQUcsR0FBRyxpQkFBaUIsQ0FDMUIsOEJBQThCLE9BQU8sQ0FBQyxXQUFXLENBQUMseUJBQXlCLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FDMUYsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDO1FBQ3BFLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FDdEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUNoQyxRQUFRLENBQ1QsQ0FBQztRQUVGLGtGQUFrRjtRQUNsRiw2Q0FB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
@@ -36,6 +36,12 @@ export declare class TagCheckError extends AvmExecutionError {
36
36
  export declare class OutOfGasError extends AvmExecutionError {
37
37
  constructor(dimensions: string[]);
38
38
  }
39
+ /**
40
+ * Error is thrown when a static call attempts to alter some state
41
+ */
42
+ export declare class StaticCallAlterationError extends InstructionExecutionError {
43
+ constructor();
44
+ }
39
45
  /**
40
46
  * Error thrown to propagate a nested call's revert.
41
47
  * @param message - the error's message
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/avm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,8BAAsB,iBAAkB,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,eAAe,EAAE,YAAY;CAI1C;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAIpC;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;WACpC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa;WAI7E,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa;gBAI5D,OAAO,EAAE,MAAM;CAI5B;AAED,oCAAoC;AACpC,qBAAa,aAAc,SAAQ,iBAAiB;gBACtC,UAAU,EAAE,MAAM,EAAE;CAIjC;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;IACd,WAAW,EAAE,eAAe;gBAApD,OAAO,EAAE,MAAM,EAAS,WAAW,EAAE,eAAe;CAIjE;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,cAAc;gBACrC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpH;AAqBD;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,GAAG,eAAe,CAIrH;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,eAAe,CAGrG;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,EAAE,EAAE,GAAG,MAAM,CAalE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/avm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,8BAAsB,iBAAkB,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,eAAe,EAAE,YAAY;CAI1C;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAIpC;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;WACpC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa;WAI7E,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa;gBAI5D,OAAO,EAAE,MAAM;CAI5B;AAED,oCAAoC;AACpC,qBAAa,aAAc,SAAQ,iBAAiB;gBACtC,UAAU,EAAE,MAAM,EAAE;CAIjC;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,yBAAyB;;CAKvE;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;IACd,WAAW,EAAE,eAAe;gBAApD,OAAO,EAAE,MAAM,EAAS,WAAW,EAAE,eAAe;CAIjE;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,cAAc;gBACrC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,YAAY;CAGpH;AAqBD;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,GAAG,eAAe,CAIrH;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,eAAe,CAGrG;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,EAAE,EAAE,GAAG,MAAM,CAalE"}
@@ -55,6 +55,15 @@ export class OutOfGasError extends AvmExecutionError {
55
55
  this.name = 'OutOfGasError';
56
56
  }
57
57
  }
58
+ /**
59
+ * Error is thrown when a static call attempts to alter some state
60
+ */
61
+ export class StaticCallAlterationError extends InstructionExecutionError {
62
+ constructor() {
63
+ super('Static call cannot update the state, emit L2->L1 messages or generate logs');
64
+ this.name = 'StaticCallAlterationError';
65
+ }
66
+ }
58
67
  /**
59
68
  * Error thrown to propagate a nested call's revert.
60
69
  * @param message - the error's message
@@ -136,4 +145,4 @@ export function decodeRevertDataAsMessage(revertData) {
136
145
  }
137
146
  }
138
147
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F2bS9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR3JEOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixpQkFBa0IsU0FBUSxLQUFLO0lBQ25ELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTywwQkFBMkIsU0FBUSxpQkFBaUI7SUFDL0QsWUFBWSxlQUE2QjtRQUN2QyxLQUFLLENBQUMseUJBQXlCLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksR0FBRyxpQ0FBaUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0Y7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsaUJBQWlCO0lBQy9ELFlBQVksRUFBVSxFQUFFLEdBQVc7UUFDakMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLFlBQVksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsSUFBSSxHQUFHLDRCQUE0QixDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGlCQUFpQjtJQUM5RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRywyQkFBMkIsQ0FBQztJQUMxQyxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxhQUFjLFNBQVEsaUJBQWlCO0lBQzNDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBYyxFQUFFLE1BQWMsRUFBRSxXQUFtQjtRQUN6RSxPQUFPLElBQUksYUFBYSxDQUFDLDBCQUEwQixNQUFN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
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F2bS9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR3JEOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixpQkFBa0IsU0FBUSxLQUFLO0lBQ25ELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTywwQkFBMkIsU0FBUSxpQkFBaUI7SUFDL0QsWUFBWSxlQUE2QjtRQUN2QyxLQUFLLENBQUMseUJBQXlCLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksR0FBRyxpQ0FBaUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0Y7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsaUJBQWlCO0lBQy9ELFlBQVksRUFBVSxFQUFFLEdBQVc7UUFDakMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLFlBQVksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsSUFBSSxHQUFHLDRCQUE0QixDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGlCQUFpQjtJQUM5RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRywyQkFBMkIsQ0FBQztJQUMxQyxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxhQUFjLFNBQVEsaUJBQWlCO0lBQzNDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBYyxFQUFFLE1BQWMsRUFBRSxXQUFtQjtRQUN6RSxPQUFPLElBQUksYUFBYSxDQUFDLDBCQUEwQixNQUFN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
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" resolution-mode="require"/>
1
2
  import { GlobalVariables } from '@aztec/circuits.js';
2
3
  import { type CommitmentsDB, type PublicContractsDB, type PublicStateDB } from '../../index.js';
3
4
  import { AvmContext } from '../avm_context.js';
@@ -46,4 +47,6 @@ export declare function adjustCalldataIndex(userIndex: number): number;
46
47
  export declare function anyAvmContextInputs(): any[];
47
48
  export declare function randomMemoryBytes(length: number): Uint8[];
48
49
  export declare function randomMemoryFields(length: number): Field[];
50
+ export declare function getAvmTestContractBytecode(functionName: string): Buffer;
51
+ export declare function getAvmNestedCallsTestContractBytecode(functionName: string): Buffer;
49
52
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/avm/fixtures/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAU,MAAM,oBAAoB,CAAC;AASnF,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAoB,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE;IACtC,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,GAAG,CAAC,EAAE,uBAAuB,CAAC;IAC9B,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC,GAAG,UAAU,CAMb;AAED,qDAAqD;AACrD,wBAAgB,eAAe,CAAC,SAAS,CAAC,EAAE;IAC1C,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,GAAG,WAAW,CAMd;AAED,0DAA0D;AAC1D,wBAAgB,+BAA+B,IAAI,0BAA0B,CAE5E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAiB9G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAUzF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAKtF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,GAAG,GAAG,CAEhE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,mBAAmB,UAMlC;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAEzD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAE1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/avm/fixtures/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAwB,eAAe,EAAU,MAAM,oBAAoB,CAAC;AAWnF,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAoB,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE;IACtC,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,GAAG,CAAC,EAAE,uBAAuB,CAAC;IAC9B,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC,GAAG,UAAU,CAMb;AAED,qDAAqD;AACrD,wBAAgB,eAAe,CAAC,SAAS,CAAC,EAAE;IAC1C,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,GAAG,WAAW,CAMd;AAED,0DAA0D;AAC1D,wBAAgB,+BAA+B,IAAI,0BAA0B,CAE5E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAiB9G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAUzF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAKtF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,GAAG,GAAG,CAEhE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,mBAAmB,UAMlC;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAEzD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAE1D;AAED,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAOvE;AAED,wBAAgB,qCAAqC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAOlF"}
@@ -3,6 +3,8 @@ import { FunctionSelector } from '@aztec/foundation/abi';
3
3
  import { AztecAddress } from '@aztec/foundation/aztec-address';
4
4
  import { EthAddress } from '@aztec/foundation/eth-address';
5
5
  import { Fr } from '@aztec/foundation/fields';
6
+ import { AvmNestedCallsTestContractArtifact, AvmTestContractArtifact } from '@aztec/noir-contracts.js';
7
+ import { strict as assert } from 'assert';
6
8
  import { mock } from 'jest-mock-extended';
7
9
  import merge from 'lodash.merge';
8
10
  import { AvmContext } from '../avm_context.js';
@@ -42,8 +44,8 @@ export function initGlobalVariables(overrides) {
42
44
  */
43
45
  export function initMachineState(overrides) {
44
46
  return AvmMachineState.fromState({
45
- l2GasLeft: overrides?.l2GasLeft ?? 100e6,
46
- daGasLeft: overrides?.daGasLeft ?? 100e6,
47
+ l2GasLeft: overrides?.l2GasLeft ?? 1e8,
48
+ daGasLeft: overrides?.daGasLeft ?? 1e8,
47
49
  });
48
50
  }
49
51
  /**
@@ -72,4 +74,14 @@ export function randomMemoryBytes(length) {
72
74
  export function randomMemoryFields(length) {
73
75
  return [...Array(length)].map(_ => new Field(Fr.random()));
74
76
  }
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXZtL2ZpeHR1cmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBR2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbkU7O0dBRUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLFNBSTNCO0lBQ0MsT0FBTyxJQUFJLFVBQVUsQ0FDbkIsU0FBUyxFQUFFLGdCQUFnQixJQUFJLCtCQUErQixFQUFFLEVBQ2hFLFNBQVMsRUFBRSxHQUFHLElBQUksd0JBQXdCLEVBQUUsRUFDNUMsU0FBUyxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFB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
77
+ export function getAvmTestContractBytecode(functionName) {
78
+ const artifact = AvmTestContractArtifact.functions.find(f => f.name === functionName);
79
+ assert(!!artifact?.bytecode, `No bytecode found for function ${functionName}. Try re-running bootstrap.sh on the repository root.`);
80
+ return artifact.bytecode;
81
+ }
82
+ export function getAvmNestedCallsTestContractBytecode(functionName) {
83
+ const artifact = AvmNestedCallsTestContractArtifact.functions.find(f => f.name === functionName);
84
+ assert(!!artifact?.bytecode, `No bytecode found for function ${functionName}. Try re-running bootstrap.sh on the repository root.`);
85
+ return artifact.bytecode;
86
+ }
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXZtL2ZpeHR1cmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RyxPQUFPLEVBQUUsTUFBTSxJQUFJLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBR2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbkU7O0dBRUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLFNBSTNCO0lBQ0MsT0FBTyxJQUFJLFVBQVUsQ0FDbkIs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
@@ -0,0 +1,2 @@
1
+ export * from './avm_simulator.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/avm/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './avm_simulator.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXZtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUMifQ==
@@ -1,4 +1,4 @@
1
- import { type CommitmentsDB, type PublicContractsDB, type PublicStateDB } from '../../public/db.js';
1
+ import { type CommitmentsDB, type PublicContractsDB, type PublicStateDB } from '../../public/db_interfaces.js';
2
2
  /**
3
3
  * Host storage
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"host_storage.d.ts","sourceRoot":"","sources":["../../../src/avm/journal/host_storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEpG;;;;GAIG;AACH,qBAAa,WAAW;aAEJ,aAAa,EAAE,aAAa;aAC5B,WAAW,EAAE,iBAAiB;aAC9B,aAAa,EAAE,aAAa;gBAF5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,iBAAiB,EAC9B,aAAa,EAAE,aAAa;CAE/C"}
1
+ {"version":3,"file":"host_storage.d.ts","sourceRoot":"","sources":["../../../src/avm/journal/host_storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE/G;;;;GAIG;AACH,qBAAa,WAAW;aAEJ,aAAa,EAAE,aAAa;aAC5B,WAAW,EAAE,iBAAiB;aAC9B,aAAa,EAAE,aAAa;gBAF5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,iBAAiB,EAC9B,aAAa,EAAE,aAAa;CAE/C"}
@@ -1,5 +1,5 @@
1
1
  import { UnencryptedL2Log } from '@aztec/circuit-types';
2
- import { ContractStorageRead, ContractStorageUpdateRequest, EthAddress, L2ToL1Message, NoteHash, Nullifier, ReadRequest, SideEffect } from '@aztec/circuits.js';
2
+ import { ContractStorageRead, ContractStorageUpdateRequest, EthAddress, L2ToL1Message, LogHash, NoteHash, Nullifier, ReadRequest } from '@aztec/circuits.js';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  import { type PublicExecutionResult } from '../../index.js';
5
5
  import { type HostStorage } from './host_storage.js';
@@ -26,17 +26,18 @@ export type JournalData = {
26
26
  sideEffectCounter: number;
27
27
  };
28
28
  type PartialPublicExecutionResult = {
29
+ noteHashReadRequests: ReadRequest[];
29
30
  nullifierReadRequests: ReadRequest[];
30
31
  nullifierNonExistentReadRequests: ReadRequest[];
32
+ l1ToL2MsgReadRequests: ReadRequest[];
31
33
  newNoteHashes: NoteHash[];
32
34
  newL2ToL1Messages: L2ToL1Message[];
33
35
  startSideEffectCounter: number;
34
36
  newNullifiers: Nullifier[];
35
37
  contractStorageReads: ContractStorageRead[];
36
38
  contractStorageUpdateRequests: ContractStorageUpdateRequest[];
37
- unencryptedLogsHashes: SideEffect[];
39
+ unencryptedLogsHashes: LogHash[];
38
40
  unencryptedLogs: UnencryptedL2Log[];
39
- unencryptedLogPreimagesLength: Fr;
40
41
  allUnencryptedLogs: UnencryptedL2Log[];
41
42
  nestedExecutions: PublicExecutionResult[];
42
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../../src/avm/journal/journal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../../src/avm/journal/journal.ts"],"names":[],"mappings":"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"}