@aztec/simulator 0.41.0 → 0.43.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 (243) 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 +7 -4
  5. package/dest/acvm/oracle/oracle.d.ts.map +1 -1
  6. package/dest/acvm/oracle/oracle.js +32 -12
  7. package/dest/acvm/oracle/typed_oracle.d.ts +6 -3
  8. package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
  9. package/dest/acvm/oracle/typed_oracle.js +15 -6
  10. package/dest/acvm/serialize.js +2 -2
  11. package/dest/avm/avm_gas.d.ts +1 -5
  12. package/dest/avm/avm_gas.d.ts.map +1 -1
  13. package/dest/avm/avm_gas.js +69 -73
  14. package/dest/avm/avm_memory_types.d.ts.map +1 -1
  15. package/dest/avm/avm_memory_types.js +2 -4
  16. package/dest/avm/avm_simulator.d.ts +5 -0
  17. package/dest/avm/avm_simulator.d.ts.map +1 -1
  18. package/dest/avm/avm_simulator.js +8 -1
  19. package/dest/avm/fixtures/index.d.ts +6 -0
  20. package/dest/avm/fixtures/index.d.ts.map +1 -1
  21. package/dest/avm/fixtures/index.js +18 -1
  22. package/dest/avm/index.d.ts +2 -0
  23. package/dest/avm/index.d.ts.map +1 -0
  24. package/dest/avm/index.js +2 -0
  25. package/dest/avm/journal/host_storage.d.ts +1 -1
  26. package/dest/avm/journal/host_storage.d.ts.map +1 -1
  27. package/dest/avm/journal/journal.d.ts +5 -3
  28. package/dest/avm/journal/journal.d.ts.map +1 -1
  29. package/dest/avm/journal/journal.js +23 -14
  30. package/dest/avm/journal/trace.d.ts +3 -1
  31. package/dest/avm/journal/trace.d.ts.map +1 -1
  32. package/dest/avm/journal/trace.js +8 -1
  33. package/dest/avm/journal/trace_types.d.ts +5 -0
  34. package/dest/avm/journal/trace_types.d.ts.map +1 -1
  35. package/dest/avm/journal/trace_types.js +1 -5
  36. package/dest/avm/opcodes/accrued_substate.d.ts +2 -2
  37. package/dest/avm/opcodes/accrued_substate.d.ts.map +1 -1
  38. package/dest/avm/opcodes/accrued_substate.js +36 -21
  39. package/dest/avm/opcodes/arithmetic.d.ts +1 -7
  40. package/dest/avm/opcodes/arithmetic.d.ts.map +1 -1
  41. package/dest/avm/opcodes/arithmetic.js +12 -20
  42. package/dest/avm/opcodes/bitwise.d.ts.map +1 -1
  43. package/dest/avm/opcodes/bitwise.js +11 -8
  44. package/dest/avm/opcodes/comparators.d.ts.map +1 -1
  45. package/dest/avm/opcodes/comparators.js +7 -5
  46. package/dest/avm/opcodes/contract.d.ts.map +1 -1
  47. package/dest/avm/opcodes/contract.js +20 -24
  48. package/dest/avm/opcodes/control_flow.d.ts.map +1 -1
  49. package/dest/avm/opcodes/control_flow.js +4 -2
  50. package/dest/avm/opcodes/conversion.js +2 -2
  51. package/dest/avm/opcodes/ec_add.d.ts +19 -0
  52. package/dest/avm/opcodes/ec_add.d.ts.map +1 -0
  53. package/dest/avm/opcodes/ec_add.js +78 -0
  54. package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
  55. package/dest/avm/opcodes/external_calls.js +11 -5
  56. package/dest/avm/opcodes/hashing.d.ts.map +1 -1
  57. package/dest/avm/opcodes/hashing.js +10 -2
  58. package/dest/avm/opcodes/instruction.d.ts +1 -1
  59. package/dest/avm/opcodes/instruction.d.ts.map +1 -1
  60. package/dest/avm/opcodes/instruction.js +6 -4
  61. package/dest/avm/opcodes/instruction_impl.d.ts.map +1 -1
  62. package/dest/avm/opcodes/instruction_impl.js +4 -2
  63. package/dest/avm/opcodes/memory.d.ts +1 -5
  64. package/dest/avm/opcodes/memory.d.ts.map +1 -1
  65. package/dest/avm/opcodes/memory.js +14 -18
  66. package/dest/avm/opcodes/multi_scalar_mul.d.ts +16 -0
  67. package/dest/avm/opcodes/multi_scalar_mul.d.ts.map +1 -0
  68. package/dest/avm/opcodes/multi_scalar_mul.js +95 -0
  69. package/dest/avm/opcodes/storage.d.ts +1 -6
  70. package/dest/avm/opcodes/storage.d.ts.map +1 -1
  71. package/dest/avm/opcodes/storage.js +11 -14
  72. package/dest/avm/serialization/bytecode_serialization.d.ts.map +1 -1
  73. package/dest/avm/serialization/bytecode_serialization.js +6 -2
  74. package/dest/avm/serialization/instruction_serialization.d.ts +3 -1
  75. package/dest/avm/serialization/instruction_serialization.d.ts.map +1 -1
  76. package/dest/avm/serialization/instruction_serialization.js +4 -2
  77. package/dest/client/client_execution_context.d.ts +24 -20
  78. package/dest/client/client_execution_context.d.ts.map +1 -1
  79. package/dest/client/client_execution_context.js +52 -55
  80. package/dest/client/db_oracle.d.ts +7 -1
  81. package/dest/client/db_oracle.d.ts.map +1 -1
  82. package/dest/client/execution_note_cache.d.ts +0 -17
  83. package/dest/client/execution_note_cache.d.ts.map +1 -1
  84. package/dest/client/execution_note_cache.js +1 -24
  85. package/dest/client/execution_result.d.ts +8 -4
  86. package/dest/client/execution_result.d.ts.map +1 -1
  87. package/dest/client/execution_result.js +16 -6
  88. package/dest/client/private_execution.d.ts +2 -3
  89. package/dest/client/private_execution.d.ts.map +1 -1
  90. package/dest/client/private_execution.js +20 -9
  91. package/dest/client/simulator.d.ts +2 -17
  92. package/dest/client/simulator.d.ts.map +1 -1
  93. package/dest/client/simulator.js +24 -33
  94. package/dest/client/unconstrained_execution.d.ts +2 -3
  95. package/dest/client/unconstrained_execution.d.ts.map +1 -1
  96. package/dest/client/unconstrained_execution.js +5 -7
  97. package/dest/client/view_data_oracle.d.ts +2 -0
  98. package/dest/client/view_data_oracle.d.ts.map +1 -1
  99. package/dest/client/view_data_oracle.js +7 -1
  100. package/dest/index.d.ts +3 -1
  101. package/dest/index.d.ts.map +1 -1
  102. package/dest/index.js +4 -2
  103. package/dest/mocks/fixtures.d.ts +14 -10
  104. package/dest/mocks/fixtures.d.ts.map +1 -1
  105. package/dest/mocks/fixtures.js +22 -16
  106. package/dest/{simulator → providers}/acvm_native.d.ts.map +1 -1
  107. package/dest/{simulator → providers}/acvm_native.js +13 -14
  108. package/dest/providers/acvm_wasm.d.ts.map +1 -0
  109. package/dest/providers/acvm_wasm.js +15 -0
  110. package/dest/providers/index.d.ts.map +1 -0
  111. package/dest/{simulator → providers}/index.js +1 -1
  112. package/dest/{simulator → providers}/simulation_provider.d.ts.map +1 -1
  113. package/dest/{simulator → providers}/simulation_provider.js +1 -1
  114. package/dest/public/abstract_phase_manager.d.ts +53 -53
  115. package/dest/public/abstract_phase_manager.d.ts.map +1 -1
  116. package/dest/public/abstract_phase_manager.js +146 -153
  117. package/dest/public/app_logic_phase_manager.d.ts +8 -9
  118. package/dest/public/app_logic_phase_manager.d.ts.map +1 -1
  119. package/dest/public/app_logic_phase_manager.js +15 -15
  120. package/dest/public/{db.d.ts → db_interfaces.d.ts} +4 -3
  121. package/dest/public/db_interfaces.d.ts.map +1 -0
  122. package/dest/public/db_interfaces.js +2 -0
  123. package/dest/public/execution.d.ts +16 -23
  124. package/dest/public/execution.d.ts.map +1 -1
  125. package/dest/public/execution.js +1 -51
  126. package/dest/public/executor.d.ts +4 -31
  127. package/dest/public/executor.d.ts.map +1 -1
  128. package/dest/public/executor.js +40 -283
  129. package/dest/public/fee_payment.d.ts +11 -0
  130. package/dest/public/fee_payment.d.ts.map +1 -0
  131. package/dest/public/fee_payment.js +24 -0
  132. package/dest/public/hints_builder.d.ts +2 -1
  133. package/dest/public/hints_builder.d.ts.map +1 -1
  134. package/dest/public/hints_builder.js +6 -2
  135. package/dest/public/index.d.ts +8 -6
  136. package/dest/public/index.d.ts.map +1 -1
  137. package/dest/public/index.js +9 -7
  138. package/dest/public/phase_manager_factory.d.ts +4 -4
  139. package/dest/public/phase_manager_factory.d.ts.map +1 -1
  140. package/dest/public/phase_manager_factory.js +5 -5
  141. package/dest/public/{public_executor.d.ts → public_db_sources.d.ts} +6 -3
  142. package/dest/public/public_db_sources.d.ts.map +1 -0
  143. package/dest/public/public_db_sources.js +244 -0
  144. package/dest/public/public_kernel.js +14 -14
  145. package/dest/public/public_processor.d.ts +6 -4
  146. package/dest/public/public_processor.d.ts.map +1 -1
  147. package/dest/public/public_processor.js +48 -30
  148. package/dest/public/setup_phase_manager.d.ts +8 -10
  149. package/dest/public/setup_phase_manager.d.ts.map +1 -1
  150. package/dest/public/setup_phase_manager.js +12 -21
  151. package/dest/public/tail_phase_manager.d.ts +7 -13
  152. package/dest/public/tail_phase_manager.d.ts.map +1 -1
  153. package/dest/public/tail_phase_manager.js +17 -37
  154. package/dest/public/teardown_phase_manager.d.ts +8 -10
  155. package/dest/public/teardown_phase_manager.d.ts.map +1 -1
  156. package/dest/public/teardown_phase_manager.js +16 -22
  157. package/dest/public/transitional_adaptors.d.ts +2 -2
  158. package/dest/public/transitional_adaptors.d.ts.map +1 -1
  159. package/dest/public/transitional_adaptors.js +14 -6
  160. package/package.json +12 -9
  161. package/src/acvm/acvm.ts +0 -3
  162. package/src/acvm/oracle/oracle.ts +68 -16
  163. package/src/acvm/oracle/typed_oracle.ts +31 -6
  164. package/src/acvm/serialize.ts +1 -1
  165. package/src/avm/avm_gas.ts +68 -73
  166. package/src/avm/avm_memory_types.ts +1 -3
  167. package/src/avm/avm_simulator.ts +9 -0
  168. package/src/avm/fixtures/index.ts +24 -0
  169. package/src/avm/index.ts +1 -0
  170. package/src/avm/journal/host_storage.ts +1 -1
  171. package/src/avm/journal/journal.ts +32 -22
  172. package/src/avm/journal/trace.ts +9 -0
  173. package/src/avm/journal/trace_types.ts +4 -0
  174. package/src/avm/opcodes/accrued_substate.ts +53 -20
  175. package/src/avm/opcodes/arithmetic.ts +18 -22
  176. package/src/avm/opcodes/bitwise.ts +13 -8
  177. package/src/avm/opcodes/comparators.ts +9 -4
  178. package/src/avm/opcodes/contract.ts +22 -26
  179. package/src/avm/opcodes/control_flow.ts +3 -1
  180. package/src/avm/opcodes/conversion.ts +1 -1
  181. package/src/avm/opcodes/ec_add.ts +92 -0
  182. package/src/avm/opcodes/external_calls.ts +11 -3
  183. package/src/avm/opcodes/hashing.ts +11 -1
  184. package/src/avm/opcodes/instruction.ts +5 -3
  185. package/src/avm/opcodes/instruction_impl.ts +4 -1
  186. package/src/avm/opcodes/memory.ts +19 -19
  187. package/src/avm/opcodes/multi_scalar_mul.ts +114 -0
  188. package/src/avm/opcodes/storage.ts +10 -17
  189. package/src/avm/serialization/bytecode_serialization.ts +5 -1
  190. package/src/avm/serialization/instruction_serialization.ts +2 -0
  191. package/src/client/client_execution_context.ts +76 -60
  192. package/src/client/db_oracle.ts +8 -1
  193. package/src/client/execution_note_cache.ts +0 -28
  194. package/src/client/execution_result.ts +21 -7
  195. package/src/client/private_execution.ts +36 -21
  196. package/src/client/simulator.ts +25 -35
  197. package/src/client/unconstrained_execution.ts +9 -12
  198. package/src/client/view_data_oracle.ts +8 -0
  199. package/src/index.ts +3 -1
  200. package/src/mocks/fixtures.ts +30 -32
  201. package/src/{simulator → providers}/acvm_native.ts +21 -19
  202. package/src/{simulator → providers}/acvm_wasm.ts +2 -16
  203. package/src/public/abstract_phase_manager.ts +209 -258
  204. package/src/public/app_logic_phase_manager.ts +24 -40
  205. package/src/public/{db.ts → db_interfaces.ts} +4 -2
  206. package/src/public/execution.ts +15 -77
  207. package/src/public/executor.ts +61 -399
  208. package/src/public/fee_payment.ts +26 -0
  209. package/src/public/hints_builder.ts +6 -0
  210. package/src/public/index.ts +8 -12
  211. package/src/public/phase_manager_factory.ts +7 -7
  212. package/src/public/{public_executor.ts → public_db_sources.ts} +65 -9
  213. package/src/public/public_kernel.ts +24 -24
  214. package/src/public/public_processor.ts +81 -40
  215. package/src/public/setup_phase_manager.ts +21 -46
  216. package/src/public/tail_phase_manager.ts +19 -67
  217. package/src/public/teardown_phase_manager.ts +23 -42
  218. package/src/public/transitional_adaptors.ts +41 -5
  219. package/dest/public/db.d.ts.map +0 -1
  220. package/dest/public/db.js +0 -2
  221. package/dest/public/public_execution_context.d.ts +0 -121
  222. package/dest/public/public_execution_context.d.ts.map +0 -1
  223. package/dest/public/public_execution_context.js +0 -214
  224. package/dest/public/public_executor.d.ts.map +0 -1
  225. package/dest/public/public_executor.js +0 -197
  226. package/dest/public/state_actions.d.ts +0 -39
  227. package/dest/public/state_actions.d.ts.map +0 -1
  228. package/dest/public/state_actions.js +0 -80
  229. package/dest/public/utils.d.ts +0 -8
  230. package/dest/public/utils.d.ts.map +0 -1
  231. package/dest/public/utils.js +0 -31
  232. package/dest/simulator/acvm_wasm.d.ts.map +0 -1
  233. package/dest/simulator/acvm_wasm.js +0 -22
  234. package/dest/simulator/index.d.ts.map +0 -1
  235. package/src/public/public_execution_context.ts +0 -289
  236. package/src/public/state_actions.ts +0 -102
  237. package/src/public/utils.ts +0 -33
  238. /package/dest/{simulator → providers}/acvm_native.d.ts +0 -0
  239. /package/dest/{simulator → providers}/acvm_wasm.d.ts +0 -0
  240. /package/dest/{simulator → providers}/index.d.ts +0 -0
  241. /package/dest/{simulator → providers}/simulation_provider.d.ts +0 -0
  242. /package/src/{simulator → providers}/index.ts +0 -0
  243. /package/src/{simulator → providers}/simulation_provider.ts +0 -0
