@aztec/archiver 0.30.1 → 0.32.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/archiver/archiver.d.ts +7 -9
- package/dest/archiver/archiver.d.ts.map +1 -1
- package/dest/archiver/archiver.js +51 -22
- package/dest/archiver/archiver_store.d.ts +16 -11
- package/dest/archiver/archiver_store.d.ts.map +1 -1
- package/dest/archiver/archiver_store_test_suite.d.ts.map +1 -1
- package/dest/archiver/archiver_store_test_suite.js +51 -15
- package/dest/archiver/data_retrieval.js +6 -6
- package/dest/archiver/eth_log_handlers.d.ts +7 -7
- package/dest/archiver/eth_log_handlers.d.ts.map +1 -1
- package/dest/archiver/eth_log_handlers.js +11 -11
- package/dest/archiver/kv_archiver_store/block_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/block_store.js +3 -2
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts +3 -4
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/contract_class_store.js +64 -13
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +9 -7
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/kv_archiver_store.js +11 -9
- package/dest/archiver/kv_archiver_store/log_store.d.ts +3 -3
- package/dest/archiver/kv_archiver_store/log_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/log_store.js +7 -5
- package/dest/archiver/kv_archiver_store/message_store.d.ts +3 -2
- package/dest/archiver/kv_archiver_store/message_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/message_store.js +10 -6
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts +4 -4
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts.map +1 -1
- package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.js +11 -8
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts +11 -7
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts.map +1 -1
- package/dest/archiver/memory_archiver_store/memory_archiver_store.js +34 -11
- package/dest/rpc/archiver_client.d.ts.map +1 -1
- package/dest/rpc/archiver_client.js +4 -3
- package/dest/rpc/archiver_server.d.ts.map +1 -1
- package/dest/rpc/archiver_server.js +4 -3
- package/package.json +11 -9
- package/src/archiver/archiver.ts +80 -23
- package/src/archiver/archiver_store.ts +33 -11
- package/src/archiver/archiver_store_test_suite.ts +65 -18
- package/src/archiver/data_retrieval.ts +6 -6
- package/src/archiver/eth_log_handlers.ts +13 -13
- package/src/archiver/kv_archiver_store/block_store.ts +9 -1
- package/src/archiver/kv_archiver_store/contract_class_store.ts +106 -18
- package/src/archiver/kv_archiver_store/kv_archiver_store.ts +31 -12
- package/src/archiver/kv_archiver_store/log_store.ts +23 -10
- package/src/archiver/kv_archiver_store/message_store.ts +10 -5
- package/src/archiver/memory_archiver_store/l1_to_l2_message_store.ts +10 -7
- package/src/archiver/memory_archiver_store/memory_archiver_store.ts +66 -15
- package/src/rpc/archiver_client.ts +5 -3
- package/src/rpc/archiver_server.ts +4 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GetUnencryptedLogsResponse, L1ToL2MessageSource, L2Block, L2BlockL2Logs, L2BlockSource, L2LogsSource, LogFilter, LogType, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
1
|
+
import { FromLogType, GetUnencryptedLogsResponse, L1ToL2MessageSource, L2Block, L2BlockL2Logs, L2BlockSource, L2LogsSource, LogFilter, LogType, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
2
|
import { FunctionSelector } from '@aztec/circuits.js';
|
|
3
3
|
import { AztecAddress } from '@aztec/foundation/aztec-address';
|
|
4
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
@@ -30,10 +30,6 @@ export declare class Archiver implements ArchiveSource {
|
|
|
30
30
|
* A promise in which we will be continually fetching new L2 blocks.
|
|
31
31
|
*/
|
|
32
32
|
private runningPromise?;
|
|
33
|
-
/**
|
|
34
|
-
* Use this to track logged block in order to avoid repeating the same message.
|
|
35
|
-
*/
|
|
36
|
-
private lastLoggedL1BlockNumber;
|
|
37
33
|
/**
|
|
38
34
|
* Creates a new instance of the Archiver.
|
|
39
35
|
* @param publicClient - A client for interacting with the Ethereum node.
|
|
@@ -59,7 +55,7 @@ export declare class Archiver implements ArchiveSource {
|
|
|
59
55
|
*/
|
|
60
56
|
start(blockUntilSynced: boolean): Promise<void>;
|
|
61
57
|
/**
|
|
62
|
-
* Fetches
|
|
58
|
+
* Fetches logs from L1 contracts and processes them.
|
|
63
59
|
* @param blockUntilSynced - If true, blocks until the archiver has fully synced.
|
|
64
60
|
*/
|
|
65
61
|
private sync;
|
|
@@ -73,6 +69,7 @@ export declare class Archiver implements ArchiveSource {
|
|
|
73
69
|
* @param allLogs - All logs emitted in a bunch of blocks.
|
|
74
70
|
*/
|
|
75
71
|
private storeDeployedContractInstances;
|
|
72
|
+
private storeBroadcastedIndividualFunctions;
|
|
76
73
|
/**
|
|
77
74
|
* Stops the archiver.
|
|
78
75
|
* @returns A promise signalling completion of the stop process.
|
|
@@ -109,7 +106,7 @@ export declare class Archiver implements ArchiveSource {
|
|
|
109
106
|
* @param logType - Specifies whether to return encrypted or unencrypted logs.
|
|
110
107
|
* @returns The requested logs.
|
|
111
108
|
*/
|
|
112
|
-
getLogs(from: number, limit: number, logType:
|
|
109
|
+
getLogs<TLogType extends LogType>(from: number, limit: number, logType: TLogType): Promise<L2BlockL2Logs<FromLogType<TLogType>>[]>;
|
|
113
110
|
/**
|
|
114
111
|
* Gets unencrypted logs based on the provided filter.
|
|
115
112
|
* @param filter - The filter to apply to the logs.
|
|
@@ -130,11 +127,12 @@ export declare class Archiver implements ArchiveSource {
|
|
|
130
127
|
*/
|
|
131
128
|
getL1ToL2Messages(blockNumber: bigint): Promise<Fr[]>;
|
|
132
129
|
/**
|
|
133
|
-
* Gets the L1 to L2 message index in the L1 to L2 message tree
|
|
130
|
+
* Gets the first L1 to L2 message index in the L1 to L2 message tree which is greater than or equal to `startIndex`.
|
|
134
131
|
* @param l1ToL2Message - The L1 to L2 message.
|
|
132
|
+
* @param startIndex - The index to start searching from.
|
|
135
133
|
* @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
|
|
136
134
|
*/
|
|
137
|
-
getL1ToL2MessageIndex(l1ToL2Message: Fr): Promise<bigint | undefined>;
|
|
135
|
+
getL1ToL2MessageIndex(l1ToL2Message: Fr, startIndex: bigint): Promise<bigint | undefined>;
|
|
138
136
|
getContractClassIds(): Promise<Fr[]>;
|
|
139
137
|
}
|
|
140
138
|
//# sourceMappingURL=archiver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,OAAO,EACP,aAAa,EACb,aAAa,EACb,YAAY,EACZ,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAgC,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,OAAO,EACP,aAAa,EACb,aAAa,EACb,YAAY,EACZ,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAgC,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AASpF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAqB,MAAM,uBAAuB,CAAC;AAGvE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAE3B,cAAc,EAEf,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAA4B,MAAM,MAAM,CAAC;AAEpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAQ7C;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;AAEpG;;;;GAIG;AACH,qBAAa,QAAS,YAAW,aAAa;IAiB1C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG;IAvBtB;;OAEG;IACH,OAAO,CAAC,cAAc,CAAC,CAAiB;IAExC;;;;;;;;;OASG;gBAEgB,YAAY,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,EAChD,aAAa,EAAE,UAAU,EACzB,yBAAyB,EAAE,UAAU,EACrC,YAAY,EAAE,UAAU,EACxB,eAAe,EAAE,UAAU,EAC3B,KAAK,EAAE,iBAAiB,EACxB,iBAAiB,SAAS,EAC1B,GAAG,GAAE,WAAiD;IAGzE;;;;;;OAMG;WACiB,aAAa,CAC/B,MAAM,EAAE,cAAc,EACtB,aAAa,EAAE,iBAAiB,EAChC,gBAAgB,UAAO,GACtB,OAAO,CAAC,QAAQ,CAAC;IAqBpB;;;OAGG;IACU,KAAK,CAAC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5D;;;OAGG;YACW,IAAI;IAmJlB;;;OAGG;YACW,8BAA8B;IAU5C;;;OAGG;YACW,8BAA8B;YAQ9B,mCAAmC;IA4CjD;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIvC,kBAAkB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIhD;;;;;OAKG;IACI,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAIjE;;;;OAIG;IACU,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAS5D,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAI1D,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAI1E;;;;;OAKG;IACU,iBAAiB,CAC5B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAYtC;;;;;;OAMG;IACI,OAAO,CAAC,QAAQ,SAAS,OAAO,EACrC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;IAIlD;;;;OAIG;IACH,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAI1E;;;OAGG;IACI,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjC,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAIlE,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAI3F;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;IAIrD;;;;;OAKG;IACH,qBAAqB,CAAC,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIzF,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;CAGrC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { L2Block,
|
|
1
|
+
import { L2Block, } from '@aztec/circuit-types';
|
|
2
2
|
import { ContractClassRegisteredEvent } from '@aztec/circuits.js';
|
|
3
|
-
import { ContractInstanceDeployedEvent } from '@aztec/circuits.js/contract';
|
|
3
|
+
import { ContractInstanceDeployedEvent, PrivateFunctionBroadcastedEvent, UnconstrainedFunctionBroadcastedEvent, isValidPrivateFunctionMembershipProof, isValidUnconstrainedFunctionMembershipProof, } from '@aztec/circuits.js/contract';
|
|
4
4
|
import { createEthereumChain } from '@aztec/ethereum';
|
|
5
|
+
import { Fr } from '@aztec/foundation/fields';
|
|
5
6
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
6
7
|
import { RunningPromise } from '@aztec/foundation/running-promise';
|
|
7
|
-
import {
|
|
8
|
+
import { getCanonicalClassRegistererAddress } from '@aztec/protocol-contracts/class-registerer';
|
|
9
|
+
import groupBy from 'lodash.groupby';
|
|
8
10
|
import { createPublicClient, http } from 'viem';
|
|
9
11
|
import { retrieveBlockBodiesFromAvailabilityOracle, retrieveBlockMetadataFromRollup, retrieveL1ToL2Messages, } from './data_retrieval.js';
|
|
10
12
|
/**
|
|
@@ -32,10 +34,6 @@ export class Archiver {
|
|
|
32
34
|
this.store = store;
|
|
33
35
|
this.pollingIntervalMs = pollingIntervalMs;
|
|
34
36
|
this.log = log;
|
|
35
|
-
/**
|
|
36
|
-
* Use this to track logged block in order to avoid repeating the same message.
|
|
37
|
-
*/
|
|
38
|
-
this.lastLoggedL1BlockNumber = 0n;
|
|
39
37
|
}
|
|
40
38
|
/**
|
|
41
39
|
* Creates a new instance of the Archiver and blocks until it syncs from chain.
|
|
@@ -71,7 +69,7 @@ export class Archiver {
|
|
|
71
69
|
this.runningPromise.start();
|
|
72
70
|
}
|
|
73
71
|
/**
|
|
74
|
-
* Fetches
|
|
72
|
+
* Fetches logs from L1 contracts and processes them.
|
|
75
73
|
* @param blockUntilSynced - If true, blocks until the archiver has fully synced.
|
|
76
74
|
*/
|
|
77
75
|
async sync(blockUntilSynced) {
|
|
@@ -87,9 +85,10 @@ export class Archiver {
|
|
|
87
85
|
*
|
|
88
86
|
* This code does not handle reorgs.
|
|
89
87
|
*/
|
|
90
|
-
const
|
|
88
|
+
const l1SynchPoint = await this.store.getSynchPoint();
|
|
91
89
|
const currentL1BlockNumber = await this.publicClient.getBlockNumber();
|
|
92
|
-
if (currentL1BlockNumber <=
|
|
90
|
+
if (currentL1BlockNumber <= l1SynchPoint.blocksSynchedTo &&
|
|
91
|
+
currentL1BlockNumber <= l1SynchPoint.messagesSynchedTo) {
|
|
93
92
|
// chain hasn't moved forward
|
|
94
93
|
// or it's been rolled back
|
|
95
94
|
return;
|
|
@@ -113,21 +112,21 @@ export class Archiver {
|
|
|
113
112
|
*/
|
|
114
113
|
// ********** Events that are processed per L1 block **********
|
|
115
114
|
// ********** Events that are processed per L2 block **********
|
|
116
|
-
const retrievedL1ToL2Messages = await retrieveL1ToL2Messages(this.publicClient, this.inboxAddress, blockUntilSynced,
|
|
115
|
+
const retrievedL1ToL2Messages = await retrieveL1ToL2Messages(this.publicClient, this.inboxAddress, blockUntilSynced, l1SynchPoint.messagesSynchedTo + 1n, currentL1BlockNumber);
|
|
117
116
|
if (retrievedL1ToL2Messages.retrievedData.length !== 0) {
|
|
118
|
-
this.log(`Retrieved ${retrievedL1ToL2Messages.retrievedData.length} new L1 -> L2 messages between L1 blocks ${
|
|
117
|
+
this.log(`Retrieved ${retrievedL1ToL2Messages.retrievedData.length} new L1 -> L2 messages between L1 blocks ${l1SynchPoint.messagesSynchedTo + 1n} and ${currentL1BlockNumber}.`);
|
|
119
118
|
}
|
|
120
119
|
await this.store.addL1ToL2Messages(retrievedL1ToL2Messages);
|
|
121
120
|
// Read all data from chain and then write to our stores at the end
|
|
122
121
|
const nextExpectedL2BlockNum = BigInt((await this.store.getSynchedL2BlockNumber()) + 1);
|
|
123
|
-
const retrievedBlockBodies = await retrieveBlockBodiesFromAvailabilityOracle(this.publicClient, this.availabilityOracleAddress, blockUntilSynced,
|
|
122
|
+
const retrievedBlockBodies = await retrieveBlockBodiesFromAvailabilityOracle(this.publicClient, this.availabilityOracleAddress, blockUntilSynced, l1SynchPoint.blocksSynchedTo + 1n, currentL1BlockNumber);
|
|
124
123
|
const blockBodies = retrievedBlockBodies.retrievedData.map(([blockBody]) => blockBody);
|
|
125
124
|
await this.store.addBlockBodies(blockBodies);
|
|
126
125
|
// Now that we have block bodies we will retrieve block metadata and build L2 blocks from the bodies and
|
|
127
126
|
// the metadata
|
|
128
127
|
let retrievedBlocks;
|
|
129
128
|
{
|
|
130
|
-
const retrievedBlockMetadata = await retrieveBlockMetadataFromRollup(this.publicClient, this.rollupAddress, blockUntilSynced,
|
|
129
|
+
const retrievedBlockMetadata = await retrieveBlockMetadataFromRollup(this.publicClient, this.rollupAddress, blockUntilSynced, l1SynchPoint.blocksSynchedTo + 1n, currentL1BlockNumber, nextExpectedL2BlockNum);
|
|
131
130
|
const retrievedBodyHashes = retrievedBlockMetadata.retrievedData.map(([header]) => header.contentCommitment.txsEffectsHash);
|
|
132
131
|
const blockBodiesFromStore = await this.store.getBlockBodies(retrievedBodyHashes);
|
|
133
132
|
if (retrievedBlockMetadata.retrievedData.length !== blockBodiesFromStore.length) {
|
|
@@ -138,7 +137,7 @@ export class Archiver {
|
|
|
138
137
|
return;
|
|
139
138
|
}
|
|
140
139
|
else {
|
|
141
|
-
this.log(`Retrieved ${blocks.length} new L2 blocks between L1 blocks ${
|
|
140
|
+
this.log(`Retrieved ${blocks.length} new L2 blocks between L1 blocks ${l1SynchPoint.blocksSynchedTo + 1n} and ${currentL1BlockNumber}.`);
|
|
142
141
|
}
|
|
143
142
|
retrievedBlocks = {
|
|
144
143
|
lastProcessedL1BlockNumber: retrievedBlockMetadata.lastProcessedL1BlockNumber,
|
|
@@ -154,10 +153,10 @@ export class Archiver {
|
|
|
154
153
|
await Promise.all(retrievedBlocks.retrievedData.map(async (block) => {
|
|
155
154
|
const blockLogs = block.body.txEffects
|
|
156
155
|
.flatMap(txEffect => (txEffect ? [txEffect.unencryptedLogs] : []))
|
|
157
|
-
.flatMap(txLog => txLog.unrollLogs())
|
|
158
|
-
.map(log => UnencryptedL2Log.fromBuffer(log));
|
|
156
|
+
.flatMap(txLog => txLog.unrollLogs());
|
|
159
157
|
await this.storeRegisteredContractClasses(blockLogs, block.number);
|
|
160
158
|
await this.storeDeployedContractInstances(blockLogs, block.number);
|
|
159
|
+
await this.storeBroadcastedIndividualFunctions(blockLogs, block.number);
|
|
161
160
|
}));
|
|
162
161
|
await this.store.addBlocks(retrievedBlocks);
|
|
163
162
|
}
|
|
@@ -166,7 +165,7 @@ export class Archiver {
|
|
|
166
165
|
* @param allLogs - All logs emitted in a bunch of blocks.
|
|
167
166
|
*/
|
|
168
167
|
async storeRegisteredContractClasses(allLogs, blockNum) {
|
|
169
|
-
const contractClasses = ContractClassRegisteredEvent.fromLogs(allLogs,
|
|
168
|
+
const contractClasses = ContractClassRegisteredEvent.fromLogs(allLogs, getCanonicalClassRegistererAddress()).map(e => e.toContractClassPublic());
|
|
170
169
|
if (contractClasses.length > 0) {
|
|
171
170
|
contractClasses.forEach(c => this.log(`Registering contract class ${c.id.toString()}`));
|
|
172
171
|
await this.store.addContractClasses(contractClasses, blockNum);
|
|
@@ -183,6 +182,35 @@ export class Archiver {
|
|
|
183
182
|
await this.store.addContractInstances(contractInstances, blockNum);
|
|
184
183
|
}
|
|
185
184
|
}
|
|
185
|
+
async storeBroadcastedIndividualFunctions(allLogs, _blockNum) {
|
|
186
|
+
// Filter out private and unconstrained function broadcast events
|
|
187
|
+
const privateFnEvents = PrivateFunctionBroadcastedEvent.fromLogs(allLogs, getCanonicalClassRegistererAddress());
|
|
188
|
+
const unconstrainedFnEvents = UnconstrainedFunctionBroadcastedEvent.fromLogs(allLogs, getCanonicalClassRegistererAddress());
|
|
189
|
+
// Group all events by contract class id
|
|
190
|
+
for (const [classIdString, classEvents] of Object.entries(groupBy([...privateFnEvents, ...unconstrainedFnEvents], e => e.contractClassId.toString()))) {
|
|
191
|
+
const contractClassId = Fr.fromString(classIdString);
|
|
192
|
+
const contractClass = await this.store.getContractClass(contractClassId);
|
|
193
|
+
if (!contractClass) {
|
|
194
|
+
this.log.warn(`Skipping broadcasted functions as contract class ${contractClassId.toString()} was not found`);
|
|
195
|
+
continue;
|
|
196
|
+
}
|
|
197
|
+
// Split private and unconstrained functions, and filter out invalid ones
|
|
198
|
+
const allFns = classEvents.map(e => e.toFunctionWithMembershipProof());
|
|
199
|
+
const privateFns = allFns.filter((fn) => 'unconstrainedFunctionsArtifactTreeRoot' in fn);
|
|
200
|
+
const unconstrainedFns = allFns.filter((fn) => 'privateFunctionsArtifactTreeRoot' in fn);
|
|
201
|
+
const validPrivateFns = privateFns.filter(fn => isValidPrivateFunctionMembershipProof(fn, contractClass));
|
|
202
|
+
const validUnconstrainedFns = unconstrainedFns.filter(fn => isValidUnconstrainedFunctionMembershipProof(fn, contractClass));
|
|
203
|
+
const validFnCount = validPrivateFns.length + validUnconstrainedFns.length;
|
|
204
|
+
if (validFnCount !== allFns.length) {
|
|
205
|
+
this.log.warn(`Skipping ${allFns.length - validFnCount} invalid functions`);
|
|
206
|
+
}
|
|
207
|
+
// Store the functions in the contract class in a single operation
|
|
208
|
+
if (validFnCount > 0) {
|
|
209
|
+
this.log(`Storing ${validFnCount} functions for contract class ${contractClassId.toString()}`);
|
|
210
|
+
}
|
|
211
|
+
await this.store.addFunctions(contractClassId, validPrivateFns, validUnconstrainedFns);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
186
214
|
/**
|
|
187
215
|
* Stops the archiver.
|
|
188
216
|
* @returns A promise signalling completion of the stop process.
|
|
@@ -284,15 +312,16 @@ export class Archiver {
|
|
|
284
312
|
return this.store.getL1ToL2Messages(blockNumber);
|
|
285
313
|
}
|
|
286
314
|
/**
|
|
287
|
-
* Gets the L1 to L2 message index in the L1 to L2 message tree
|
|
315
|
+
* Gets the first L1 to L2 message index in the L1 to L2 message tree which is greater than or equal to `startIndex`.
|
|
288
316
|
* @param l1ToL2Message - The L1 to L2 message.
|
|
317
|
+
* @param startIndex - The index to start searching from.
|
|
289
318
|
* @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
|
|
290
319
|
*/
|
|
291
|
-
getL1ToL2MessageIndex(l1ToL2Message) {
|
|
292
|
-
return this.store.getL1ToL2MessageIndex(l1ToL2Message);
|
|
320
|
+
getL1ToL2MessageIndex(l1ToL2Message, startIndex) {
|
|
321
|
+
return this.store.getL1ToL2MessageIndex(l1ToL2Message, startIndex);
|
|
293
322
|
}
|
|
294
323
|
getContractClassIds() {
|
|
295
324
|
return this.store.getContractClassIds();
|
|
296
325
|
}
|
|
297
326
|
}
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLE9BQU8sRUFTUCxnQkFBZ0IsR0FDakIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsNEJBQTRCLEVBQW9CLE1BQU0sb0JBQW9CLENBQUM7QUFDcEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJdEQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBUXBGLE9BQU8sRUFBc0Msa0JBQWtCLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXBGLE9BQU8sRUFFTCx5Q0FBeUMsRUFDekMsK0JBQStCLEVBQy9CLHNCQUFzQixHQUN2QixNQUFNLHFCQUFxQixDQUFDO0FBTzdCOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQVduQjs7Ozs7Ozs7O09BU0c7SUFDSCxZQUNtQixZQUFnRCxFQUNoRCxhQUF5QixFQUN6Qix5QkFBcUMsRUFDckMsWUFBd0IsRUFDeEIsZUFBMkIsRUFDM0IsS0FBd0IsRUFDeEIsb0JBQW9CLEtBQU0sRUFDMUIsTUFBbUIsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUM7UUFQdEQsaUJBQVksR0FBWixZQUFZLENBQW9DO1FBQ2hELGtCQUFhLEdBQWIsYUFBYSxDQUFZO1FBQ3pCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBWTtRQUNyQyxpQkFBWSxHQUFaLFlBQVksQ0FBWTtRQUN4QixvQkFBZSxHQUFmLGVBQWUsQ0FBWTtRQUMzQixV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
|
|
327
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvYXJjaGl2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLE9BQU8sR0FVUixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSw0QkFBNEIsRUFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRixPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLCtCQUErQixFQUMvQixxQ0FBcUMsRUFDckMscUNBQXFDLEVBQ3JDLDJDQUEyQyxHQUM1QyxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3RELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFVaEcsT0FBTyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFzQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJcEYsT0FBTyxFQUVMLHlDQUF5QyxFQUN6QywrQkFBK0IsRUFDL0Isc0JBQXNCLEdBQ3ZCLE1BQU0scUJBQXFCLENBQUM7QUFPN0I7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxRQUFRO0lBTW5COzs7Ozs7Ozs7T0FTRztJQUNILFlBQ21CLFlBQWdELEVBQ2hELGFBQXlCLEVBQ3pCLHlCQUFxQyxFQUNyQyxZQUF3QixFQUN4QixlQUEyQixFQUMzQixLQUF3QixFQUN4QixvQkFBb0IsS0FBTSxFQUMxQixNQUFtQixpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQztRQVB0RCxpQkFBWSxHQUFaLFlBQVksQ0FBb0M7UUFD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
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
import { Body, GetUnencryptedLogsResponse, InboxLeaf, L2Block, L2BlockL2Logs, LogFilter, LogType, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
|
+
import { Body, EncryptedL2BlockL2Logs, FromLogType, GetUnencryptedLogsResponse, InboxLeaf, L2Block, L2BlockL2Logs, LogFilter, LogType, TxEffect, TxHash, TxReceipt, UnencryptedL2BlockL2Logs } from '@aztec/circuit-types';
|
|
3
3
|
import { Fr } from '@aztec/circuits.js';
|
|
4
4
|
import { AztecAddress } from '@aztec/foundation/aztec-address';
|
|
5
|
-
import { ContractClassPublic, ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
5
|
+
import { ContractClassPublic, ContractInstanceWithAddress, ExecutablePrivateFunctionWithMembershipProof, UnconstrainedFunctionWithMembershipProof } from '@aztec/types/contracts';
|
|
6
6
|
import { DataRetrieval } from './data_retrieval.js';
|
|
7
7
|
/**
|
|
8
8
|
* Represents the latest L1 block processed by the archiver for various objects in L2.
|
|
9
9
|
*/
|
|
10
10
|
export type ArchiverL1SynchPoint = {
|
|
11
|
-
/**
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
|
|
11
|
+
/** Number of the last L1 block that added a new L2 block. */
|
|
12
|
+
blocksSynchedTo: bigint;
|
|
13
|
+
/** Number of the last L1 block that added L1 -> L2 messages from the Inbox. */
|
|
14
|
+
messagesSynchedTo: bigint;
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
17
|
* Interface describing a data store to be used by the archiver to store all its relevant data
|
|
@@ -63,7 +63,7 @@ export interface ArchiverDataStore {
|
|
|
63
63
|
* @param blockNumber - The block for which to add the logs.
|
|
64
64
|
* @returns True if the operation is successful.
|
|
65
65
|
*/
|
|
66
|
-
addLogs(encryptedLogs:
|
|
66
|
+
addLogs(encryptedLogs: EncryptedL2BlockL2Logs | undefined, unencryptedLogs: UnencryptedL2BlockL2Logs | undefined, blockNumber: number): Promise<boolean>;
|
|
67
67
|
/**
|
|
68
68
|
* Append L1 to L2 messages to the store.
|
|
69
69
|
* @param messages - The L1 to L2 messages to be added to the store and the last processed L1 block.
|
|
@@ -77,11 +77,12 @@ export interface ArchiverDataStore {
|
|
|
77
77
|
*/
|
|
78
78
|
getL1ToL2Messages(blockNumber: bigint): Promise<Fr[]>;
|
|
79
79
|
/**
|
|
80
|
-
* Gets the L1 to L2 message index in the L1 to L2 message tree
|
|
80
|
+
* Gets the first L1 to L2 message index in the L1 to L2 message tree which is greater than or equal to `startIndex`.
|
|
81
81
|
* @param l1ToL2Message - The L1 to L2 message.
|
|
82
|
+
* @param startIndex - The index to start searching from.
|
|
82
83
|
* @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
|
|
83
84
|
*/
|
|
84
|
-
getL1ToL2MessageIndex(l1ToL2Message: Fr): Promise<bigint | undefined>;
|
|
85
|
+
getL1ToL2MessageIndex(l1ToL2Message: Fr, startIndex: bigint): Promise<bigint | undefined>;
|
|
85
86
|
/**
|
|
86
87
|
* Gets up to `limit` amount of logs starting from `from`.
|
|
87
88
|
* @param from - Number of the L2 block to which corresponds the first logs to be returned.
|
|
@@ -89,7 +90,7 @@ export interface ArchiverDataStore {
|
|
|
89
90
|
* @param logType - Specifies whether to return encrypted or unencrypted logs.
|
|
90
91
|
* @returns The requested logs.
|
|
91
92
|
*/
|
|
92
|
-
getLogs(from: number, limit: number, logType:
|
|
93
|
+
getLogs<TLogType extends LogType>(from: number, limit: number, logType: TLogType): Promise<L2BlockL2Logs<FromLogType<TLogType>>[]>;
|
|
93
94
|
/**
|
|
94
95
|
* Gets unencrypted logs based on the provided filter.
|
|
95
96
|
* @param filter - The filter to apply to the logs.
|
|
@@ -104,7 +105,7 @@ export interface ArchiverDataStore {
|
|
|
104
105
|
/**
|
|
105
106
|
* Gets the synch point of the archiver
|
|
106
107
|
*/
|
|
107
|
-
|
|
108
|
+
getSynchPoint(): Promise<ArchiverL1SynchPoint>;
|
|
108
109
|
/**
|
|
109
110
|
* Add new contract classes from an L2 block to the store's list.
|
|
110
111
|
* @param data - List of contract classes to be added.
|
|
@@ -124,6 +125,10 @@ export interface ArchiverDataStore {
|
|
|
124
125
|
* @returns True if the operation is successful.
|
|
125
126
|
*/
|
|
126
127
|
addContractInstances(data: ContractInstanceWithAddress[], blockNumber: number): Promise<boolean>;
|
|
128
|
+
/**
|
|
129
|
+
* Adds private functions to a contract class.
|
|
130
|
+
*/
|
|
131
|
+
addFunctions(contractClassId: Fr, privateFunctions: ExecutablePrivateFunctionWithMembershipProof[], unconstrainedFunctions: UnconstrainedFunctionWithMembershipProof[]): Promise<boolean>;
|
|
127
132
|
/**
|
|
128
133
|
* Returns a contract instance given its address, or undefined if not exists.
|
|
129
134
|
* @param address - Address of the contract.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiver_store.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,aAAa,EACb,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,
|
|
1
|
+
{"version":3,"file":"archiver_store.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiver_store_test_suite.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store_test_suite.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"archiver_store_test_suite.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver_store_test_suite.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;AAWnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,QA6d5F"}
|