@aztec/simulator 0.67.1 → 0.68.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.
- package/dest/acvm/oracle/oracle.d.ts +1 -1
- package/dest/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/oracle.js +3 -3
- package/dest/acvm/oracle/typed_oracle.d.ts +1 -1
- package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/typed_oracle.js +3 -3
- package/dest/avm/avm_memory_types.d.ts +1 -1
- package/dest/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/avm/avm_memory_types.js +27 -27
- package/dest/avm/avm_simulator.d.ts.map +1 -1
- package/dest/avm/avm_simulator.js +6 -3
- package/dest/avm/avm_tree.d.ts +2 -1
- package/dest/avm/avm_tree.d.ts.map +1 -1
- package/dest/avm/avm_tree.js +6 -2
- package/dest/avm/fixtures/index.d.ts +2 -0
- package/dest/avm/fixtures/index.d.ts.map +1 -1
- package/dest/avm/fixtures/index.js +4 -4
- package/dest/avm/journal/journal.d.ts +16 -4
- package/dest/avm/journal/journal.d.ts.map +1 -1
- package/dest/avm/journal/journal.js +32 -14
- package/dest/avm/opcodes/conversion.d.ts +4 -4
- package/dest/avm/opcodes/conversion.d.ts.map +1 -1
- package/dest/avm/opcodes/conversion.js +22 -18
- package/dest/avm/test_utils.d.ts +1 -0
- package/dest/avm/test_utils.d.ts.map +1 -1
- package/dest/avm/test_utils.js +4 -1
- package/dest/client/client_execution_context.d.ts.map +1 -1
- package/dest/client/client_execution_context.js +2 -1
- package/dest/client/db_oracle.d.ts +7 -3
- package/dest/client/db_oracle.d.ts.map +1 -1
- package/dest/client/index.d.ts +1 -0
- package/dest/client/index.d.ts.map +1 -1
- package/dest/client/index.js +2 -1
- package/dest/client/view_data_oracle.d.ts +2 -2
- package/dest/client/view_data_oracle.d.ts.map +1 -1
- package/dest/client/view_data_oracle.js +5 -4
- package/dest/providers/acvm_wasm.js +2 -2
- package/dest/providers/acvm_wasm_with_blobs.d.ts +7 -0
- package/dest/providers/acvm_wasm_with_blobs.d.ts.map +1 -0
- package/dest/providers/acvm_wasm_with_blobs.js +15 -0
- package/dest/providers/index.d.ts +1 -1
- package/dest/providers/index.d.ts.map +1 -1
- package/dest/providers/index.js +2 -2
- package/dest/public/enqueued_call_side_effect_trace.d.ts +4 -3
- package/dest/public/enqueued_call_side_effect_trace.d.ts.map +1 -1
- package/dest/public/enqueued_call_side_effect_trace.js +6 -5
- package/dest/public/execution.d.ts +2 -2
- package/dest/public/execution.d.ts.map +1 -1
- package/dest/public/execution.js +1 -1
- package/dest/public/executor_metrics.d.ts +2 -0
- package/dest/public/executor_metrics.d.ts.map +1 -1
- package/dest/public/executor_metrics.js +11 -1
- package/dest/public/fee_payment.d.ts.map +1 -1
- package/dest/public/fee_payment.js +4 -3
- package/dest/public/fixtures/index.d.ts +7 -6
- package/dest/public/fixtures/index.d.ts.map +1 -1
- package/dest/public/fixtures/index.js +23 -17
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +7 -6
- package/dest/public/public_processor.d.ts +7 -5
- package/dest/public/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor.js +79 -65
- package/dest/public/public_processor_metrics.d.ts +10 -2
- package/dest/public/public_processor_metrics.d.ts.map +1 -1
- package/dest/public/public_processor_metrics.js +49 -2
- package/dest/public/public_tx_context.d.ts +5 -0
- package/dest/public/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_context.js +40 -20
- package/dest/public/public_tx_simulator.d.ts +2 -1
- package/dest/public/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator.js +35 -6
- package/dest/public/side_effect_trace_interface.d.ts +2 -1
- package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
- package/dest/public/transitional_adapters.d.ts.map +1 -1
- package/dest/public/transitional_adapters.js +2 -35
- package/package.json +12 -12
- package/src/acvm/oracle/oracle.ts +2 -2
- package/src/acvm/oracle/typed_oracle.ts +2 -2
- package/src/avm/avm_memory_types.ts +29 -27
- package/src/avm/avm_simulator.ts +4 -2
- package/src/avm/avm_tree.ts +6 -1
- package/src/avm/fixtures/index.ts +4 -2
- package/src/avm/journal/journal.ts +41 -8
- package/src/avm/opcodes/conversion.ts +21 -16
- package/src/avm/test_utils.ts +4 -0
- package/src/client/client_execution_context.ts +2 -0
- package/src/client/db_oracle.ts +8 -3
- package/src/client/index.ts +1 -0
- package/src/client/view_data_oracle.ts +6 -3
- package/src/providers/acvm_wasm.ts +1 -1
- package/src/providers/acvm_wasm_with_blobs.ts +25 -0
- package/src/providers/index.ts +1 -1
- package/src/public/enqueued_call_side_effect_trace.ts +8 -12
- package/src/public/execution.ts +1 -2
- package/src/public/executor_metrics.ts +13 -0
- package/src/public/fee_payment.ts +3 -2
- package/src/public/fixtures/index.ts +30 -22
- package/src/public/public_db_sources.ts +6 -5
- package/src/public/public_processor.ts +98 -79
- package/src/public/public_processor_metrics.ts +64 -2
- package/src/public/public_tx_context.ts +57 -21
- package/src/public/public_tx_simulator.ts +34 -6
- package/src/public/side_effect_trace_interface.ts +2 -1
- package/src/public/transitional_adapters.ts +0 -51
|
@@ -6,7 +6,6 @@ import {
|
|
|
6
6
|
type GasSettings,
|
|
7
7
|
type GlobalVariables,
|
|
8
8
|
MAX_L2_TO_L1_MSGS_PER_TX,
|
|
9
|
-
MAX_NOTE_HASHES_PER_TX,
|
|
10
9
|
MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
|
|
11
10
|
PrivateToAvmAccumulatedData,
|
|
12
11
|
PrivateToAvmAccumulatedDataArrayLengths,
|
|
@@ -19,7 +18,6 @@ import {
|
|
|
19
18
|
countAccumulatedItems,
|
|
20
19
|
mergeAccumulatedData,
|
|
21
20
|
} from '@aztec/circuits.js';
|
|
22
|
-
import { computeNoteHashNonce, computeUniqueNoteHash, siloNoteHash } from '@aztec/circuits.js/hash';
|
|
23
21
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
24
22
|
import { assertLength } from '@aztec/foundation/serialize';
|
|
25
23
|
|
|
@@ -86,55 +84,6 @@ export function generateAvmCircuitPublicInputs(
|
|
|
86
84
|
revertibleAccumulatedDataFromPrivate,
|
|
87
85
|
);
|
|
88
86
|
|
|
89
|
-
const txHash = avmCircuitPublicInputs.previousNonRevertibleAccumulatedData.nullifiers[0];
|
|
90
|
-
|
|
91
|
-
// Add nonces to revertible note hashes from private. These don't have nonces since we don't know
|
|
92
|
-
// the final position in the tx until the AVM has executed.
|
|
93
|
-
// TODO: Use the final position in the tx
|
|
94
|
-
for (
|
|
95
|
-
let revertibleIndex = 0;
|
|
96
|
-
revertibleIndex < avmCircuitPublicInputs.previousRevertibleAccumulatedData.noteHashes.length;
|
|
97
|
-
revertibleIndex++
|
|
98
|
-
) {
|
|
99
|
-
const noteHash = avmCircuitPublicInputs.previousRevertibleAccumulatedData.noteHashes[revertibleIndex];
|
|
100
|
-
if (noteHash.isZero()) {
|
|
101
|
-
continue;
|
|
102
|
-
}
|
|
103
|
-
const indexInTx =
|
|
104
|
-
revertibleIndex + avmCircuitPublicInputs.previousNonRevertibleAccumulatedDataArrayLengths.noteHashes;
|
|
105
|
-
|
|
106
|
-
const nonce = computeNoteHashNonce(txHash, indexInTx);
|
|
107
|
-
const uniqueNoteHash = computeUniqueNoteHash(nonce, noteHash);
|
|
108
|
-
avmCircuitPublicInputs.previousRevertibleAccumulatedData.noteHashes[revertibleIndex] = uniqueNoteHash;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
// merge all revertible & non-revertible side effects into output accumulated data
|
|
112
|
-
const noteHashesFromPrivate = revertCode.isOK()
|
|
113
|
-
? mergeAccumulatedData(
|
|
114
|
-
avmCircuitPublicInputs.previousNonRevertibleAccumulatedData.noteHashes,
|
|
115
|
-
avmCircuitPublicInputs.previousRevertibleAccumulatedData.noteHashes,
|
|
116
|
-
)
|
|
117
|
-
: avmCircuitPublicInputs.previousNonRevertibleAccumulatedData.noteHashes;
|
|
118
|
-
avmCircuitPublicInputs.accumulatedData.noteHashes = assertLength(
|
|
119
|
-
mergeAccumulatedData(noteHashesFromPrivate, avmCircuitPublicInputs.accumulatedData.noteHashes),
|
|
120
|
-
MAX_NOTE_HASHES_PER_TX,
|
|
121
|
-
);
|
|
122
|
-
|
|
123
|
-
// Silo and add nonces for note hashes emitted by the AVM
|
|
124
|
-
const scopedNoteHashesFromPublic = trace.getSideEffects().noteHashes;
|
|
125
|
-
for (let i = 0; i < scopedNoteHashesFromPublic.length; i++) {
|
|
126
|
-
const scopedNoteHash = scopedNoteHashesFromPublic[i];
|
|
127
|
-
const noteHash = scopedNoteHash.value;
|
|
128
|
-
if (!noteHash.isZero()) {
|
|
129
|
-
const noteHashIndexInTx = i + countAccumulatedItems(noteHashesFromPrivate);
|
|
130
|
-
const nonce = computeNoteHashNonce(txHash, noteHashIndexInTx);
|
|
131
|
-
const siloedNoteHash = siloNoteHash(scopedNoteHash.contractAddress, noteHash);
|
|
132
|
-
const uniqueNoteHash = computeUniqueNoteHash(nonce, siloedNoteHash);
|
|
133
|
-
|
|
134
|
-
avmCircuitPublicInputs.accumulatedData.noteHashes[noteHashIndexInTx] = uniqueNoteHash;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
87
|
const msgsFromPrivate = revertCode.isOK()
|
|
139
88
|
? mergeAccumulatedData(
|
|
140
89
|
avmCircuitPublicInputs.previousNonRevertibleAccumulatedData.l2ToL1Msgs,
|