@aztec/sequencer-client 0.32.1 → 0.34.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/global_variable_builder/global_builder.js +2 -2
- package/dest/publisher/l1-publisher.js +10 -10
- package/dest/publisher/viem-tx-sender.js +2 -2
- package/dest/sequencer/abstract_phase_manager.d.ts +16 -4
- package/dest/sequencer/abstract_phase_manager.d.ts.map +1 -1
- package/dest/sequencer/abstract_phase_manager.js +38 -39
- package/dest/sequencer/app_logic_phase_manager.d.ts +1 -0
- package/dest/sequencer/app_logic_phase_manager.d.ts.map +1 -1
- package/dest/sequencer/app_logic_phase_manager.js +4 -4
- package/dest/sequencer/hints_builder.d.ts +7 -3
- package/dest/sequencer/hints_builder.d.ts.map +1 -1
- package/dest/sequencer/hints_builder.js +24 -4
- package/dest/sequencer/phase_manager_factory.d.ts.map +1 -1
- package/dest/sequencer/phase_manager_factory.js +5 -4
- package/dest/sequencer/public_processor.d.ts +6 -3
- package/dest/sequencer/public_processor.d.ts.map +1 -1
- package/dest/sequencer/public_processor.js +65 -27
- package/dest/sequencer/sequencer.d.ts +2 -12
- package/dest/sequencer/sequencer.d.ts.map +1 -1
- package/dest/sequencer/sequencer.js +43 -49
- package/dest/sequencer/setup_phase_manager.d.ts +1 -0
- package/dest/sequencer/setup_phase_manager.d.ts.map +1 -1
- package/dest/sequencer/setup_phase_manager.js +3 -3
- package/dest/sequencer/tail_phase_manager.d.ts +6 -1
- package/dest/sequencer/tail_phase_manager.d.ts.map +1 -1
- package/dest/sequencer/tail_phase_manager.js +29 -4
- package/dest/sequencer/teardown_phase_manager.d.ts +1 -0
- package/dest/sequencer/teardown_phase_manager.d.ts.map +1 -1
- package/dest/sequencer/teardown_phase_manager.js +3 -3
- package/dest/sequencer/tx_validator.d.ts +2 -1
- package/dest/sequencer/tx_validator.d.ts.map +1 -1
- package/dest/sequencer/tx_validator.js +8 -7
- package/dest/sequencer/utils.d.ts.map +1 -1
- package/dest/sequencer/utils.js +8 -7
- package/dest/simulator/index.d.ts +2 -2
- package/dest/simulator/index.d.ts.map +1 -1
- package/dest/simulator/public_executor.js +3 -3
- package/dest/simulator/public_kernel.d.ts +2 -2
- package/dest/simulator/public_kernel.d.ts.map +1 -1
- package/dest/simulator/public_kernel.js +5 -5
- package/package.json +32 -15
- package/src/global_variable_builder/global_builder.ts +1 -1
- package/src/publisher/l1-publisher.ts +9 -9
- package/src/publisher/viem-tx-sender.ts +1 -1
- package/src/sequencer/abstract_phase_manager.ts +74 -63
- package/src/sequencer/app_logic_phase_manager.ts +3 -3
- package/src/sequencer/hints_builder.ts +42 -9
- package/src/sequencer/phase_manager_factory.ts +4 -3
- package/src/sequencer/public_processor.ts +97 -51
- package/src/sequencer/sequencer.ts +51 -61
- package/src/sequencer/setup_phase_manager.ts +2 -2
- package/src/sequencer/tail_phase_manager.ts +67 -3
- package/src/sequencer/teardown_phase_manager.ts +2 -2
- package/src/sequencer/tx_validator.ts +8 -6
- package/src/sequencer/utils.ts +7 -6
- package/src/simulator/index.ts +2 -1
- package/src/simulator/public_executor.ts +2 -2
- package/src/simulator/public_kernel.ts +6 -5
- package/dest/utils.d.ts +0 -12
- package/dest/utils.d.ts.map +0 -1
- package/dest/utils.js +0 -16
- package/src/utils.ts +0 -16
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MAX_NEW_NOTE_HASHES_PER_TX, PublicKernelTailCircuitPrivateInputs, makeEmptyProof, mergeAccumulatedData, sortByCounter, } from '@aztec/circuits.js';
|
|
1
2
|
import { AbstractPhaseManager, PublicKernelPhase } from './abstract_phase_manager.js';
|
|
2
3
|
export class TailPhaseManager extends AbstractPhaseManager {
|
|
3
4
|
constructor(db, publicExecutor, publicKernel, globalVariables, historicalHeader, publicContractsDB, publicStateDB, phase = PublicKernelPhase.TAIL) {
|
|
@@ -12,8 +13,8 @@ export class TailPhaseManager extends AbstractPhaseManager {
|
|
|
12
13
|
this.phase = phase;
|
|
13
14
|
}
|
|
14
15
|
async handle(tx, previousPublicKernelOutput, previousPublicKernelProof) {
|
|
15
|
-
this.log(`Processing tx ${tx.getTxHash()}`);
|
|
16
|
-
const [
|
|
16
|
+
this.log.verbose(`Processing tx ${tx.getTxHash()}`);
|
|
17
|
+
const [finalKernelOutput, publicKernelProof] = await this.runTailKernelCircuit(previousPublicKernelOutput, previousPublicKernelProof).catch(
|
|
17
18
|
// the abstract phase manager throws if simulation gives error in non-revertible phase
|
|
18
19
|
async (err) => {
|
|
19
20
|
await this.publicStateDB.rollbackToCommit();
|
|
@@ -21,7 +22,31 @@ export class TailPhaseManager extends AbstractPhaseManager {
|
|
|
21
22
|
});
|
|
22
23
|
// commit the state updates from this transaction
|
|
23
24
|
await this.publicStateDB.commit();
|
|
24
|
-
return {
|
|
25
|
+
return {
|
|
26
|
+
publicKernelOutput: previousPublicKernelOutput,
|
|
27
|
+
finalKernelOutput,
|
|
28
|
+
publicKernelProof,
|
|
29
|
+
revertReason: undefined,
|
|
30
|
+
returnValues: undefined,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
async runTailKernelCircuit(previousOutput, previousProof) {
|
|
34
|
+
const output = await this.simulate(previousOutput, previousProof);
|
|
35
|
+
// Temporary hack. Should sort them in the tail circuit.
|
|
36
|
+
const noteHashes = mergeAccumulatedData(MAX_NEW_NOTE_HASHES_PER_TX, previousOutput.endNonRevertibleData.newNoteHashes, previousOutput.end.newNoteHashes);
|
|
37
|
+
output.end.newNoteHashes = this.sortNoteHashes(noteHashes);
|
|
38
|
+
return [output, makeEmptyProof()];
|
|
39
|
+
}
|
|
40
|
+
async simulate(previousOutput, previousProof) {
|
|
41
|
+
const previousKernel = this.getPreviousKernelData(previousOutput, previousProof);
|
|
42
|
+
const { validationRequests, endNonRevertibleData, end } = previousOutput;
|
|
43
|
+
const nullifierReadRequestHints = await this.hintsBuilder.getNullifierReadRequestHints(validationRequests.nullifierReadRequests, endNonRevertibleData.newNullifiers, end.newNullifiers);
|
|
44
|
+
const nullifierNonExistentReadRequestHints = await this.hintsBuilder.getNullifierNonExistentReadRequestHints(validationRequests.nullifierNonExistentReadRequests, endNonRevertibleData.newNullifiers, end.newNullifiers);
|
|
45
|
+
const inputs = new PublicKernelTailCircuitPrivateInputs(previousKernel, nullifierReadRequestHints, nullifierNonExistentReadRequestHints);
|
|
46
|
+
return this.publicKernel.publicKernelCircuitTail(inputs);
|
|
47
|
+
}
|
|
48
|
+
sortNoteHashes(noteHashes) {
|
|
49
|
+
return sortByCounter(noteHashes.map(n => ({ ...n, counter: n.counter.toNumber() }))).map(n => n.value);
|
|
25
50
|
}
|
|
26
51
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpbF9waGFzZV9tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci90YWlsX3BoYXNlX21hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUtMLDBCQUEwQixFQUcxQixvQ0FBb0MsRUFFcEMsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixhQUFhLEdBQ2QsTUFBTSxvQkFBb0IsQ0FBQztBQU81QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV0RixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hELFlBQ1ksRUFBd0IsRUFDeEIsY0FBOEIsRUFDOUIsWUFBMEMsRUFDMUMsZUFBZ0MsRUFDaEMsZ0JBQXdCLEVBQ3hCLGlCQUE4QyxFQUM5QyxhQUE0QixFQUN0QixRQUEyQixpQkFBaUIsQ0FBQyxJQUFJO1FBRWpFLEtBQUssQ0FBQyxFQUFFLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFUeEUsT0FBRSxHQUFGLEVBQUUsQ0FBc0I7UUFDeEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUE4QjtRQUMxQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFRO1FBQ3hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBNkI7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBNEM7SUFHbkUsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBTSxFQUFFLDBCQUEyRCxFQUFFLHlCQUFnQztRQUNoSCxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNw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
|
|
@@ -22,6 +22,7 @@ export declare class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
22
22
|
publicKernelOutput: PublicKernelCircuitPublicInputs;
|
|
23
23
|
publicKernelProof: Proof;
|
|
24
24
|
revertReason: import("@aztec/circuit-types").SimulationError | undefined;
|
|
25
|
+
returnValues: undefined;
|
|
25
26
|
}>;
|
|
26
27
|
}
|
|
27
28
|
//# sourceMappingURL=teardown_phase_manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teardown_phase_manager.d.ts","sourceRoot":"","sources":["../../src/sequencer/teardown_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,+BAA+B,EACrC,MAAM,oBAAoB,CAAC;AAC5B,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,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEtF;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAE1D,SAAS,CAAC,EAAE,EAAE,oBAAoB;IAClC,SAAS,CAAC,cAAc,EAAE,cAAc;IACxC,SAAS,CAAC,YAAY,EAAE,4BAA4B;IACpD,SAAS,CAAC,eAAe,EAAE,eAAe;IAC1C,SAAS,CAAC,gBAAgB,EAAE,MAAM;IAClC,SAAS,CAAC,iBAAiB,EAAE,2BAA2B;IACxD,SAAS,CAAC,aAAa,EAAE,aAAa;IAC/B,KAAK,EAAE,iBAAiB;gBAPrB,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,EAC/B,KAAK,GAAE,iBAA8C;IAK/C,MAAM,CACnB,EAAE,EAAE,EAAE,EACN,0BAA0B,EAAE,+BAA+B,EAC3D,yBAAyB,EAAE,KAAK
|
|
1
|
+
{"version":3,"file":"teardown_phase_manager.d.ts","sourceRoot":"","sources":["../../src/sequencer/teardown_phase_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,+BAA+B,EACrC,MAAM,oBAAoB,CAAC;AAC5B,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,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEtF;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAE1D,SAAS,CAAC,EAAE,EAAE,oBAAoB;IAClC,SAAS,CAAC,cAAc,EAAE,cAAc;IACxC,SAAS,CAAC,YAAY,EAAE,4BAA4B;IACpD,SAAS,CAAC,eAAe,EAAE,eAAe;IAC1C,SAAS,CAAC,gBAAgB,EAAE,MAAM;IAClC,SAAS,CAAC,iBAAiB,EAAE,2BAA2B;IACxD,SAAS,CAAC,aAAa,EAAE,aAAa;IAC/B,KAAK,EAAE,iBAAiB;gBAPrB,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,EAC/B,KAAK,GAAE,iBAA8C;IAK/C,MAAM,CACnB,EAAE,EAAE,EAAE,EACN,0BAA0B,EAAE,+BAA+B,EAC3D,yBAAyB,EAAE,KAAK;;;;;;CAenC"}
|
|
@@ -15,7 +15,7 @@ export class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
15
15
|
this.phase = phase;
|
|
16
16
|
}
|
|
17
17
|
async handle(tx, previousPublicKernelOutput, previousPublicKernelProof) {
|
|
18
|
-
this.log(`Processing tx ${tx.getTxHash()}`);
|
|
18
|
+
this.log.verbose(`Processing tx ${tx.getTxHash()}`);
|
|
19
19
|
const [publicKernelOutput, publicKernelProof, newUnencryptedFunctionLogs, revertReason] = await this.processEnqueuedPublicCalls(tx, previousPublicKernelOutput, previousPublicKernelProof).catch(
|
|
20
20
|
// the abstract phase manager throws if simulation gives error in a non-revertible phase
|
|
21
21
|
async (err) => {
|
|
@@ -24,7 +24,7 @@ export class TeardownPhaseManager extends AbstractPhaseManager {
|
|
|
24
24
|
});
|
|
25
25
|
tx.unencryptedLogs.addFunctionLogs(newUnencryptedFunctionLogs);
|
|
26
26
|
await this.publicStateDB.checkpoint();
|
|
27
|
-
return { publicKernelOutput, publicKernelProof, revertReason };
|
|
27
|
+
return { publicKernelOutput, publicKernelProof, revertReason, returnValues: undefined };
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhcmRvd25fcGhhc2VfbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXF1ZW5jZXIvdGVhcmRvd25fcGhhc2VfbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV0Rjs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxvQkFBb0I7SUFDNUQsWUFDWSxFQUF3QixFQUN4QixjQUE4QixFQUM5QixZQUEwQyxFQUMxQyxlQUFnQyxFQUNoQyxnQkFBd0IsRUFDeEIsaUJBQThDLEVBQzlDLGFBQTRCLEVBQy9CLFFBQTJCLGlCQUFpQixDQUFDLFFBQVE7UUFFNUQsS0FBSyxDQUFDLEVBQUUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQVR4RSxPQUFFLEdBQUYsRUFBRSxDQUFzQjtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQThCO1FBQzFDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQVE7UUFDeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE2QjtRQUM5QyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMvQixVQUFLLEdBQUwsS0FBSyxDQUFnRDtJQUc5RCxDQUFDO0lBRVEsS0FBSyxDQUFDLE1BQU0sQ0FDbkIsRUFBTSxFQUNOLDBCQUEyRCxFQUMzRCx5QkFBZ0M7UUFFaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEQsTUFBTSxDQUFDLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLDBCQUEwQixFQUFFLFlBQVksQ0FBQyxHQUNyRixNQUFNLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLEVBQUUsMEJBQTBCLEVBQUUseUJBQXlCLENBQUMsQ0FBQyxLQUFLO1FBQ3BHLHdGQUF3RjtRQUN4RixLQUFLLEVBQUMsR0FBRyxFQUFDLEVBQUU7WUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QyxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FDRixDQUFDO1FBQ0osRUFBRSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUMvRCxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDMUYsQ0FBQztDQUNGIn0=
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type ProcessedTx, Tx } from '@aztec/circuit-types';
|
|
2
2
|
import { type AztecAddress, type EthAddress, Fr, type GlobalVariables } from '@aztec/circuits.js';
|
|
3
|
+
import { type Logger } from '@aztec/foundation/log';
|
|
3
4
|
import { type ContractDataSource } from '@aztec/types/contracts';
|
|
4
5
|
/** A source of what nullifiers have been committed to the state trees */
|
|
5
6
|
export interface NullifierSource {
|
|
@@ -16,7 +17,7 @@ type FeeValidationConfig = {
|
|
|
16
17
|
};
|
|
17
18
|
export declare class TxValidator {
|
|
18
19
|
#private;
|
|
19
|
-
constructor(nullifierSource: NullifierSource, publicStateSource: PublicStateSource, contractDataSource: ContractDataSource, globalVariables: GlobalVariables, feeValidationConfig: FeeValidationConfig, log?:
|
|
20
|
+
constructor(nullifierSource: NullifierSource, publicStateSource: PublicStateSource, contractDataSource: ContractDataSource, globalVariables: GlobalVariables, feeValidationConfig: FeeValidationConfig, log?: Logger);
|
|
20
21
|
/**
|
|
21
22
|
* Validates a list of transactions.
|
|
22
23
|
* @param txs - The transactions to validate.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_validator.d.ts","sourceRoot":"","sources":["../../src/sequencer/tx_validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,EAAE,EACF,KAAK,eAAe,EAErB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"tx_validator.d.ts","sourceRoot":"","sources":["../../src/sequencer/tx_validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,EAAE,EACF,KAAK,eAAe,EAErB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,MAAM,EAAqB,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAIjE,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACnE;AAED,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;CACvE;AAaD,KAAK,mBAAmB,GAAG;IACzB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,gCAAgC,EAAE,EAAE,EAAE,CAAC;IACvC,kCAAkC,EAAE,YAAY,EAAE,CAAC;CACpD,CAAC;AAEF,qBAAa,WAAW;;gBASpB,eAAe,EAAE,eAAe,EAChC,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,eAAe,EAChC,mBAAmB,EAAE,mBAAmB,EACxC,GAAG,SAAoD;IAUzD;;;;OAIG;IACU,WAAW,CAAC,CAAC,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;CAiM1G"}
|
|
@@ -86,9 +86,7 @@ _a = TxValidator, _TxValidator_log = new WeakMap(), _TxValidator_globalVariables
|
|
|
86
86
|
* @returns Whether this is a problematic double spend that the L1 contract would reject.
|
|
87
87
|
*/
|
|
88
88
|
async function _TxValidator_validateNullifiers(tx, thisBlockNullifiers) {
|
|
89
|
-
const newNullifiers =
|
|
90
|
-
.filter(x => !x.isEmpty())
|
|
91
|
-
.map(x => x.value.toBigInt());
|
|
89
|
+
const newNullifiers = tx.data.getNonEmptyNullifiers().map(x => x.toBigInt());
|
|
92
90
|
// Ditch this tx if it has repeated nullifiers
|
|
93
91
|
const uniqueNullifiers = new Set(newNullifiers);
|
|
94
92
|
if (uniqueNullifiers.size !== newNullifiers.length) {
|
|
@@ -110,7 +108,7 @@ async function _TxValidator_validateNullifiers(tx, thisBlockNullifiers) {
|
|
|
110
108
|
}
|
|
111
109
|
return VALID_TX;
|
|
112
110
|
}, _TxValidator_validateGasBalance = async function _TxValidator_validateGasBalance(tx) {
|
|
113
|
-
if (!tx.data.needsTeardown) {
|
|
111
|
+
if (!tx.data.forPublic || !tx.data.forPublic.needsTeardown) {
|
|
114
112
|
return VALID_TX;
|
|
115
113
|
}
|
|
116
114
|
const teardownFn = __classPrivateFieldGet(_a, _a, "m", _TxValidator_extractFeeExecutionCall).call(_a, tx);
|
|
@@ -125,7 +123,10 @@ async function _TxValidator_validateNullifiers(tx, thisBlockNullifiers) {
|
|
|
125
123
|
}
|
|
126
124
|
return VALID_TX;
|
|
127
125
|
}, _TxValidator_validateMaxBlockNumber = function _TxValidator_validateMaxBlockNumber(tx) {
|
|
128
|
-
const
|
|
126
|
+
const target = tx instanceof Tx
|
|
127
|
+
? tx.data.forRollup?.rollupValidationRequests || tx.data.forPublic.validationRequests.forRollup
|
|
128
|
+
: tx.data.rollupValidationRequests;
|
|
129
|
+
const maxBlockNumber = target.maxBlockNumber;
|
|
129
130
|
if (maxBlockNumber.isSome && maxBlockNumber.value < __classPrivateFieldGet(this, _TxValidator_globalVariables, "f").blockNumber) {
|
|
130
131
|
__classPrivateFieldGet(this, _TxValidator_log, "f").warn(`Rejecting tx ${Tx.getHash(tx)} for low max block number`);
|
|
131
132
|
return INVALID_TX;
|
|
@@ -134,7 +135,7 @@ async function _TxValidator_validateNullifiers(tx, thisBlockNullifiers) {
|
|
|
134
135
|
return VALID_TX;
|
|
135
136
|
}
|
|
136
137
|
}, _TxValidator_validateFee = async function _TxValidator_validateFee(tx) {
|
|
137
|
-
if (!tx.data.needsTeardown) {
|
|
138
|
+
if (!tx.data.forPublic || !tx.data.forPublic.needsTeardown) {
|
|
138
139
|
// TODO check if fees are mandatory and reject this tx
|
|
139
140
|
__classPrivateFieldGet(this, _TxValidator_log, "f").debug(`Tx ${Tx.getHash(tx)} doesn't pay for gas`);
|
|
140
141
|
return VALID_TX;
|
|
@@ -170,4 +171,4 @@ async function _TxValidator_validateNullifiers(tx, thisBlockNullifiers) {
|
|
|
170
171
|
[PublicKernelPhase.TEARDOWN]: [teardownFn], } = AbstractPhaseManager.extractEnqueuedPublicCallsByPhase(tx.data, tx.enqueuedPublicFunctionCalls);
|
|
171
172
|
return teardownFn;
|
|
172
173
|
};
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci90eF92YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQW9CLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVELE9BQU8sRUFHTCxFQUFFLEdBR0gsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFZdEYsbUVBQW1FO0FBQ25FLHVEQUF1RDtBQUN2RCwwRUFBMEU7QUFDMUUsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQ3BDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUl4QyxzREFBc0Q7QUFDdEQsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQVExQyxNQUFNLE9BQU8sV0FBVztJQVF0QixZQUNFLGVBQWdDLEVBQ2hDLGlCQUFvQyxFQUNwQyxrQkFBc0MsRUFDdEMsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLEdBQUcsR0FBRyxpQkFBaUIsQ0FBQyw4QkFBOEIsQ0FBQzs7UUFiekQsbUNBQWE7UUFDYiwrQ0FBa0M7UUFDbEMsK0NBQWtDO1FBQ2xDLGlEQUFzQztRQUN0QyxrREFBd0M7UUFDeEMsbURBQTBDO1FBVXhDLHVCQUFBLElBQUksZ0NBQW9CLGVBQWUsTUFBQSxDQUFDO1FBQ3hDLHVCQUFBLElBQUksa0NBQXNCLGlCQUFpQixNQUFBLENBQUM7UUFDNUMsdUJBQUEs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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/sequencer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAG/C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/sequencer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAG/C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAsBpD"}
|
package/dest/sequencer/utils.js
CHANGED
|
@@ -5,13 +5,14 @@ import { CallRequest } from '@aztec/circuits.js';
|
|
|
5
5
|
* @returns The highest side effect counter in the transaction so far
|
|
6
6
|
*/
|
|
7
7
|
export function lastSideEffectCounter(tx) {
|
|
8
|
+
const data = tx.data.forPublic;
|
|
8
9
|
const sideEffectCounters = [
|
|
9
|
-
...
|
|
10
|
-
...
|
|
11
|
-
...
|
|
12
|
-
...
|
|
13
|
-
...
|
|
14
|
-
...
|
|
10
|
+
...data.endNonRevertibleData.newNoteHashes,
|
|
11
|
+
...data.endNonRevertibleData.newNullifiers,
|
|
12
|
+
...data.endNonRevertibleData.publicCallStack,
|
|
13
|
+
...data.end.newNoteHashes,
|
|
14
|
+
...data.end.newNullifiers,
|
|
15
|
+
...data.end.publicCallStack,
|
|
15
16
|
];
|
|
16
17
|
let max = 0;
|
|
17
18
|
for (const sideEffect of sideEffectCounters) {
|
|
@@ -25,4 +26,4 @@ export function lastSideEffectCounter(tx) {
|
|
|
25
26
|
}
|
|
26
27
|
return max;
|
|
27
28
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VyL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFDLEVBQU07SUFDMUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFVLENBQUM7SUFDaEMsTUFBTSxrQkFBa0IsR0FBRztRQUN6QixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhO1FBQzFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWE7UUFDMUMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZTtRQUM1QyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYTtRQUN6QixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYTtRQUN6QixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZTtLQUM1QixDQUFDO0lBRUYsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ1osS0FBSyxNQUFNLFVBQVUsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQzVDLElBQUksVUFBVSxZQUFZLFdBQVcsRUFBRSxDQUFDO1lBQ3RDLGtHQUFrRztZQUNsRyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsRUFBRSxFQUFFLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2hILENBQUM7YUFBTSxDQUFDO1lBQ04sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyJ9
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, type PublicKernelTailCircuitPrivateInputs } from '@aztec/circuits.js';
|
|
1
|
+
import { type KernelCircuitPublicInputs, type PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, type PublicKernelTailCircuitPrivateInputs } from '@aztec/circuits.js';
|
|
2
2
|
/**
|
|
3
3
|
* Circuit simulator for the public kernel circuits.
|
|
4
4
|
*/
|
|
@@ -26,6 +26,6 @@ export interface PublicKernelCircuitSimulator {
|
|
|
26
26
|
* @param inputs - Inputs to the circuit.
|
|
27
27
|
* @returns The public inputs as outputs of the simulation.
|
|
28
28
|
*/
|
|
29
|
-
publicKernelCircuitTail(inputs: PublicKernelTailCircuitPrivateInputs): Promise<
|
|
29
|
+
publicKernelCircuitTail(inputs: PublicKernelTailCircuitPrivateInputs): Promise<KernelCircuitPublicInputs>;
|
|
30
30
|
}
|
|
31
31
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/simulator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EAC1C,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,wBAAwB,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC7G;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAChH;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAChH;;;;OAIG;IACH,uBAAuB,CAAC,MAAM,EAAE,oCAAoC,GAAG,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/simulator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EAC1C,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,wBAAwB,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC7G;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAChH;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,gCAAgC,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAChH;;;;OAIG;IACH,uBAAuB,CAAC,MAAM,EAAE,oCAAoC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;CAC3G"}
|
|
@@ -23,11 +23,11 @@ export class ContractsDataSourcePublicDB {
|
|
|
23
23
|
// Extract contract class and instance data from logs and add to cache for this block
|
|
24
24
|
const logs = tx.unencryptedLogs.unrollLogs();
|
|
25
25
|
ContractClassRegisteredEvent.fromLogs(logs, getCanonicalClassRegistererAddress()).forEach(e => {
|
|
26
|
-
this.log(`Adding class ${e.contractClassId.toString()} to public execution contract cache`);
|
|
26
|
+
this.log.debug(`Adding class ${e.contractClassId.toString()} to public execution contract cache`);
|
|
27
27
|
this.classCache.set(e.contractClassId.toString(), e.toContractClassPublic());
|
|
28
28
|
});
|
|
29
29
|
ContractInstanceDeployedEvent.fromLogs(logs).forEach(e => {
|
|
30
|
-
this.log(`Adding instance ${e.address.toString()} with class ${e.contractClassId.toString()} to public execution contract cache`);
|
|
30
|
+
this.log.debug(`Adding instance ${e.address.toString()} with class ${e.contractClassId.toString()} to public execution contract cache`);
|
|
31
31
|
this.instanceCache.set(e.address.toString(), e.toContractInstance());
|
|
32
32
|
});
|
|
33
33
|
return Promise.resolve();
|
|
@@ -195,4 +195,4 @@ export class WorldStateDB {
|
|
|
195
195
|
return await this.db.findLeafIndex(MerkleTreeId.NULLIFIER_TREE, nullifier.toBuffer());
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2V4ZWN1dG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NpbXVsYXRvci9wdWJsaWNfZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSwwQkFBMEIsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3pGLE9BQU8sRUFFTCw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBRTdCLEVBQUUsR0FNSCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2hHLE9BQU8sRUFFTCx1QkFBdUIsR0FHeEIsTUFBTSxrQkFBa0IsQ0FBQztBQVExQjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sMkJBQTJCO0lBTXRDLFlBQW9CLEVBQXNCO1FBQXRCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBTGxDLGtCQUFhLEdBQUcsSUFBSSxHQUFHLEVBQXVDLENBQUM7UUFDL0QsZUFBVSxHQUFHLElBQUksR0FBRyxFQUErQixDQUFDO1FBRXBELFFBQUcsR0FBRyxpQkFBaUIsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0lBRTVCLENBQUM7SUFFOUM7OztPQUdHO0lBQ0ksZUFBZSxDQUFDLEVBQU07UUFDM0IscUZBQXFGO1FBQ3JGLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsNEJBQTRCLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxrQ0FBa0MsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzVGLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMs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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, type PublicKernelTailCircuitPrivateInputs } from '@aztec/circuits.js';
|
|
1
|
+
import { type KernelCircuitPublicInputs, type PublicKernelCircuitPrivateInputs, type PublicKernelCircuitPublicInputs, type PublicKernelTailCircuitPrivateInputs } from '@aztec/circuits.js';
|
|
2
2
|
import { type SimulationProvider } from '@aztec/simulator';
|
|
3
3
|
import { type PublicKernelCircuitSimulator } from './index.js';
|
|
4
4
|
/**
|
|
@@ -32,6 +32,6 @@ export declare class RealPublicKernelCircuitSimulator implements PublicKernelCir
|
|
|
32
32
|
* @param input - Inputs to the circuit.
|
|
33
33
|
* @returns The public inputs as outputs of the simulation.
|
|
34
34
|
*/
|
|
35
|
-
publicKernelCircuitTail(input: PublicKernelTailCircuitPrivateInputs): Promise<
|
|
35
|
+
publicKernelCircuitTail(input: PublicKernelTailCircuitPrivateInputs): Promise<KernelCircuitPublicInputs>;
|
|
36
36
|
}
|
|
37
37
|
//# sourceMappingURL=public_kernel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_kernel.d.ts","sourceRoot":"","sources":["../../src/simulator/public_kernel.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EAC1C,MAAM,oBAAoB,CAAC;AAiB5B,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D;;GAEG;AACH,qBAAa,gCAAiC,YAAW,4BAA4B;IAMvE,OAAO,CAAC,SAAS;IAL7B,OAAO,CAAC,GAAG,CAAsD;IAGjE,OAAO,CAAC,aAAa,CAAsC;gBAEvC,SAAS,EAAE,kBAAkB;IAEjD;;;;OAIG;IACU,wBAAwB,CACnC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,2BAA2B,CACtC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,2BAA2B,CACtC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,uBAAuB,CAClC,KAAK,EAAE,oCAAoC,GAC1C,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"public_kernel.d.ts","sourceRoot":"","sources":["../../src/simulator/public_kernel.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EAC1C,MAAM,oBAAoB,CAAC;AAiB5B,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D;;GAEG;AACH,qBAAa,gCAAiC,YAAW,4BAA4B;IAMvE,OAAO,CAAC,SAAS;IAL7B,OAAO,CAAC,GAAG,CAAsD;IAGjE,OAAO,CAAC,aAAa,CAAsC;gBAEvC,SAAS,EAAE,kBAAkB;IAEjD;;;;OAIG;IACU,wBAAwB,CACnC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,2BAA2B,CACtC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,2BAA2B,CACtC,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,+BAA+B,CAAC;IAmB3C;;;;OAIG;IACU,uBAAuB,CAClC,KAAK,EAAE,oCAAoC,GAC1C,OAAO,CAAC,yBAAyB,CAAC;CAetC"}
|
|
@@ -24,7 +24,7 @@ export class RealPublicKernelCircuitSimulator {
|
|
|
24
24
|
const inputWitness = convertPublicSetupRollupInputsToWitnessMap(input);
|
|
25
25
|
const [duration, witness] = await elapsed(() => this.wasmSimulator.simulateCircuit(inputWitness, PublicKernelSetupArtifact));
|
|
26
26
|
const result = convertPublicSetupRollupOutputFromWitnessMap(witness);
|
|
27
|
-
this.log(`Simulated public kernel setup circuit`, {
|
|
27
|
+
this.log.debug(`Simulated public kernel setup circuit`, {
|
|
28
28
|
eventName: 'circuit-simulation',
|
|
29
29
|
circuitName: 'public-kernel-setup',
|
|
30
30
|
duration,
|
|
@@ -45,7 +45,7 @@ export class RealPublicKernelCircuitSimulator {
|
|
|
45
45
|
const inputWitness = convertPublicInnerRollupInputsToWitnessMap(input);
|
|
46
46
|
const [duration, witness] = await elapsed(() => this.wasmSimulator.simulateCircuit(inputWitness, PublicKernelAppLogicArtifact));
|
|
47
47
|
const result = convertPublicInnerRollupOutputFromWitnessMap(witness);
|
|
48
|
-
this.log(`Simulated public kernel app logic circuit`, {
|
|
48
|
+
this.log.debug(`Simulated public kernel app logic circuit`, {
|
|
49
49
|
eventName: 'circuit-simulation',
|
|
50
50
|
circuitName: 'public-kernel-app-logic',
|
|
51
51
|
duration,
|
|
@@ -66,7 +66,7 @@ export class RealPublicKernelCircuitSimulator {
|
|
|
66
66
|
const inputWitness = convertPublicTeardownRollupInputsToWitnessMap(input);
|
|
67
67
|
const [duration, witness] = await elapsed(() => this.wasmSimulator.simulateCircuit(inputWitness, PublicKernelTeardownArtifact));
|
|
68
68
|
const result = convertPublicTeardownRollupOutputFromWitnessMap(witness);
|
|
69
|
-
this.log(`Simulated public kernel teardown circuit`, {
|
|
69
|
+
this.log.debug(`Simulated public kernel teardown circuit`, {
|
|
70
70
|
eventName: 'circuit-simulation',
|
|
71
71
|
circuitName: 'public-kernel-teardown',
|
|
72
72
|
duration,
|
|
@@ -84,7 +84,7 @@ export class RealPublicKernelCircuitSimulator {
|
|
|
84
84
|
const inputWitness = convertPublicTailInputsToWitnessMap(input);
|
|
85
85
|
const [duration, witness] = await elapsed(() => this.wasmSimulator.simulateCircuit(inputWitness, PublicKernelTailArtifact));
|
|
86
86
|
const result = convertPublicTailOutputFromWitnessMap(witness);
|
|
87
|
-
this.log(`Simulated public kernel tail circuit`, {
|
|
87
|
+
this.log.debug(`Simulated public kernel tail circuit`, {
|
|
88
88
|
eventName: 'circuit-simulation',
|
|
89
89
|
circuitName: 'public-kernel-tail',
|
|
90
90
|
duration,
|
|
@@ -94,4 +94,4 @@ export class RealPublicKernelCircuitSimulator {
|
|
|
94
94
|
return result;
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2tlcm5lbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaW11bGF0b3IvcHVibGljX2tlcm5lbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEQsT0FBTyxFQUNMLDRCQUE0QixFQUM1Qix5QkFBeUIsRUFDekIsd0JBQXdCLEVBQ3hCLDRCQUE0QixFQUM1QiwwQ0FBMEMsRUFDMUMsNENBQTRDLEVBQzVDLDBDQUEwQyxFQUMxQyw0Q0FBNEMsRUFDNUMsbUNBQW1DLEVBQ25DLHFDQUFxQyxFQUNyQyw2Q0FBNkMsRUFDN0MsK0NBQStDLEdBQ2hELE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUEyQixhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUkxRTs7R0FFRztBQUNILE1BQU0sT0FBTyxnQ0FBZ0M7SUFNM0MsWUFBb0IsU0FBNkI7UUFBN0IsY0FBUyxHQUFULFNBQVMsQ0FBb0I7UUFMekMsUUFBRyxHQUFHLGlCQUFpQixDQUFDLCtCQUErQixDQUFDLENBQUM7UUFFakUsc0RBQXNEO1FBQzlDLGtCQUFhLEdBQWtCLElBQUksYUFBYSxFQUFFLENBQUM7SUFFUCxDQUFDO0lBRXJEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsd0JBQXdCLENBQ25DLEtBQXVDO1FBRXZDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7UUFDbkUsQ0FBQztRQUNELE1BQU0sWUFBWSxHQUFHLDBDQUEwQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSx5QkFBeUIsQ0FBQyxDQUM1RSxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcsNENBQTRDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsdUNBQXVDLEVBQUU7WUFDdEQsU0FBUyxFQUFFLG9CQUFvQjtZQUMvQixXQUFXLEVBQUUscUJBQXFCO1lBQ2xDLFFBQVE7WUFDUixTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU07WUFDbEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNO1NBQ0osQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLDJCQUEyQixDQUN0QyxLQUF1QztRQUV2QyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7UUFDRCxNQUFNLFlBQVksR0FBRywwQ0FBMEMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2RSxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUM3QyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsNEJBQTRCLENBQUMsQ0FDL0UsQ0FBQztRQUNGLE1BQU0sTUFBTSxHQUFHLDRDQUE0QyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLDJDQUEyQyxFQUFFO1lBQzFELFNBQVMsRUFBRSxvQkFBb0I7WUFDL0IsV0FBVyxFQUFFLHlCQUF5QjtZQUN0QyxRQUFRO1lBQ1IsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNO1lBQ2xDLFVBQVUsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTTtTQUNKLENBQUMsQ0FBQztRQUNwQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQywyQkFBMkIsQ0FDdEMsS0FBdUM7UUFFdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztRQUN0RSxDQUFDO1FBQ0QsTUFBTSxZQUFZLEdBQUcsNkNBQTZDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLDRCQUE0QixDQUFDLENBQy9FLENBQUM7UUFDRixNQUFNLE1BQU0sR0FBRywrQ0FBK0MsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsRUFBRTtZQUN6RCxTQUFTLEVBQUUsb0JBQW9CO1lBQy9CLFdBQVcsRUFBRSx3QkFBd0I7WUFDckMsUUFBUTtZQUNSLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTTtZQUNsQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU07U0FDSixDQUFDLENBQUM7UUFDcEMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsdUJBQXVCLENBQ2xDLEtBQTJDO1FBRTNDLE1BQU0sWUFBWSxHQUFHLG1DQUFtQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxDQUMzRSxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcscUNBQXFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsc0NBQXNDLEVBQUU7WUFDckQsU0FBUyxFQUFFLG9CQUFvQjtZQUMvQixXQUFXLEVBQUUsb0JBQW9CO1lBQ2pDLFFBQVE7WUFDUixTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU07WUFDbEMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNO1NBQ0osQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRiJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/sequencer-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": "./dest/index.js",
|
|
6
6
|
"typedocOptions": {
|
|
@@ -10,29 +10,32 @@
|
|
|
10
10
|
"name": "Sequencer Client",
|
|
11
11
|
"tsconfig": "./tsconfig.json"
|
|
12
12
|
},
|
|
13
|
+
"inherits": [
|
|
14
|
+
"../package.common.json"
|
|
15
|
+
],
|
|
13
16
|
"scripts": {
|
|
14
17
|
"build": "yarn clean && tsc -b",
|
|
15
18
|
"build:dev": "tsc -b --watch",
|
|
16
19
|
"clean": "rm -rf ./dest .tsbuildinfo",
|
|
17
20
|
"formatting": "run -T prettier --check ./src && run -T eslint ./src",
|
|
18
21
|
"formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
|
|
19
|
-
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules
|
|
22
|
+
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests",
|
|
20
23
|
"test:integration": "concurrently -k -s first -c reset,dim -n test,anvil \"yarn test:integration:run\" \"anvil\"",
|
|
21
24
|
"test:integration:run": "NODE_NO_WARNINGS=1 node --experimental-vm-modules $(yarn bin jest) --no-cache --config jest.integration.config.json"
|
|
22
25
|
},
|
|
23
26
|
"dependencies": {
|
|
24
|
-
"@aztec/circuit-types": "0.
|
|
25
|
-
"@aztec/circuits.js": "0.
|
|
26
|
-
"@aztec/ethereum": "0.
|
|
27
|
-
"@aztec/foundation": "0.
|
|
28
|
-
"@aztec/l1-artifacts": "0.
|
|
29
|
-
"@aztec/merkle-tree": "0.
|
|
30
|
-
"@aztec/noir-protocol-circuits-types": "0.
|
|
31
|
-
"@aztec/p2p": "0.
|
|
32
|
-
"@aztec/protocol-contracts": "0.
|
|
33
|
-
"@aztec/simulator": "0.
|
|
34
|
-
"@aztec/types": "0.
|
|
35
|
-
"@aztec/world-state": "0.
|
|
27
|
+
"@aztec/circuit-types": "0.34.0",
|
|
28
|
+
"@aztec/circuits.js": "0.34.0",
|
|
29
|
+
"@aztec/ethereum": "0.34.0",
|
|
30
|
+
"@aztec/foundation": "0.34.0",
|
|
31
|
+
"@aztec/l1-artifacts": "0.34.0",
|
|
32
|
+
"@aztec/merkle-tree": "0.34.0",
|
|
33
|
+
"@aztec/noir-protocol-circuits-types": "0.34.0",
|
|
34
|
+
"@aztec/p2p": "0.34.0",
|
|
35
|
+
"@aztec/protocol-contracts": "0.34.0",
|
|
36
|
+
"@aztec/simulator": "0.34.0",
|
|
37
|
+
"@aztec/types": "0.34.0",
|
|
38
|
+
"@aztec/world-state": "0.34.0",
|
|
36
39
|
"@noir-lang/acvm_js": "portal:../../noir/packages/acvm_js",
|
|
37
40
|
"@noir-lang/types": "portal:../../noir/packages/types",
|
|
38
41
|
"lodash.chunk": "^4.2.0",
|
|
@@ -56,7 +59,6 @@
|
|
|
56
59
|
"levelup": "^5.1.1",
|
|
57
60
|
"memdown": "^6.1.1",
|
|
58
61
|
"prettier": "^2.8.7",
|
|
59
|
-
"ts-jest": "^29.1.0",
|
|
60
62
|
"ts-node": "^10.9.1",
|
|
61
63
|
"typescript": "^5.0.4"
|
|
62
64
|
},
|
|
@@ -68,5 +70,20 @@
|
|
|
68
70
|
"types": "./dest/index.d.ts",
|
|
69
71
|
"engines": {
|
|
70
72
|
"node": ">=18"
|
|
73
|
+
},
|
|
74
|
+
"jest": {
|
|
75
|
+
"extensionsToTreatAsEsm": [
|
|
76
|
+
".ts"
|
|
77
|
+
],
|
|
78
|
+
"transform": {
|
|
79
|
+
"^.+\\.tsx?$": [
|
|
80
|
+
"@swc/jest"
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
"moduleNameMapper": {
|
|
84
|
+
"^(\\.{1,2}/.*)\\.[cm]?js$": "$1"
|
|
85
|
+
},
|
|
86
|
+
"testRegex": "./src/.*\\.test\\.(js|mjs|ts)$",
|
|
87
|
+
"rootDir": "./src"
|
|
71
88
|
}
|
|
72
89
|
}
|
|
@@ -86,7 +86,7 @@ export class SimpleTestGlobalVariableBuilder implements GlobalVariableBuilder {
|
|
|
86
86
|
lastTimestamp = new Fr(lastTimestamp.value + 1n);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
this.log(
|
|
89
|
+
this.log.debug(
|
|
90
90
|
`Built global variables for block ${blockNumber}: (${chainId}, ${version}, ${blockNumber}, ${lastTimestamp}, ${coinbase}, ${feeRecipient})`,
|
|
91
91
|
);
|
|
92
92
|
|
|
@@ -122,7 +122,7 @@ export class L1Publisher implements L2BlockReceiver {
|
|
|
122
122
|
// TODO(#4148) Remove this block number check, it's here because we don't currently have proper genesis state on the contract
|
|
123
123
|
const lastArchive = block.header.lastArchive.root.toBuffer();
|
|
124
124
|
if (block.number != 1 && !(await this.checkLastArchiveHash(lastArchive))) {
|
|
125
|
-
this.log(`Detected different last archive prior to publishing a block, aborting publish...`);
|
|
125
|
+
this.log.info(`Detected different last archive prior to publishing a block, aborting publish...`);
|
|
126
126
|
return false;
|
|
127
127
|
}
|
|
128
128
|
|
|
@@ -131,7 +131,7 @@ export class L1Publisher implements L2BlockReceiver {
|
|
|
131
131
|
// Publish block transaction effects
|
|
132
132
|
while (!this.interrupted) {
|
|
133
133
|
if (await this.txSender.checkIfTxsAreAvailable(block)) {
|
|
134
|
-
this.log(`Transaction effects of a block ${block.number} already published.`);
|
|
134
|
+
this.log.verbose(`Transaction effects of a block ${block.number} already published.`);
|
|
135
135
|
break;
|
|
136
136
|
}
|
|
137
137
|
|
|
@@ -151,14 +151,14 @@ export class L1Publisher implements L2BlockReceiver {
|
|
|
151
151
|
// txsEffectsHash from IAvailabilityOracle.TxsPublished event
|
|
152
152
|
txsEffectsHash = receipt.logs[0].data;
|
|
153
153
|
} else {
|
|
154
|
-
this.log(`Expected 1 log, got ${receipt.logs.length}`);
|
|
154
|
+
this.log.warn(`Expected 1 log, got ${receipt.logs.length}`);
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
this.log.info(`Block txs effects published, txsEffectsHash: ${txsEffectsHash}`);
|
|
158
158
|
break;
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
this.log(`AvailabilityOracle.publish tx status failed: ${receipt.transactionHash}`);
|
|
161
|
+
this.log.error(`AvailabilityOracle.publish tx status failed: ${receipt.transactionHash}`);
|
|
162
162
|
await this.sleepOrInterrupted();
|
|
163
163
|
}
|
|
164
164
|
|
|
@@ -196,15 +196,15 @@ export class L1Publisher implements L2BlockReceiver {
|
|
|
196
196
|
|
|
197
197
|
// Check if someone else incremented the block number
|
|
198
198
|
if (!(await this.checkLastArchiveHash(lastArchive))) {
|
|
199
|
-
this.log('Publish failed. Detected different last archive hash.');
|
|
199
|
+
this.log.warn('Publish failed. Detected different last archive hash.');
|
|
200
200
|
break;
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
this.log(`Rollup.process tx status failed: ${receipt.transactionHash}`);
|
|
203
|
+
this.log.error(`Rollup.process tx status failed: ${receipt.transactionHash}`);
|
|
204
204
|
await this.sleepOrInterrupted();
|
|
205
205
|
}
|
|
206
206
|
|
|
207
|
-
this.log('L2 block data syncing interrupted while processing blocks.');
|
|
207
|
+
this.log.verbose('L2 block data syncing interrupted while processing blocks.');
|
|
208
208
|
return false;
|
|
209
209
|
}
|
|
210
210
|
|
|
@@ -233,8 +233,8 @@ export class L1Publisher implements L2BlockReceiver {
|
|
|
233
233
|
const fromChain = await this.txSender.getCurrentArchive();
|
|
234
234
|
const areSame = lastArchive.equals(fromChain);
|
|
235
235
|
if (!areSame) {
|
|
236
|
-
this.log(`
|
|
237
|
-
this.log(`
|
|
236
|
+
this.log.debug(`Contract archive: ${fromChain.toString('hex')}`);
|
|
237
|
+
this.log.debug(`New block last archive: ${lastArchive.toString('hex')}`);
|
|
238
238
|
}
|
|
239
239
|
return areSame;
|
|
240
240
|
}
|