@aztec/simulator 0.85.0 → 0.86.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/private/providers/acvm_native.d.ts +1 -1
- package/dest/private/providers/acvm_native.d.ts.map +1 -1
- package/dest/private/providers/acvm_native.js +4 -3
- package/dest/private/providers/acvm_wasm.d.ts +2 -1
- package/dest/private/providers/acvm_wasm.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm.js +6 -1
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts +2 -1
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm_with_blobs.js +6 -1
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts +2 -1
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts.map +1 -1
- package/dest/private/providers/simulation_provider.d.ts +2 -1
- package/dest/private/providers/simulation_provider.d.ts.map +1 -1
- package/dest/public/avm/avm_context.d.ts +2 -2
- package/dest/public/avm/avm_context.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.d.ts +2 -1
- package/dest/public/avm/avm_simulator.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.js +2 -1
- package/dest/public/avm/avm_simulator_interface.d.ts +11 -0
- package/dest/public/avm/avm_simulator_interface.d.ts.map +1 -0
- package/dest/public/avm/avm_simulator_interface.js +3 -0
- package/dest/public/avm/errors.d.ts +1 -16
- package/dest/public/avm/errors.d.ts.map +1 -1
- package/dest/public/avm/errors.js +0 -37
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.js +1 -1
- package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts +1 -1
- package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/index.d.ts +2 -85
- package/dest/public/avm/fixtures/index.d.ts.map +1 -1
- package/dest/public/avm/fixtures/index.js +2 -174
- package/dest/public/avm/fixtures/initializers.d.ts +42 -0
- package/dest/public/avm/fixtures/initializers.d.ts.map +1 -0
- package/dest/public/avm/fixtures/initializers.js +42 -0
- package/dest/public/avm/fixtures/utils.d.ts +46 -0
- package/dest/public/avm/fixtures/utils.d.ts.map +1 -0
- package/dest/public/avm/fixtures/utils.js +136 -0
- package/dest/public/avm/index.d.ts +0 -1
- package/dest/public/avm/index.d.ts.map +1 -1
- package/dest/public/avm/index.js +0 -1
- package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/public/avm/opcodes/accrued_substate.js +1 -1
- package/dest/public/avm/opcodes/external_calls.d.ts +3 -2
- package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/public/avm/opcodes/external_calls.js +14 -9
- package/dest/public/avm/opcodes/instruction.d.ts +5 -5
- package/dest/public/avm/opcodes/instruction.d.ts.map +1 -1
- package/dest/public/avm/opcodes/instruction.js +6 -6
- package/dest/public/avm/revert_reason.d.ts +18 -0
- package/dest/public/avm/revert_reason.d.ts.map +1 -0
- package/dest/public/avm/revert_reason.js +38 -0
- package/dest/public/avm/serialization/bytecode_serialization.d.ts +2 -4
- package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +1 -1
- package/dest/public/avm/serialization/bytecode_serialization.js +70 -69
- package/dest/{common → public}/debug_fn_name.d.ts +1 -1
- package/dest/{common → public}/debug_fn_name.d.ts.map +1 -1
- package/dest/public/fixtures/index.d.ts +1 -0
- package/dest/public/fixtures/index.d.ts.map +1 -1
- package/dest/public/fixtures/index.js +1 -0
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.js +3 -4
- package/dest/public/fixtures/simple_contract_data_source.d.ts.map +1 -0
- package/dest/public/{avm/fixtures → fixtures}/simple_contract_data_source.js +1 -1
- package/dest/public/hinting_db_sources.d.ts +15 -5
- package/dest/public/hinting_db_sources.d.ts.map +1 -1
- package/dest/public/hinting_db_sources.js +65 -27
- package/dest/public/index.d.ts +2 -6
- package/dest/public/index.d.ts.map +1 -1
- package/dest/public/index.js +2 -6
- package/dest/public/public_db_sources.d.ts +19 -52
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +96 -107
- package/dest/public/public_processor/public_processor.d.ts +6 -6
- package/dest/public/public_processor/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor.js +24 -26
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +3 -2
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +2 -2
- package/dest/public/public_tx_simulator/public_tx_context.d.ts +3 -4
- package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.js +11 -21
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +5 -4
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_simulator.js +21 -10
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +3 -2
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +2 -2
- package/dest/public/side_effect_trace.d.ts +1 -3
- package/dest/public/side_effect_trace.d.ts.map +1 -1
- package/dest/public/side_effect_trace.js +3 -2
- package/dest/public/state_manager/state_manager.d.ts +6 -4
- package/dest/public/state_manager/state_manager.d.ts.map +1 -1
- package/dest/public/state_manager/state_manager.js +20 -41
- package/package.json +14 -16
- package/src/private/providers/acvm_native.ts +5 -4
- package/src/private/providers/acvm_wasm.ts +5 -2
- package/src/private/providers/acvm_wasm_with_blobs.ts +5 -3
- package/src/private/providers/circuit_recording/simulation_provider_recorder_wrapper.ts +3 -2
- package/src/private/providers/simulation_provider.ts +2 -1
- package/src/public/avm/avm_context.ts +2 -2
- package/src/public/avm/avm_simulator.ts +4 -8
- package/src/public/avm/avm_simulator_interface.ts +8 -0
- package/src/public/avm/errors.ts +1 -53
- package/src/public/avm/fixtures/avm_simulation_tester.ts +1 -1
- package/src/public/avm/fixtures/base_avm_simulation_tester.ts +1 -1
- package/src/public/avm/fixtures/index.ts +2 -308
- package/src/public/avm/fixtures/initializers.ts +101 -0
- package/src/public/avm/fixtures/utils.ts +213 -0
- package/src/public/avm/index.ts +0 -1
- package/src/public/avm/opcodes/accrued_substate.ts +1 -5
- package/src/public/avm/opcodes/external_calls.ts +17 -11
- package/src/public/avm/opcodes/instruction.ts +9 -8
- package/src/public/avm/revert_reason.ts +55 -0
- package/src/public/avm/serialization/bytecode_serialization.ts +72 -74
- package/src/{common → public}/debug_fn_name.ts +1 -1
- package/src/public/fixtures/index.ts +1 -0
- package/src/public/fixtures/public_tx_simulation_tester.ts +3 -5
- package/src/public/{avm/fixtures → fixtures}/simple_contract_data_source.ts +1 -1
- package/src/public/hinting_db_sources.ts +104 -39
- package/src/public/index.ts +2 -6
- package/src/public/public_db_sources.ts +111 -164
- package/src/public/public_processor/public_processor.ts +27 -29
- package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +4 -3
- package/src/public/public_tx_simulator/public_tx_context.ts +10 -47
- package/src/public/public_tx_simulator/public_tx_simulator.ts +25 -10
- package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +4 -3
- package/src/public/side_effect_trace.ts +2 -4
- package/src/public/state_manager/state_manager.ts +24 -50
- package/dest/public/avm/fixtures/simple_contract_data_source.d.ts.map +0 -1
- /package/dest/{common → public}/debug_fn_name.js +0 -0
- /package/dest/public/{avm/fixtures → fixtures}/simple_contract_data_source.d.ts +0 -0
|
@@ -36,7 +36,7 @@ export declare class NativeACVMSimulator implements SimulationProvider {
|
|
|
36
36
|
private pathToAcvm;
|
|
37
37
|
private witnessFilename?;
|
|
38
38
|
constructor(workingDirectory: string, pathToAcvm: string, witnessFilename?: string | undefined);
|
|
39
|
-
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<
|
|
39
|
+
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<ACVMSuccess>;
|
|
40
40
|
executeUserCircuit(_input: ACVMWitness, _artifact: FunctionArtifactWithContractName, _callback: ACIRCallback): Promise<ACIRExecutionResult>;
|
|
41
41
|
}
|
|
42
42
|
//# sourceMappingURL=acvm_native.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acvm_native.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_native.ts"],"names":[],"mappings":";;AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAKtE,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,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,
|
|
1
|
+
{"version":3,"file":"acvm_native.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_native.ts"],"names":[],"mappings":";;AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAKtE,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,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,CAsErB;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;IAEpG,sBAAsB,CAC1B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GACvC,OAAO,CAAC,WAAW,CAAC;IA6BvB,kBAAkB,CAChB,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,gCAAgC,EAC3C,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,mBAAmB,CAAC;CAGhC"}
|
|
@@ -91,8 +91,9 @@ export var ACVM_RESULT = /*#__PURE__*/ function(ACVM_RESULT) {
|
|
|
91
91
|
}
|
|
92
92
|
});
|
|
93
93
|
});
|
|
94
|
-
const
|
|
94
|
+
const timer = new Timer();
|
|
95
95
|
const output = await processPromise;
|
|
96
|
+
const duration = timer.ms();
|
|
96
97
|
if (outputFilename) {
|
|
97
98
|
const outputWitnessFileName = `${workingDirectory}/output-witness.gz`;
|
|
98
99
|
await fs.copyFile(outputWitnessFileName, outputFilename);
|
|
@@ -101,7 +102,7 @@ export var ACVM_RESULT = /*#__PURE__*/ function(ACVM_RESULT) {
|
|
|
101
102
|
return {
|
|
102
103
|
status: 0,
|
|
103
104
|
witness,
|
|
104
|
-
duration
|
|
105
|
+
duration
|
|
105
106
|
};
|
|
106
107
|
} catch (error) {
|
|
107
108
|
return {
|
|
@@ -132,7 +133,7 @@ export class NativeACVMSimulator {
|
|
|
132
133
|
if (result.status == 1) {
|
|
133
134
|
throw new Error(`Failed to generate witness: ${result.reason}`);
|
|
134
135
|
}
|
|
135
|
-
return result
|
|
136
|
+
return result;
|
|
136
137
|
};
|
|
137
138
|
return await runInDirectory(this.workingDirectory, operation, false, logger);
|
|
138
139
|
}
|
|
@@ -3,12 +3,13 @@ import type { FunctionArtifactWithContractName } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import type { NoirCompiledCircuitWithName } from '@aztec/stdlib/noir';
|
|
4
4
|
import { type ACIRCallback, type ACIRExecutionResult } from '../acvm/acvm.js';
|
|
5
5
|
import type { ACVMWitness } from '../acvm/acvm_types.js';
|
|
6
|
+
import type { ACVMSuccess } from './acvm_native.js';
|
|
6
7
|
import { type SimulationProvider } from './simulation_provider.js';
|
|
7
8
|
export declare class WASMSimulator implements SimulationProvider {
|
|
8
9
|
protected log: import("@aztec/foundation/log").Logger;
|
|
9
10
|
constructor(log?: import("@aztec/foundation/log").Logger);
|
|
10
11
|
init(): Promise<void>;
|
|
11
|
-
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler): Promise<
|
|
12
|
+
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler): Promise<ACVMSuccess>;
|
|
12
13
|
executeUserCircuit(input: ACVMWitness, artifact: FunctionArtifactWithContractName, callback: ACIRCallback): Promise<ACIRExecutionResult>;
|
|
13
14
|
}
|
|
14
15
|
//# sourceMappingURL=acvm_wasm.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acvm_wasm.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_wasm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"acvm_wasm.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_wasm.ts"],"names":[],"mappings":"AAEA,OAAiB,EAAuB,KAAK,kBAAkB,EAAkB,MAAM,qBAAqB,CAAC;AAE7G,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAQ,MAAM,iBAAiB,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,0BAA0B,CAAC;AAEpF,qBAAa,aAAc,YAAW,kBAAkB;IAC1C,SAAS,CAAC,GAAG;gBAAH,GAAG,yCAAiC;IAEpD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrB,sBAAsB,CAC1B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAC3B,OAAO,CAAC,WAAW,CAAC;IAkCjB,kBAAkB,CACtB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,gCAAgC,EAC1C,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC;CAIhC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createLogger } from '@aztec/foundation/log';
|
|
2
|
+
import { Timer } from '@aztec/foundation/timer';
|
|
2
3
|
import initACVM, { executeCircuit } from '@aztec/noir-acvm_js';
|
|
3
4
|
import initAbi from '@aztec/noir-noirc_abi';
|
|
4
5
|
import { acvm } from '../acvm/acvm.js';
|
|
@@ -29,11 +30,15 @@ export class WASMSimulator {
|
|
|
29
30
|
//
|
|
30
31
|
// Execute the circuit
|
|
31
32
|
try {
|
|
33
|
+
const timer = new Timer();
|
|
32
34
|
const result = await executeCircuit(decodedBytecode, input, callback);
|
|
33
35
|
this.log.debug('execution successful', {
|
|
34
36
|
hash: artifact.hash
|
|
35
37
|
});
|
|
36
|
-
return
|
|
38
|
+
return {
|
|
39
|
+
witness: result,
|
|
40
|
+
duration: timer.ms()
|
|
41
|
+
};
|
|
37
42
|
} catch (err) {
|
|
38
43
|
// Typescript types caught errors as unknown or any, so we need to narrow its type to check if it has raw
|
|
39
44
|
// assertion payload.
|
|
@@ -4,6 +4,7 @@ import type { FunctionArtifactWithContractName } from '@aztec/stdlib/abi';
|
|
|
4
4
|
import type { NoirCompiledCircuitWithName } from '@aztec/stdlib/noir';
|
|
5
5
|
import type { ACIRCallback, ACIRExecutionResult } from '../acvm/acvm.js';
|
|
6
6
|
import type { ACVMWitness } from '../acvm/acvm_types.js';
|
|
7
|
+
import type { ACVMSuccess } from './acvm_native.js';
|
|
7
8
|
import { type SimulationProvider } from './simulation_provider.js';
|
|
8
9
|
/**
|
|
9
10
|
* A simulation provider that uses the WASM simulator with the ability to handle blobs via the foreign call handler.
|
|
@@ -13,7 +14,7 @@ import { type SimulationProvider } from './simulation_provider.js';
|
|
|
13
14
|
* It is only used in the context of server-side code executing simulated protocol circuits.
|
|
14
15
|
*/
|
|
15
16
|
export declare class WASMSimulatorWithBlobs implements SimulationProvider {
|
|
16
|
-
executeProtocolCircuit(input: WitnessMap, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler): Promise<
|
|
17
|
+
executeProtocolCircuit(input: WitnessMap, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler): Promise<ACVMSuccess>;
|
|
17
18
|
executeUserCircuit(_input: ACVMWitness, _artifact: FunctionArtifactWithContractName, _callback: ACIRCallback): Promise<ACIRExecutionResult>;
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=acvm_wasm_with_blobs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acvm_wasm_with_blobs.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_wasm_with_blobs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"acvm_wasm_with_blobs.d.ts","sourceRoot":"","sources":["../../../src/private/providers/acvm_wasm_with_blobs.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,kBAAkB,EAAkB,MAAM,qBAAqB,CAAC;AACnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,0BAA0B,CAAC;AAEpF;;;;;;GAMG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IACzD,sBAAsB,CAC1B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAC3B,OAAO,CAAC,WAAW,CAAC;IAuBvB,kBAAkB,CAChB,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,gCAAgC,EAC3C,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,mBAAmB,CAAC;CAGhC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Timer } from '@aztec/foundation/timer';
|
|
1
2
|
import { executeCircuit } from '@aztec/noir-acvm_js';
|
|
2
3
|
import { enrichNoirError } from './simulation_provider.js';
|
|
3
4
|
/**
|
|
@@ -13,8 +14,12 @@ import { enrichNoirError } from './simulation_provider.js';
|
|
|
13
14
|
//
|
|
14
15
|
// Execute the circuit
|
|
15
16
|
try {
|
|
17
|
+
const timer = new Timer();
|
|
16
18
|
const _witnessMap = await executeCircuit(decodedBytecode, input, callback);
|
|
17
|
-
return
|
|
19
|
+
return {
|
|
20
|
+
witness: _witnessMap,
|
|
21
|
+
duration: timer.ms()
|
|
22
|
+
};
|
|
18
23
|
} catch (err) {
|
|
19
24
|
// Typescript types caught errors as unknown or any, so we need to narrow its type to check if it has raw
|
|
20
25
|
// assertion payload.
|
|
@@ -3,6 +3,7 @@ import type { FunctionArtifactWithContractName } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import type { NoirCompiledCircuitWithName } from '@aztec/stdlib/noir';
|
|
4
4
|
import type { ACIRCallback, ACIRExecutionResult } from '../../acvm/acvm.js';
|
|
5
5
|
import type { ACVMWitness } from '../../acvm/acvm_types.js';
|
|
6
|
+
import type { ACVMSuccess } from '../acvm_native.js';
|
|
6
7
|
import type { SimulationProvider } from '../simulation_provider.js';
|
|
7
8
|
/**
|
|
8
9
|
* Takes a simulation provider and wraps it in a circuit recorder. See CircuitRecorder for more details on how circuit
|
|
@@ -12,7 +13,7 @@ export declare class SimulationProviderRecorderWrapper implements SimulationProv
|
|
|
12
13
|
#private;
|
|
13
14
|
private simulator;
|
|
14
15
|
constructor(simulator: SimulationProvider);
|
|
15
|
-
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<
|
|
16
|
+
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<ACVMSuccess>;
|
|
16
17
|
executeUserCircuit(input: ACVMWitness, artifact: FunctionArtifactWithContractName, callback: ACIRCallback): Promise<ACIRExecutionResult>;
|
|
17
18
|
}
|
|
18
19
|
//# sourceMappingURL=simulation_provider_recorder_wrapper.d.ts.map
|
package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation_provider_recorder_wrapper.d.ts","sourceRoot":"","sources":["../../../../src/private/providers/circuit_recording/simulation_provider_recorder_wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE;;;GAGG;AACH,qBAAa,iCAAkC,YAAW,kBAAkB;;IAC9D,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,kBAAkB;IAEjD,sBAAsB,CACpB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GACvC,OAAO,CAAC,WAAW,CAAC;IAavB,kBAAkB,CAChB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,gCAAgC,EAC1C,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC;CA4ChC"}
|
|
1
|
+
{"version":3,"file":"simulation_provider_recorder_wrapper.d.ts","sourceRoot":"","sources":["../../../../src/private/providers/circuit_recording/simulation_provider_recorder_wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE;;;GAGG;AACH,qBAAa,iCAAkC,YAAW,kBAAkB;;IAC9D,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,kBAAkB;IAEjD,sBAAsB,CACpB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GACvC,OAAO,CAAC,WAAW,CAAC;IAavB,kBAAkB,CAChB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,gCAAgC,EAC1C,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC;CA4ChC"}
|
|
@@ -3,6 +3,7 @@ import type { FunctionArtifactWithContractName } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import type { NoirCompiledCircuit, NoirCompiledCircuitWithName } from '@aztec/stdlib/noir';
|
|
4
4
|
import { type ACIRCallback, type ACIRExecutionResult } from '../acvm/acvm.js';
|
|
5
5
|
import type { ACVMWitness } from '../acvm/acvm_types.js';
|
|
6
|
+
import type { ACVMSuccess } from './acvm_native.js';
|
|
6
7
|
/**
|
|
7
8
|
* Low level simulation interface
|
|
8
9
|
*/
|
|
@@ -15,7 +16,7 @@ export interface SimulationProvider {
|
|
|
15
16
|
* ACVM simulator we don't process foreign calls.
|
|
16
17
|
* @returns The solved witness calculated by executing the circuit on the provided inputs.
|
|
17
18
|
*/
|
|
18
|
-
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<
|
|
19
|
+
executeProtocolCircuit(input: ACVMWitness, artifact: NoirCompiledCircuitWithName, callback: ForeignCallHandler | undefined): Promise<ACVMSuccess>;
|
|
19
20
|
/**
|
|
20
21
|
* Execute a user circuit (smart contract function)/generate a witness
|
|
21
22
|
* @param input - The initial witness map defining all of the inputs to `circuit`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation_provider.d.ts","sourceRoot":"","sources":["../../../src/private/providers/simulation_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAG9E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAE3F,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAoB,MAAM,iBAAiB,CAAC;AAChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"simulation_provider.d.ts","sourceRoot":"","sources":["../../../src/private/providers/simulation_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAG9E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAE3F,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAoB,MAAM,iBAAiB,CAAC;AAChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,sBAAsB,CACpB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GACvC,OAAO,CAAC,WAAW,CAAC,CAAC;IAExB;;;;;;;OAOG;IACH,kBAAkB,CAChB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,gCAAgC,EAC1C,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACjC;AAED,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IAAE,uBAAuB,CAAC,EAAE,GAAG,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAIxG,wBAAgB,eAAe,CAAC,QAAQ,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,GAAG,YAAY,CA4C1G"}
|
|
@@ -4,7 +4,7 @@ import type { PublicPersistableStateManager } from '../state_manager/state_manag
|
|
|
4
4
|
import type { AvmExecutionEnvironment } from './avm_execution_environment.js';
|
|
5
5
|
import { type Gas } from './avm_gas.js';
|
|
6
6
|
import { AvmMachineState } from './avm_machine_state.js';
|
|
7
|
-
import type {
|
|
7
|
+
import type { AvmSimulatorInterface } from './avm_simulator_interface.js';
|
|
8
8
|
/**
|
|
9
9
|
* An execution context includes the information necessary to initiate AVM
|
|
10
10
|
* execution along with all state maintained by the AVM throughout execution.
|
|
@@ -21,7 +21,7 @@ export declare class AvmContext {
|
|
|
21
21
|
* @returns new AvmContext instance
|
|
22
22
|
*/
|
|
23
23
|
constructor(persistableState: PublicPersistableStateManager, environment: AvmExecutionEnvironment, machineState: AvmMachineState);
|
|
24
|
-
provideSimulator?: (
|
|
24
|
+
provideSimulator?: (context: AvmContext) => Promise<AvmSimulatorInterface>;
|
|
25
25
|
/**
|
|
26
26
|
* Prepare a new AVM context that will be ready for an external/nested call
|
|
27
27
|
* - Fork the world state journal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avm_context.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,KAAK,GAAG,EAAgB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"avm_context.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,KAAK,GAAG,EAAgB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E;;;GAGG;AACH,qBAAa,UAAU;IASZ,gBAAgB,EAAE,6BAA6B;IAC/C,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,eAAe;IAVtC;;;;;;OAMG;gBAEM,gBAAgB,EAAE,6BAA6B,EAC/C,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,eAAe;IAK/B,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAElF;;;;;;;;;;;;;OAaG;IACU,+BAA+B,CAC1C,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,EAAE,EAAE,EACd,YAAY,EAAE,GAAG,EACjB,QAAQ,EAAE,MAAM,GAAG,YAAY,GAC9B,OAAO,CAAC,UAAU,CAAC;CAUvB"}
|
|
@@ -7,8 +7,9 @@ import type { PublicPersistableStateManager } from '../state_manager/state_manag
|
|
|
7
7
|
import { AvmContext } from './avm_context.js';
|
|
8
8
|
import { AvmContractCallResult } from './avm_contract_call_result.js';
|
|
9
9
|
import type { Gas } from './avm_gas.js';
|
|
10
|
+
import type { AvmSimulatorInterface } from './avm_simulator_interface.js';
|
|
10
11
|
import { type InstructionSet } from './serialization/bytecode_serialization.js';
|
|
11
|
-
export declare class AvmSimulator {
|
|
12
|
+
export declare class AvmSimulator implements AvmSimulatorInterface {
|
|
12
13
|
private context;
|
|
13
14
|
private instructionSet;
|
|
14
15
|
private log;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avm_simulator.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_simulator.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"avm_simulator.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_simulator.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAI1E,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,2CAA2C,CAAC;AAOnD,qBAAa,YAAa,YAAW,qBAAqB;IAatD,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,cAAc;IAbxB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAAuC;IAE5D,OAAO,CAAC,6BAA6B,CAAiD;IAEtF,OAAO,CAAC,kBAAkB,CAAY;IACtC,OAAO,CAAC,wBAAwB,CAA+B;gBAKrD,OAAO,EAAE,UAAU,EACnB,cAAc,GAAE,cAAgC,EACxD,cAAc,UAAQ;WAmBJ,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC;WAQjD,MAAM,CACxB,YAAY,EAAE,6BAA6B,EAC3C,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,EAAE,EAClB,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,EAAE,EAAE,EACd,YAAY,EAAE,GAAG;IAiBnB;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAuBtD;;OAEG;IACI,WAAW,IAAI,MAAM,GAAG,SAAS;IAIxC;;;OAGG;IACU,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAqHhE,+BAA+B;IAoB7C,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,kBAAkB;CAS3B"}
|
|
@@ -7,7 +7,8 @@ import { AvmContext } from './avm_context.js';
|
|
|
7
7
|
import { AvmContractCallResult } from './avm_contract_call_result.js';
|
|
8
8
|
import { AvmExecutionEnvironment } from './avm_execution_environment.js';
|
|
9
9
|
import { AvmMachineState } from './avm_machine_state.js';
|
|
10
|
-
import { AvmExecutionError, AvmRevertReason, InvalidProgramCounterError
|
|
10
|
+
import { AvmExecutionError, AvmRevertReason, InvalidProgramCounterError } from './errors.js';
|
|
11
|
+
import { revertReasonFromExceptionalHalt, revertReasonFromExplicitRevert } from './revert_reason.js';
|
|
11
12
|
import { INSTRUCTION_SET, decodeInstructionFromBytecode } from './serialization/bytecode_serialization.js';
|
|
12
13
|
export class AvmSimulator {
|
|
13
14
|
context;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
/**
|
|
4
|
+
* Interface for AvmSimulator to break the circular dependency between avm_context.ts and avm_simulator.ts
|
|
5
|
+
*/
|
|
6
|
+
export interface AvmSimulatorInterface {
|
|
7
|
+
execute(): Promise<any>;
|
|
8
|
+
executeBytecode(bytecode: Buffer): Promise<any>;
|
|
9
|
+
getBytecode(): Buffer | undefined;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=avm_simulator_interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avm_simulator_interface.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_simulator_interface.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IACxB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAChD,WAAW,IAAI,MAAM,GAAG,SAAS,CAAC;CACnC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Point } from '@aztec/foundation/fields';
|
|
2
2
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
3
3
|
import type { FailingFunction, NoirCallStack } from '@aztec/stdlib/errors';
|
|
4
4
|
import { ExecutionError } from '../../common/errors.js';
|
|
5
|
-
import type { AvmContext } from './avm_context.js';
|
|
6
5
|
/**
|
|
7
6
|
* Avm-specific errors should derive from this
|
|
8
7
|
*/
|
|
@@ -105,18 +104,4 @@ export declare class StaticCallAlterationError extends InstructionExecutionError
|
|
|
105
104
|
export declare class AvmRevertReason extends ExecutionError {
|
|
106
105
|
constructor(message: string, failingFunction: FailingFunction, noirCallStack: NoirCallStack, options?: ErrorOptions);
|
|
107
106
|
}
|
|
108
|
-
/**
|
|
109
|
-
* Create a "revert reason" error for an exceptional halt.
|
|
110
|
-
*
|
|
111
|
-
* @param haltingError - the lower-level error causing the exceptional halt
|
|
112
|
-
* @param context - the context of the AVM execution used to extract the failingFunction and noirCallStack
|
|
113
|
-
*/
|
|
114
|
-
export declare function revertReasonFromExceptionalHalt(haltingError: AvmExecutionError, context: AvmContext): Promise<AvmRevertReason>;
|
|
115
|
-
/**
|
|
116
|
-
* Create a "revert reason" error for an explicit revert (a root cause).
|
|
117
|
-
*
|
|
118
|
-
* @param revertData - output data of the explicit REVERT instruction
|
|
119
|
-
* @param context - the context of the AVM execution used to extract the failingFunction and noirCallStack
|
|
120
|
-
*/
|
|
121
|
-
export declare function revertReasonFromExplicitRevert(revertData: Fr[], context: AvmContext): Promise<AvmRevertReason>;
|
|
122
107
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/public/avm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/public/avm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD;;GAEG;AACH,8BAAsB,iBAAkB,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,eAAe,EAAE,YAAY;CAI1C;AAED,qBAAa,eAAgB,SAAQ,iBAAiB;gBACxC,OAAO,EAAE,MAAM;CAI5B;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAIpC;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,iBAAiB;gBAC3C,GAAG,EAAE,MAAM;CAIxB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;gBACxC,GAAG,EAAE,MAAM;CAIxB;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;gBAC7C,QAAQ,EAAE,MAAM;CAI7B;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;;;GAGG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;gBACvD,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAIhD;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAI3C;AAED,oCAAoC;AACpC,qBAAa,aAAc,SAAQ,iBAAiB;gBACtC,UAAU,EAAE,MAAM,EAAE;CAIjC;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;gBAC7C,gBAAgB,EAAE,MAAM;CAIrC;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,iBAAiB;gBAChD,KAAK,EAAE,KAAK;CAIzB;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,WAAW,EAAE,MAAM;CAIhC;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,yBAAyB;;CAKvE;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"}
|
|
@@ -140,40 +140,3 @@ export class ArithmeticError extends AvmExecutionError {
|
|
|
140
140
|
super(message, failingFunction, noirCallStack, options);
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
|
-
async function createRevertReason(message, revertData, context) {
|
|
144
|
-
// We drop the returnPc information.
|
|
145
|
-
const internalCallStack = context.machineState.internalCallStack.map((entry)=>entry.callPc);
|
|
146
|
-
// If we are reverting due to the same error that we have been tracking, we use the nested error as the cause.
|
|
147
|
-
let nestedError = undefined;
|
|
148
|
-
const revertDataEquals = (a, b)=>a.length === b.length && a.every((v, i)=>v.equals(b[i]));
|
|
149
|
-
if (context.machineState.collectedRevertInfo && revertDataEquals(context.machineState.collectedRevertInfo.revertDataRepresentative, revertData)) {
|
|
150
|
-
nestedError = context.machineState.collectedRevertInfo.recursiveRevertReason;
|
|
151
|
-
message = context.machineState.collectedRevertInfo.recursiveRevertReason.message;
|
|
152
|
-
}
|
|
153
|
-
const fnName = await context.persistableState.getPublicFunctionDebugName(context.environment);
|
|
154
|
-
return new AvmRevertReason(message, /*failingFunction=*/ {
|
|
155
|
-
contractAddress: context.environment.address,
|
|
156
|
-
functionName: fnName
|
|
157
|
-
}, /*noirCallStack=*/ [
|
|
158
|
-
...internalCallStack,
|
|
159
|
-
context.machineState.pc
|
|
160
|
-
].map((pc)=>`0.${pc}`), /*options=*/ {
|
|
161
|
-
cause: nestedError
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Create a "revert reason" error for an exceptional halt.
|
|
166
|
-
*
|
|
167
|
-
* @param haltingError - the lower-level error causing the exceptional halt
|
|
168
|
-
* @param context - the context of the AVM execution used to extract the failingFunction and noirCallStack
|
|
169
|
-
*/ export async function revertReasonFromExceptionalHalt(haltingError, context) {
|
|
170
|
-
return await createRevertReason(haltingError.message, [], context);
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* Create a "revert reason" error for an explicit revert (a root cause).
|
|
174
|
-
*
|
|
175
|
-
* @param revertData - output data of the explicit REVERT instruction
|
|
176
|
-
* @param context - the context of the AVM execution used to extract the failingFunction and noirCallStack
|
|
177
|
-
*/ export async function revertReasonFromExplicitRevert(revertData, context) {
|
|
178
|
-
return await createRevertReason('Assertion failed: ', revertData, context);
|
|
179
|
-
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
2
2
|
import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
3
3
|
import type { AvmContractCallResult } from '../../avm/avm_contract_call_result.js';
|
|
4
|
+
import { SimpleContractDataSource } from '../../fixtures/simple_contract_data_source.js';
|
|
4
5
|
import { PublicPersistableStateManager } from '../../state_manager/state_manager.js';
|
|
5
6
|
import { BaseAvmSimulationTester } from './base_avm_simulation_tester.js';
|
|
6
|
-
import { SimpleContractDataSource } from './simple_contract_data_source.js';
|
|
7
7
|
/**
|
|
8
8
|
* A test class that extends the BaseAvmSimulationTester to enable real-app testing of the core AvmSimulator.
|
|
9
9
|
* It provides an interface for simulating one top-level call at a time and maintains state between
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avm_simulation_tester.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/avm_simulation_tester.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAKjF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"avm_simulation_tester.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/avm_simulation_tester.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAKjF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AASnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAErF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAK1E;;;;GAIG;AACH,qBAAa,mBAAoB,SAAQ,uBAAuB;IAI5D,OAAO,CAAC,YAAY;gBAFpB,kBAAkB,EAAE,wBAAwB,EAC5C,WAAW,EAAE,yBAAyB,EAC9B,YAAY,EAAE,6BAA6B;WAKxC,MAAM,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAmBnD;;OAEG;IACG,YAAY,CAChB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,EAAE,EACX,YAAY,UAAQ,GACnB,OAAO,CAAC,qBAAqB,CAAC;CAsClC"}
|
|
@@ -5,11 +5,11 @@ import { GlobalVariables } from '@aztec/stdlib/tx';
|
|
|
5
5
|
import { NativeWorldStateService } from '@aztec/world-state';
|
|
6
6
|
import { SideEffectTrace } from '../../../public/side_effect_trace.js';
|
|
7
7
|
import { DEFAULT_BLOCK_NUMBER, getContractFunctionAbi, getFunctionSelector, initContext, initExecutionEnvironment, resolveContractAssertionMessage } from '../../avm/fixtures/index.js';
|
|
8
|
+
import { SimpleContractDataSource } from '../../fixtures/simple_contract_data_source.js';
|
|
8
9
|
import { PublicContractsDB, PublicTreesDB } from '../../public_db_sources.js';
|
|
9
10
|
import { PublicPersistableStateManager } from '../../state_manager/state_manager.js';
|
|
10
11
|
import { AvmSimulator } from '../avm_simulator.js';
|
|
11
12
|
import { BaseAvmSimulationTester } from './base_avm_simulation_tester.js';
|
|
12
|
-
import { SimpleContractDataSource } from './simple_contract_data_source.js';
|
|
13
13
|
const TIMESTAMP = new Fr(99833);
|
|
14
14
|
const DEFAULT_GAS_FEES = new GasFees(2, 3);
|
|
15
15
|
/**
|
|
@@ -3,7 +3,7 @@ import type { ContractArtifact } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
4
|
import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
5
5
|
import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
6
|
-
import type { SimpleContractDataSource } from '
|
|
6
|
+
import type { SimpleContractDataSource } from '../../fixtures/simple_contract_data_source.js';
|
|
7
7
|
/**
|
|
8
8
|
* An abstract test class that enables tests of real apps in the AVM without requiring e2e tests.
|
|
9
9
|
* It enables this by letting us (1) perform pseudo-contract-deployments (and registrations)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_avm_simulation_tester.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/base_avm_simulation_tester.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"base_avm_simulation_tester.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/base_avm_simulation_tester.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAGjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAG9F;;;;;;;;;;GAUG;AACH,8BAAsB,uBAAuB;IAIlC,kBAAkB,EAAE,wBAAwB;IAC5C,WAAW,EAAE,yBAAyB;IAC7C,OAAO,CAAC,sBAAsB;IALzB,MAAM,yCAAyC;gBAG7C,kBAAkB,EAAE,wBAAwB,EAC5C,WAAW,EAAE,yBAAyB,EACrC,sBAAsB,KAAmB;IAG7C,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,KAA8B;IAMhF,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;IAOjE;;;OAGG;IACG,yBAAyB,CAC7B,eAAe,EAAE,GAAG,EAAE,EACtB,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,gBAAgB,EAClC,sBAAsB,UAAQ,EAC9B,IAAI,SAAI,EACR,uBAAuB,CAAC,EAAE,EAAE,GAC3B,OAAO,CAAC,2BAA2B,CAAC;IAiBjC,wBAAwB,IAAI,OAAO,CAAC,2BAA2B,CAAC;IAWhE,mBAAmB,CAAC,gBAAgB,EAAE,2BAA2B,EAAE,sBAAsB,UAAQ;YAOzF,8BAA8B;CAO7C"}
|
|
@@ -1,86 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
-
import { type ContractArtifact, type FunctionAbi, type FunctionArtifact, FunctionSelector } from '@aztec/stdlib/abi';
|
|
5
|
-
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
-
import { type ContractClassPublic, type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
7
|
-
import { GlobalVariables } from '@aztec/stdlib/tx';
|
|
8
|
-
import type { PublicContractsDB, PublicTreesDB } from '../../public_db_sources.js';
|
|
9
|
-
import type { PublicSideEffectTraceInterface } from '../../side_effect_trace_interface.js';
|
|
10
|
-
import { NullifierManager } from '../../state_manager/nullifiers.js';
|
|
11
|
-
import { PublicStorage } from '../../state_manager/public_storage.js';
|
|
12
|
-
import { PublicPersistableStateManager } from '../../state_manager/state_manager.js';
|
|
13
|
-
import { AvmContext } from '../avm_context.js';
|
|
14
|
-
import { AvmExecutionEnvironment } from '../avm_execution_environment.js';
|
|
15
|
-
import { AvmMachineState } from '../avm_machine_state.js';
|
|
16
|
-
import { Field, Uint8, Uint32, Uint64 } from '../avm_memory_types.js';
|
|
17
|
-
import type { AvmRevertReason } from '../errors.js';
|
|
18
|
-
export declare const PUBLIC_DISPATCH_FN_NAME = "public_dispatch";
|
|
19
|
-
export declare const DEFAULT_BLOCK_NUMBER = 42;
|
|
20
|
-
/**
|
|
21
|
-
* Create a new AVM context with default values.
|
|
22
|
-
*/
|
|
23
|
-
export declare function initContext(overrides?: {
|
|
24
|
-
persistableState?: PublicPersistableStateManager;
|
|
25
|
-
env?: AvmExecutionEnvironment;
|
|
26
|
-
machineState?: AvmMachineState;
|
|
27
|
-
}): AvmContext;
|
|
28
|
-
/** Creates an empty state manager with mocked host storage. */
|
|
29
|
-
export declare function initPersistableStateManager(overrides?: {
|
|
30
|
-
treesDB?: PublicTreesDB;
|
|
31
|
-
contractsDB?: PublicContractsDB;
|
|
32
|
-
trace?: PublicSideEffectTraceInterface;
|
|
33
|
-
publicStorage?: PublicStorage;
|
|
34
|
-
nullifiers?: NullifierManager;
|
|
35
|
-
doMerkleOperations?: boolean;
|
|
36
|
-
firstNullifier?: Fr;
|
|
37
|
-
blockNumber?: number;
|
|
38
|
-
}): PublicPersistableStateManager;
|
|
39
|
-
/**
|
|
40
|
-
* Create an empty instance of the Execution Environment where all values are zero, unless overridden in the overrides object
|
|
41
|
-
*/
|
|
42
|
-
export declare function initExecutionEnvironment(overrides?: Partial<AvmExecutionEnvironment>): AvmExecutionEnvironment;
|
|
43
|
-
/**
|
|
44
|
-
* Create an empty instance of the Execution Environment where all values are zero, unless overridden in the overrides object
|
|
45
|
-
*/
|
|
46
|
-
export declare function initGlobalVariables(overrides?: Partial<GlobalVariables>): GlobalVariables;
|
|
47
|
-
/**
|
|
48
|
-
* Create an empty instance of the Machine State where all values are set to a large enough amount, unless overridden in the overrides object
|
|
49
|
-
*/
|
|
50
|
-
export declare function initMachineState(overrides?: Partial<AvmMachineState>): AvmMachineState;
|
|
51
|
-
/**
|
|
52
|
-
* Create a new object with all the same properties as the original, except for the ones in the overrides object.
|
|
53
|
-
*/
|
|
54
|
-
export declare function allSameExcept(original: any, overrides: any): any;
|
|
55
|
-
export declare function randomMemoryBytes(length: number): Uint8[];
|
|
56
|
-
export declare function randomMemoryUint32s(length: number): Uint32[];
|
|
57
|
-
export declare function randomMemoryUint64s(length: number): Uint64[];
|
|
58
|
-
export declare function randomMemoryFields(length: number): Field[];
|
|
59
|
-
export declare function getFunctionSelector(functionName: string, contractArtifact: ContractArtifact): Promise<FunctionSelector>;
|
|
60
|
-
export declare function getContractFunctionArtifact(functionName: string, contractArtifact: ContractArtifact): FunctionArtifact | undefined;
|
|
61
|
-
export declare function getContractFunctionAbi(functionName: string, contractArtifact: ContractArtifact): FunctionAbi | undefined;
|
|
62
|
-
export declare function resolveContractAssertionMessage(functionName: string, revertReason: AvmRevertReason, output: Fr[], contractArtifact: ContractArtifact): string | undefined;
|
|
63
|
-
export declare function getAvmTestContractFunctionSelector(functionName: string): Promise<FunctionSelector>;
|
|
64
|
-
export declare function getAvmGadgetsTestContractFunctionSelector(functionName: string): Promise<FunctionSelector>;
|
|
65
|
-
export declare function getAvmTestContractArtifact(functionName: string): FunctionArtifact;
|
|
66
|
-
export declare function getAvmGadgetsTestContractArtifact(functionName: string): FunctionArtifact;
|
|
67
|
-
export declare function getAvmTestContractBytecode(functionName: string): Buffer;
|
|
68
|
-
export declare function getAvmGadgetsTestContractBytecode(functionName: string): Buffer;
|
|
69
|
-
export declare function resolveAvmTestContractAssertionMessage(functionName: string, revertReason: AvmRevertReason, output: Fr[]): string | undefined;
|
|
70
|
-
export declare function resolveAvmGadgetsTestContractAssertionMessage(functionName: string, revertReason: AvmRevertReason, output: Fr[]): string | undefined;
|
|
71
|
-
/**
|
|
72
|
-
* Create a contract class and instance given constructor args, artifact, etc.
|
|
73
|
-
* NOTE: This is useful for testing real-ish contract class registration and instance deployment TXs (via logs)
|
|
74
|
-
* @param constructorArgs - The constructor arguments for the contract.
|
|
75
|
-
* @param deployer - The deployer of the contract.
|
|
76
|
-
* @param contractArtifact - The contract artifact for the contract.
|
|
77
|
-
* @param seed - The seed for the contract.
|
|
78
|
-
* @param originalContractClassId - The original contract class ID (if upgraded)
|
|
79
|
-
* @returns The contract class, instance, and contract address nullifier.
|
|
80
|
-
*/
|
|
81
|
-
export declare function createContractClassAndInstance(constructorArgs: any[], deployer: AztecAddress, contractArtifact: ContractArtifact, seed?: number, originalContractClassId?: Fr): Promise<{
|
|
82
|
-
contractClass: ContractClassPublic;
|
|
83
|
-
contractInstance: ContractInstanceWithAddress;
|
|
84
|
-
contractAddressNullifier: Fr;
|
|
85
|
-
}>;
|
|
1
|
+
export * from './initializers.js';
|
|
2
|
+
export * from './utils.js';
|
|
86
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/fixtures/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
|