@aztec/simulator 0.42.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.
- package/dest/acvm/oracle/oracle.d.ts +3 -2
- package/dest/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/oracle.js +17 -6
- package/dest/acvm/oracle/typed_oracle.d.ts +3 -2
- package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/typed_oracle.js +8 -5
- package/dest/avm/avm_gas.d.ts.map +1 -1
- package/dest/avm/avm_gas.js +3 -1
- package/dest/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/avm/avm_memory_types.js +2 -4
- package/dest/avm/fixtures/index.d.ts +4 -1
- package/dest/avm/fixtures/index.d.ts.map +1 -1
- package/dest/avm/fixtures/index.js +11 -6
- package/dest/avm/journal/journal.d.ts +3 -3
- package/dest/avm/journal/journal.d.ts.map +1 -1
- package/dest/avm/journal/journal.js +18 -13
- package/dest/avm/journal/trace.d.ts +3 -3
- package/dest/avm/journal/trace.d.ts.map +1 -1
- package/dest/avm/journal/trace.js +7 -6
- package/dest/avm/journal/trace_types.d.ts +4 -0
- package/dest/avm/journal/trace_types.d.ts.map +1 -1
- package/dest/avm/journal/trace_types.js +1 -5
- package/dest/avm/opcodes/accrued_substate.d.ts +2 -2
- package/dest/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/avm/opcodes/accrued_substate.js +36 -21
- package/dest/avm/opcodes/arithmetic.d.ts.map +1 -1
- package/dest/avm/opcodes/arithmetic.js +12 -9
- package/dest/avm/opcodes/bitwise.d.ts.map +1 -1
- package/dest/avm/opcodes/bitwise.js +11 -8
- package/dest/avm/opcodes/comparators.d.ts.map +1 -1
- package/dest/avm/opcodes/comparators.js +7 -5
- package/dest/avm/opcodes/contract.d.ts.map +1 -1
- package/dest/avm/opcodes/contract.js +20 -24
- package/dest/avm/opcodes/control_flow.d.ts.map +1 -1
- package/dest/avm/opcodes/control_flow.js +4 -2
- package/dest/avm/opcodes/ec_add.d.ts +19 -0
- package/dest/avm/opcodes/ec_add.d.ts.map +1 -0
- package/dest/avm/opcodes/ec_add.js +78 -0
- package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/avm/opcodes/external_calls.js +8 -3
- package/dest/avm/opcodes/hashing.d.ts.map +1 -1
- package/dest/avm/opcodes/hashing.js +10 -2
- package/dest/avm/opcodes/instruction_impl.d.ts.map +1 -1
- package/dest/avm/opcodes/instruction_impl.js +4 -2
- package/dest/avm/opcodes/memory.d.ts +1 -1
- package/dest/avm/opcodes/memory.d.ts.map +1 -1
- package/dest/avm/opcodes/memory.js +14 -12
- package/dest/avm/opcodes/multi_scalar_mul.d.ts +16 -0
- package/dest/avm/opcodes/multi_scalar_mul.d.ts.map +1 -0
- package/dest/avm/opcodes/multi_scalar_mul.js +95 -0
- package/dest/avm/opcodes/storage.d.ts +1 -1
- package/dest/avm/opcodes/storage.d.ts.map +1 -1
- package/dest/avm/opcodes/storage.js +11 -8
- package/dest/avm/serialization/bytecode_serialization.d.ts.map +1 -1
- package/dest/avm/serialization/bytecode_serialization.js +5 -1
- package/dest/avm/serialization/instruction_serialization.d.ts +3 -1
- package/dest/avm/serialization/instruction_serialization.d.ts.map +1 -1
- package/dest/avm/serialization/instruction_serialization.js +4 -2
- package/dest/client/client_execution_context.d.ts +15 -3
- package/dest/client/client_execution_context.d.ts.map +1 -1
- package/dest/client/client_execution_context.js +31 -17
- package/dest/client/simulator.d.ts +2 -1
- package/dest/client/simulator.d.ts.map +1 -1
- package/dest/client/simulator.js +17 -9
- package/dest/public/abstract_phase_manager.d.ts +10 -11
- package/dest/public/abstract_phase_manager.d.ts.map +1 -1
- package/dest/public/abstract_phase_manager.js +75 -53
- package/dest/public/app_logic_phase_manager.d.ts +3 -3
- package/dest/public/app_logic_phase_manager.d.ts.map +1 -1
- package/dest/public/app_logic_phase_manager.js +3 -3
- package/dest/public/db_interfaces.d.ts +1 -0
- package/dest/public/db_interfaces.d.ts.map +1 -1
- package/dest/public/execution.d.ts +1 -15
- package/dest/public/execution.d.ts.map +1 -1
- package/dest/public/execution.js +1 -51
- package/dest/public/executor.d.ts +1 -1
- package/dest/public/executor.d.ts.map +1 -1
- package/dest/public/executor.js +15 -8
- package/dest/public/hints_builder.d.ts +1 -1
- package/dest/public/index.d.ts +6 -6
- package/dest/public/index.d.ts.map +1 -1
- package/dest/public/index.js +7 -7
- package/dest/public/phase_manager_factory.d.ts +3 -3
- package/dest/public/phase_manager_factory.d.ts.map +1 -1
- package/dest/public/phase_manager_factory.js +5 -5
- package/dest/public/public_db_sources.d.ts +3 -1
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +54 -8
- package/dest/public/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor.js +4 -5
- package/dest/public/setup_phase_manager.d.ts +3 -3
- package/dest/public/setup_phase_manager.d.ts.map +1 -1
- package/dest/public/setup_phase_manager.js +3 -3
- package/dest/public/tail_phase_manager.d.ts +3 -3
- package/dest/public/tail_phase_manager.d.ts.map +1 -1
- package/dest/public/tail_phase_manager.js +3 -3
- package/dest/public/teardown_phase_manager.d.ts +3 -3
- package/dest/public/teardown_phase_manager.d.ts.map +1 -1
- package/dest/public/teardown_phase_manager.js +3 -3
- package/dest/public/transitional_adaptors.d.ts +1 -1
- package/dest/public/transitional_adaptors.d.ts.map +1 -1
- package/dest/public/transitional_adaptors.js +9 -3
- package/package.json +8 -8
- package/src/acvm/oracle/oracle.ts +35 -6
- package/src/acvm/oracle/typed_oracle.ts +20 -4
- package/src/avm/avm_gas.ts +2 -0
- package/src/avm/avm_memory_types.ts +1 -3
- package/src/avm/fixtures/index.ts +12 -8
- package/src/avm/journal/journal.ts +26 -21
- package/src/avm/journal/trace.ts +8 -11
- package/src/avm/journal/trace_types.ts +3 -0
- package/src/avm/opcodes/accrued_substate.ts +53 -20
- package/src/avm/opcodes/arithmetic.ts +17 -8
- package/src/avm/opcodes/bitwise.ts +13 -8
- package/src/avm/opcodes/comparators.ts +9 -4
- package/src/avm/opcodes/contract.ts +22 -26
- package/src/avm/opcodes/control_flow.ts +3 -1
- package/src/avm/opcodes/ec_add.ts +92 -0
- package/src/avm/opcodes/external_calls.ts +8 -2
- package/src/avm/opcodes/hashing.ts +11 -1
- package/src/avm/opcodes/instruction_impl.ts +4 -1
- package/src/avm/opcodes/memory.ts +18 -11
- package/src/avm/opcodes/multi_scalar_mul.ts +114 -0
- package/src/avm/opcodes/storage.ts +10 -10
- package/src/avm/serialization/bytecode_serialization.ts +4 -0
- package/src/avm/serialization/instruction_serialization.ts +2 -0
- package/src/client/client_execution_context.ts +46 -18
- package/src/client/simulator.ts +18 -8
- package/src/public/abstract_phase_manager.ts +77 -59
- package/src/public/app_logic_phase_manager.ts +2 -2
- package/src/public/db_interfaces.ts +2 -0
- package/src/public/execution.ts +0 -69
- package/src/public/executor.ts +17 -8
- package/src/public/index.ts +6 -12
- package/src/public/phase_manager_factory.ts +6 -6
- package/src/public/public_db_sources.ts +62 -7
- package/src/public/public_processor.ts +4 -7
- package/src/public/setup_phase_manager.ts +2 -2
- package/src/public/tail_phase_manager.ts +2 -2
- package/src/public/teardown_phase_manager.ts +2 -2
- package/src/public/transitional_adaptors.ts +42 -2
- package/dest/public/utils.d.ts +0 -8
- package/dest/public/utils.d.ts.map +0 -1
- package/dest/public/utils.js +0 -38
- package/src/public/utils.ts +0 -39
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { type PublicProvingRequest, type Tx } from '@aztec/circuit-types';
|
|
1
|
+
import { PublicKernelType, type PublicProvingRequest, type Tx } from '@aztec/circuit-types';
|
|
2
2
|
import { type GlobalVariables, type Header, type PublicKernelCircuitPublicInputs } from '@aztec/circuits.js';
|
|
3
3
|
import { type PublicExecutor, type PublicStateDB } from '@aztec/simulator';
|
|
4
4
|
import { type MerkleTreeOperations } from '@aztec/world-state';
|
|
5
|
-
import { AbstractPhaseManager
|
|
5
|
+
import { AbstractPhaseManager } from './abstract_phase_manager.js';
|
|
6
6
|
import { type ContractsDataSourcePublicDB } from './public_db_sources.js';
|
|
7
7
|
import { type PublicKernelCircuitSimulator } from './public_kernel_circuit_simulator.js';
|
|
8
8
|
/**
|
|
@@ -11,7 +11,7 @@ import { type PublicKernelCircuitSimulator } from './public_kernel_circuit_simul
|
|
|
11
11
|
export declare class AppLogicPhaseManager extends AbstractPhaseManager {
|
|
12
12
|
protected publicContractsDB: ContractsDataSourcePublicDB;
|
|
13
13
|
protected publicStateDB: PublicStateDB;
|
|
14
|
-
constructor(db: MerkleTreeOperations, publicExecutor: PublicExecutor, publicKernel: PublicKernelCircuitSimulator, globalVariables: GlobalVariables, historicalHeader: Header, publicContractsDB: ContractsDataSourcePublicDB, publicStateDB: PublicStateDB, phase?:
|
|
14
|
+
constructor(db: MerkleTreeOperations, publicExecutor: PublicExecutor, publicKernel: PublicKernelCircuitSimulator, globalVariables: GlobalVariables, historicalHeader: Header, publicContractsDB: ContractsDataSourcePublicDB, publicStateDB: PublicStateDB, phase?: PublicKernelType);
|
|
15
15
|
handle(tx: Tx, previousPublicKernelOutput: PublicKernelCircuitPublicInputs): Promise<{
|
|
16
16
|
publicProvingRequests: PublicProvingRequest[];
|
|
17
17
|
publicKernelOutput: PublicKernelCircuitPublicInputs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app_logic_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/app_logic_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"app_logic_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/app_logic_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,oBAAoB,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,KAAK,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAyB,MAAM,6BAA6B,CAAC;AAC1F,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAEzF;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAO1D,SAAS,CAAC,iBAAiB,EAAE,2BAA2B;IACxD,SAAS,CAAC,aAAa,EAAE,aAAa;gBANtC,EAAE,EAAE,oBAAoB,EACxB,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,4BAA4B,EAC1C,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,MAAM,EACd,iBAAiB,EAAE,2BAA2B,EAC9C,aAAa,EAAE,aAAa,EACtC,KAAK,GAAE,gBAA6C;IAKvC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,0BAA0B,EAAE,+BAA+B;;;;;;;CAkC1F"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { PublicKernelType } from '@aztec/circuit-types';
|
|
2
|
-
import { AbstractPhaseManager,
|
|
2
|
+
import { AbstractPhaseManager, makeAvmProvingRequest } from './abstract_phase_manager.js';
|
|
3
3
|
/**
|
|
4
4
|
* The phase manager responsible for performing the fee preparation phase.
|
|
5
5
|
*/
|
|
6
6
|
export class AppLogicPhaseManager extends AbstractPhaseManager {
|
|
7
|
-
constructor(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB, phase =
|
|
7
|
+
constructor(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB, phase = PublicKernelType.APP_LOGIC) {
|
|
8
8
|
super(db, publicExecutor, publicKernel, globalVariables, historicalHeader, phase);
|
|
9
9
|
this.publicContractsDB = publicContractsDB;
|
|
10
10
|
this.publicStateDB = publicStateDB;
|
|
@@ -41,4 +41,4 @@ export class AppLogicPhaseManager extends AbstractPhaseManager {
|
|
|
41
41
|
return { publicProvingRequests, publicKernelOutput: kernelOutput, revertReason, returnValues, gasUsed };
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwX2xvZ2ljX3BoYXNlX21hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL2FwcF9sb2dpY19waGFzZV9tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBc0MsTUFBTSxzQkFBc0IsQ0FBQztBQUs1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUkxRjs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxvQkFBb0I7SUFDNUQsWUFDRSxFQUF3QixFQUN4QixjQUE4QixFQUM5QixZQUEwQyxFQUMxQyxlQUFnQyxFQUNoQyxnQkFBd0IsRUFDZCxpQkFBOEMsRUFDOUMsYUFBNEIsRUFDdEMsUUFBMEIsZ0JBQWdCLENBQUMsU0FBUztRQUVwRCxLQUFLLENBQUMsRUFBRSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBSnhFLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBNkI7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFJeEMsQ0FBQztJQUVRLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBTSxFQUFFLDBCQUEyRDtRQUN2RixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwRCx3RkFBd0Y7UUFDeEYseUZBQXlGO1FBQ3pGLDJEQUEyRDtRQUMzRCxzRkFBc0Y7UUFDdEYsOEVBQThFO1FBQzlFLHFGQUFxRjtRQUNyRixNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakQsTUFBTSxFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxHQUN2RyxNQUFNLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLEVBQUUsMEJBQTBCLENBQUMsQ0FBQyxLQUFLO1FBQ3pFLHdGQUF3RjtRQUN4RixLQUFLLEVBQUMsR0FBRyxFQUFDLEVBQUU7WUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QyxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FDRixDQUFDO1FBRUosSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQiw4RUFBOEU7WUFDOUUsOERBQThEO1lBQzlELE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQ2xELENBQUM7YUFBTSxDQUFDO1lBQ04sRUFBRSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUN2RCw2RkFBNkY7UUFDL0YsQ0FBQztRQUVELDhDQUE4QztRQUM5QyxNQUFNLHFCQUFxQixHQUEyQix3QkFBd0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDeEYsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDMUcsQ0FBQztDQUNGIn0=
|
|
@@ -59,6 +59,7 @@ export interface PublicContractsDB {
|
|
|
59
59
|
* @returns The contract instance or undefined if not found.
|
|
60
60
|
*/
|
|
61
61
|
getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
62
|
+
getDebugFunctionName(contractAddress: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
62
63
|
}
|
|
63
64
|
/** Database interface for providing access to commitment tree, l1 to l2 message tree, and nullifier tree. */
|
|
64
65
|
export interface CommitmentsDB {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db_interfaces.d.ts","sourceRoot":"","sources":["../../src/public/db_interfaces.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3D;;;;;;OAMG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9E;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE5F;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"db_interfaces.d.ts","sourceRoot":"","sources":["../../src/public/db_interfaces.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3D;;;;;;OAMG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9E;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE5F;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;IAE7F,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC9G;AAED,6GAA6G;AAC7G,MAAM,WAAW,aAAa;IAC5B;;;;;;;OAOG;IACH,0BAA0B,CACxB,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,GACT,OAAO,CAAC,uBAAuB,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;IAErE;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAE/D;;;;OAIG;IACH,kBAAkB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEhE;;;;OAIG;IACH,iBAAiB,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE9D;;;;OAIG;IACH,0CAA0C,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAAC;CAC5G"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import { type SimulationError, type UnencryptedFunctionL2Logs } from '@aztec/circuit-types';
|
|
3
|
-
import { type AvmExecutionHints, type ContractStorageRead, type ContractStorageUpdateRequest, type Fr, type L2ToL1Message, type LogHash, type NoteHash, type Nullifier, type PublicCallRequest,
|
|
3
|
+
import { type AvmExecutionHints, type ContractStorageRead, type ContractStorageUpdateRequest, type Fr, type L2ToL1Message, type LogHash, type NoteHash, type Nullifier, type PublicCallRequest, type ReadRequest } from '@aztec/circuits.js';
|
|
4
4
|
import { type Gas } from '../avm/avm_gas.js';
|
|
5
5
|
/**
|
|
6
6
|
* The public function execution result.
|
|
@@ -76,20 +76,6 @@ export type PublicExecution = Pick<PublicCallRequest, 'contractAddress' | 'funct
|
|
|
76
76
|
* @returns Whether the input is a public execution result and not just a public execution.
|
|
77
77
|
*/
|
|
78
78
|
export declare function isPublicExecutionResult(input: PublicExecution | PublicExecutionResult): input is PublicExecutionResult;
|
|
79
|
-
/**
|
|
80
|
-
* Collect all public storage reads across all nested executions
|
|
81
|
-
* and convert them to PublicDataReads (to match kernel output).
|
|
82
|
-
* @param execResult - The topmost execution result.
|
|
83
|
-
* @returns All public data reads (in execution order).
|
|
84
|
-
*/
|
|
85
|
-
export declare function collectPublicDataReads(execResult: PublicExecutionResult): PublicDataRead[];
|
|
86
|
-
/**
|
|
87
|
-
* Collect all public storage update requests across all nested executions
|
|
88
|
-
* and convert them to PublicDataUpdateRequests (to match kernel output).
|
|
89
|
-
* @param execResult - The topmost execution result.
|
|
90
|
-
* @returns All public data reads (in execution order).
|
|
91
|
-
*/
|
|
92
|
-
export declare function collectPublicDataUpdateRequests(execResult: PublicExecutionResult): PublicDataUpdateRequest[];
|
|
93
79
|
/**
|
|
94
80
|
* Checks whether the child execution result is valid for a static call (no state modifications).
|
|
95
81
|
* @param executionResult - The execution result of a public function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/public/execution.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,EACjC,KAAK,EAAE,EACP,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/public/execution.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,EACjC,KAAK,EAAE,EACP,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,SAAS,EAAE,eAAe,CAAC;IAC3B,yCAAyC;IACzC,YAAY,EAAE,EAAE,EAAE,CAAC;IACnB,oEAAoE;IACpE,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,wDAAwD;IACxD,iBAAiB,EAAE,aAAa,EAAE,CAAC;IACnC,iEAAiE;IACjE,sBAAsB,EAAE,EAAE,CAAC;IAC3B,iEAAiE;IACjE,oBAAoB,EAAE,EAAE,CAAC;IACzB,iEAAiE;IACjE,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,wDAAwD;IACxD,oBAAoB,EAAE,WAAW,EAAE,CAAC;IACpC,wDAAwD;IACxD,qBAAqB,EAAE,WAAW,EAAE,CAAC;IACrC,qEAAqE;IACrE,gCAAgC,EAAE,WAAW,EAAE,CAAC;IAChD,2DAA2D;IAC3D,qBAAqB,EAAE,WAAW,EAAE,CAAC;IACrC,4DAA4D;IAC5D,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,sEAAsE;IACtE,6BAA6B,EAAE,4BAA4B,EAAE,CAAC;IAC9D,mCAAmC;IACnC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IACzB;;;OAGG;IACH,qBAAqB,EAAE,OAAO,EAAE,CAAC;IACjC;;;OAGG;IACH,eAAe,EAAE,yBAAyB,CAAC;IAC3C;;;OAGG;IACH,kBAAkB,EAAE,yBAAyB,CAAC;IAC9C,sCAAsC;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,4DAA4D;IAC5D,YAAY,EAAE,GAAG,CAAC;IAClB,yDAAyD;IACzD,UAAU,EAAE,GAAG,CAAC;IAChB,uCAAuC;IACvC,cAAc,EAAE,EAAE,CAAC;IACnB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,QAAQ,EAAE,EAAE,EAAE,CAAC;IACf,uCAAuC;IACvC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,aAAa,GAAG,MAAM,CAAC,CAAC;AAEvH;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,GAAG,qBAAqB,GAC7C,KAAK,IAAI,qBAAqB,CAEhC;AAED;;;GAGG;AAEH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,QAAQ,EAAE,EACzB,aAAa,EAAE,SAAS,EAAE,EAC1B,6BAA6B,EAAE,4BAA4B,EAAE,EAC7D,iBAAiB,EAAE,aAAa,EAAE,EAClC,eAAe,EAAE,yBAAyB,QAW3C"}
|
package/dest/public/execution.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { PublicDataRead, PublicDataUpdateRequest, } from '@aztec/circuits.js';
|
|
2
|
-
import { computePublicDataTreeLeafSlot, computePublicDataTreeValue } from '@aztec/circuits.js/hash';
|
|
3
1
|
/**
|
|
4
2
|
* Returns if the input is a public execution result and not just a public execution.
|
|
5
3
|
* @param input - Public execution or public execution result.
|
|
@@ -8,54 +6,6 @@ import { computePublicDataTreeLeafSlot, computePublicDataTreeValue } from '@azte
|
|
|
8
6
|
export function isPublicExecutionResult(input) {
|
|
9
7
|
return 'execution' in input && input.execution !== undefined;
|
|
10
8
|
}
|
|
11
|
-
/**
|
|
12
|
-
* Collect all public storage reads across all nested executions
|
|
13
|
-
* and convert them to PublicDataReads (to match kernel output).
|
|
14
|
-
* @param execResult - The topmost execution result.
|
|
15
|
-
* @returns All public data reads (in execution order).
|
|
16
|
-
*/
|
|
17
|
-
export function collectPublicDataReads(execResult) {
|
|
18
|
-
// HACK(#1622): part of temporary hack - may be able to remove this function after public state ordering is fixed
|
|
19
|
-
const thisExecPublicDataReads = execResult.contractStorageReads.map(read => contractStorageReadToPublicDataRead(read));
|
|
20
|
-
const unsorted = [
|
|
21
|
-
...thisExecPublicDataReads,
|
|
22
|
-
...[...execResult.nestedExecutions].flatMap(result => collectPublicDataReads(result)),
|
|
23
|
-
];
|
|
24
|
-
return unsorted.sort((a, b) => a.sideEffectCounter - b.sideEffectCounter);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Collect all public storage update requests across all nested executions
|
|
28
|
-
* and convert them to PublicDataUpdateRequests (to match kernel output).
|
|
29
|
-
* @param execResult - The topmost execution result.
|
|
30
|
-
* @returns All public data reads (in execution order).
|
|
31
|
-
*/
|
|
32
|
-
export function collectPublicDataUpdateRequests(execResult) {
|
|
33
|
-
// HACK(#1622): part of temporary hack - may be able to remove this function after public state ordering is fixed
|
|
34
|
-
const thisExecPublicDataUpdateRequests = execResult.contractStorageUpdateRequests.map(update => contractStorageUpdateRequestToPublicDataUpdateRequest(update));
|
|
35
|
-
const unsorted = [
|
|
36
|
-
...thisExecPublicDataUpdateRequests,
|
|
37
|
-
...[...execResult.nestedExecutions].flatMap(result => collectPublicDataUpdateRequests(result)),
|
|
38
|
-
];
|
|
39
|
-
return unsorted.sort((a, b) => a.sideEffectCounter - b.sideEffectCounter);
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Convert a Contract Storage Read to a Public Data Read.
|
|
43
|
-
* @param read - the contract storage read to convert
|
|
44
|
-
* @param contractAddress - the contract address of the read
|
|
45
|
-
* @returns The public data read.
|
|
46
|
-
*/
|
|
47
|
-
function contractStorageReadToPublicDataRead(read) {
|
|
48
|
-
return new PublicDataRead(computePublicDataTreeLeafSlot(read.contractAddress, read.storageSlot), computePublicDataTreeValue(read.currentValue), read.sideEffectCounter);
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Convert a Contract Storage Update Request to a Public Data Update Request.
|
|
52
|
-
* @param update - the contract storage update request to convert
|
|
53
|
-
* @param contractAddress - the contract address of the data update request.
|
|
54
|
-
* @returns The public data update request.
|
|
55
|
-
*/
|
|
56
|
-
function contractStorageUpdateRequestToPublicDataUpdateRequest(update) {
|
|
57
|
-
return new PublicDataUpdateRequest(computePublicDataTreeLeafSlot(update.contractAddress, update.storageSlot), computePublicDataTreeValue(update.newValue), update.sideEffectCounter);
|
|
58
|
-
}
|
|
59
9
|
/**
|
|
60
10
|
* Checks whether the child execution result is valid for a static call (no state modifications).
|
|
61
11
|
* @param executionResult - The execution result of a public function
|
|
@@ -69,4 +19,4 @@ export function checkValidStaticCall(newNoteHashes, newNullifiers, contractStora
|
|
|
69
19
|
throw new Error('Static call cannot update the state, emit L2->L1 messages or generate logs');
|
|
70
20
|
}
|
|
71
21
|
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0ZBOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLEtBQThDO0lBRTlDLE9BQU8sV0FBVyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQztBQUMvRCxDQUFDO0FBRUQ7OztHQUdHO0FBRUgsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxhQUF5QixFQUN6QixhQUEwQixFQUMxQiw2QkFBNkQsRUFDN0QsaUJBQWtDLEVBQ2xDLGVBQTBDO0lBRTFDLElBQ0UsNkJBQTZCLENBQUMsTUFBTSxHQUFHLENBQUM7UUFDeEMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQ3hCLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUN4QixpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUM1QixlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQy9CLENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDRFQUE0RSxDQUFDLENBQUM7SUFDaEcsQ0FBQztBQUNILENBQUMifQ==
|
|
@@ -17,6 +17,6 @@ export declare class PublicExecutor {
|
|
|
17
17
|
* @param globalVariables - The global variables to use.
|
|
18
18
|
* @returns The result of the run plus all nested runs.
|
|
19
19
|
*/
|
|
20
|
-
simulate(execution: PublicExecution, globalVariables: GlobalVariables, availableGas: Gas, txContext: TxContext, pendingNullifiers: Nullifier[], transactionFee?: Fr,
|
|
20
|
+
simulate(execution: PublicExecution, globalVariables: GlobalVariables, availableGas: Gas, txContext: TxContext, pendingNullifiers: Nullifier[], transactionFee?: Fr, startSideEffectCounter?: number): Promise<PublicExecutionResult>;
|
|
21
21
|
}
|
|
22
22
|
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/public/executor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/public/executor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AASrH,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAwB,MAAM,gBAAgB,CAAC;AAGxG;;GAEG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,iBAAiB,EAC9B,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM;IAGjC,MAAM,CAAC,QAAQ,CAAC,GAAG,yCAAwD;IAE3E;;;;;OAKG;IACU,QAAQ,CACnB,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,GAAG,EACjB,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,SAAS,EAAE,EAC9B,cAAc,GAAE,EAAY,EAC5B,sBAAsB,GAAE,MAAU,GACjC,OAAO,CAAC,qBAAqB,CAAC;CAyElC"}
|
package/dest/public/executor.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Fr } from '@aztec/circuits.js';
|
|
2
2
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
|
+
import { Timer } from '@aztec/foundation/timer';
|
|
3
4
|
import { AvmContext } from '../avm/avm_context.js';
|
|
4
5
|
import { AvmMachineState } from '../avm/avm_machine_state.js';
|
|
5
6
|
import { AvmSimulator } from '../avm/avm_simulator.js';
|
|
@@ -23,32 +24,38 @@ export class PublicExecutor {
|
|
|
23
24
|
* @param globalVariables - The global variables to use.
|
|
24
25
|
* @returns The result of the run plus all nested runs.
|
|
25
26
|
*/
|
|
26
|
-
async simulate(execution, globalVariables, availableGas, txContext, pendingNullifiers, transactionFee = Fr.ZERO,
|
|
27
|
+
async simulate(execution, globalVariables, availableGas, txContext, pendingNullifiers, transactionFee = Fr.ZERO, startSideEffectCounter = 0) {
|
|
27
28
|
const address = execution.contractAddress;
|
|
28
29
|
const selector = execution.functionSelector;
|
|
29
30
|
const startGas = availableGas;
|
|
30
|
-
|
|
31
|
+
const fnName = await this.contractsDb.getDebugFunctionName(address, selector);
|
|
32
|
+
PublicExecutor.log.verbose(`[AVM] Executing public external function ${fnName}.`);
|
|
33
|
+
const timer = new Timer();
|
|
31
34
|
// Temporary code to construct the AVM context
|
|
32
35
|
// These data structures will permeate across the simulator when the public executor is phased out
|
|
33
36
|
const hostStorage = new HostStorage(this.stateDb, this.contractsDb, this.commitmentsDb);
|
|
34
|
-
const startSideEffectCounter = sideEffectCounter;
|
|
35
37
|
const worldStateJournal = new AvmPersistableStateManager(hostStorage);
|
|
36
38
|
for (const nullifier of pendingNullifiers) {
|
|
37
39
|
worldStateJournal.nullifiers.cache.appendSiloed(nullifier.value);
|
|
38
40
|
}
|
|
39
|
-
|
|
40
|
-
worldStateJournal.trace.accessCounter = startSideEffectCounter + 1;
|
|
41
|
+
worldStateJournal.trace.accessCounter = startSideEffectCounter;
|
|
41
42
|
const executionEnv = createAvmExecutionEnvironment(execution, this.header, globalVariables, txContext.gasSettings, transactionFee);
|
|
42
43
|
const machineState = new AvmMachineState(startGas);
|
|
43
44
|
const avmContext = new AvmContext(worldStateJournal, executionEnv, machineState);
|
|
44
45
|
const simulator = new AvmSimulator(avmContext);
|
|
45
46
|
const avmResult = await simulator.execute();
|
|
47
|
+
const bytecode = simulator.getBytecode();
|
|
46
48
|
// Commit the journals state to the DBs since this is a top-level execution.
|
|
47
49
|
// Observe that this will write all the state changes to the DBs, not only the latest for each slot.
|
|
48
50
|
// However, the underlying DB keep a cache and will only write the latest state to disk.
|
|
49
51
|
await avmContext.persistableState.publicStorage.commitToDB();
|
|
50
|
-
PublicExecutor.log.verbose(`[AVM] ${
|
|
51
|
-
|
|
52
|
+
PublicExecutor.log.verbose(`[AVM] ${fnName} returned, reverted: ${avmResult.reverted}${avmResult.reverted ? ', reason: ' + avmResult.revertReason : ''}.`, {
|
|
53
|
+
eventName: 'avm-simulation',
|
|
54
|
+
appCircuitName: fnName ?? 'unknown',
|
|
55
|
+
duration: timer.ms(),
|
|
56
|
+
bytecodeSize: bytecode.length,
|
|
57
|
+
});
|
|
58
|
+
const executionResult = convertAvmResultsToPxResult(avmResult, startSideEffectCounter, execution, startGas, avmContext, bytecode);
|
|
52
59
|
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/5818): is this really needed?
|
|
53
60
|
// should already be handled in simulation.
|
|
54
61
|
if (execution.callContext.isStaticCall) {
|
|
@@ -58,4 +65,4 @@ export class PublicExecutor {
|
|
|
58
65
|
}
|
|
59
66
|
}
|
|
60
67
|
PublicExecutor.log = createDebugLogger('aztec:simulator:public_executor');
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL2V4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQStFLE1BQU0sb0JBQW9CLENBQUM7QUFDckgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVyRSxPQUFPLEVBQW9ELG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFeEc7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQUN6QixZQUNtQixPQUFzQixFQUN0QixXQUE4QixFQUM5QixhQUE0QixFQUM1QixNQUFjO1FBSGQsWUFBTyxHQUFQLE9BQU8sQ0FBZTtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDOUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUM5QixDQUFDO0lBSUo7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsUUFBUSxDQUNuQixTQUEwQixFQUMxQixlQUFnQyxFQUNoQyxZQUFpQixFQUNqQixTQUFvQixFQUNwQixpQkFBOEIsRUFDOUIsaUJBQXFCLEVBQUUsQ0FBQyxJQUFJLEVBQzVCLHlC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
|
|
@@ -6,7 +6,7 @@ export declare class HintsBuilder {
|
|
|
6
6
|
constructor(db: MerkleTreeOperations);
|
|
7
7
|
getNullifierReadRequestHints(nullifierReadRequests: Tuple<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, pendingNullifiers: Tuple<Nullifier, typeof MAX_NEW_NULLIFIERS_PER_TX>): Promise<import("@aztec/circuits.js").NullifierReadRequestHints<128, 128>>;
|
|
8
8
|
getNullifierNonExistentReadRequestHints(nullifierNonExistentReadRequests: Tuple<ScopedReadRequest, typeof MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_TX>, pendingNullifiers: Tuple<Nullifier, typeof MAX_NEW_NULLIFIERS_PER_TX>): Promise<import("@aztec/circuits.js").NullifierNonExistentReadRequestHints>;
|
|
9
|
-
getPublicDataHints(publicDataReads: Tuple<PublicDataRead, typeof MAX_PUBLIC_DATA_READS_PER_TX>, publicDataUpdateRequests: Tuple<PublicDataUpdateRequest, typeof MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX>): Promise<[PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint]>;
|
|
9
|
+
getPublicDataHints(publicDataReads: Tuple<PublicDataRead, typeof MAX_PUBLIC_DATA_READS_PER_TX>, publicDataUpdateRequests: Tuple<PublicDataUpdateRequest, typeof MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX>): Promise<[PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint, PublicDataHint]>;
|
|
10
10
|
getPublicDataHint(dataAction: PublicDataRead | PublicDataUpdateRequest | bigint): Promise<PublicDataHint>;
|
|
11
11
|
getPublicDataReadRequestHints(publicDataReads: Tuple<PublicDataRead, typeof MAX_PUBLIC_DATA_READS_PER_TX>, publicDataUpdateRequests: Tuple<PublicDataUpdateRequest, typeof MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX>, publicDataHints: Tuple<PublicDataHint, typeof MAX_PUBLIC_DATA_HINTS>): import("@aztec/circuits.js").PublicDataReadRequestHints;
|
|
12
12
|
getNullifierMembershipWitness(nullifier: Fr): Promise<{
|
package/dest/public/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
export * from './abstract_phase_manager.js';
|
|
1
2
|
export * from './db_interfaces.js';
|
|
2
|
-
export { type PublicExecution, type PublicExecutionResult
|
|
3
|
+
export { isPublicExecutionResult, type PublicExecution, type PublicExecutionResult } from './execution.js';
|
|
3
4
|
export { PublicExecutor } from './executor.js';
|
|
4
|
-
export
|
|
5
|
+
export * from './fee_payment.js';
|
|
6
|
+
export { HintsBuilder } from './hints_builder.js';
|
|
5
7
|
export * from './public_db_sources.js';
|
|
6
|
-
export * from './abstract_phase_manager.js';
|
|
7
|
-
export * from './public_kernel_circuit_simulator.js';
|
|
8
8
|
export * from './public_kernel.js';
|
|
9
|
-
export
|
|
10
|
-
export
|
|
9
|
+
export * from './public_kernel_circuit_simulator.js';
|
|
10
|
+
export { PublicProcessor, PublicProcessorFactory } from './public_processor.js';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/public/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/public/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sCAAsC,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dest/public/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
export * from './abstract_phase_manager.js';
|
|
1
2
|
export * from './db_interfaces.js';
|
|
2
|
-
export { isPublicExecutionResult
|
|
3
|
+
export { isPublicExecutionResult } from './execution.js';
|
|
3
4
|
export { PublicExecutor } from './executor.js';
|
|
4
|
-
export
|
|
5
|
+
export * from './fee_payment.js';
|
|
6
|
+
export { HintsBuilder } from './hints_builder.js';
|
|
5
7
|
export * from './public_db_sources.js';
|
|
6
|
-
export * from './abstract_phase_manager.js';
|
|
7
|
-
export * from './public_kernel_circuit_simulator.js';
|
|
8
8
|
export * from './public_kernel.js';
|
|
9
|
-
export
|
|
10
|
-
export
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
export * from './public_kernel_circuit_simulator.js';
|
|
10
|
+
export { PublicProcessor, PublicProcessorFactory } from './public_processor.js';
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxPQUFPLEVBQUUsdUJBQXVCLEVBQW9ELE1BQU0sZ0JBQWdCLENBQUM7QUFDM0csT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUJBQXVCLENBQUMifQ==
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { type Tx } from '@aztec/circuit-types';
|
|
1
|
+
import { PublicKernelType, type Tx } from '@aztec/circuit-types';
|
|
2
2
|
import { type GlobalVariables, type Header, type PublicKernelCircuitPublicInputs } from '@aztec/circuits.js';
|
|
3
3
|
import { type PublicExecutor, type PublicStateDB } from '@aztec/simulator';
|
|
4
4
|
import { type MerkleTreeOperations } from '@aztec/world-state';
|
|
5
|
-
import { type AbstractPhaseManager
|
|
5
|
+
import { type AbstractPhaseManager } from './abstract_phase_manager.js';
|
|
6
6
|
import { type ContractsDataSourcePublicDB } from './public_db_sources.js';
|
|
7
7
|
import { type PublicKernelCircuitSimulator } from './public_kernel_circuit_simulator.js';
|
|
8
8
|
export declare class PhaseDidNotChangeError extends Error {
|
|
9
|
-
constructor(phase:
|
|
9
|
+
constructor(phase: PublicKernelType);
|
|
10
10
|
}
|
|
11
11
|
export declare class CannotTransitionToSetupError extends Error {
|
|
12
12
|
constructor();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase_manager_factory.d.ts","sourceRoot":"","sources":["../../src/public/phase_manager_factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"phase_manager_factory.d.ts","sourceRoot":"","sources":["../../src/public/phase_manager_factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,KAAK,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAKzF,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,KAAK,EAAE,gBAAgB;CAGpC;AAED,qBAAa,4BAA6B,SAAQ,KAAK;;CAItD;AAED,qBAAa,mBAAmB;WAChB,WAAW,CACvB,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,oBAAoB,EACxB,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,4BAA4B,EAC1C,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,2BAA2B,EAC9C,aAAa,EAAE,aAAa,GAC3B,oBAAoB,GAAG,SAAS;WAqCrB,eAAe,CAC3B,MAAM,EAAE,+BAA+B,EACvC,mBAAmB,EAAE,oBAAoB,EACzC,EAAE,EAAE,oBAAoB,EACxB,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,4BAA4B,EAC1C,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,2BAA2B,EAC9C,aAAa,EAAE,aAAa,GAC3B,oBAAoB,GAAG,SAAS;CA2CpC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PublicKernelType } from '@aztec/circuit-types';
|
|
2
2
|
import { AppLogicPhaseManager } from './app_logic_phase_manager.js';
|
|
3
3
|
import { SetupPhaseManager } from './setup_phase_manager.js';
|
|
4
4
|
import { TailPhaseManager } from './tail_phase_manager.js';
|
|
@@ -34,18 +34,18 @@ export class PhaseManagerFactory {
|
|
|
34
34
|
throw new CannotTransitionToSetupError();
|
|
35
35
|
}
|
|
36
36
|
else if (output.needsAppLogic) {
|
|
37
|
-
if (currentPhaseManager.phase ===
|
|
37
|
+
if (currentPhaseManager.phase === PublicKernelType.APP_LOGIC) {
|
|
38
38
|
throw new PhaseDidNotChangeError(currentPhaseManager.phase);
|
|
39
39
|
}
|
|
40
40
|
return new AppLogicPhaseManager(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB);
|
|
41
41
|
}
|
|
42
42
|
else if (output.needsTeardown) {
|
|
43
|
-
if (currentPhaseManager.phase ===
|
|
43
|
+
if (currentPhaseManager.phase === PublicKernelType.TEARDOWN) {
|
|
44
44
|
throw new PhaseDidNotChangeError(currentPhaseManager.phase);
|
|
45
45
|
}
|
|
46
46
|
return new TeardownPhaseManager(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB);
|
|
47
47
|
}
|
|
48
|
-
else if (currentPhaseManager.phase !==
|
|
48
|
+
else if (currentPhaseManager.phase !== PublicKernelType.TAIL) {
|
|
49
49
|
return new TailPhaseManager(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB);
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
@@ -53,4 +53,4 @@ export class PhaseManagerFactory {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhhc2VfbWFuYWdlcl9mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9waGFzZV9tYW5hZ2VyX2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFXLE1BQU0sc0JBQXNCLENBQUM7QUFNakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFHcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLEtBQUs7SUFDL0MsWUFBWSxLQUF1QjtRQUNqQyxLQUFLLENBQUMsb0NBQW9DLEtBQUssbUNBQW1DLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDOUYsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLEtBQUs7SUFDckQ7UUFDRSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBQ3ZCLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLEVBQU0sRUFDTixFQUF3QixFQUN4QixjQUE4QixFQUM5QixZQUEwQyxFQUMxQyxlQUFnQyxFQUNoQyxnQkFBd0IsRUFDeEIsaUJBQThDLEVBQzlDLGFBQTRCO1FBRTVCLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBVSxDQUFDO1FBQ2hDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sSUFBSSxpQkFBaUIsQ0FDMUIsRUFBRSxFQUNGLGNBQWMsRUFDZCxZQUFZLEVBQ1osZUFBZSxFQUNmLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsYUFBYSxDQUNkLENBQUM7UUFDSixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDOUIsT0FBTyxJQUFJLG9CQUFvQixDQUM3QixFQUFFLEVBQ0YsY0FBYyxFQUNkLFlBQVksRUFDWixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixhQUFhLENBQ2QsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM5QixPQUFPLElBQUksb0JBQW9CLENBQzdCLEVBQUUsRUFDRixjQUFjLEVBQ2QsWUFBWSxFQUNaLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGFBQWEsQ0FDZCxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxlQUFlLENBQzNCLE1BQXVDLEVBQ3ZDLG1CQUF5QyxFQUN6QyxFQUF3QixFQUN4QixjQUE4QixFQUM5QixZQUEwQyxFQUMxQyxlQUFnQyxFQUNoQyxnQkFBd0IsRUFDeEIsaUJBQThDLEVBQzlDLGFBQTRCO1FBRTVCLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1FBQzNDLENBQUM7YUFBTSxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNoQyxJQUFJLG1CQUFtQixDQUFDLEtBQUssS0FBSyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDN0QsTUFBTSxJQUFJLHNCQUFzQixDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlELENBQUM7WUFDRCxPQUFPLElBQUksb0JBQW9CLENBQzdCLEVBQUUsRUFDRixjQUFjLEVBQ2QsWUFBWSxFQUNaLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGFBQWEsQ0FDZCxDQUFDO1FBQ0osQ0FBQzthQUFNLElBQUksTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2hDLElBQUksbUJBQW1CLENBQUMsS0FBSyxLQUFLLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM1RCxNQUFNLElBQUksc0JBQXNCLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUQsQ0FBQztZQUNELE9BQU8sSUFBSSxvQkFBb0IsQ0FDN0IsRUFBRSxFQUNGLGNBQWMsRUFDZCxZQUFZLEVBQ1osZUFBZSxFQUNmLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsYUFBYSxDQUNkLENBQUM7UUFDSixDQUFDO2FBQU0sSUFBSSxtQkFBbUIsQ0FBQyxLQUFLLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDL0QsT0FBTyxJQUFJLGdCQUFnQixDQUN6QixFQUFFLEVBQ0YsY0FBYyxFQUNkLFlBQVksRUFDWixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixhQUFhLENBQ2QsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7Q0FDRiJ9
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import { NullifierMembershipWitness, type Tx } from '@aztec/circuit-types';
|
|
3
|
-
import { type AztecAddress, Fr,
|
|
3
|
+
import { type AztecAddress, Fr, FunctionSelector, type L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/circuits.js';
|
|
4
4
|
import { type CommitmentsDB, MessageLoadOracleInputs, type PublicContractsDB, type PublicStateDB } from '@aztec/simulator';
|
|
5
5
|
import { type ContractClassPublic, type ContractDataSource, type ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
6
6
|
import { type MerkleTreeOperations } from '@aztec/world-state';
|
|
@@ -27,6 +27,7 @@ export declare class ContractsDataSourcePublicDB implements PublicContractsDB {
|
|
|
27
27
|
getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
28
28
|
getContractClass(contractClassId: Fr): Promise<ContractClassPublic | undefined>;
|
|
29
29
|
getBytecode(address: AztecAddress, selector: FunctionSelector): Promise<Buffer | undefined>;
|
|
30
|
+
getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
30
31
|
}
|
|
31
32
|
/**
|
|
32
33
|
* Implements the PublicStateDB using a world-state database.
|
|
@@ -70,6 +71,7 @@ export declare class WorldStatePublicDB implements PublicStateDB {
|
|
|
70
71
|
*/
|
|
71
72
|
export declare class WorldStateDB implements CommitmentsDB {
|
|
72
73
|
private db;
|
|
74
|
+
private log;
|
|
73
75
|
constructor(db: MerkleTreeOperations);
|
|
74
76
|
getNullifierMembershipWitnessAtLatestBlock(nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
75
77
|
getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":";AAAA,OAAO,EAAgB,0BAA0B,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"public_db_sources.d.ts","sourceRoot":"","sources":["../../src/public/public_db_sources.ts"],"names":[],"mappings":"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"}
|