@aztec/simulator 0.80.0 → 0.82.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/common/db_interfaces.d.ts +30 -17
- package/dest/common/db_interfaces.d.ts.map +1 -1
- package/dest/common/db_interfaces.js +1 -1
- package/dest/common/debug_fn_name.d.ts +2 -2
- package/dest/common/debug_fn_name.d.ts.map +1 -1
- package/dest/common/message_load_oracle_inputs.d.ts +4 -0
- package/dest/common/message_load_oracle_inputs.d.ts.map +1 -1
- package/dest/common/message_load_oracle_inputs.js +9 -0
- package/dest/private/acvm/acvm.d.ts +6 -1
- package/dest/private/acvm/acvm.d.ts.map +1 -1
- package/dest/private/acvm/acvm.js +7 -13
- package/dest/private/acvm/deserialize.d.ts +19 -18
- package/dest/private/acvm/deserialize.d.ts.map +1 -1
- package/dest/private/acvm/deserialize.js +31 -23
- package/dest/private/acvm/oracle/oracle.d.ts +36 -34
- package/dest/private/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/private/acvm/oracle/oracle.js +134 -79
- package/dest/private/acvm/oracle/typed_oracle.d.ts +3 -2
- package/dest/private/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/private/acvm/oracle/typed_oracle.js +5 -2
- package/dest/private/acvm/serialize.d.ts +11 -0
- package/dest/private/acvm/serialize.d.ts.map +1 -1
- package/dest/private/acvm/serialize.js +27 -0
- package/dest/private/execution_data_provider.d.ts +15 -13
- package/dest/private/execution_data_provider.d.ts.map +1 -1
- package/dest/private/private_execution.d.ts +2 -2
- package/dest/private/private_execution.d.ts.map +1 -1
- package/dest/private/private_execution.js +4 -5
- package/dest/private/private_execution_oracle.d.ts.map +1 -1
- package/dest/private/private_execution_oracle.js +1 -1
- package/dest/private/providers/acvm_native.d.ts +6 -4
- package/dest/private/providers/acvm_native.d.ts.map +1 -1
- package/dest/private/providers/acvm_native.js +6 -3
- package/dest/private/providers/acvm_wasm.d.ts +6 -7
- package/dest/private/providers/acvm_wasm.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm.js +13 -15
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts +5 -5
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm_with_blobs.js +7 -9
- package/dest/private/providers/circuit_recording/circuit_recorder.d.ts +90 -0
- package/dest/private/providers/circuit_recording/circuit_recorder.d.ts.map +1 -0
- package/dest/private/providers/circuit_recording/circuit_recorder.js +246 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts +18 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts.map +1 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.js +39 -0
- package/dest/private/providers/simulation_provider.d.ts +21 -7
- package/dest/private/providers/simulation_provider.d.ts.map +1 -1
- package/dest/private/simulator.d.ts +3 -2
- package/dest/private/simulator.d.ts.map +1 -1
- package/dest/private/simulator.js +2 -2
- package/dest/private/unconstrained_execution.d.ts +2 -2
- package/dest/private/unconstrained_execution.d.ts.map +1 -1
- package/dest/private/unconstrained_execution.js +1 -2
- package/dest/private/unconstrained_execution_oracle.d.ts +5 -3
- package/dest/private/unconstrained_execution_oracle.d.ts.map +1 -1
- package/dest/private/unconstrained_execution_oracle.js +9 -5
- package/dest/public/avm/avm_simulator.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.js +0 -2
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.js +5 -5
- package/dest/public/avm/fixtures/index.d.ts +4 -4
- package/dest/public/avm/fixtures/index.d.ts.map +1 -1
- package/dest/public/avm/fixtures/index.js +9 -6
- package/dest/public/avm/fixtures/simple_contract_data_source.d.ts +1 -2
- package/dest/public/avm/fixtures/simple_contract_data_source.d.ts.map +1 -1
- package/dest/public/avm/fixtures/simple_contract_data_source.js +0 -3
- package/dest/public/avm/journal/journal.d.ts +16 -70
- package/dest/public/avm/journal/journal.d.ts.map +1 -1
- package/dest/public/avm/journal/journal.js +88 -210
- package/dest/public/avm/journal/nullifiers.d.ts +2 -2
- package/dest/public/avm/journal/nullifiers.d.ts.map +1 -1
- package/dest/public/avm/journal/public_storage.d.ts +2 -2
- package/dest/public/avm/journal/public_storage.d.ts.map +1 -1
- package/dest/public/avm/test_utils.d.ts +10 -13
- package/dest/public/avm/test_utils.d.ts.map +1 -1
- package/dest/public/avm/test_utils.js +8 -13
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts +3 -3
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.js +10 -9
- package/dest/public/hinting_db_sources.d.ts +19 -0
- package/dest/public/hinting_db_sources.d.ts.map +1 -0
- package/dest/public/hinting_db_sources.js +36 -0
- package/dest/public/public_db_sources.d.ts +46 -22
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +82 -27
- package/dest/public/public_processor/public_processor.d.ts +5 -5
- package/dest/public/public_processor/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor.js +21 -20
- package/dest/public/public_tx_simulator/public_tx_context.d.ts +9 -14
- package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.js +15 -19
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +9 -6
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_simulator.js +28 -14
- package/dest/public/side_effect_trace.d.ts +6 -22
- package/dest/public/side_effect_trace.d.ts.map +1 -1
- package/dest/public/side_effect_trace.js +11 -70
- package/dest/public/side_effect_trace_interface.d.ts +5 -19
- package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
- package/dest/testing.d.ts +2 -0
- package/dest/testing.d.ts.map +1 -0
- package/dest/testing.js +1 -0
- package/package.json +15 -14
- package/src/common/db_interfaces.ts +32 -18
- package/src/common/debug_fn_name.ts +2 -2
- package/src/common/message_load_oracle_inputs.ts +8 -0
- package/src/private/acvm/acvm.ts +8 -24
- package/src/private/acvm/deserialize.ts +35 -29
- package/src/private/acvm/oracle/oracle.ts +171 -129
- package/src/private/acvm/oracle/typed_oracle.ts +7 -3
- package/src/private/acvm/serialize.ts +28 -0
- package/src/private/execution_data_provider.ts +19 -14
- package/src/private/private_execution.ts +11 -7
- package/src/private/private_execution_oracle.ts +5 -1
- package/src/private/providers/acvm_native.ts +17 -6
- package/src/private/providers/acvm_wasm.ts +27 -20
- package/src/private/providers/acvm_wasm_with_blobs.ts +15 -12
- package/src/private/providers/circuit_recording/circuit_recorder.ts +283 -0
- package/src/private/providers/circuit_recording/simulation_provider_recorder_wrapper.ts +82 -0
- package/src/private/providers/simulation_provider.ts +30 -5
- package/src/private/simulator.ts +5 -3
- package/src/private/unconstrained_execution.ts +8 -4
- package/src/private/unconstrained_execution_oracle.ts +15 -9
- package/src/public/avm/avm_simulator.ts +0 -2
- package/src/public/avm/fixtures/avm_simulation_tester.ts +8 -5
- package/src/public/avm/fixtures/index.ts +16 -10
- package/src/public/avm/fixtures/simple_contract_data_source.ts +1 -10
- package/src/public/avm/journal/journal.ts +119 -353
- package/src/public/avm/journal/nullifiers.ts +2 -2
- package/src/public/avm/journal/public_storage.ts +2 -2
- package/src/public/avm/test_utils.ts +20 -29
- package/src/public/fixtures/public_tx_simulation_tester.ts +9 -12
- package/src/public/hinting_db_sources.ts +71 -0
- package/src/public/public_db_sources.ts +134 -32
- package/src/public/public_processor/public_processor.ts +22 -21
- package/src/public/public_tx_simulator/public_tx_context.ts +30 -38
- package/src/public/public_tx_simulator/public_tx_simulator.ts +47 -17
- package/src/public/side_effect_trace.ts +8 -172
- package/src/public/side_effect_trace_interface.ts +4 -55
- package/src/testing.ts +1 -0
- package/dest/public/avm/bytecode_utils.d.ts +0 -5
- package/dest/public/avm/bytecode_utils.d.ts.map +0 -1
- package/dest/public/avm/bytecode_utils.js +0 -17
- package/src/public/avm/bytecode_utils.ts +0 -17
|
@@ -1,28 +1,16 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
/// <reference types="node" resolution-mode="require"/>
|
|
3
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
-
import type { IndexedTreeLeafPreimage } from '@aztec/foundation/trees';
|
|
5
|
-
import { AvmPublicDataReadTreeHint } from '@aztec/stdlib/avm';
|
|
6
4
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
7
5
|
import { SerializableContractInstance } from '@aztec/stdlib/contract';
|
|
8
6
|
import type { ContractClassWithCommitment } from '@aztec/stdlib/contract';
|
|
9
|
-
import type { IndexedTreeId, MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
10
7
|
import type { PublicCallRequest } from '@aztec/stdlib/kernel';
|
|
11
|
-
import {
|
|
12
|
-
import type {
|
|
8
|
+
import type { PublicTreesDB } from '../../../public/public_db_sources.js';
|
|
9
|
+
import type { PublicContractsDBInterface } from '../../../server.js';
|
|
13
10
|
import type { PublicSideEffectTraceInterface } from '../../side_effect_trace_interface.js';
|
|
14
11
|
import type { AvmExecutionEnvironment } from '../avm_execution_environment.js';
|
|
15
12
|
import { NullifierManager } from './nullifiers.js';
|
|
16
13
|
import { PublicStorage } from './public_storage.js';
|
|
17
|
-
/**
|
|
18
|
-
* The result of fetching a leaf from an indexed tree. Contains the preimage and wether the leaf was already present
|
|
19
|
-
* or it's a low leaf.
|
|
20
|
-
*/
|
|
21
|
-
type GetLeafResult<T extends IndexedTreeLeafPreimage> = {
|
|
22
|
-
preimage: T;
|
|
23
|
-
leafOrLowLeafIndex: bigint;
|
|
24
|
-
alreadyPresent: boolean;
|
|
25
|
-
};
|
|
26
14
|
/**
|
|
27
15
|
* A class to manage persistable AVM state for contract calls.
|
|
28
16
|
* Maintains a cache of the current world state,
|
|
@@ -33,36 +21,25 @@ type GetLeafResult<T extends IndexedTreeLeafPreimage> = {
|
|
|
33
21
|
* Manages merging of successful/reverted child state into current state.
|
|
34
22
|
*/
|
|
35
23
|
export declare class AvmPersistableStateManager {
|
|
36
|
-
|
|
37
|
-
private readonly
|
|
38
|
-
|
|
39
|
-
readonly
|
|
40
|
-
|
|
24
|
+
private readonly treesDB;
|
|
25
|
+
private readonly contractsDB;
|
|
26
|
+
private readonly trace;
|
|
27
|
+
private readonly firstNullifier;
|
|
28
|
+
private readonly blockNumber;
|
|
29
|
+
private readonly doMerkleOperations;
|
|
41
30
|
private readonly publicStorage;
|
|
42
|
-
/** Nullifier set, including cached/recently-emitted nullifiers */
|
|
43
31
|
private readonly nullifiers;
|
|
44
|
-
private readonly doMerkleOperations;
|
|
45
|
-
/** DB interface for merkle tree operations */
|
|
46
|
-
db: MerkleTreeWriteOperations;
|
|
47
|
-
readonly firstNullifier: Fr;
|
|
48
32
|
private readonly log;
|
|
49
33
|
/** Make sure a forked state is never merged twice. */
|
|
50
34
|
private alreadyMergedIntoParent;
|
|
51
|
-
constructor(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
/** Side effect trace */
|
|
55
|
-
trace: PublicSideEffectTraceInterface,
|
|
56
|
-
/** Public storage, including cached writes */
|
|
57
|
-
publicStorage: PublicStorage,
|
|
58
|
-
/** Nullifier set, including cached/recently-emitted nullifiers */
|
|
59
|
-
nullifiers: NullifierManager, doMerkleOperations: boolean,
|
|
60
|
-
/** DB interface for merkle tree operations */
|
|
61
|
-
db: MerkleTreeWriteOperations, firstNullifier: Fr);
|
|
35
|
+
constructor(treesDB: PublicTreesDB, contractsDB: PublicContractsDBInterface, trace: PublicSideEffectTraceInterface, firstNullifier: Fr, // Needed for note hashes.
|
|
36
|
+
blockNumber: number, // Needed for contract updates.
|
|
37
|
+
doMerkleOperations?: boolean, publicStorage?: PublicStorage, nullifiers?: NullifierManager);
|
|
62
38
|
/**
|
|
63
39
|
* Create a new state manager
|
|
64
40
|
*/
|
|
65
|
-
static create(
|
|
41
|
+
static create(treesDB: PublicTreesDB, contractsDB: PublicContractsDBInterface, trace: PublicSideEffectTraceInterface, doMerkleOperations: boolean | undefined, firstNullifier: Fr, blockNumber: number): AvmPersistableStateManager;
|
|
42
|
+
deprecatedGetTreesForPIGeneration(): PublicTreesDB;
|
|
66
43
|
/**
|
|
67
44
|
* Create a new state manager forked from this one
|
|
68
45
|
*/
|
|
@@ -85,27 +62,13 @@ export declare class AvmPersistableStateManager {
|
|
|
85
62
|
*/
|
|
86
63
|
writeStorage(contractAddress: AztecAddress, slot: Fr, value: Fr, protocolWrite?: boolean): Promise<void>;
|
|
87
64
|
/**
|
|
88
|
-
* Read from public storage
|
|
65
|
+
* Read from public storage.
|
|
89
66
|
*
|
|
90
67
|
* @param contractAddress - the address of the contract whose storage is being read from
|
|
91
68
|
* @param slot - the slot in the contract's storage being read from
|
|
92
69
|
* @returns the latest value written to slot, or 0 if never written to before
|
|
93
70
|
*/
|
|
94
71
|
readStorage(contractAddress: AztecAddress, slot: Fr): Promise<Fr>;
|
|
95
|
-
getPublicDataMembership(contractAddress: AztecAddress, slot: Fr): Promise<{
|
|
96
|
-
value: Fr;
|
|
97
|
-
leafPreimage: PublicDataTreeLeafPreimage;
|
|
98
|
-
leafIndex: Fr;
|
|
99
|
-
leafPath: Fr[];
|
|
100
|
-
}>;
|
|
101
|
-
/**
|
|
102
|
-
* Read from public storage, don't trace the read.
|
|
103
|
-
*
|
|
104
|
-
* @param contractAddress - the address of the contract whose storage is being read from
|
|
105
|
-
* @param slot - the slot in the contract's storage being read from
|
|
106
|
-
* @returns the latest value written to slot, or 0 if never written to before
|
|
107
|
-
*/
|
|
108
|
-
peekStorage(contractAddress: AztecAddress, slot: Fr): Promise<Fr>;
|
|
109
72
|
/**
|
|
110
73
|
* Check if a note hash exists at the given leaf index, trace the check.
|
|
111
74
|
*
|
|
@@ -137,18 +100,6 @@ export declare class AvmPersistableStateManager {
|
|
|
137
100
|
* @returns exists - whether the nullifier exists in the nullifier set
|
|
138
101
|
*/
|
|
139
102
|
checkNullifierExists(contractAddress: AztecAddress, nullifier: Fr): Promise<boolean>;
|
|
140
|
-
/**
|
|
141
|
-
* Helper to get membership information for a siloed nullifier when checking its existence.
|
|
142
|
-
* Optionally trace the nullifier check.
|
|
143
|
-
*
|
|
144
|
-
* @param siloedNullifier - the siloed nullifier to get membership information for
|
|
145
|
-
* @returns
|
|
146
|
-
* - exists - whether the nullifier exists in the nullifier set
|
|
147
|
-
* - leafOrLowLeafPreimage - the preimage of the nullifier leaf or its low-leaf if it doesn't exist
|
|
148
|
-
* - leafOrLowLeafIndex - the leaf index of the nullifier leaf or its low-leaf if it doesn't exist
|
|
149
|
-
* - leafOrLowLeafPath - the sibling path of the nullifier leaf or its low-leaf if it doesn't exist
|
|
150
|
-
*/
|
|
151
|
-
private getNullifierMembership;
|
|
152
103
|
/**
|
|
153
104
|
* Write a nullifier to the nullifier set, trace the write.
|
|
154
105
|
* @param contractAddress - address of the contract that the nullifier is associated with
|
|
@@ -187,6 +138,7 @@ export declare class AvmPersistableStateManager {
|
|
|
187
138
|
* @returns the contract instance or undefined if it does not exist.
|
|
188
139
|
*/
|
|
189
140
|
getContractInstance(contractAddress: AztecAddress): Promise<SerializableContractInstance | undefined>;
|
|
141
|
+
private checkContractUpdateInformation;
|
|
190
142
|
/**
|
|
191
143
|
* Get a contract class.
|
|
192
144
|
* @param classId - class id to retrieve.
|
|
@@ -197,13 +149,7 @@ export declare class AvmPersistableStateManager {
|
|
|
197
149
|
* Get a contract's bytecode from the contracts DB, also trace the contract class and instance indirectly.
|
|
198
150
|
*/
|
|
199
151
|
getBytecode(contractAddress: AztecAddress): Promise<Buffer | undefined>;
|
|
200
|
-
|
|
201
|
-
updateMembership: AvmPublicDataReadTreeHint;
|
|
202
|
-
updatePreimage: Fr[];
|
|
203
|
-
}>;
|
|
204
|
-
traceEnqueuedCall(publicCallRequest: PublicCallRequest, calldata: Fr[], reverted: boolean): void;
|
|
152
|
+
traceEnqueuedCall(publicCallRequest: PublicCallRequest): void;
|
|
205
153
|
getPublicFunctionDebugName(avmEnvironment: AvmExecutionEnvironment): Promise<string>;
|
|
206
|
-
getLeafOrLowLeafInfo<ID extends IndexedTreeId, T extends IndexedTreeLeafPreimage>(treeId: ID, key: bigint): Promise<GetLeafResult<T>>;
|
|
207
154
|
}
|
|
208
|
-
export {};
|
|
209
155
|
//# sourceMappingURL=journal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/journal/journal.ts"],"names":[],"mappings":";;AASA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/journal/journal.ts"],"names":[],"mappings":"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"}
|