@aztec/sequencer-client 0.1.0-alpha49 → 0.1.0-alpha59
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/.tsbuildinfo +1 -1
- package/dest/block_builder/solo_block_builder.test.js +3 -3
- package/dest/sequencer/processed_tx.d.ts +3 -3
- package/dest/sequencer/processed_tx.d.ts.map +1 -1
- package/dest/sequencer/processed_tx.js +4 -4
- package/dest/sequencer/public_processor.js +3 -3
- package/dest/sequencer/public_processor.test.js +11 -11
- package/package.json +10 -10
- package/src/block_builder/solo_block_builder.test.ts +2 -2
- package/src/sequencer/processed_tx.ts +6 -10
- package/src/sequencer/public_processor.test.ts +10 -11
- package/src/sequencer/public_processor.ts +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AppendOnlyTreeSnapshot, BaseRollupInputs, CircuitsWasm, Fr, GlobalVariables, KernelCircuitPublicInputs, MAX_NEW_COMMITMENTS_PER_TX, MAX_NEW_L2_TO_L1_MSGS_PER_TX, MAX_NEW_NULLIFIERS_PER_TX, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP, Proof, PublicDataUpdateRequest, makeTuple, range, } from '@aztec/circuits.js';
|
|
2
2
|
import { computeBlockHashWithGlobals, computeContractLeaf } from '@aztec/circuits.js/abis';
|
|
3
|
-
import { fr, makeBaseOrMergeRollupPublicInputs,
|
|
3
|
+
import { fr, makeBaseOrMergeRollupPublicInputs, makeNewContractData, makePrivateKernelPublicInputsFinal, makeProof, makePublicCallRequest, makeRootRollupPublicInputs, } from '@aztec/circuits.js/factories';
|
|
4
4
|
import { toBufferBE } from '@aztec/foundation/bigint-buffer';
|
|
5
5
|
import { to2Fields } from '@aztec/foundation/serialize';
|
|
6
6
|
import { ContractData, ExtendedContractData, L2Block, L2BlockL2Logs, MerkleTreeId, PublicDataWrite, Tx, TxL2Logs, makeEmptyLogs, mockTx, } from '@aztec/types';
|
|
@@ -91,7 +91,7 @@ describe('sequencer/solo_block_builder', () => {
|
|
|
91
91
|
return new AppendOnlyTreeSnapshot(Fr.fromBuffer(treeInfo.root), Number(treeInfo.size));
|
|
92
92
|
};
|
|
93
93
|
const buildMockSimulatorInputs = async () => {
|
|
94
|
-
const kernelOutput =
|
|
94
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal();
|
|
95
95
|
kernelOutput.constants.blockData = await getHistoricBlockData(expectsDb);
|
|
96
96
|
const tx = await makeProcessedTx(new Tx(kernelOutput, emptyProof, makeEmptyLogs(), makeEmptyLogs(), times(MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, makePublicCallRequest), [ExtendedContractData.random()]));
|
|
97
97
|
const txsLeft = [tx, await makeEmptyProcessedTx()];
|
|
@@ -273,4 +273,4 @@ describe('sequencer/solo_block_builder', () => {
|
|
|
273
273
|
// describe("Input guard tests", () => {
|
|
274
274
|
// })
|
|
275
275
|
});
|
|
276
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sb19ibG9ja19idWlsZGVyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2tfYnVpbGRlci9zb2xvX2Jsb2NrX2J1aWxkZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsc0JBQXNCLEVBRXRCLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osRUFBRSxFQUNGLGVBQWUsRUFDZix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDRCQUE0QixFQUM1Qix5QkFBeUIsRUFDekIsbUNBQW1DLEVBQ25DLHNDQUFzQyxFQUN0QyxtQ0FBbUMsRUFDbkMsS0FBSyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0YsT0FBTyxFQUNMLEVBQUUsRUFDRixpQ0FBaUMsRUFDakMsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQixTQUFTLEVBQ1QscUJBQXFCLEVBQ3JCLDBCQUEwQixHQUMzQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDeEQsT0FBTyxFQUNMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLGFBQWEsRUFDYixZQUFZLEVBQ1osZUFBZSxFQUNmLEVBQUUsRUFDRixRQUFRLEVBQ1IsYUFBYSxFQUNiLE1BQU0sR0FDUCxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQXdCLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXZFLE9BQU8sRUFBYSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxJQUFJLE9BQU8sRUFBRSxNQUFNLFNB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
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sb19ibG9ja19idWlsZGVyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2tfYnVpbGRlci9zb2xvX2Jsb2NrX2J1aWxkZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsc0JBQXNCLEVBRXRCLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osRUFBRSxFQUNGLGVBQWUsRUFDZix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDRCQUE0QixFQUM1Qix5QkFBeUIsRUFDekIsbUNBQW1DLEVBQ25DLHNDQUFzQyxFQUN0QyxtQ0FBbUMsRUFDbkMsS0FBSyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0YsT0FBTyxFQUNMLEVBQUUsRUFDRixpQ0FBaUMsRUFDakMsbUJBQW1CLEVBQ25CLGtDQUFrQyxFQUNsQyxTQUFTLEVBQ1QscUJBQXFCLEVBQ3JCLDBCQUEwQixHQUMzQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDeEQsT0FBTyxFQUNMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLGFBQWEsRUFDYixZQUFZLEVBQ1osZUFBZSxFQUNmLEVBQUUsRUFDRixRQUFRLEVBQ1IsYUFBYSxFQUNiLE1BQU0sR0FDUCxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQXdCLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXZFLE9BQU8sRUFBYSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxJQUFJLE9BQU8sRUFBRSxNQUFNLFNB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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Fr, HistoricBlockData,
|
|
1
|
+
import { Fr, HistoricBlockData, Proof, PublicKernelPublicInputs } from '@aztec/circuits.js';
|
|
2
2
|
import { Tx, TxHash } from '@aztec/types';
|
|
3
3
|
/**
|
|
4
4
|
* Represents a tx that has been processed by the sequencer public processor,
|
|
@@ -8,7 +8,7 @@ export type ProcessedTx = Pick<Tx, 'proof' | 'encryptedLogs' | 'unencryptedLogs'
|
|
|
8
8
|
/**
|
|
9
9
|
* Output of the public kernel circuit for this tx.
|
|
10
10
|
*/
|
|
11
|
-
data:
|
|
11
|
+
data: PublicKernelPublicInputs;
|
|
12
12
|
/**
|
|
13
13
|
* Hash of the transaction.
|
|
14
14
|
*/
|
|
@@ -42,7 +42,7 @@ export declare function makeProcessedTx(tx: Tx): Promise<ProcessedTx>;
|
|
|
42
42
|
* @param kernelOutput - Output of the public kernel circuit simulation for this tx.
|
|
43
43
|
* @param proof - Proof of the public kernel circuit for this tx.
|
|
44
44
|
*/
|
|
45
|
-
export declare function makeProcessedTx(tx: Tx, kernelOutput:
|
|
45
|
+
export declare function makeProcessedTx(tx: Tx, kernelOutput: PublicKernelPublicInputs, proof: Proof): Promise<ProcessedTx>;
|
|
46
46
|
/**
|
|
47
47
|
* Makes an empty tx from an empty kernel circuit public inputs.
|
|
48
48
|
* @returns A processed empty tx.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processed_tx.d.ts","sourceRoot":"","sources":["../../src/sequencer/processed_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,EAAE,EACF,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"processed_tx.d.ts","sourceRoot":"","sources":["../../src/sequencer/processed_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,EAAE,EACF,iBAAiB,EACjB,KAAK,EACL,wBAAwB,EAEzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,EAAY,MAAM,cAAc,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,eAAe,GAAG,iBAAiB,CAAC,GAAG;IAClF;;OAEG;IACH,IAAI,EAAE,wBAAwB,CAAC;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB;;OAEG;IACH,EAAE,EAAE,EAAE,CAAC;IACP;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF;;;GAGG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAEpE;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,wBAAwB,EACtC,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,WAAW,CAAC,CAAC;AAyBxB;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,EAAE,EACX,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,WAAW,CAAC,CAgBtB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CombinedAccumulatedData, Fr,
|
|
1
|
+
import { CombinedAccumulatedData, Fr, PublicKernelPublicInputs, makeEmptyProof, } from '@aztec/circuits.js';
|
|
2
2
|
import { TxHash, TxL2Logs } from '@aztec/types';
|
|
3
3
|
/**
|
|
4
4
|
* Makes a processed tx out of source tx.
|
|
@@ -10,7 +10,7 @@ export async function makeProcessedTx(tx, kernelOutput, proof) {
|
|
|
10
10
|
return {
|
|
11
11
|
hash: await tx.getTxHash(),
|
|
12
12
|
data: kernelOutput ??
|
|
13
|
-
new
|
|
13
|
+
new PublicKernelPublicInputs(CombinedAccumulatedData.fromFinalAccumulatedData(tx.data.end), tx.data.constants),
|
|
14
14
|
proof: proof ?? tx.proof,
|
|
15
15
|
encryptedLogs: tx.encryptedLogs,
|
|
16
16
|
unencryptedLogs: tx.unencryptedLogs,
|
|
@@ -22,7 +22,7 @@ export async function makeProcessedTx(tx, kernelOutput, proof) {
|
|
|
22
22
|
* @returns A processed empty tx.
|
|
23
23
|
*/
|
|
24
24
|
export function makeEmptyProcessedTx(historicTreeRoots, chainId, version) {
|
|
25
|
-
const emptyKernelOutput =
|
|
25
|
+
const emptyKernelOutput = PublicKernelPublicInputs.empty();
|
|
26
26
|
emptyKernelOutput.constants.blockData = historicTreeRoots;
|
|
27
27
|
emptyKernelOutput.constants.txContext.chainId = chainId;
|
|
28
28
|
emptyKernelOutput.constants.txContext.version = version;
|
|
@@ -37,4 +37,4 @@ export function makeEmptyProcessedTx(historicTreeRoots, chainId, version) {
|
|
|
37
37
|
isEmpty: true,
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzc2VkX3R4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9wcm9jZXNzZWRfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixFQUFFLEVBR0Ysd0JBQXdCLEVBQ3hCLGNBQWMsR0FDZixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBTSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBcURwRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsZUFBZSxDQUNuQyxFQUFNLEVBQ04sWUFBdUMsRUFDdkMsS0FBYTtJQUViLE9BQU87UUFDTCxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFO1FBQzFCLElBQUksRUFDRixZQUFZO1lBQ1osSUFBSSx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hILEtBQUssRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDLEtBQUs7UUFDeEIsYUFBYSxFQUFFLEVBQUUsQ0FBQyxhQUFhO1FBQy9CLGVBQWUsRUFBRSxFQUFFLENBQUMsZUFBZTtRQUNuQyxPQUFPLEVBQUUsS0FBSztLQUNmLENBQUM7QUFDSixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxpQkFBb0MsRUFDcEMsT0FBVyxFQUNYLE9BQVc7SUFFWCxNQUFNLGlCQUFpQixHQUFHLHdCQUF3QixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNELGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsaUJBQWlCLENBQUM7SUFDMUQsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3hELGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN4RCxNQUFNLFVBQVUsR0FBRyxjQUFjLEVBQUUsQ0FBQztJQUVwQyxNQUFNLElBQUksR0FBRyxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDNUMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ3JCLElBQUk7UUFDSixhQUFhLEVBQUUsSUFBSSxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQy9CLGVBQWUsRUFBRSxJQUFJLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDakMsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixLQUFLLEVBQUUsVUFBVTtRQUNqQixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMifQ==
|
|
@@ -53,7 +53,7 @@ export class PublicProcessor {
|
|
|
53
53
|
*/
|
|
54
54
|
async process(txs) {
|
|
55
55
|
// The processor modifies the tx objects in place, so we need to clone them.
|
|
56
|
-
txs = txs.map(tx => Tx.
|
|
56
|
+
txs = txs.map(tx => Tx.clone(tx));
|
|
57
57
|
const result = [];
|
|
58
58
|
const failed = [];
|
|
59
59
|
for (const tx of txs) {
|
|
@@ -108,7 +108,7 @@ export class PublicProcessor {
|
|
|
108
108
|
while (executionStack.length) {
|
|
109
109
|
const current = executionStack.pop();
|
|
110
110
|
const isExecutionRequest = !isPublicExecutionResult(current);
|
|
111
|
-
const result = isExecutionRequest ? await this.publicExecutor.
|
|
111
|
+
const result = isExecutionRequest ? await this.publicExecutor.simulate(current, this.globalVariables) : current;
|
|
112
112
|
newUnencryptedFunctionLogs.push(result.unencryptedLogs);
|
|
113
113
|
const functionSelector = result.execution.functionData.selector.toString();
|
|
114
114
|
this.log(`Running public kernel circuit for ${functionSelector}@${result.execution.contractAddress.toString()}`);
|
|
@@ -266,4 +266,4 @@ export class PublicProcessor {
|
|
|
266
266
|
], PublicDataUpdateRequest.empty(), MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX);
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXF1ZW5jZXIvcHVibGljX3Byb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUwsc0JBQXNCLEVBQ3RCLCtCQUErQixFQUMvQix1QkFBdUIsR0FDeEIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsWUFBWSxFQUNaLFlBQVksRUFDWix1QkFBdUIsRUFDdkIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixFQUFFLEVBR0YseUJBQXlCLEVBQ3pCLDRCQUE0QixFQUM1Qiw4QkFBOEIsRUFDOUIsMkJBQTJCLEVBQzNCLHFDQUFxQyxFQUNyQyw4QkFBOEIsRUFDOUIsNEJBQTRCLEVBQzVCLHdDQUF3QyxFQUN4QyxzQ0FBc0MsRUFDdEMsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUVsQixjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUVsQixvQkFBb0IsRUFDcEIsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0csT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFTLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQTJELFlBQVksRUFBRSxFQUFFLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHekcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxN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
|
|
269
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXF1ZW5jZXIvcHVibGljX3Byb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUwsc0JBQXNCLEVBQ3RCLCtCQUErQixFQUMvQix1QkFBdUIsR0FDeEIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsWUFBWSxFQUNaLFlBQVksRUFDWix1QkFBdUIsRUFDdkIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixFQUFFLEVBR0YseUJBQXlCLEVBQ3pCLDRCQUE0QixFQUM1Qiw4QkFBOEIsRUFDOUIsMkJBQTJCLEVBQzNCLHFDQUFxQyxFQUNyQyw4QkFBOEIsRUFDOUIsNEJBQTRCLEVBQzVCLHdDQUF3QyxFQUN4QyxzQ0FBc0MsRUFDdEMsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUVsQixjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUVsQixvQkFBb0IsRUFDcEIsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0csT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFTLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQTJELFlBQVksRUFBRSxFQUFFLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHekcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxN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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ARGS_LENGTH, CallContext, CircuitsWasm, CombinedAccumulatedData, EthAddress, Fr, FunctionData, GlobalVariables, HistoricBlockData,
|
|
1
|
+
import { ARGS_LENGTH, CallContext, CircuitsWasm, CombinedAccumulatedData, EthAddress, Fr, FunctionData, GlobalVariables, HistoricBlockData, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, PUBLIC_DATA_TREE_HEIGHT, PublicKernelPublicInputs, makeEmptyProof, makeTuple, } from '@aztec/circuits.js';
|
|
2
2
|
import { computeCallStackItemHash } from '@aztec/circuits.js/abis';
|
|
3
|
-
import { makeAztecAddress,
|
|
3
|
+
import { makeAztecAddress, makePrivateKernelPublicInputsFinal, makePublicCallRequest, makeSelector, } from '@aztec/circuits.js/factories';
|
|
4
4
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
5
5
|
import { EncodedContractFunction, ExtendedContractData, FunctionL2Logs, SiblingPath, Tx, TxL2Logs, mockTx, } from '@aztec/types';
|
|
6
6
|
import { mock } from 'jest-mock-extended';
|
|
@@ -47,7 +47,7 @@ describe('public_processor', () => {
|
|
|
47
47
|
{
|
|
48
48
|
isEmpty: false,
|
|
49
49
|
hash,
|
|
50
|
-
data: new
|
|
50
|
+
data: new PublicKernelPublicInputs(CombinedAccumulatedData.fromFinalAccumulatedData(tx.data.end), tx.data.constants),
|
|
51
51
|
proof: tx.proof,
|
|
52
52
|
encryptedLogs: tx.encryptedLogs,
|
|
53
53
|
unencryptedLogs: tx.unencryptedLogs,
|
|
@@ -56,7 +56,7 @@ describe('public_processor', () => {
|
|
|
56
56
|
expect(failed).toEqual([]);
|
|
57
57
|
});
|
|
58
58
|
it('returns failed txs without aborting entire operation', async function () {
|
|
59
|
-
publicExecutor.
|
|
59
|
+
publicExecutor.simulate.mockRejectedValue(new Error(`Failed`));
|
|
60
60
|
const tx = mockTx();
|
|
61
61
|
const [processed, failed] = await processor.process([tx]);
|
|
62
62
|
expect(processed).toEqual([]);
|
|
@@ -83,13 +83,13 @@ describe('public_processor', () => {
|
|
|
83
83
|
const callRequests = [makePublicCallRequest(0x100), makePublicCallRequest(0x100)];
|
|
84
84
|
const callStackItems = await Promise.all(callRequests.map(call => call.toPublicCallStackItem()));
|
|
85
85
|
const callStackHashes = callStackItems.map(call => computeCallStackItemHash(wasm, call));
|
|
86
|
-
const kernelOutput =
|
|
86
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal(0x10);
|
|
87
87
|
kernelOutput.end.publicCallStack = padArrayEnd(callStackHashes, Fr.ZERO, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
|
|
88
88
|
kernelOutput.end.privateCallStack = padArrayEnd([], Fr.ZERO, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX);
|
|
89
89
|
const tx = new Tx(kernelOutput, proof, TxL2Logs.random(2, 3), TxL2Logs.random(3, 2), callRequests, [
|
|
90
90
|
ExtendedContractData.random(),
|
|
91
91
|
]);
|
|
92
|
-
publicExecutor.
|
|
92
|
+
publicExecutor.simulate.mockImplementation(execution => {
|
|
93
93
|
for (const request of callRequests) {
|
|
94
94
|
if (execution.contractAddress.equals(request.contractAddress)) {
|
|
95
95
|
return Promise.resolve(makePublicExecutionResultFromRequest(request));
|
|
@@ -101,13 +101,13 @@ describe('public_processor', () => {
|
|
|
101
101
|
expect(processed).toHaveLength(1);
|
|
102
102
|
expect(processed).toEqual([await expectedTxByHash(tx)]);
|
|
103
103
|
expect(failed).toHaveLength(0);
|
|
104
|
-
expect(publicExecutor.
|
|
104
|
+
expect(publicExecutor.simulate).toHaveBeenCalledTimes(2);
|
|
105
105
|
});
|
|
106
106
|
it('runs a tx with an enqueued public call with nested execution', async function () {
|
|
107
107
|
const callRequest = makePublicCallRequest(0x100);
|
|
108
108
|
const callStackItem = await callRequest.toPublicCallStackItem();
|
|
109
109
|
const callStackHash = computeCallStackItemHash(wasm, callStackItem);
|
|
110
|
-
const kernelOutput =
|
|
110
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal(0x10);
|
|
111
111
|
kernelOutput.end.publicCallStack = padArrayEnd([callStackHash], Fr.ZERO, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
|
|
112
112
|
kernelOutput.end.privateCallStack = padArrayEnd([], Fr.ZERO, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX);
|
|
113
113
|
const tx = new Tx(kernelOutput, proof, TxL2Logs.random(2, 3), TxL2Logs.random(3, 2), [callRequest], [ExtendedContractData.random()]);
|
|
@@ -119,12 +119,12 @@ describe('public_processor', () => {
|
|
|
119
119
|
args: new Array(ARGS_LENGTH).fill(Fr.ZERO),
|
|
120
120
|
}),
|
|
121
121
|
];
|
|
122
|
-
publicExecutor.
|
|
122
|
+
publicExecutor.simulate.mockResolvedValue(publicExecutionResult);
|
|
123
123
|
const [processed, failed] = await processor.process([tx]);
|
|
124
124
|
expect(processed).toHaveLength(1);
|
|
125
125
|
expect(processed).toEqual([await expectedTxByHash(tx)]);
|
|
126
126
|
expect(failed).toHaveLength(0);
|
|
127
|
-
expect(publicExecutor.
|
|
127
|
+
expect(publicExecutor.simulate).toHaveBeenCalledTimes(1);
|
|
128
128
|
});
|
|
129
129
|
});
|
|
130
130
|
});
|
|
@@ -161,4 +161,4 @@ function makePublicExecutionResult(from, tx, nestedExecutions = []) {
|
|
|
161
161
|
unencryptedLogs: new FunctionL2Logs([]),
|
|
162
162
|
};
|
|
163
163
|
}
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9wdWJsaWNfcHJvY2Vzc29yLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFdBQVcsRUFFWCxXQUFXLEVBQ1gsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixVQUFVLEVBQ1YsRUFBRSxFQUNGLFlBQVksRUFDWixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QixvQ0FBb0MsRUFDcEMsbUNBQW1DLEVBQ25DLHVCQUF1QixFQUd2QixjQUFjLEVBQ2QsU0FBUyxHQUNWLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFDM0IscUJBQXFCLEVBQ3JCLFlBQVksR0FDYixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLG9CQUFvQixFQUVwQixjQUFjLEVBQ2QsV0FBVyxFQUNYLEVBQUUsRUFDRixRQUFRLEVBQ1IsTUFBTSxHQUNQLE1BQU0sY0FBYyxDQUFDO0FBR3RCLE9BQU8sRUFBYSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFJakMsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDaEMsSUFBSSxFQUFtQyxDQUFDO0lBQ3hDLElBQUksY0FBeUMsQ0FBQztJQUM5QyxJQUFJLFlBQXFDLENBQUM7SUFDMUMsSUFBSSxr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
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9wdWJsaWNfcHJvY2Vzc29yLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFdBQVcsRUFFWCxXQUFXLEVBQ1gsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixVQUFVLEVBQ1YsRUFBRSxFQUNGLFlBQVksRUFDWixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLG9DQUFvQyxFQUNwQyxtQ0FBbUMsRUFDbkMsdUJBQXVCLEVBR3ZCLHdCQUF3QixFQUN4QixjQUFjLEVBQ2QsU0FBUyxHQUNWLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixrQ0FBa0MsRUFDbEMscUJBQXFCLEVBQ3JCLFlBQVksR0FDYixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLG9CQUFvQixFQUVwQixjQUFjLEVBQ2QsV0FBVyxFQUNYLEVBQUUsRUFDRixRQUFRLEVBQ1IsTUFBTSxHQUNQLE1BQU0sY0FBYyxDQUFDO0FBR3RCLE9BQU8sRUFBYSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFJakMsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDaEMsSUFBSSxFQUFtQyxDQUFDO0lBQ3hDLElBQUksY0FBeUMsQ0FBQztJQUM5QyxJQUFJLFlBQXFDLENBQUM7SUFDMUMsSUFBSSxr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
|
package/package.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/sequencer-client",
|
|
3
|
-
"version": "0.1.0-
|
|
3
|
+
"version": "0.1.0-alpha59",
|
|
4
4
|
"exports": "./dest/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@aztec/acir-simulator": "0.1.0-
|
|
8
|
-
"@aztec/circuits.js": "0.1.0-
|
|
9
|
-
"@aztec/ethereum": "0.1.0-
|
|
10
|
-
"@aztec/foundation": "0.1.0-
|
|
11
|
-
"@aztec/l1-artifacts": "0.1.0-
|
|
12
|
-
"@aztec/merkle-tree": "0.1.0-
|
|
13
|
-
"@aztec/p2p": "0.1.0-
|
|
14
|
-
"@aztec/types": "0.1.0-
|
|
15
|
-
"@aztec/world-state": "0.1.0-
|
|
7
|
+
"@aztec/acir-simulator": "0.1.0-alpha59",
|
|
8
|
+
"@aztec/circuits.js": "0.1.0-alpha59",
|
|
9
|
+
"@aztec/ethereum": "0.1.0-alpha59",
|
|
10
|
+
"@aztec/foundation": "0.1.0-alpha59",
|
|
11
|
+
"@aztec/l1-artifacts": "0.1.0-alpha59",
|
|
12
|
+
"@aztec/merkle-tree": "0.1.0-alpha59",
|
|
13
|
+
"@aztec/p2p": "0.1.0-alpha59",
|
|
14
|
+
"@aztec/types": "0.1.0-alpha59",
|
|
15
|
+
"@aztec/world-state": "0.1.0-alpha59",
|
|
16
16
|
"lodash.chunk": "^4.2.0",
|
|
17
17
|
"lodash.flatmap": "^4.5.0",
|
|
18
18
|
"lodash.pick": "^4.4.0",
|
|
@@ -22,8 +22,8 @@ import { computeBlockHashWithGlobals, computeContractLeaf } from '@aztec/circuit
|
|
|
22
22
|
import {
|
|
23
23
|
fr,
|
|
24
24
|
makeBaseOrMergeRollupPublicInputs,
|
|
25
|
-
makeKernelPublicInputsFinal,
|
|
26
25
|
makeNewContractData,
|
|
26
|
+
makePrivateKernelPublicInputsFinal,
|
|
27
27
|
makeProof,
|
|
28
28
|
makePublicCallRequest,
|
|
29
29
|
makeRootRollupPublicInputs,
|
|
@@ -169,7 +169,7 @@ describe('sequencer/solo_block_builder', () => {
|
|
|
169
169
|
};
|
|
170
170
|
|
|
171
171
|
const buildMockSimulatorInputs = async () => {
|
|
172
|
-
const kernelOutput =
|
|
172
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal();
|
|
173
173
|
kernelOutput.constants.blockData = await getHistoricBlockData(expectsDb);
|
|
174
174
|
|
|
175
175
|
const tx = await makeProcessedTx(
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
CombinedAccumulatedData,
|
|
3
3
|
Fr,
|
|
4
4
|
HistoricBlockData,
|
|
5
|
-
KernelCircuitPublicInputs,
|
|
6
5
|
Proof,
|
|
6
|
+
PublicKernelPublicInputs,
|
|
7
7
|
makeEmptyProof,
|
|
8
8
|
} from '@aztec/circuits.js';
|
|
9
9
|
import { Tx, TxHash, TxL2Logs } from '@aztec/types';
|
|
@@ -16,7 +16,7 @@ export type ProcessedTx = Pick<Tx, 'proof' | 'encryptedLogs' | 'unencryptedLogs'
|
|
|
16
16
|
/**
|
|
17
17
|
* Output of the public kernel circuit for this tx.
|
|
18
18
|
*/
|
|
19
|
-
data:
|
|
19
|
+
data: PublicKernelPublicInputs;
|
|
20
20
|
/**
|
|
21
21
|
* Hash of the transaction.
|
|
22
22
|
*/
|
|
@@ -55,7 +55,7 @@ export async function makeProcessedTx(tx: Tx): Promise<ProcessedTx>;
|
|
|
55
55
|
*/
|
|
56
56
|
export async function makeProcessedTx(
|
|
57
57
|
tx: Tx,
|
|
58
|
-
kernelOutput:
|
|
58
|
+
kernelOutput: PublicKernelPublicInputs,
|
|
59
59
|
proof: Proof,
|
|
60
60
|
): Promise<ProcessedTx>;
|
|
61
61
|
|
|
@@ -67,18 +67,14 @@ export async function makeProcessedTx(
|
|
|
67
67
|
*/
|
|
68
68
|
export async function makeProcessedTx(
|
|
69
69
|
tx: Tx,
|
|
70
|
-
kernelOutput?:
|
|
70
|
+
kernelOutput?: PublicKernelPublicInputs,
|
|
71
71
|
proof?: Proof,
|
|
72
72
|
): Promise<ProcessedTx> {
|
|
73
73
|
return {
|
|
74
74
|
hash: await tx.getTxHash(),
|
|
75
75
|
data:
|
|
76
76
|
kernelOutput ??
|
|
77
|
-
new
|
|
78
|
-
CombinedAccumulatedData.fromFinalAccumulatedData(tx.data.end),
|
|
79
|
-
tx.data.constants,
|
|
80
|
-
tx.data.isPrivate,
|
|
81
|
-
),
|
|
77
|
+
new PublicKernelPublicInputs(CombinedAccumulatedData.fromFinalAccumulatedData(tx.data.end), tx.data.constants),
|
|
82
78
|
proof: proof ?? tx.proof,
|
|
83
79
|
encryptedLogs: tx.encryptedLogs,
|
|
84
80
|
unencryptedLogs: tx.unencryptedLogs,
|
|
@@ -95,7 +91,7 @@ export function makeEmptyProcessedTx(
|
|
|
95
91
|
chainId: Fr,
|
|
96
92
|
version: Fr,
|
|
97
93
|
): Promise<ProcessedTx> {
|
|
98
|
-
const emptyKernelOutput =
|
|
94
|
+
const emptyKernelOutput = PublicKernelPublicInputs.empty();
|
|
99
95
|
emptyKernelOutput.constants.blockData = historicTreeRoots;
|
|
100
96
|
emptyKernelOutput.constants.txContext.chainId = chainId;
|
|
101
97
|
emptyKernelOutput.constants.txContext.version = version;
|
|
@@ -10,19 +10,19 @@ import {
|
|
|
10
10
|
FunctionData,
|
|
11
11
|
GlobalVariables,
|
|
12
12
|
HistoricBlockData,
|
|
13
|
-
KernelCircuitPublicInputs,
|
|
14
13
|
MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX,
|
|
15
14
|
MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX,
|
|
16
15
|
PUBLIC_DATA_TREE_HEIGHT,
|
|
17
16
|
Proof,
|
|
18
17
|
PublicCallRequest,
|
|
18
|
+
PublicKernelPublicInputs,
|
|
19
19
|
makeEmptyProof,
|
|
20
20
|
makeTuple,
|
|
21
21
|
} from '@aztec/circuits.js';
|
|
22
22
|
import { computeCallStackItemHash } from '@aztec/circuits.js/abis';
|
|
23
23
|
import {
|
|
24
24
|
makeAztecAddress,
|
|
25
|
-
|
|
25
|
+
makePrivateKernelPublicInputsFinal,
|
|
26
26
|
makePublicCallRequest,
|
|
27
27
|
makeSelector,
|
|
28
28
|
} from '@aztec/circuits.js/factories';
|
|
@@ -105,10 +105,9 @@ describe('public_processor', () => {
|
|
|
105
105
|
{
|
|
106
106
|
isEmpty: false,
|
|
107
107
|
hash,
|
|
108
|
-
data: new
|
|
108
|
+
data: new PublicKernelPublicInputs(
|
|
109
109
|
CombinedAccumulatedData.fromFinalAccumulatedData(tx.data.end),
|
|
110
110
|
tx.data.constants,
|
|
111
|
-
tx.data.isPrivate,
|
|
112
111
|
),
|
|
113
112
|
proof: tx.proof,
|
|
114
113
|
encryptedLogs: tx.encryptedLogs,
|
|
@@ -119,7 +118,7 @@ describe('public_processor', () => {
|
|
|
119
118
|
});
|
|
120
119
|
|
|
121
120
|
it('returns failed txs without aborting entire operation', async function () {
|
|
122
|
-
publicExecutor.
|
|
121
|
+
publicExecutor.simulate.mockRejectedValue(new Error(`Failed`));
|
|
123
122
|
|
|
124
123
|
const tx = mockTx();
|
|
125
124
|
const [processed, failed] = await processor.process([tx]);
|
|
@@ -163,7 +162,7 @@ describe('public_processor', () => {
|
|
|
163
162
|
const callStackItems = await Promise.all(callRequests.map(call => call.toPublicCallStackItem()));
|
|
164
163
|
const callStackHashes = callStackItems.map(call => computeCallStackItemHash(wasm, call));
|
|
165
164
|
|
|
166
|
-
const kernelOutput =
|
|
165
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal(0x10);
|
|
167
166
|
kernelOutput.end.publicCallStack = padArrayEnd(callStackHashes, Fr.ZERO, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
|
|
168
167
|
kernelOutput.end.privateCallStack = padArrayEnd([], Fr.ZERO, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX);
|
|
169
168
|
|
|
@@ -171,7 +170,7 @@ describe('public_processor', () => {
|
|
|
171
170
|
ExtendedContractData.random(),
|
|
172
171
|
]);
|
|
173
172
|
|
|
174
|
-
publicExecutor.
|
|
173
|
+
publicExecutor.simulate.mockImplementation(execution => {
|
|
175
174
|
for (const request of callRequests) {
|
|
176
175
|
if (execution.contractAddress.equals(request.contractAddress)) {
|
|
177
176
|
return Promise.resolve(makePublicExecutionResultFromRequest(request));
|
|
@@ -185,7 +184,7 @@ describe('public_processor', () => {
|
|
|
185
184
|
expect(processed).toHaveLength(1);
|
|
186
185
|
expect(processed).toEqual([await expectedTxByHash(tx)]);
|
|
187
186
|
expect(failed).toHaveLength(0);
|
|
188
|
-
expect(publicExecutor.
|
|
187
|
+
expect(publicExecutor.simulate).toHaveBeenCalledTimes(2);
|
|
189
188
|
});
|
|
190
189
|
|
|
191
190
|
it('runs a tx with an enqueued public call with nested execution', async function () {
|
|
@@ -193,7 +192,7 @@ describe('public_processor', () => {
|
|
|
193
192
|
const callStackItem = await callRequest.toPublicCallStackItem();
|
|
194
193
|
const callStackHash = computeCallStackItemHash(wasm, callStackItem);
|
|
195
194
|
|
|
196
|
-
const kernelOutput =
|
|
195
|
+
const kernelOutput = makePrivateKernelPublicInputsFinal(0x10);
|
|
197
196
|
kernelOutput.end.publicCallStack = padArrayEnd([callStackHash], Fr.ZERO, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX);
|
|
198
197
|
kernelOutput.end.privateCallStack = padArrayEnd([], Fr.ZERO, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX);
|
|
199
198
|
|
|
@@ -214,14 +213,14 @@ describe('public_processor', () => {
|
|
|
214
213
|
args: new Array(ARGS_LENGTH).fill(Fr.ZERO),
|
|
215
214
|
}),
|
|
216
215
|
];
|
|
217
|
-
publicExecutor.
|
|
216
|
+
publicExecutor.simulate.mockResolvedValue(publicExecutionResult);
|
|
218
217
|
|
|
219
218
|
const [processed, failed] = await processor.process([tx]);
|
|
220
219
|
|
|
221
220
|
expect(processed).toHaveLength(1);
|
|
222
221
|
expect(processed).toEqual([await expectedTxByHash(tx)]);
|
|
223
222
|
expect(failed).toHaveLength(0);
|
|
224
|
-
expect(publicExecutor.
|
|
223
|
+
expect(publicExecutor.simulate).toHaveBeenCalledTimes(1);
|
|
225
224
|
});
|
|
226
225
|
});
|
|
227
226
|
});
|
|
@@ -109,7 +109,7 @@ export class PublicProcessor {
|
|
|
109
109
|
*/
|
|
110
110
|
public async process(txs: Tx[]): Promise<[ProcessedTx[], FailedTx[]]> {
|
|
111
111
|
// The processor modifies the tx objects in place, so we need to clone them.
|
|
112
|
-
txs = txs.map(tx => Tx.
|
|
112
|
+
txs = txs.map(tx => Tx.clone(tx));
|
|
113
113
|
const result: ProcessedTx[] = [];
|
|
114
114
|
const failed: FailedTx[] = [];
|
|
115
115
|
|
|
@@ -177,7 +177,7 @@ export class PublicProcessor {
|
|
|
177
177
|
while (executionStack.length) {
|
|
178
178
|
const current = executionStack.pop()!;
|
|
179
179
|
const isExecutionRequest = !isPublicExecutionResult(current);
|
|
180
|
-
const result = isExecutionRequest ? await this.publicExecutor.
|
|
180
|
+
const result = isExecutionRequest ? await this.publicExecutor.simulate(current, this.globalVariables) : current;
|
|
181
181
|
newUnencryptedFunctionLogs.push(result.unencryptedLogs);
|
|
182
182
|
const functionSelector = result.execution.functionData.selector.toString();
|
|
183
183
|
this.log(
|