@aztec/simulator 0.40.0 → 0.41.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 +4 -2
- package/dest/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/oracle.js +21 -18
- package/dest/acvm/oracle/typed_oracle.d.ts +6 -11
- package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/typed_oracle.js +11 -5
- package/dest/avm/avm_execution_environment.d.ts +4 -3
- package/dest/avm/avm_execution_environment.d.ts.map +1 -1
- package/dest/avm/avm_execution_environment.js +7 -5
- package/dest/avm/avm_simulator.d.ts.map +1 -1
- package/dest/avm/avm_simulator.js +5 -4
- package/dest/avm/errors.d.ts +6 -0
- package/dest/avm/errors.d.ts.map +1 -1
- package/dest/avm/errors.js +10 -1
- package/dest/avm/fixtures/index.js +3 -3
- package/dest/avm/journal/journal.d.ts +2 -3
- package/dest/avm/journal/journal.d.ts.map +1 -1
- package/dest/avm/journal/journal.js +9 -14
- package/dest/avm/journal/nullifiers.d.ts +17 -5
- package/dest/avm/journal/nullifiers.d.ts.map +1 -1
- package/dest/avm/journal/nullifiers.js +27 -10
- package/dest/avm/journal/public_storage.d.ts +19 -6
- package/dest/avm/journal/public_storage.d.ts.map +1 -1
- package/dest/avm/journal/public_storage.js +30 -12
- package/dest/avm/journal/trace.js +9 -9
- package/dest/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/avm/opcodes/accrued_substate.js +6 -7
- package/dest/avm/opcodes/external_calls.d.ts +2 -2
- package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/avm/opcodes/external_calls.js +22 -11
- package/dest/avm/opcodes/storage.d.ts +0 -7
- package/dest/avm/opcodes/storage.d.ts.map +1 -1
- package/dest/avm/opcodes/storage.js +3 -12
- package/dest/client/client_execution_context.d.ts +35 -17
- package/dest/client/client_execution_context.d.ts.map +1 -1
- package/dest/client/client_execution_context.js +70 -33
- package/dest/client/db_oracle.d.ts +10 -11
- package/dest/client/db_oracle.d.ts.map +1 -1
- package/dest/client/execution_note_cache.d.ts +17 -0
- package/dest/client/execution_note_cache.d.ts.map +1 -1
- package/dest/client/execution_note_cache.js +25 -2
- package/dest/client/execution_result.d.ts +11 -0
- package/dest/client/execution_result.d.ts.map +1 -1
- package/dest/client/execution_result.js +21 -3
- package/dest/client/private_execution.d.ts.map +1 -1
- package/dest/client/private_execution.js +4 -1
- package/dest/client/simulator.d.ts.map +1 -1
- package/dest/client/simulator.js +6 -6
- package/dest/client/view_data_oracle.d.ts +11 -10
- package/dest/client/view_data_oracle.d.ts.map +1 -1
- package/dest/client/view_data_oracle.js +16 -12
- package/dest/common/index.d.ts +1 -0
- package/dest/common/index.d.ts.map +1 -1
- package/dest/common/index.js +2 -1
- package/dest/common/return_values.d.ts +11 -0
- package/dest/common/return_values.d.ts.map +1 -0
- package/dest/common/return_values.js +13 -0
- package/dest/mocks/fixtures.d.ts +2 -1
- package/dest/mocks/fixtures.d.ts.map +1 -1
- package/dest/mocks/fixtures.js +2 -3
- package/dest/public/abstract_phase_manager.d.ts +3 -3
- package/dest/public/abstract_phase_manager.d.ts.map +1 -1
- package/dest/public/abstract_phase_manager.js +17 -10
- package/dest/public/app_logic_phase_manager.d.ts +1 -1
- package/dest/public/execution.d.ts +2 -6
- package/dest/public/execution.d.ts.map +1 -1
- package/dest/public/execution.js +1 -1
- package/dest/public/executor.d.ts.map +1 -1
- package/dest/public/executor.js +11 -8
- package/dest/public/hints_builder.d.ts +2 -2
- package/dest/public/hints_builder.d.ts.map +1 -1
- package/dest/public/hints_builder.js +4 -4
- package/dest/public/public_processor.d.ts +2 -2
- package/dest/public/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor.js +5 -5
- package/dest/public/setup_phase_manager.d.ts +1 -1
- package/dest/public/setup_phase_manager.js +2 -2
- package/dest/public/tail_phase_manager.d.ts +1 -1
- package/dest/public/tail_phase_manager.d.ts.map +1 -1
- package/dest/public/tail_phase_manager.js +4 -4
- package/dest/public/teardown_phase_manager.d.ts +1 -1
- package/dest/public/teardown_phase_manager.js +2 -2
- package/dest/public/transitional_adaptors.d.ts +2 -1
- package/dest/public/transitional_adaptors.d.ts.map +1 -1
- package/dest/public/transitional_adaptors.js +17 -3
- package/dest/public/utils.js +3 -3
- package/package.json +8 -8
- package/src/acvm/oracle/oracle.ts +26 -23
- package/src/acvm/oracle/typed_oracle.ts +15 -15
- package/src/avm/avm_execution_environment.ts +9 -5
- package/src/avm/avm_simulator.ts +5 -3
- package/src/avm/errors.ts +10 -0
- package/src/avm/fixtures/index.ts +2 -2
- package/src/avm/journal/journal.ts +14 -18
- package/src/avm/journal/nullifiers.ts +27 -14
- package/src/avm/journal/public_storage.ts +30 -16
- package/src/avm/journal/trace.ts +8 -8
- package/src/avm/opcodes/accrued_substate.ts +5 -6
- package/src/avm/opcodes/external_calls.ts +23 -9
- package/src/avm/opcodes/storage.ts +2 -12
- package/src/client/client_execution_context.ts +75 -37
- package/src/client/db_oracle.ts +10 -11
- package/src/client/execution_note_cache.ts +29 -1
- package/src/client/execution_result.ts +26 -2
- package/src/client/private_execution.ts +3 -0
- package/src/client/simulator.ts +4 -5
- package/src/client/view_data_oracle.ts +18 -13
- package/src/common/index.ts +1 -0
- package/src/common/return_values.ts +18 -0
- package/src/mocks/fixtures.ts +2 -2
- package/src/public/abstract_phase_manager.ts +21 -15
- package/src/public/execution.ts +2 -6
- package/src/public/executor.ts +14 -7
- package/src/public/hints_builder.ts +11 -3
- package/src/public/public_processor.ts +7 -7
- package/src/public/setup_phase_manager.ts +1 -1
- package/src/public/tail_phase_manager.ts +5 -7
- package/src/public/teardown_phase_manager.ts +1 -1
- package/src/public/transitional_adaptors.ts +17 -2
- package/src/public/utils.ts +2 -2
- package/dest/client/logs_cache.d.ts +0 -33
- package/dest/client/logs_cache.d.ts.map +0 -1
- package/dest/client/logs_cache.js +0 -59
- package/src/client/logs_cache.ts +0 -65
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Tx, makeEmptyProcessedTx, makeProcessedTx, toTxEffect, validateProcessedTx, } from '@aztec/circuit-types';
|
|
1
|
+
import { NestedProcessReturnValues, Tx, makeEmptyProcessedTx, makeProcessedTx, toTxEffect, validateProcessedTx, } from '@aztec/circuit-types';
|
|
2
2
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
3
|
import { Timer } from '@aztec/foundation/timer';
|
|
4
4
|
import { PublicExecutor } from '@aztec/simulator';
|
|
@@ -83,7 +83,7 @@ export class PublicProcessor {
|
|
|
83
83
|
await blockProver.addNewTx(processedTx);
|
|
84
84
|
}
|
|
85
85
|
result.push(processedTx);
|
|
86
|
-
returns.push(returnValues);
|
|
86
|
+
returns.push(returnValues?.[0] ?? new NestedProcessReturnValues([]));
|
|
87
87
|
}
|
|
88
88
|
catch (err) {
|
|
89
89
|
const errorMessage = err instanceof Error ? err.message : 'Unknown error';
|
|
@@ -92,7 +92,7 @@ export class PublicProcessor {
|
|
|
92
92
|
tx,
|
|
93
93
|
error: err instanceof Error ? err : new Error(errorMessage),
|
|
94
94
|
});
|
|
95
|
-
returns.push([]);
|
|
95
|
+
returns.push(new NestedProcessReturnValues([]));
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
return [result, failed, returns];
|
|
@@ -106,7 +106,7 @@ export class PublicProcessor {
|
|
|
106
106
|
return makeEmptyProcessedTx(this.historicalHeader.clone(), chainId, version);
|
|
107
107
|
}
|
|
108
108
|
async processTxWithPublicCalls(tx) {
|
|
109
|
-
let returnValues =
|
|
109
|
+
let returnValues = [];
|
|
110
110
|
const publicRequests = [];
|
|
111
111
|
let phase = PhaseManagerFactory.phaseFromTx(tx, this.db, this.publicExecutor, this.publicKernel, this.globalVariables, this.historicalHeader, this.publicContractsDB, this.publicStateDB);
|
|
112
112
|
this.log.debug(`Beginning processing in phase ${phase?.phase} for tx ${tx.getTxHash()}`);
|
|
@@ -143,4 +143,4 @@ export class PublicProcessor {
|
|
|
143
143
|
return [processedTx, returnValues];
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvcHVibGljX3Byb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wseUJBQXlCLEVBSXpCLEVBQUUsRUFFRixvQkFBb0IsRUFDcEIsZUFBZSxFQUNmLFVBQVUsRUFDVixtQkFBbUIsR0FDcEIsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBK0MsTUFBTSxrQkFBa0IsQ0FBQztBQUkvRixPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLDZCQUE2QixHQUM5QixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RTs7R0FFRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFDVSxVQUFnQyxFQUNoQyxrQkFBc0MsRUFDdEMsU0FBNkI7UUFGN0IsZUFBVSxHQUFWLFVBQVUsQ0FBc0I7UUFDaEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFvQjtJQUNwQyxDQUFDO0lBRUo7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLE1BQU0sQ0FDakIsZ0JBQW9DLEVBQ3BDLGVBQWdDO1FBRWhDLGdCQUFnQixHQUFHLGdCQUFnQixJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUVw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
|
|
@@ -18,7 +18,7 @@ export declare class SetupPhaseManager extends AbstractPhaseManager {
|
|
|
18
18
|
publicKernelOutput: PublicKernelCircuitPublicInputs;
|
|
19
19
|
publicKernelProof: Proof;
|
|
20
20
|
revertReason: import("@aztec/circuit-types").SimulationError | undefined;
|
|
21
|
-
returnValues:
|
|
21
|
+
returnValues: never[];
|
|
22
22
|
gasUsed: import("@aztec/circuits.js").Gas;
|
|
23
23
|
}>;
|
|
24
24
|
}
|
|
@@ -33,9 +33,9 @@ export class SetupPhaseManager extends AbstractPhaseManager {
|
|
|
33
33
|
publicKernelOutput,
|
|
34
34
|
publicKernelProof,
|
|
35
35
|
revertReason,
|
|
36
|
-
returnValues:
|
|
36
|
+
returnValues: [],
|
|
37
37
|
gasUsed,
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBfcGhhc2VfbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvc2V0dXBfcGhhc2VfbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRCLGdCQUFnQixFQUFXLE1BQU0sc0JBQXNCLENBQUM7QUFVM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFJdEY7O0dBRUc7QUFDSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsb0JBQW9CO0lBQ3pELFlBQ0UsRUFBd0IsRUFDeEIsY0FBOEIsRUFDOUIsWUFBMEMsRUFDMUMsZUFBZ0MsRUFDaEMsZ0JBQXdCLEVBQ2QsaUJBQThDLEVBQzlDLGFBQTRCLEVBQ3RDLFFBQTJCLGlCQUFpQixDQUFDLEtBQUs7UUFFbEQsS0FBSyxDQUFDLEVBQUUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUp4RSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTZCO1FBQzlDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBSXhDLENBQUM7SUFFUSxLQUFLLENBQUMsTUFBTSxDQUNuQixFQUFNLEVBQ04sMEJBQTJELEVBQzNELHlCQUFnQztRQUVoQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwRCxNQUFNLENBQ0osWUFBWSxFQUNaLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsMEJBQTBCLEVBQzFCLFlBQVksRUFDWixhQUFhLEVBQ2IsT0FBTyxFQUNSLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsRUFBRSxFQUFFLDBCQUEwQixFQUFFLHlCQUF5QixDQUFDLENBQUMsS0FBSztRQUN4Ryx3RkFBd0Y7UUFDeEYsS0FBSyxFQUFDLEdBQUcsRUFBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDNUMsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQ0YsQ0FBQztRQUNGLEVBQUUsQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDL0QsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRXRDLDBDQUEwQztRQUMxQyxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzlDLE1BQU0sT0FBTyxHQUF3QjtnQkFDbkMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLEtBQUs7Z0JBQzVCLE1BQU0sRUFBRSxLQUFLO2FBQ2QsQ0FBQztZQUNGLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTztZQUNMLGNBQWM7WUFDZCxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osWUFBWSxFQUFFLEVBQUU7WUFDaEIsT0FBTztTQUNSLENBQUM7SUFDSixDQUFDO0NBQ0YifQ==
|
|
@@ -15,7 +15,7 @@ export declare class TailPhaseManager extends AbstractPhaseManager {
|
|
|
15
15
|
finalKernelOutput: KernelCircuitPublicInputs;
|
|
16
16
|
publicKernelProof: Proof;
|
|
17
17
|
revertReason: undefined;
|
|
18
|
-
returnValues:
|
|
18
|
+
returnValues: never[];
|
|
19
19
|
gasUsed: undefined;
|
|
20
20
|
}>;
|
|
21
21
|
private runTailKernelCircuit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tail_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/tail_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"tail_phase_manager.d.ts","sourceRoot":"","sources":["../../src/public/tail_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,yBAAyB,EAO9B,KAAK,KAAK,EACV,KAAK,+BAA+B,EAKrC,MAAM,oBAAoB,CAAC;AAE5B,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,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAEzF,qBAAa,gBAAiB,SAAQ,oBAAoB;IAOtD,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,iBAA0C;IAKpC,MAAM,CACnB,EAAE,EAAE,EAAE,EACN,0BAA0B,EAAE,+BAA+B,EAC3D,yBAAyB,EAAE,KAAK;;;;;;;;;YAiCpB,oBAAoB;YAqBpB,QAAQ;YASR,kBAAkB;IAkDhC,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,cAAc;CAIvB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PublicKernelType } from '@aztec/circuit-types';
|
|
2
|
-
import {
|
|
2
|
+
import { MAX_NEW_NOTE_HASHES_PER_TX, MAX_NEW_NULLIFIERS_PER_TX, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicKernelTailCircuitPrivateInputs, makeEmptyProof, mergeAccumulatedData, sortByCounter, } from '@aztec/circuits.js';
|
|
3
3
|
import { AbstractPhaseManager, PublicKernelPhase } from './abstract_phase_manager.js';
|
|
4
4
|
export class TailPhaseManager extends AbstractPhaseManager {
|
|
5
5
|
constructor(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB, phase = PublicKernelPhase.TAIL) {
|
|
@@ -28,7 +28,7 @@ export class TailPhaseManager extends AbstractPhaseManager {
|
|
|
28
28
|
finalKernelOutput,
|
|
29
29
|
publicKernelProof: makeEmptyProof(),
|
|
30
30
|
revertReason: undefined,
|
|
31
|
-
returnValues:
|
|
31
|
+
returnValues: [],
|
|
32
32
|
gasUsed: undefined,
|
|
33
33
|
};
|
|
34
34
|
}
|
|
@@ -63,7 +63,7 @@ export class TailPhaseManager extends AbstractPhaseManager {
|
|
|
63
63
|
}
|
|
64
64
|
sortLogsHashes(unencryptedLogsHashes) {
|
|
65
65
|
// TODO(6052): logs here may have duplicate counters from nested calls
|
|
66
|
-
return sortByCounter(unencryptedLogsHashes
|
|
66
|
+
return sortByCounter(unencryptedLogsHashes);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpbF9waGFzZV9tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy90YWlsX3BoYXNlX21hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixnQkFBZ0IsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQzNGLE9BQU8sRUFNTCwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLHNDQUFzQyxFQUt0QyxvQ0FBb0MsRUFDcEMsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixhQUFhLEdBQ2QsTUFBTSxvQkFBb0IsQ0FBQztBQUs1QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUl0RixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hELFlBQ0UsRUFBd0IsRUFDeEIsY0FBOEIsRUFDOUIsWUFBMEMsRUFDMUMsZUFBZ0MsRUFDaEMsZ0JBQXdCLEVBQ2QsaUJBQThDLEVBQzlDLGFBQTRCLEVBQ3RDLFFBQTJCLGlCQUFpQixDQUFDLElBQUk7UUFFakQsS0FBSyxDQUFDLEVBQUUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUp4RSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTZCO1FBQzlDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBSXhDLENBQUM7SUFFUSxLQUFLLENBQUMsTUFBTSxDQUNuQixFQUFNLEVBQ04sMEJBQTJELEVBQzNELHlCQUFnQztRQUVoQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwRCxNQUFNLENBQUMsTUFBTSxFQUFFLGlCQUFpQixDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQ2pFLDBCQUEwQixFQUMxQix5QkFBeUIsQ0FDMUIsQ0FBQyxL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
|
|
@@ -18,7 +18,7 @@ export declare class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
18
18
|
publicKernelOutput: PublicKernelCircuitPublicInputs;
|
|
19
19
|
publicKernelProof: Proof;
|
|
20
20
|
revertReason: import("@aztec/circuit-types").SimulationError | undefined;
|
|
21
|
-
returnValues:
|
|
21
|
+
returnValues: never[];
|
|
22
22
|
gasUsed: Gas;
|
|
23
23
|
}>;
|
|
24
24
|
protected getTransactionFee(tx: Tx, previousPublicKernelOutput: PublicKernelCircuitPublicInputs): Fr;
|
|
@@ -34,7 +34,7 @@ export class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
34
34
|
publicKernelOutput,
|
|
35
35
|
publicKernelProof,
|
|
36
36
|
revertReason,
|
|
37
|
-
returnValues:
|
|
37
|
+
returnValues: [],
|
|
38
38
|
gasUsed,
|
|
39
39
|
};
|
|
40
40
|
}
|
|
@@ -51,4 +51,4 @@ export class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
51
51
|
return tx.data.constants.txContext.gasSettings.getTeardownLimits();
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhcmRvd25fcGhhc2VfbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMvdGVhcmRvd25fcGhhc2VfbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRCLGdCQUFnQixFQUFXLE1BQU0sc0JBQXNCLENBQUM7QUFZM0YsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUl0Rjs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxvQkFBb0I7SUFDNUQsWUFDRSxFQUF3QixFQUN4QixjQUE4QixFQUM5QixZQUEwQyxFQUMxQyxlQUFnQyxFQUNoQyxnQkFBd0IsRUFDZCxpQkFBOEMsRUFDOUMsYUFBNEIsRUFDdEMsUUFBMkIsaUJBQWlCLENBQUMsUUFBUTtRQUVyRCxLQUFLLENBQUMsRUFBRSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBSnhFLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBNkI7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFJeEMsQ0FBQztJQUVRLEtBQUssQ0FBQyxNQUFNLENBQ25CLEVBQU0sRUFDTiwwQkFBMkQsRUFDM0QseUJBQWdDO1FBRWhDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sQ0FDSixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQiwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLGFBQWEsRUFDYixPQUFPLEVBQ1IsR0FBRyxNQUFNLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLEVBQUUsMEJBQTBCLEVBQUUseUJBQXlCLENBQUMsQ0FBQyxLQUFLO1FBQ3hHLHdGQUF3RjtRQUN4RixLQUFLLEVBQUMsR0FBRyxFQUFDLEVBQUU7WUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QyxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FDRixDQUFDO1FBQ0YsRUFBRSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUMvRCxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFdEMsNkNBQTZDO1FBQzdDLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDOUMsTUFBTSxPQUFPLEdBQXdCO2dCQUNuQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsUUFBUTtnQkFDL0IsTUFBTSxFQUFFLEtBQUs7YUFDZCxDQUFDO1lBQ0YsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO1lBQ0wsY0FBYztZQUNkLFlBQVk7WUFDWixrQkFBa0I7WUFDbEIsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixZQUFZLEVBQUUsRUFBRTtZQUNoQixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFa0IsaUJBQWlCLENBQUMsRUFBTSxFQUFFLDBCQUEyRDtRQUN0RyxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDO1FBQzVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDO1FBQzdDLGdGQUFnRjtRQUNoRixNQUFNLE9BQU8sR0FBRywwQkFBMEIsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwSCxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuRyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFa0IsZUFBZSxDQUFDLEVBQU0sRUFBRSwyQkFBNEQ7UUFDckcsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDckUsQ0FBQztDQUNGIn0=
|
|
@@ -16,5 +16,6 @@ export declare function createAvmExecutionEnvironment(current: PublicExecution,
|
|
|
16
16
|
export declare function createPublicExecution(startSideEffectCounter: number, avmEnvironment: AvmExecutionEnvironment, calldata: Fr[]): PublicExecution;
|
|
17
17
|
export declare function convertAvmResultsToPxResult(avmResult: AvmContractCallResults, startSideEffectCounter: number, fromPx: PublicExecution, startGas: Gas, endAvmContext: AvmContext): PublicExecutionResult;
|
|
18
18
|
export declare function markBytecodeAsAvm(bytecode: Buffer): Buffer;
|
|
19
|
-
export declare function
|
|
19
|
+
export declare function decompressBytecodeIfCompressed(bytecode: Buffer): Promise<Buffer>;
|
|
20
|
+
export declare function isAvmBytecode(bytecode: Buffer): Promise<boolean>;
|
|
20
21
|
//# sourceMappingURL=transitional_adaptors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transitional_adaptors.d.ts","sourceRoot":"","sources":["../../src/public/transitional_adaptors.ts"],"names":[],"mappings":";AAEA,OAAO,EAGL,KAAK,GAAG,EACR,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"transitional_adaptors.d.ts","sourceRoot":"","sources":["../../src/public/transitional_adaptors.ts"],"names":[],"mappings":";AAEA,OAAO,EAGL,KAAK,GAAG,EACR,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAK9C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAGhF,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAElF;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,EAAE,GACjB,uBAAuB,CAiBzB;AAED,wBAAgB,qBAAqB,CACnC,sBAAsB,EAAE,MAAM,EAC9B,cAAc,EAAE,uBAAuB,EACvC,QAAQ,EAAE,EAAE,EAAE,GACb,eAAe,CAiBjB;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,sBAAsB,EACjC,sBAAsB,EAAE,MAAM,EAC9B,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,GAAG,EACb,aAAa,EAAE,UAAU,GACxB,qBAAqB,CAoBvB;AASD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAGD,wBAAsB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQtF;AAED,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAItE"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import { UnencryptedFunctionL2Logs } from '@aztec/circuit-types';
|
|
3
3
|
import { CallContext, FunctionData, } from '@aztec/circuits.js';
|
|
4
4
|
import { Fr } from '@aztec/foundation/fields';
|
|
5
|
+
import { promisify } from 'util';
|
|
6
|
+
import { gunzip } from 'zlib';
|
|
5
7
|
import { AvmExecutionEnvironment } from '../avm/avm_execution_environment.js';
|
|
6
8
|
import { Mov } from '../avm/opcodes/memory.js';
|
|
7
9
|
import { createSimulationError } from '../common/errors.js';
|
|
@@ -61,8 +63,20 @@ const AVM_MAGIC_SUFFIX = Buffer.from([
|
|
|
61
63
|
export function markBytecodeAsAvm(bytecode) {
|
|
62
64
|
return Buffer.concat([bytecode, AVM_MAGIC_SUFFIX]);
|
|
63
65
|
}
|
|
64
|
-
|
|
66
|
+
// This is just a helper function for the AVM circuit.
|
|
67
|
+
export async function decompressBytecodeIfCompressed(bytecode) {
|
|
68
|
+
try {
|
|
69
|
+
return await promisify(gunzip)(bytecode);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
// If the bytecode is not compressed, the gunzip call will throw an error
|
|
73
|
+
// In this case, we assume the bytecode is not compressed and continue.
|
|
74
|
+
return Promise.resolve(bytecode);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
export async function isAvmBytecode(bytecode) {
|
|
78
|
+
const decompressedBytecode = await decompressBytecodeIfCompressed(bytecode);
|
|
65
79
|
const magicSize = AVM_MAGIC_SUFFIX.length;
|
|
66
|
-
return
|
|
80
|
+
return decompressedBytecode.subarray(-magicSize).equals(AVM_MAGIC_SUFFIX);
|
|
67
81
|
}
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNpdGlvbmFsX2FkYXB0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy90cmFuc2l0aW9uYWxfYWRhcHRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUdBQWlHO0FBQ2pHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsWUFBWSxHQUtiLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUc5QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHNUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLDZCQUE2QixDQUMzQyxPQUF3QixFQUN4QixNQUFjLEVBQ2QsZUFBZ0MsRUFDaEMsV0FBd0IsRUFDeEIsY0FBa0I7SUFFbEIsT0FBTyxJQUFJLHVCQUF1QixDQUNoQyxPQUFPLENBQUMsZUFBZSxFQUN2QixPQUFPLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUMxQyxPQUFPLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFDN0IsZUFBZSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQ25DLGVBQWUsQ0FBQyxPQUFPLENBQUMsV0FBVztJQUNuQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQ2hDLE1BQU0sRUFDTixlQUFlLEVBQ2YsT0FBTyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQ2hDLE9BQU8sQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUNs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
|
package/dest/public/utils.js
CHANGED
|
@@ -9,6 +9,7 @@ export function lastSideEffectCounter(tx) {
|
|
|
9
9
|
const sideEffectCounters = [
|
|
10
10
|
...data.endNonRevertibleData.newNoteHashes,
|
|
11
11
|
...data.endNonRevertibleData.newNullifiers,
|
|
12
|
+
...data.endNonRevertibleData.unencryptedLogsHashes,
|
|
12
13
|
...data.endNonRevertibleData.publicCallStack,
|
|
13
14
|
...data.end.newNoteHashes,
|
|
14
15
|
...data.end.newNullifiers,
|
|
@@ -22,10 +23,9 @@ export function lastSideEffectCounter(tx) {
|
|
|
22
23
|
max = Math.max(max, sideEffect.startSideEffectCounter.toNumber(), sideEffect.endSideEffectCounter.toNumber());
|
|
23
24
|
}
|
|
24
25
|
else {
|
|
25
|
-
|
|
26
|
-
max = Math.max(max, counter);
|
|
26
|
+
max = Math.max(max, sideEffect.counter);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
return max;
|
|
30
30
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFDLEVBQU07SUFDMUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFVLENBQUM7SUFDaEMsTUFBTSxrQkFBa0IsR0FBRztRQUN6QixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhO1FBQzFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWE7UUFDMUMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMscUJBQXFCO1FBQ2xELEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWU7UUFDNUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWE7UUFDekIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWE7UUFDekIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQjtRQUNqQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZTtLQUM1QixDQUFDO0lBRUYsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ1osS0FBSyxNQUFNLFVBQVUsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQzVDLElBQUksVUFBVSxZQUFZLFdBQVcsRUFBRSxDQUFDO1lBQ3RDLGtHQUFrRztZQUNsRyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsRUFBRSxFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2hILENBQUM7YUFBTSxDQUFDO1lBQ04sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/simulator",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.41.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": "./dest/index.js",
|
|
6
6
|
"typedocOptions": {
|
|
@@ -45,13 +45,13 @@
|
|
|
45
45
|
]
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@aztec/circuit-types": "0.
|
|
49
|
-
"@aztec/circuits.js": "0.
|
|
50
|
-
"@aztec/foundation": "0.
|
|
51
|
-
"@aztec/noir-protocol-circuits-types": "0.
|
|
52
|
-
"@aztec/protocol-contracts": "0.
|
|
53
|
-
"@aztec/types": "0.
|
|
54
|
-
"@aztec/world-state": "0.
|
|
48
|
+
"@aztec/circuit-types": "0.41.0",
|
|
49
|
+
"@aztec/circuits.js": "0.41.0",
|
|
50
|
+
"@aztec/foundation": "0.41.0",
|
|
51
|
+
"@aztec/noir-protocol-circuits-types": "0.41.0",
|
|
52
|
+
"@aztec/protocol-contracts": "0.41.0",
|
|
53
|
+
"@aztec/types": "0.41.0",
|
|
54
|
+
"@aztec/world-state": "0.41.0",
|
|
55
55
|
"@noir-lang/acvm_js": "portal:../../noir/packages/acvm_js",
|
|
56
56
|
"@noir-lang/types": "portal:../../noir/packages/types",
|
|
57
57
|
"levelup": "^5.1.1",
|
|
@@ -40,15 +40,12 @@ export class Oracle {
|
|
|
40
40
|
return unpacked.map(toACVMField);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
async
|
|
44
|
-
const {
|
|
45
|
-
fromACVMField(
|
|
43
|
+
async getKeyValidationRequest([masterPublicKeyHash]: ACVMField[]): Promise<ACVMField[]> {
|
|
44
|
+
const { masterPublicKey, appSecretKey } = await this.typedOracle.getKeyValidationRequest(
|
|
45
|
+
fromACVMField(masterPublicKeyHash),
|
|
46
46
|
);
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
toACVMField(masterNullifierPublicKey.y),
|
|
50
|
-
toACVMField(appNullifierSecretKey),
|
|
51
|
-
];
|
|
47
|
+
|
|
48
|
+
return [toACVMField(masterPublicKey.x), toACVMField(masterPublicKey.y), toACVMField(appSecretKey)];
|
|
52
49
|
}
|
|
53
50
|
|
|
54
51
|
async getContractInstance([address]: ACVMField[]) {
|
|
@@ -285,33 +282,39 @@ export class Oracle {
|
|
|
285
282
|
return newValues.map(toACVMField);
|
|
286
283
|
}
|
|
287
284
|
|
|
288
|
-
emitEncryptedLog(
|
|
285
|
+
emitEncryptedLog(encryptedLog: ACVMField[], [counter]: ACVMField[]): void {
|
|
286
|
+
// Convert each field to a number and then to a buffer (1 byte is stored in 1 field)
|
|
287
|
+
const processedInput = Buffer.from(encryptedLog.map(fromACVMField).map(f => f.toNumber()));
|
|
288
|
+
this.typedOracle.emitEncryptedLog(processedInput, +counter);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
emitEncryptedNoteLog([noteHash]: ACVMField[], encryptedNote: ACVMField[], [counter]: ACVMField[]): void {
|
|
292
|
+
// Convert each field to a number and then to a buffer (1 byte is stored in 1 field)
|
|
293
|
+
const processedInput = Buffer.from(encryptedNote.map(fromACVMField).map(f => f.toNumber()));
|
|
294
|
+
this.typedOracle.emitEncryptedNoteLog(fromACVMField(noteHash), processedInput, +counter);
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
computeEncryptedLog(
|
|
289
298
|
[contractAddress]: ACVMField[],
|
|
290
299
|
[storageSlot]: ACVMField[],
|
|
291
300
|
[noteTypeId]: ACVMField[],
|
|
292
301
|
[publicKeyX]: ACVMField[],
|
|
293
302
|
[publicKeyY]: ACVMField[],
|
|
294
|
-
|
|
295
|
-
[counter]: ACVMField[],
|
|
303
|
+
preimage: ACVMField[],
|
|
296
304
|
): ACVMField[] {
|
|
297
305
|
const publicKey = new Point(fromACVMField(publicKeyX), fromACVMField(publicKeyY));
|
|
298
|
-
const encLog = this.typedOracle.
|
|
306
|
+
const encLog = this.typedOracle.computeEncryptedLog(
|
|
299
307
|
AztecAddress.fromString(contractAddress),
|
|
300
308
|
Fr.fromString(storageSlot),
|
|
301
309
|
Fr.fromString(noteTypeId),
|
|
302
310
|
publicKey,
|
|
303
|
-
|
|
304
|
-
+counter,
|
|
311
|
+
preimage.map(fromACVMField),
|
|
305
312
|
);
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
encLogFields.push(toACVMField(encLog.subarray(31 * i, Math.min(31 * (i + 1), encLog.length))));
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
return encLogFields;
|
|
313
|
+
const bytes: ACVMField[] = [];
|
|
314
|
+
encLog.forEach(v => {
|
|
315
|
+
bytes.push(toACVMField(v));
|
|
316
|
+
});
|
|
317
|
+
return bytes;
|
|
315
318
|
}
|
|
316
319
|
|
|
317
320
|
emitUnencryptedLog(
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
} from '@aztec/circuit-types';
|
|
12
12
|
import {
|
|
13
13
|
type Header,
|
|
14
|
+
type KeyValidationRequest,
|
|
14
15
|
type L1_TO_L2_MSG_TREE_HEIGHT,
|
|
15
16
|
type PrivateCallStackItem,
|
|
16
17
|
type PublicCallRequest,
|
|
@@ -20,14 +21,6 @@ import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
|
20
21
|
import { Fr } from '@aztec/foundation/fields';
|
|
21
22
|
import { type ContractInstance } from '@aztec/types/contracts';
|
|
22
23
|
|
|
23
|
-
/** Nullifier keys which both correspond to the same master nullifier secret key. */
|
|
24
|
-
export interface NullifierKeys {
|
|
25
|
-
/** Master nullifier public key. */
|
|
26
|
-
masterNullifierPublicKey: PublicKey;
|
|
27
|
-
/** App nullifier secret key. */
|
|
28
|
-
appNullifierSecretKey: Fr;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
24
|
/**
|
|
32
25
|
* Information about a note needed during execution.
|
|
33
26
|
*/
|
|
@@ -89,8 +82,8 @@ export abstract class TypedOracle {
|
|
|
89
82
|
throw new OracleMethodNotAvailableError('unpackReturns');
|
|
90
83
|
}
|
|
91
84
|
|
|
92
|
-
|
|
93
|
-
throw new OracleMethodNotAvailableError('
|
|
85
|
+
getKeyValidationRequest(_pkMHash: Fr): Promise<KeyValidationRequest> {
|
|
86
|
+
throw new OracleMethodNotAvailableError('getKeyValidationRequest');
|
|
94
87
|
}
|
|
95
88
|
|
|
96
89
|
getContractInstance(_address: AztecAddress): Promise<ContractInstance> {
|
|
@@ -124,7 +117,7 @@ export abstract class TypedOracle {
|
|
|
124
117
|
throw new OracleMethodNotAvailableError('getHeader');
|
|
125
118
|
}
|
|
126
119
|
|
|
127
|
-
getCompleteAddress(
|
|
120
|
+
getCompleteAddress(_account: AztecAddress): Promise<CompleteAddress> {
|
|
128
121
|
throw new OracleMethodNotAvailableError('getCompleteAddress');
|
|
129
122
|
}
|
|
130
123
|
|
|
@@ -183,15 +176,22 @@ export abstract class TypedOracle {
|
|
|
183
176
|
throw new OracleMethodNotAvailableError('storageWrite');
|
|
184
177
|
}
|
|
185
178
|
|
|
186
|
-
emitEncryptedLog(
|
|
179
|
+
emitEncryptedLog(_encryptedNote: Buffer, _counter: number): void {
|
|
180
|
+
throw new OracleMethodNotAvailableError('emitEncryptedLog');
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
emitEncryptedNoteLog(_noteHash: Fr, _encryptedNote: Buffer, _counter: number): void {
|
|
184
|
+
throw new OracleMethodNotAvailableError('emitEncryptedNoteLog');
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
computeEncryptedLog(
|
|
187
188
|
_contractAddress: AztecAddress,
|
|
188
189
|
_storageSlot: Fr,
|
|
189
190
|
_noteTypeId: Fr,
|
|
190
191
|
_publicKey: PublicKey,
|
|
191
|
-
|
|
192
|
-
_counter: number,
|
|
192
|
+
_preimage: Fr[],
|
|
193
193
|
): Buffer {
|
|
194
|
-
throw new OracleMethodNotAvailableError('
|
|
194
|
+
throw new OracleMethodNotAvailableError('computeEncryptedLog');
|
|
195
195
|
}
|
|
196
196
|
|
|
197
197
|
emitUnencryptedLog(_log: UnencryptedL2Log, _counter: number): void {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { FunctionSelector, type GasSettings, type GlobalVariables, type Header } from '@aztec/circuits.js';
|
|
2
2
|
import { computeVarArgsHash } from '@aztec/circuits.js/hash';
|
|
3
3
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
4
|
-
import {
|
|
4
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
5
5
|
|
|
6
6
|
export class AvmContextInputs {
|
|
7
|
-
static readonly SIZE =
|
|
7
|
+
static readonly SIZE = 3;
|
|
8
8
|
|
|
9
|
-
constructor(private selector: Fr, private argsHash: Fr) {}
|
|
9
|
+
constructor(private selector: Fr, private argsHash: Fr, private isStaticCall: boolean) {}
|
|
10
10
|
|
|
11
11
|
public toFields(): Fr[] {
|
|
12
|
-
return [this.selector, this.argsHash];
|
|
12
|
+
return [this.selector, this.argsHash, new Fr(this.isStaticCall)];
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
|
|
@@ -41,7 +41,11 @@ export class AvmExecutionEnvironment {
|
|
|
41
41
|
) {
|
|
42
42
|
// We encode some extra inputs (AvmContextInputs) in calldata.
|
|
43
43
|
// This will have to go once we move away from one proof per call.
|
|
44
|
-
const inputs = new AvmContextInputs(
|
|
44
|
+
const inputs = new AvmContextInputs(
|
|
45
|
+
temporaryFunctionSelector.toField(),
|
|
46
|
+
computeVarArgsHash(calldata),
|
|
47
|
+
isStaticCall,
|
|
48
|
+
);
|
|
45
49
|
this.calldata = [...inputs.toFields(), ...calldata];
|
|
46
50
|
}
|
|
47
51
|
|
package/src/avm/avm_simulator.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { type DebugLogger, createDebugLogger } from '@aztec/foundation/log';
|
|
|
2
2
|
|
|
3
3
|
import { strict as assert } from 'assert';
|
|
4
4
|
|
|
5
|
-
import { isAvmBytecode } from '../public/transitional_adaptors.js';
|
|
5
|
+
import { decompressBytecodeIfCompressed, isAvmBytecode } from '../public/transitional_adaptors.js';
|
|
6
6
|
import type { AvmContext } from './avm_context.js';
|
|
7
7
|
import { AvmContractCallResults } from './avm_message_call_result.js';
|
|
8
8
|
import {
|
|
@@ -39,7 +39,6 @@ export class AvmSimulator {
|
|
|
39
39
|
if (!bytecode) {
|
|
40
40
|
throw new NoBytecodeForContractError(this.context.environment.address);
|
|
41
41
|
}
|
|
42
|
-
assert(isAvmBytecode(bytecode), "AVM simulator can't execute non-AVM bytecode");
|
|
43
42
|
|
|
44
43
|
return await this.executeBytecode(bytecode);
|
|
45
44
|
}
|
|
@@ -49,7 +48,10 @@ export class AvmSimulator {
|
|
|
49
48
|
* This method is useful for testing and debugging.
|
|
50
49
|
*/
|
|
51
50
|
public async executeBytecode(bytecode: Buffer): Promise<AvmContractCallResults> {
|
|
52
|
-
|
|
51
|
+
const decompressedBytecode = await decompressBytecodeIfCompressed(bytecode);
|
|
52
|
+
assert(isAvmBytecode(decompressedBytecode), "AVM simulator can't execute non-AVM bytecode");
|
|
53
|
+
|
|
54
|
+
return await this.executeInstructions(decodeFromBytecode(decompressedBytecode));
|
|
53
55
|
}
|
|
54
56
|
|
|
55
57
|
/**
|
package/src/avm/errors.ts
CHANGED
|
@@ -68,6 +68,16 @@ export class OutOfGasError extends AvmExecutionError {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
+
/**
|
|
72
|
+
* Error is thrown when a static call attempts to alter some state
|
|
73
|
+
*/
|
|
74
|
+
export class StaticCallAlterationError extends InstructionExecutionError {
|
|
75
|
+
constructor() {
|
|
76
|
+
super('Static call cannot update the state, emit L2->L1 messages or generate logs');
|
|
77
|
+
this.name = 'StaticCallAlterationError';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
71
81
|
/**
|
|
72
82
|
* Error thrown to propagate a nested call's revert.
|
|
73
83
|
* @param message - the error's message
|
|
@@ -90,8 +90,8 @@ export function initGlobalVariables(overrides?: Partial<GlobalVariables>): Globa
|
|
|
90
90
|
*/
|
|
91
91
|
export function initMachineState(overrides?: Partial<AvmMachineState>): AvmMachineState {
|
|
92
92
|
return AvmMachineState.fromState({
|
|
93
|
-
l2GasLeft: overrides?.l2GasLeft ??
|
|
94
|
-
daGasLeft: overrides?.daGasLeft ??
|
|
93
|
+
l2GasLeft: overrides?.l2GasLeft ?? 1e8,
|
|
94
|
+
daGasLeft: overrides?.daGasLeft ?? 1e8,
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
|