@@ -1,32 +1,39 @@
1
1
  import { UnencryptedFunctionL2Logs } from '@aztec/circuit-types';
2
- import { ARGS_LENGTH, CallContext, CallRequest, Fr, FunctionData, Gas, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, } from '@aztec/circuits.js';
2
+ import { ARGS_LENGTH, AvmExecutionHints, CallContext, Fr, Gas, } from '@aztec/circuits.js';
3
3
  import { makeAztecAddress, makeSelector } from '@aztec/circuits.js/testing';
4
+ import { FunctionType } from '@aztec/foundation/abi';
4
5
  import { padArrayEnd } from '@aztec/foundation/collection';
5
6
  export class PublicExecutionResultBuilder {
6
7
  constructor(execution) {
7
8
  this._nestedExecutions = [];
8
9
  this._contractStorageUpdateRequests = [];
10
+ this._contractStorageReads = [];
9
11
  this._returnValues = [];
10
12
  this._reverted = false;
11
13
  this._revertReason = undefined;
12
14
  this._execution = execution;
13
15
  }
14
- static fromPublicCallRequest({ request, returnValues = [new Fr(1n)], nestedExecutions = [], contractStorageUpdateRequests = [], }) {
16
+ static fromPublicCallRequest({ request, returnValues = [new Fr(1n)], nestedExecutions = [], contractStorageUpdateRequests = [], contractStorageReads = [], revertReason = undefined, }) {
15
17
  const builder = new PublicExecutionResultBuilder(request);
16
18
  builder.withNestedExecutions(...nestedExecutions);
17
19
  builder.withContractStorageUpdateRequest(...contractStorageUpdateRequests);
20
+ builder.withContractStorageRead(...contractStorageReads);
18
21
  builder.withReturnValues(...returnValues);
22
+ if (revertReason) {
23
+ builder.withReverted(revertReason);
24
+ }
19
25
  return builder;
20
26
  }
21
- static fromFunctionCall({ from, tx, returnValues = [new Fr(1n)], nestedExecutions = [], contractStorageUpdateRequests = [], revertReason, }) {
27
+ static fromFunctionCall({ from, tx, returnValues = [new Fr(1n)], nestedExecutions = [], contractStorageUpdateRequests = [], contractStorageReads = [], revertReason, }) {
22
28
  const builder = new PublicExecutionResultBuilder({
23
- callContext: new CallContext(from, tx.to, tx.functionData.selector, false, false, 0),
29
+ callContext: new CallContext(from, tx.to, tx.selector, false, false, 0),
24
30
  contractAddress: tx.to,
25
- functionData: tx.functionData,
31
+ functionSelector: tx.selector,
26
32
  args: tx.args,
27
33
  });
28
34
  builder.withNestedExecutions(...nestedExecutions);
29
35
  builder.withContractStorageUpdateRequest(...contractStorageUpdateRequests);
36
+ builder.withContractStorageRead(...contractStorageReads);
30
37
  builder.withReturnValues(...returnValues);
31
38
  if (revertReason) {
32
39
  builder.withReverted(revertReason);
@@ -41,6 +48,10 @@ export class PublicExecutionResultBuilder {
41
48
  this._contractStorageUpdateRequests.push(...request);
42
49
  return this;
43
50
  }
51
+ withContractStorageRead(...reads) {
52
+ this._contractStorageReads.push(...reads);
53
+ return this;
54
+ }
44
55
  withReturnValues(...values) {
45
56
  this._returnValues.push(...values);
46
57
  return this;
@@ -54,8 +65,10 @@ export class PublicExecutionResultBuilder {
54
65
  return {
55
66
  execution: this._execution,
56
67
  nestedExecutions: this._nestedExecutions,
68
+ noteHashReadRequests: [],
57
69
  nullifierReadRequests: [],
58
70
  nullifierNonExistentReadRequests: [],
71
+ l1ToL2MsgReadRequests: [],
59
72
  contractStorageUpdateRequests: this._contractStorageUpdateRequests,
60
73
  returnValues: padArrayEnd(this._returnValues, Fr.ZERO, 4), // TODO(#5450) Need to use the proper return values here
61
74
  newNoteHashes: [],
@@ -72,18 +85,11 @@ export class PublicExecutionResultBuilder {
72
85
  startGasLeft: Gas.test(),
73
86
  endGasLeft: Gas.test(),
74
87
  transactionFee: Fr.ZERO,
88
+ calldata: [],
89
+ avmHints: AvmExecutionHints.empty(),
75
90
  ...overrides,
76
91
  };
77
92
  }
78
93
  }
79
- export const makeFunctionCall = (to = makeAztecAddress(30), selector = makeSelector(5), args = new Array(ARGS_LENGTH).fill(Fr.ZERO), isStatic = false) => ({ to, functionData: new FunctionData(selector, /*isPrivate=*/ false), args, isStatic });
80
- export function addKernelPublicCallStack(kernelOutput, calls) {
81
- // the first two calls are non-revertible
82
- // the first is for setup, the second is for teardown
83
- kernelOutput.forPublic.endNonRevertibleData.publicCallStack = padArrayEnd(
84
- // this is a stack, so the first item is the last call
85
- // and callRequests is in the order of the calls
86
- [calls.teardownCall.toCallRequest(), ...calls.setupCalls.map(c => c.toCallRequest())], CallRequest.empty(), MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
87
- kernelOutput.forPublic.end.publicCallStack = padArrayEnd(calls.appLogicCalls.map(c => c.toCallRequest()), CallRequest.empty(), MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
88
- }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9ja3MvZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQyx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFHLE9BQU8sRUFDTCxXQUFXLEVBRVgsV0FBVyxFQUNYLFdBQVcsRUFFWCxFQUFFLEVBQ0YsWUFBWSxFQUNaLEdBQUcsRUFDSCxtQ0FBbUMsR0FHcEMsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBSTNELE1BQU0sT0FBTyw0QkFBNEI7SUFRdkMsWUFBWSxTQUEwQjtRQU45QixzQkFBaUIsR0FBNEIsRUFBRSxDQUFDO1FBQ2hELG1DQUE4QixHQUFtQyxFQUFFLENBQUM7UUFDcEUsa0JBQWEsR0FBUyxFQUFFLENBQUM7UUFDekIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixrQkFBYSxHQUFnQyxTQUFTLENBQUM7UUFHN0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxFQUMzQixPQUFPLEVBQ1AsWUFBWSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDM0IsZ0JBQWdCLEdBQUcsRUFBRSxFQUNyQiw2QkFBNkIsR0FBRyxFQUFFLEdBTW5DO1FBQ0MsTUFBTSxPQUFPLEdBQUcsSUFBSSw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxRCxPQUFPLENBQUMsb0JBQW9CLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxHQUFHLDZCQUE2QixDQUFDLENBQUM7UUFDM0UsT0FBTyxDQUFDLGdC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
94
+ export const makeFunctionCall = (name = 'function', to = makeAztecAddress(30), selector = makeSelector(5), type = FunctionType.PUBLIC, args = new Array(ARGS_LENGTH).fill(Fr.ZERO), isStatic = false, returnTypes = []) => ({ name, to, selector, type, args, isStatic, returnTypes });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9ja3MvZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQyx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFHLE9BQU8sRUFDTCxXQUFXLEVBQ1gsaUJBQWlCLEVBRWpCLFdBQVcsRUFHWCxFQUFFLEVBQ0YsR0FBRyxHQUVKLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFJM0QsTUFBTSxPQUFPLDRCQUE0QjtJQVN2QyxZQUFZLFNBQTBCO1FBUDlCLHNCQUFpQixHQUE0QixFQUFFLENBQUM7UUFDaEQsbUNBQThCLEdBQW1DLEVBQUUsQ0FBQztRQUNwRSwwQkFBcUIsR0FBMEIsRUFBRSxDQUFDO1FBQ2xELGtCQUFhLEdBQVMsRUFBRSxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsa0JBQWEsR0FBZ0MsU0FBUyxDQUFDO1FBRzdELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNLENBQUMscUJBQXFCLENBQUMsRUFDM0IsT0FBTyxFQUNQLFlBQVksR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQzNCLGdCQUFnQixHQUFHLEVBQUUsRUFDckIsNkJBQTZCLEdBQUcsRUFBRSxFQUNsQyxvQkFBb0IsR0FBRyxFQUFFLEVBQ3pCLFlBQVksR0FBRyxTQUFTLEdBUXpCO1FBQ0MsTUFBTSxPQUFPLEdBQUcsSUFBSSw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxRCxPQUFPLENBQUMsb0JBQW9CLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxHQUFHLDZCQUE2QixDQUFDLENBQUM7UUFDM0UsT0FBTyxDQUFDLHVCQUF1QixDQUFDLEdBQUcsb0JBQW9CLENBQUMsQ0FBQztRQUN6RCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQztRQUMxQyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsRUFDdEIsSUFBSSxFQUNKLEVBQUUsRUFDRixZQUFZLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUMzQixnQkFBZ0IsR0FBRyxFQUFFLEVBQ3JCLDZCQUE2QixHQUFHLEVBQUUsRUFDbEMsb0JBQW9CLEdBQUcsRUFBRSxFQUN6QixZQUFZLEdBU2I7UUFDQyxNQUFNLE9BQU8sR0FBRyxJQUFJLDRCQUE0QixDQUFDO1lBQy9DLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZFLGVBQWUsRUFBRSxFQUFFLENBQUMsRUFBRTtZQUN0QixnQkFBZ0IsRUFBRSxFQUFFLENBQUMsUUFBUTtZQUM3QixJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUk7U0FDZCxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsb0JBQW9CLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxHQUFHLDZCQUE2QixDQUFDLENBQUM7UUFDM0UsT0FBTyxDQUFDLHVCQUF1QixDQUFDLEdBQUcsb0JBQW9CLENBQUMsQ0FBQztRQUN6RCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQztRQUMxQyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxHQUFHLE1BQStCO1FBQ3JELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQ0FBZ0MsQ0FBQyxHQUFHLE9BQXVDO1FBQ3pFLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNyRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFHLEtBQTRCO1FBQ3JELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFHLE1BQVk7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBdUI7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDNUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQTRDLEVBQUU7UUFDbEQsT0FBTztZQUNMLFNBQVMsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMxQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1lBQ3hDLG9CQUFvQixFQUFFLEVBQUU7WUFDeEIscUJBQXFCLEVBQUUsRUFBRTtZQUN6QixnQ0FBZ0MsRUFBRSxFQUFFO1lBQ3BDLHFCQUFxQixFQUFFLEVBQUU7WUFDekIsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLDhCQUE4QjtZQUNsRSxZQUFZLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSx3REFBd0Q7WUFDbkgsYUFBYSxFQUFFLEVBQUU7WUFDakIsYUFBYSxFQUFFLEVBQUU7WUFDakIsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQixvQkFBb0IsRUFBRSxFQUFFO1lBQ3hCLHFCQUFxQixFQUFFLEVBQUU7WUFDekIsZUFBZSxFQUFFLHlCQUF5QixDQUFDLEtBQUssRUFBRTtZQUNsRCxrQkFBa0IsRUFBRSx5QkFBeUIsQ0FBQyxLQUFLLEVBQUU7WUFDckQsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDL0Isb0JBQW9CLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3hCLFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNoQyxZQUFZLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRTtZQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRTtZQUN0QixjQUFjLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDdkIsUUFBUSxFQUFFLEVBQUU7WUFDWixRQUFRLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxFQUFFO1lBQ25DLEdBQUcsU0FBUztTQUNiLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUM5QixJQUFJLEdBQUcsVUFBVSxFQUNqQixFQUFFLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLEVBQ3pCLFFBQVEsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQzFCLElBQUksR0FBRyxZQUFZLENBQUMsTUFBTSxFQUMxQixJQUFJLEdBQUcsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFDM0MsUUFBUSxHQUFHLEtBQUssRUFDaEIsV0FBVyxHQUFHLEVBQUUsRUFDaEIsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"acvm_native.d.ts","sourceRoot":"","sources":["../../src/simulator/acvm_native.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAInE,oBAAY,WAAW;IACrB,OAAO,IAAA;IACP,OAAO,IAAA;CACR;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAmBnD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,UAAU,EACxB,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,UAAU,CAAC,CAqErB;AAED,qBAAa,mBAAoB,YAAW,kBAAkB;IAChD,OAAO,CAAC,gBAAgB;IAAU,OAAO,CAAC,UAAU;IAAU,OAAO,CAAC,eAAe,CAAC;gBAA9E,gBAAgB,EAAE,MAAM,EAAU,UAAU,EAAE,MAAM,EAAU,eAAe,CAAC,oBAAQ;IACpG,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBpG"}
1
+ {"version":3,"file":"acvm_native.d.ts","sourceRoot":"","sources":["../../src/providers/acvm_native.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAInE,oBAAY,WAAW;IACrB,OAAO,IAAA;IACP,OAAO,IAAA;CACR;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAmBnD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,UAAU,EACxB,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,UAAU,CAAC,CAqErB;AAED,qBAAa,mBAAoB,YAAW,kBAAkB;IAChD,OAAO,CAAC,gBAAgB;IAAU,OAAO,CAAC,UAAU;IAAU,OAAO,CAAC,eAAe,CAAC;gBAA9E,gBAAgB,EAAE,MAAM,EAAU,UAAU,EAAE,MAAM,EAAU,eAAe,CAAC,oBAAQ;IACpG,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAwBpG"}
@@ -1,4 +1,4 @@
1
- import { randomBytes } from '@aztec/foundation/crypto';
1
+ import { runInDirectory } from '@aztec/foundation/fs';
2
2
  import { createDebugLogger } from '@aztec/foundation/log';
3
3
  import { Timer } from '@aztec/foundation/timer';
4
4
  import * as proc from 'child_process';
@@ -106,18 +106,17 @@ export class NativeACVMSimulator {
106
106
  }
107
107
  async simulateCircuit(input, compiledCircuit) {
108
108
  // Execute the circuit on those initial witness values
109
- // Decode the bytecode from base64 since the acvm does not know about base64 encoding
110
- const decodedBytecode = Buffer.from(compiledCircuit.bytecode, 'base64');
111
- // Provide a unique working directory so we don't get clashes with parallel executions
112
- const directory = `${this.workingDirectory}/${randomBytes(8).toString('hex')}`;
113
- await fs.mkdir(directory, { recursive: true });
114
- // Execute the circuit
115
- const result = await executeNativeCircuit(input, decodedBytecode, directory, this.pathToAcvm, this.witnessFilename);
116
- await fs.rm(directory, { force: true, recursive: true });
117
- if (result.status == ACVM_RESULT.FAILURE) {
118
- throw new Error(`Failed to generate witness: ${result.reason}`);
119
- }
120
- return result.witness;
109
+ const operation = async (directory) => {
110
+ // Decode the bytecode from base64 since the acvm does not know about base64 encoding
111
+ const decodedBytecode = Buffer.from(compiledCircuit.bytecode, 'base64');
112
+ // Execute the circuit
113
+ const result = await executeNativeCircuit(input, decodedBytecode, directory, this.pathToAcvm, this.witnessFilename);
114
+ if (result.status == ACVM_RESULT.FAILURE) {
115
+ throw new Error(`Failed to generate witness: ${result.reason}`);
116
+ }
117
+ return result.witness;
118
+ };
119
+ return await runInDirectory(this.workingDirectory, operation);
121
120
  }
122
121
  }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN2bV9uYXRpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2ltdWxhdG9yL2Fjdm1fbmF0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJaEQsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTdCLE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFFdEQsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixtREFBTyxDQUFBO0lBQ1AsbURBQU8sQ0FBQTtBQUNULENBQUMsRUFIVyxXQUFXLEtBQVgsV0FBVyxRQUd0QjtBQWVEOzs7O0dBSUc7QUFDSCxTQUFTLG1CQUFtQixDQUFDLFlBQW9CO0lBQy9DLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsT0FBTyxJQUFJLEdBQUcsQ0FDWixLQUFLO1NBQ0YsTUFBTSxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3JDLEdBQUcsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVB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
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN2bV9uYXRpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL2Fjdm1fbmF0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJaEQsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTdCLE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFFdEQsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixtREFBTyxDQUFBO0lBQ1AsbURBQU8sQ0FBQTtBQUNULENBQUMsRUFIVyxXQUFXLEtBQVgsV0FBVyxRQUd0QjtBQWVEOzs7O0dBSUc7QUFDSCxTQUFTLG1CQUFtQixDQUFDLFlBQW9CO0lBQy9DLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsT0FBTyxJQUFJLEdBQUcsQ0FDWixLQUFLO1NBQ0YsTUFBTSxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3JDLEdBQUcsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsb0JBQW9CLENBQ3hDLFlBQXdCLEVBQ3hCLFFBQWdCLEVBQ2hCLGdCQUF3QixFQUN4QixVQUFrQixFQUNsQixjQUF1QjtJQUV2QixNQUFNLGdCQUFnQixHQUFHLFVBQVUsQ0FBQztJQUNwQyxNQUFNLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQztJQUU3Qyx5Q0FBeUM7SUFDekMsSUFBSSxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFhLEVBQUUsR0FBVyxFQUFFLEVBQUU7UUFDbEQsVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQztRQUNILGtDQUFrQztRQUNsQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUscUJBQXFCLGdCQUFnQixpQkFBaUIsRUFBRSxDQUFDO0lBQ3pHLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDSCxnRUFBZ0U7UUFDaEUsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsZ0JBQWdCLElBQUksZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN4RSxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxnQkFBZ0IsSUFBSSxlQUFlLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUV6RSx3Q0FBd0M7UUFDeEMsTUFBTSxJQUFJLEdBQUc7WUFDWCxTQUFTO1lBQ1QscUJBQXFCO1lBQ3JCLEdBQUcsZ0JBQWdCLEVBQUU7WUFDckIsWUFBWTtZQUNaLEdBQUcsZ0JBQWdCLEVBQUU7WUFDckIsaUJBQWlCO1lBQ2pCLEdBQUcsZUFBZSxFQUFFO1lBQ3BCLFNBQVM7WUFDVCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1NBQ2pCLENBQUM7UUFFRixNQUFNLENBQUMsS0FBSyxDQUFDLHFCQUFxQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRCxNQUFNLGNBQWMsR0FBRyxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUM3RCxJQUFJLGFBQWEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUM1QixhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUM1QixXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ25ELENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQ3RCLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUNmLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLENBQUM7cUJBQU0sQ0FBQztvQkFDTixNQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzVELE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUM3QixNQUFNLE1BQU0sR0FBRyxNQUFNLGNBQWMsQ0FBQztRQUNwQyxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ25CLE1BQU0scUJBQXFCLEdBQUcsR0FBRyxnQkFBZ0Isb0JBQW9CLENBQUM7WUFDdEUsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLHFCQUFxQixFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFDRCxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUMzRSxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQzdELENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUFvQixnQkFBd0IsRUFBVSxVQUFrQixFQUFVLGVBQXdCO1FBQXRGLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVE7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBUztJQUFHLENBQUM7SUFDOUcsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFpQixFQUFFLGVBQW9DO1FBQzNFLHNEQUFzRDtRQUV0RCxNQUFNLFNBQVMsR0FBRyxLQUFLLEVBQUUsU0FBaUIsRUFBRSxFQUFFO1lBQzVDLHFGQUFxRjtZQUNyRixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDeEUsc0JBQXNCO1lBQ3RCLE1BQU0sTUFBTSxHQUFHLE1BQU0sb0JBQW9CLENBQ3ZDLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULElBQUksQ0FBQyxVQUFVLEVBQ2YsSUFBSSxDQUFDLGVBQWUsQ0FDckIsQ0FBQztZQUVGLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7WUFFRCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDeEIsQ0FBQyxDQUFDO1FBRUYsT0FBTyxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNGIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acvm_wasm.d.ts","sourceRoot":"","sources":["../../src/providers/acvm_wasm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,qBAAa,aAAc,YAAW,kBAAkB;IAChD,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAepG"}
@@ -0,0 +1,15 @@
1
+ import { foreignCallHandler } from '@aztec/noir-protocol-circuits-types';
2
+ import { executeCircuit } from '@noir-lang/acvm_js';
3
+ export class WASMSimulator {
4
+ async simulateCircuit(input, compiledCircuit) {
5
+ // Execute the circuit on those initial witness values
6
+ //
7
+ // Decode the bytecode from base64 since the acvm does not know about base64 encoding
8
+ const decodedBytecode = Buffer.from(compiledCircuit.bytecode, 'base64');
9
+ //
10
+ // Execute the circuit
11
+ const _witnessMap = await executeCircuit(decodedBytecode, input, foreignCallHandler);
12
+ return _witnessMap;
13
+ }
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN2bV93YXNtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpZGVycy9hY3ZtX3dhc20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3BELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBaUIsRUFBRSxlQUFvQztRQUMzRSxzREFBc0Q7UUFDdEQsRUFBRTtRQUNGLHFGQUFxRjtRQUNyRixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDeEUsRUFBRTtRQUNGLHNCQUFzQjtRQUN0QixNQUFNLFdBQVcsR0FBRyxNQUFNLGNBQWMsQ0FDdEMsZUFBZSxFQUNmLEtBQUssRUFDTCxrQkFBa0IsQ0FDbkIsQ0FBQztRQUVGLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7Q0FDRiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export * from './acvm_native.js';
2
2
  export * from './acvm_wasm.js';
3
3
  export * from './simulation_provider.js';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2ltdWxhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDBCQUEwQixDQUFDIn0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDBCQUEwQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"simulation_provider.d.ts","sourceRoot":"","sources":["../../src/simulator/simulation_provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/F"}
1
+ {"version":3,"file":"simulation_provider.d.ts","sourceRoot":"","sources":["../../src/providers/simulation_provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/F"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGlvbl9wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaW11bGF0b3Ivc2ltdWxhdGlvbl9wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGlvbl9wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlcnMvc2ltdWxhdGlvbl9wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -1,79 +1,79 @@
1
- import { type NestedProcessReturnValues, type PublicKernelRequest, PublicKernelType, type SimulationError, type Tx, type UnencryptedFunctionL2Logs } from '@aztec/circuit-types';
2
- import { Fr, Gas, type GlobalVariables, type Header, type KernelCircuitPublicInputs, type Proof, PublicCallData, type PublicCallRequest, PublicCallStackItem, PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, PublicKernelData } from '@aztec/circuits.js';
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ import { type AvmProvingRequest, type NestedProcessReturnValues, type PublicKernelNonTailRequest, PublicKernelType, type PublicProvingRequest, type SimulationError, type Tx, type UnencryptedFunctionL2Logs } from '@aztec/circuit-types';
3
+ import { type AvmExecutionHints, Fr, Gas, type GlobalVariables, type Header, type KernelCircuitPublicInputs, PublicCallData, type PublicCallRequest, PublicCallStackItem, PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, PublicKernelData } from '@aztec/circuits.js';
3
4
  import { type DebugLogger } from '@aztec/foundation/log';
4
5
  import { type PublicExecutionResult, type PublicExecutor } from '@aztec/simulator';
5
6
  import { type MerkleTreeOperations } from '@aztec/world-state';
6
7
  import { HintsBuilder } from './hints_builder.js';
7
8
  import { type PublicKernelCircuitSimulator } from './public_kernel_circuit_simulator.js';
8
- export declare enum PublicKernelPhase {
9
- SETUP = "setup",
10
- APP_LOGIC = "app-logic",
11
- TEARDOWN = "teardown",
12
- TAIL = "tail"
13
- }
14
- export declare const PhaseIsRevertible: Record<PublicKernelPhase, boolean>;
15
- export declare function publicKernelPhaseToKernelType(phase: PublicKernelPhase): PublicKernelType;
9
+ export declare const PhaseIsRevertible: Record<PublicKernelType, boolean>;
10
+ export type PublicProvingInformation = {
11
+ calldata: Fr[];
12
+ bytecode: Buffer;
13
+ inputs: PublicKernelCircuitPrivateInputs;
14
+ avmHints: AvmExecutionHints;
15
+ };
16
+ export declare function makeAvmProvingRequest(info: PublicProvingInformation, kernelType: PublicKernelNonTailRequest['type']): AvmProvingRequest;
17
+ export type TxPublicCallsResult = {
18
+ /** Inputs to be used for proving */
19
+ publicProvingInformation: PublicProvingInformation[];
20
+ /** The public kernel output at the end of the Tx */
21
+ kernelOutput: PublicKernelCircuitPublicInputs;
22
+ /** Unencrypted logs generated during the execution of this Tx */
23
+ newUnencryptedLogs: UnencryptedFunctionL2Logs[];
24
+ /** Revert reason, if any */
25
+ revertReason?: SimulationError;
26
+ /** Return values of simulating complete callstack */
27
+ returnValues: NestedProcessReturnValues[];
28
+ /** Gas used during the execution this Tx */
29
+ gasUsed?: Gas;
30
+ };
31
+ export type PhaseResult = {
32
+ /** The collection of public proving requests */
33
+ publicProvingRequests: PublicProvingRequest[];
34
+ /** The output of the public kernel circuit simulation for this phase */
35
+ publicKernelOutput: PublicKernelCircuitPublicInputs;
36
+ /** The final output of the public kernel circuit for this phase */
37
+ finalKernelOutput?: KernelCircuitPublicInputs;
38
+ /** Revert reason, if any */
39
+ revertReason?: SimulationError;
40
+ /** Return values of simulating complete callstack */
41
+ returnValues: NestedProcessReturnValues[];
42
+ /** Gas used during the execution this phase */
43
+ gasUsed?: Gas;
44
+ };
16
45
  export declare abstract class AbstractPhaseManager {
17
46
  protected db: MerkleTreeOperations;
18
47
  protected publicExecutor: PublicExecutor;
19
48
  protected publicKernel: PublicKernelCircuitSimulator;
20
49
  protected globalVariables: GlobalVariables;
21
50
  protected historicalHeader: Header;
22
- phase: PublicKernelPhase;
51
+ phase: PublicKernelType;
23
52
  protected hintsBuilder: HintsBuilder;
24
53
  protected log: DebugLogger;
25
- constructor(db: MerkleTreeOperations, publicExecutor: PublicExecutor, publicKernel: PublicKernelCircuitSimulator, globalVariables: GlobalVariables, historicalHeader: Header, phase: PublicKernelPhase);
54
+ constructor(db: MerkleTreeOperations, publicExecutor: PublicExecutor, publicKernel: PublicKernelCircuitSimulator, globalVariables: GlobalVariables, historicalHeader: Header, phase: PublicKernelType);
26
55
  /**
27
- *
28
56
  * @param tx - the tx to be processed
29
57
  * @param publicKernelPublicInputs - the output of the public kernel circuit for the previous phase
30
- * @param previousPublicKernelProof - the proof of the public kernel circuit for the previous phase
31
58
  */
32
- abstract handle(tx: Tx, publicKernelPublicInputs: PublicKernelCircuitPublicInputs, previousPublicKernelProof: Proof): Promise<{
33
- /**
34
- * The collection of public kernel requests
35
- */
36
- kernelRequests: PublicKernelRequest[];
37
- /**
38
- * the output of the public kernel circuit for this phase
39
- */
40
- publicKernelOutput: PublicKernelCircuitPublicInputs;
41
- /**
42
- * the final output of the public kernel circuit for this phase
43
- */
44
- finalKernelOutput?: KernelCircuitPublicInputs;
45
- /**
46
- * the proof of the public kernel circuit for this phase
47
- */
48
- publicKernelProof: Proof;
49
- /**
50
- * revert reason, if any
51
- */
52
- revertReason: SimulationError | undefined;
53
- returnValues: NestedProcessReturnValues[];
54
- /** Gas used during the execution this particular phase. */
55
- gasUsed: Gas | undefined;
56
- }>;
57
- static extractEnqueuedPublicCallsByPhase(tx: Tx): Record<PublicKernelPhase, PublicCallRequest[]>;
59
+ abstract handle(tx: Tx, publicKernelPublicInputs: PublicKernelCircuitPublicInputs): Promise<PhaseResult>;
60
+ static extractEnqueuedPublicCallsByPhase(tx: Tx): Record<PublicKernelType, PublicCallRequest[]>;
58
61
  protected extractEnqueuedPublicCalls(tx: Tx): PublicCallRequest[];
59
- protected processEnqueuedPublicCalls(tx: Tx, previousPublicKernelOutput: PublicKernelCircuitPublicInputs, previousPublicKernelProof: Proof): Promise<[
60
- PublicKernelCircuitPrivateInputs[],
61
- PublicKernelCircuitPublicInputs,
62
- Proof,
63
- UnencryptedFunctionL2Logs[],
64
- SimulationError | undefined,
65
- NestedProcessReturnValues[],
66
- Gas
67
- ]>;
68
- /** Returns all pending private and public nullifiers. */
62
+ protected processEnqueuedPublicCalls(tx: Tx, previousPublicKernelOutput: PublicKernelCircuitPublicInputs): Promise<TxPublicCallsResult>;
63
+ /** Returns all pending private and public nullifiers. */
69
64
  private getSiloedPendingNullifiers;
70
65
  protected getAvailableGas(tx: Tx, previousPublicKernelOutput: PublicKernelCircuitPublicInputs): Gas;
71
66
  protected getTransactionFee(_tx: Tx, _previousPublicKernelOutput: PublicKernelCircuitPublicInputs): Fr;
72
- protected runKernelCircuit(previousOutput: PublicKernelCircuitPublicInputs, previousProof: Proof, callData: PublicCallData): Promise<[PublicKernelCircuitPrivateInputs, PublicKernelCircuitPublicInputs]>;
73
- protected getKernelCircuitOutput(previousOutput: PublicKernelCircuitPublicInputs, previousProof: Proof, callData: PublicCallData): Promise<[PublicKernelCircuitPrivateInputs, PublicKernelCircuitPublicInputs]>;
74
- protected getPreviousKernelData(previousOutput: PublicKernelCircuitPublicInputs, previousProof: Proof): PublicKernelData;
67
+ private runKernelCircuit;
68
+ protected getPreviousKernelData(previousOutput: PublicKernelCircuitPublicInputs): PublicKernelData;
75
69
  protected getPublicCallStackItem(result: PublicExecutionResult, isExecutionRequest?: boolean): Promise<PublicCallStackItem>;
76
70
  protected getPublicCallStackPreimages(result: PublicExecutionResult): Promise<PublicCallStackItem[]>;
71
+ /**
72
+ * Looks at the side effects of a transaction and returns the highest counter
73
+ * @param tx - A transaction
74
+ * @returns The highest side effect counter in the transaction so far
75
+ */
76
+ static getMaxSideEffectCounter(inputs: PublicKernelCircuitPublicInputs): number;
77
77
  protected getBytecodeHash(_result: PublicExecutionResult): Promise<Fr>;
78
78
  /**
79
79
  * Calculates the PublicCircuitOutput for this execution result along with its proof,
@@ -1 +1 @@
1
- {"version":3,"file":"abstract_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/abstract_phase_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/abstract_phase_manager.ts"],"names":[],"mappings":"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"}