@aztec/archiver 0.65.2 → 0.67.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 +20 -24
- package/dest/archiver/archiver.d.ts.map +1 -1
- package/dest/archiver/archiver.js +148 -102
- package/dest/archiver/archiver_store.d.ts +8 -9
- 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 +126 -150
- package/dest/archiver/config.d.ts +6 -12
- package/dest/archiver/config.d.ts.map +1 -1
- package/dest/archiver/config.js +6 -1
- package/dest/archiver/data_retrieval.d.ts +4 -5
- package/dest/archiver/data_retrieval.d.ts.map +1 -1
- package/dest/archiver/data_retrieval.js +21 -22
- package/dest/archiver/instrumentation.d.ts +4 -7
- package/dest/archiver/instrumentation.d.ts.map +1 -1
- package/dest/archiver/instrumentation.js +17 -22
- package/dest/archiver/kv_archiver_store/block_store.d.ts +2 -2
- package/dest/archiver/kv_archiver_store/block_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/block_store.js +6 -6
- package/dest/archiver/kv_archiver_store/contract_class_store.js +2 -2
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +8 -9
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/kv_archiver_store.js +9 -10
- package/dest/archiver/kv_archiver_store/log_store.d.ts +7 -8
- package/dest/archiver/kv_archiver_store/log_store.d.ts.map +1 -1
- package/dest/archiver/kv_archiver_store/log_store.js +57 -97
- package/dest/archiver/kv_archiver_store/message_store.js +3 -3
- package/dest/archiver/kv_archiver_store/nullifier_store.js +3 -3
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts +9 -11
- package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts.map +1 -1
- package/dest/archiver/memory_archiver_store/memory_archiver_store.js +53 -60
- package/dest/factory.js +4 -4
- package/dest/index.d.ts +2 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +3 -42
- package/dest/test/mock_l2_block_source.d.ts +2 -2
- package/dest/test/mock_l2_block_source.d.ts.map +1 -1
- package/dest/test/mock_l2_block_source.js +4 -4
- package/package.json +15 -13
- package/src/archiver/archiver.ts +208 -198
- package/src/archiver/archiver_store.ts +8 -15
- package/src/archiver/archiver_store_test_suite.ts +160 -186
- package/src/archiver/config.ts +12 -12
- package/src/archiver/data_retrieval.ts +21 -26
- package/src/archiver/instrumentation.ts +21 -23
- package/src/archiver/kv_archiver_store/block_store.ts +6 -6
- package/src/archiver/kv_archiver_store/contract_class_store.ts +1 -1
- package/src/archiver/kv_archiver_store/kv_archiver_store.ts +11 -18
- package/src/archiver/kv_archiver_store/log_store.ts +70 -120
- package/src/archiver/kv_archiver_store/message_store.ts +2 -2
- package/src/archiver/kv_archiver_store/nullifier_store.ts +2 -2
- package/src/archiver/memory_archiver_store/memory_archiver_store.ts +56 -70
- package/src/factory.ts +3 -3
- package/src/index.ts +2 -59
- package/src/test/mock_l2_block_source.ts +5 -6
- package/dest/archiver/epoch_helpers.d.ts +0 -20
- package/dest/archiver/epoch_helpers.d.ts.map +0 -1
- package/dest/archiver/epoch_helpers.js +0 -34
- package/src/archiver/epoch_helpers.ts +0 -54
|
@@ -10,21 +10,15 @@ import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
|
10
10
|
* The archiver configuration.
|
|
11
11
|
*/
|
|
12
12
|
export type ArchiverConfig = {
|
|
13
|
-
/**
|
|
14
|
-
* URL for an archiver service. If set, will return an archiver client as opposed to starting a new one.
|
|
15
|
-
*/
|
|
13
|
+
/** URL for an archiver service. If set, will return an archiver client as opposed to starting a new one. */
|
|
16
14
|
archiverUrl?: string;
|
|
17
|
-
/**
|
|
18
|
-
* The polling interval in ms for retrieving new L2 blocks and encrypted logs.
|
|
19
|
-
*/
|
|
15
|
+
/** The polling interval in ms for retrieving new L2 blocks and encrypted logs. */
|
|
20
16
|
archiverPollingIntervalMS?: number;
|
|
21
|
-
/**
|
|
22
|
-
|
|
23
|
-
|
|
17
|
+
/** The number of L2 blocks the archiver will attempt to download at a time. */
|
|
18
|
+
archiverBatchSize?: number;
|
|
19
|
+
/** The polling interval viem uses in ms */
|
|
24
20
|
viemPollingIntervalMS?: number;
|
|
25
|
-
/**
|
|
26
|
-
* The deployed L1 contract addresses
|
|
27
|
-
*/
|
|
21
|
+
/** The deployed L1 contract addresses */
|
|
28
22
|
l1Contracts: L1ContractAddresses;
|
|
29
23
|
/** The max number of logs that can be obtained in 1 "getUnencryptedLogs" call. */
|
|
30
24
|
maxLogs?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/archiver/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAGpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,kBAAkB,EAA6C,MAAM,0BAA0B,CAAC;AAE9G;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/archiver/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAGpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,kBAAkB,EAA6C,MAAM,0BAA0B,CAAC;AAE9G;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,4GAA4G;IAC5G,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,cAAc,GAChB,iBAAiB,CAAC;AAEpB,eAAO,MAAM,sBAAsB,EAAE,kBAAkB,CAAC,cAAc,CA4BrE,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,cAAc,CAEzD"}
|
package/dest/archiver/config.js
CHANGED
|
@@ -10,6 +10,11 @@ export const archiverConfigMappings = {
|
|
|
10
10
|
description: 'The polling interval in ms for retrieving new L2 blocks and encrypted logs.',
|
|
11
11
|
...numberConfigHelper(1000),
|
|
12
12
|
},
|
|
13
|
+
archiverBatchSize: {
|
|
14
|
+
env: 'ARCHIVER_BATCH_SIZE',
|
|
15
|
+
description: 'The number of L2 blocks the archiver will attempt to download at a time.',
|
|
16
|
+
...numberConfigHelper(100),
|
|
17
|
+
},
|
|
13
18
|
maxLogs: {
|
|
14
19
|
env: 'ARCHIVER_MAX_LOGS',
|
|
15
20
|
description: 'The max number of logs that can be obtained in 1 "getUnencryptedLogs" call.',
|
|
@@ -31,4 +36,4 @@ export const archiverConfigMappings = {
|
|
|
31
36
|
export function getArchiverConfigFromEnv() {
|
|
32
37
|
return getConfigFromMappings(archiverConfigMappings);
|
|
33
38
|
}
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FyY2hpdmVyL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUwseUJBQXlCLEVBQ3pCLHNCQUFzQixHQUN2QixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBMkIscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQWlDOUcsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQXVDO0lBQ3hFLFdBQVcsRUFBRTtRQUNYLEdBQUcsRUFBRSxjQUFjO1FBQ25CLFdBQVcsRUFDVCx1R0FBdUc7S0FDMUc7SUFDRCx5QkFBeUIsRUFBRTtRQUN6QixHQUFHLEVBQUUsOEJBQThCO1FBQ25DLFdBQVcsRUFBRSw2RUFBNkU7UUFDMUYsR0FBRyxrQkFBa0IsQ0FBQyxJQUFLLENBQUM7S0FDN0I7SUFDRCxpQkFBaUIsRUFBRTtRQUNqQixHQUFHLEVBQUUscUJBQXFCO1FBQzFCLFdBQVcsRUFBRSwwRUFBMEU7UUFDdkYsR0FBRyxrQkFBa0IsQ0FBQyxHQUFHLENBQUM7S0FDM0I7SUFDRCxPQUFPLEVBQUU7UUFDUCxHQUFHLEVBQUUsbUJBQW1CO1FBQ3hCLFdBQVcsRUFBRSw2RUFBNkU7UUFDMUYsR0FBRyxrQkFBa0IsQ0FBQyxJQUFLLENBQUM7S0FDN0I7SUFDRCxHQUFHLHNCQUFzQjtJQUN6QixxQkFBcUIsRUFBRTtRQUNyQixHQUFHLEVBQUUsbUNBQW1DO1FBQ3hDLFdBQVcsRUFBRSxzQ0FBc0M7UUFDbkQsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7S0FDNUI7SUFDRCxHQUFHLHlCQUF5QjtDQUM3QixDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSx3QkFBd0I7SUFDdEMsT0FBTyxxQkFBcUIsQ0FBaUIsc0JBQXNCLENBQUMsQ0FBQztBQUN2RSxDQUFDIn0=
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { InboxLeaf, L2Block } from '@aztec/circuit-types';
|
|
4
4
|
import { Fr, Proof } from '@aztec/circuits.js';
|
|
5
5
|
import { type EthAddress } from '@aztec/foundation/eth-address';
|
|
6
|
-
import { type
|
|
6
|
+
import { type Logger } from '@aztec/foundation/log';
|
|
7
7
|
import { type InboxAbi, RollupAbi } from '@aztec/l1-artifacts';
|
|
8
8
|
import { type Chain, type GetContractEventsReturnType, type GetContractReturnType, type Hex, type HttpTransport, type PublicClient } from 'viem';
|
|
9
9
|
import { type DataRetrieval } from './structs/data_retrieval.js';
|
|
@@ -12,13 +12,12 @@ import { type L1Published } from './structs/published.js';
|
|
|
12
12
|
* Fetches new L2 blocks.
|
|
13
13
|
* @param publicClient - The viem public client to use for transaction retrieval.
|
|
14
14
|
* @param rollupAddress - The address of the rollup contract.
|
|
15
|
-
* @param blockUntilSynced - If true, blocks until the archiver has fully synced.
|
|
16
15
|
* @param searchStartBlock - The block number to use for starting the search.
|
|
17
16
|
* @param searchEndBlock - The highest block number that we should search up to.
|
|
18
17
|
* @param expectedNextL2BlockNum - The next L2 block number that we expect to find.
|
|
19
18
|
* @returns An array of block; as well as the next eth block to search from.
|
|
20
19
|
*/
|
|
21
|
-
export declare function
|
|
20
|
+
export declare function retrieveBlocksFromRollup(rollup: GetContractReturnType<typeof RollupAbi, PublicClient<HttpTransport, Chain>>, publicClient: PublicClient, searchStartBlock: bigint, searchEndBlock: bigint, logger?: Logger): Promise<L1Published<L2Block>[]>;
|
|
22
21
|
/**
|
|
23
22
|
* Processes newly received L2BlockProposed logs.
|
|
24
23
|
* @param rollup - The rollup contract
|
|
@@ -26,7 +25,7 @@ export declare function retrieveBlockFromRollup(rollup: GetContractReturnType<ty
|
|
|
26
25
|
* @param logs - L2BlockProposed logs.
|
|
27
26
|
* @returns - An array blocks.
|
|
28
27
|
*/
|
|
29
|
-
export declare function processL2BlockProposedLogs(rollup: GetContractReturnType<typeof RollupAbi, PublicClient<HttpTransport, Chain>>, publicClient: PublicClient, logs: GetContractEventsReturnType<typeof RollupAbi, 'L2BlockProposed'>, logger:
|
|
28
|
+
export declare function processL2BlockProposedLogs(rollup: GetContractReturnType<typeof RollupAbi, PublicClient<HttpTransport, Chain>>, publicClient: PublicClient, logs: GetContractEventsReturnType<typeof RollupAbi, 'L2BlockProposed'>, logger: Logger): Promise<L1Published<L2Block>[]>;
|
|
30
29
|
export declare function getL1BlockTime(publicClient: PublicClient, blockNumber: bigint): Promise<bigint>;
|
|
31
30
|
/**
|
|
32
31
|
* Fetch L1 to L2 messages.
|
|
@@ -37,7 +36,7 @@ export declare function getL1BlockTime(publicClient: PublicClient, blockNumber:
|
|
|
37
36
|
* @param searchEndBlock - The highest block number that we should search up to.
|
|
38
37
|
* @returns An array of InboxLeaf and next eth block to search from.
|
|
39
38
|
*/
|
|
40
|
-
export declare function retrieveL1ToL2Messages(inbox: GetContractReturnType<typeof InboxAbi, PublicClient<HttpTransport, Chain>>,
|
|
39
|
+
export declare function retrieveL1ToL2Messages(inbox: GetContractReturnType<typeof InboxAbi, PublicClient<HttpTransport, Chain>>, searchStartBlock: bigint, searchEndBlock: bigint): Promise<DataRetrieval<InboxLeaf>>;
|
|
41
40
|
/** Retrieves L2ProofVerified events from the rollup contract. */
|
|
42
41
|
export declare function retrieveL2ProofVerifiedEvents(publicClient: PublicClient, rollupAddress: EthAddress, searchStartBlock: bigint, searchEndBlock?: bigint): Promise<{
|
|
43
42
|
l1BlockNumber: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data_retrieval.d.ts","sourceRoot":"","sources":["../../src/archiver/data_retrieval.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAQ,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,
|
|
1
|
+
{"version":3,"file":"data_retrieval.d.ts","sourceRoot":"","sources":["../../src/archiver/data_retrieval.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Body, InboxLeaf, L2Block } from '@aztec/circuit-types';
|
|
2
|
-
import { AppendOnlyTreeSnapshot,
|
|
3
|
-
import {
|
|
2
|
+
import { AppendOnlyTreeSnapshot, BlockHeader, Fr, Proof } from '@aztec/circuits.js';
|
|
3
|
+
import { asyncPool } from '@aztec/foundation/async-pool';
|
|
4
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
4
5
|
import { numToUInt32BE } from '@aztec/foundation/serialize';
|
|
5
6
|
import { RollupAbi } from '@aztec/l1-artifacts';
|
|
6
7
|
import { decodeFunctionData, getAbiItem, hexToBytes, } from 'viem';
|
|
@@ -8,13 +9,12 @@ import { decodeFunctionData, getAbiItem, hexToBytes, } from 'viem';
|
|
|
8
9
|
* Fetches new L2 blocks.
|
|
9
10
|
* @param publicClient - The viem public client to use for transaction retrieval.
|
|
10
11
|
* @param rollupAddress - The address of the rollup contract.
|
|
11
|
-
* @param blockUntilSynced - If true, blocks until the archiver has fully synced.
|
|
12
12
|
* @param searchStartBlock - The block number to use for starting the search.
|
|
13
13
|
* @param searchEndBlock - The highest block number that we should search up to.
|
|
14
14
|
* @param expectedNextL2BlockNum - The next L2 block number that we expect to find.
|
|
15
15
|
* @returns An array of block; as well as the next eth block to search from.
|
|
16
16
|
*/
|
|
17
|
-
export async function
|
|
17
|
+
export async function retrieveBlocksFromRollup(rollup, publicClient, searchStartBlock, searchEndBlock, logger = createLogger('archiver')) {
|
|
18
18
|
const retrievedBlocks = [];
|
|
19
19
|
do {
|
|
20
20
|
if (searchStartBlock > searchEndBlock) {
|
|
@@ -28,11 +28,11 @@ export async function retrieveBlockFromRollup(rollup, publicClient, blockUntilSy
|
|
|
28
28
|
break;
|
|
29
29
|
}
|
|
30
30
|
const lastLog = l2BlockProposedLogs[l2BlockProposedLogs.length - 1];
|
|
31
|
-
logger.debug(`Got L2 block processed logs for ${l2BlockProposedLogs[0].blockNumber}-${lastLog.blockNumber} between ${searchStartBlock}-${searchEndBlock}
|
|
31
|
+
logger.debug(`Got ${l2BlockProposedLogs.length} L2 block processed logs for L2 blocks ${l2BlockProposedLogs[0].args.blockNumber}-${lastLog.args.blockNumber} between L1 blocks ${searchStartBlock}-${searchEndBlock}`);
|
|
32
32
|
const newBlocks = await processL2BlockProposedLogs(rollup, publicClient, l2BlockProposedLogs, logger);
|
|
33
33
|
retrievedBlocks.push(...newBlocks);
|
|
34
34
|
searchStartBlock = lastLog.blockNumber + 1n;
|
|
35
|
-
} while (
|
|
35
|
+
} while (searchStartBlock <= searchEndBlock);
|
|
36
36
|
return retrievedBlocks;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
@@ -44,13 +44,12 @@ export async function retrieveBlockFromRollup(rollup, publicClient, blockUntilSy
|
|
|
44
44
|
*/
|
|
45
45
|
export async function processL2BlockProposedLogs(rollup, publicClient, logs, logger) {
|
|
46
46
|
const retrievedBlocks = [];
|
|
47
|
-
|
|
47
|
+
await asyncPool(10, logs, async (log) => {
|
|
48
48
|
const l2BlockNumber = log.args.blockNumber;
|
|
49
49
|
const archive = log.args.archive;
|
|
50
50
|
const archiveFromChain = await rollup.read.archiveAt([l2BlockNumber]);
|
|
51
51
|
// The value from the event and contract will match only if the block is in the chain.
|
|
52
52
|
if (archive === archiveFromChain) {
|
|
53
|
-
// TODO: Fetch blocks from calldata in parallel
|
|
54
53
|
const block = await getBlockFromRollupTx(publicClient, log.transactionHash, l2BlockNumber);
|
|
55
54
|
const l1 = {
|
|
56
55
|
blockNumber: log.blockNumber,
|
|
@@ -60,9 +59,12 @@ export async function processL2BlockProposedLogs(rollup, publicClient, logs, log
|
|
|
60
59
|
retrievedBlocks.push({ data: block, l1 });
|
|
61
60
|
}
|
|
62
61
|
else {
|
|
63
|
-
logger.warn(`
|
|
62
|
+
logger.warn(`Ignoring L2 block ${l2BlockNumber} due to archive root mismatch`, {
|
|
63
|
+
actual: archive,
|
|
64
|
+
expected: archiveFromChain,
|
|
65
|
+
});
|
|
64
66
|
}
|
|
65
|
-
}
|
|
67
|
+
});
|
|
66
68
|
return retrievedBlocks;
|
|
67
69
|
}
|
|
68
70
|
export async function getL1BlockTime(publicClient, blockNumber) {
|
|
@@ -80,16 +82,13 @@ export async function getL1BlockTime(publicClient, blockNumber) {
|
|
|
80
82
|
*/
|
|
81
83
|
async function getBlockFromRollupTx(publicClient, txHash, l2BlockNum) {
|
|
82
84
|
const { input: data } = await publicClient.getTransaction({ hash: txHash });
|
|
83
|
-
const { functionName, args } = decodeFunctionData({
|
|
84
|
-
abi: RollupAbi,
|
|
85
|
-
data,
|
|
86
|
-
});
|
|
85
|
+
const { functionName, args } = decodeFunctionData({ abi: RollupAbi, data });
|
|
87
86
|
const allowedMethods = ['propose', 'proposeAndClaim'];
|
|
88
87
|
if (!allowedMethods.includes(functionName)) {
|
|
89
88
|
throw new Error(`Unexpected method called ${functionName}`);
|
|
90
89
|
}
|
|
91
90
|
const [decodedArgs, , bodyHex] = args;
|
|
92
|
-
const header =
|
|
91
|
+
const header = BlockHeader.fromBuffer(Buffer.from(hexToBytes(decodedArgs.header)));
|
|
93
92
|
const blockBody = Body.fromBuffer(Buffer.from(hexToBytes(bodyHex)));
|
|
94
93
|
const blockNumberFromHeader = header.globalVariables.blockNumber.toBigInt();
|
|
95
94
|
if (blockNumberFromHeader !== l2BlockNum) {
|
|
@@ -110,7 +109,7 @@ async function getBlockFromRollupTx(publicClient, txHash, l2BlockNum) {
|
|
|
110
109
|
* @param searchEndBlock - The highest block number that we should search up to.
|
|
111
110
|
* @returns An array of InboxLeaf and next eth block to search from.
|
|
112
111
|
*/
|
|
113
|
-
export async function retrieveL1ToL2Messages(inbox,
|
|
112
|
+
export async function retrieveL1ToL2Messages(inbox, searchStartBlock, searchEndBlock) {
|
|
114
113
|
const retrievedL1ToL2Messages = [];
|
|
115
114
|
do {
|
|
116
115
|
if (searchStartBlock > searchEndBlock) {
|
|
@@ -125,11 +124,11 @@ export async function retrieveL1ToL2Messages(inbox, blockUntilSynced, searchStar
|
|
|
125
124
|
}
|
|
126
125
|
for (const log of messageSentLogs) {
|
|
127
126
|
const { index, hash } = log.args;
|
|
128
|
-
retrievedL1ToL2Messages.push(new InboxLeaf(index, Fr.
|
|
127
|
+
retrievedL1ToL2Messages.push(new InboxLeaf(index, Fr.fromHexString(hash)));
|
|
129
128
|
}
|
|
130
129
|
// handles the case when there are no new messages:
|
|
131
130
|
searchStartBlock = (messageSentLogs.findLast(msgLog => !!msgLog)?.blockNumber || searchStartBlock) + 1n;
|
|
132
|
-
} while (
|
|
131
|
+
} while (searchStartBlock <= searchEndBlock);
|
|
133
132
|
return { lastProcessedL1BlockNumber: searchStartBlock - 1n, retrievedData: retrievedL1ToL2Messages };
|
|
134
133
|
}
|
|
135
134
|
/** Retrieves L2ProofVerified events from the rollup contract. */
|
|
@@ -144,7 +143,7 @@ export async function retrieveL2ProofVerifiedEvents(publicClient, rollupAddress,
|
|
|
144
143
|
return logs.map(log => ({
|
|
145
144
|
l1BlockNumber: log.blockNumber,
|
|
146
145
|
l2BlockNumber: log.args.blockNumber,
|
|
147
|
-
proverId: Fr.
|
|
146
|
+
proverId: Fr.fromHexString(log.args.proverId),
|
|
148
147
|
txHash: log.transactionHash,
|
|
149
148
|
}));
|
|
150
149
|
}
|
|
@@ -181,8 +180,8 @@ export async function getProofFromSubmitProofTx(publicClient, txHash, expectedPr
|
|
|
181
180
|
if (functionName === 'submitEpochRootProof') {
|
|
182
181
|
const [decodedArgs] = args;
|
|
183
182
|
aggregationObject = Buffer.from(hexToBytes(decodedArgs.aggregationObject));
|
|
184
|
-
proverId = Fr.
|
|
185
|
-
archiveRoot = Fr.
|
|
183
|
+
proverId = Fr.fromHexString(decodedArgs.args[6]);
|
|
184
|
+
archiveRoot = Fr.fromHexString(decodedArgs.args[1]);
|
|
186
185
|
proof = Proof.fromBuffer(Buffer.from(hexToBytes(decodedArgs.proof)));
|
|
187
186
|
}
|
|
188
187
|
else {
|
|
@@ -198,4 +197,4 @@ export async function getProofFromSubmitProofTx(publicClient, txHash, expectedPr
|
|
|
198
197
|
proof,
|
|
199
198
|
};
|
|
200
199
|
}
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV9yZXRyaWV2YWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXJjaGl2ZXIvZGF0YV9yZXRyaWV2YWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBR3pELE9BQU8sRUFBZSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFpQixTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRCxPQUFPLEVBT0wsa0JBQWtCLEVBQ2xCLFVBQVUsRUFDVixVQUFVLEdBQ1gsTUFBTSxNQUFNLENBQUM7QUFLZDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsd0JBQXdCLENBQzVDLE1BQW1GLEVBQ25GLFlBQTBCLEVBQzFCLGdCQUF3QixFQUN4QixjQUFzQixFQUN0QixTQUFpQixZQUFZLENBQUMsVUFBVSxDQUFDO0lBRXpDLE1BQU0sZUFBZSxHQUEyQixFQUFFLENBQUM7SUFDbkQsR0FBRyxDQUFDO1FBQ0YsSUFBSSxnQkFBZ0IsR0FBRyxjQUFjLEVBQUUsQ0FBQztZQUN0QyxNQUFNO1FBQ1IsQ0FBQztRQUNELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxNQUFNLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FDaEUsRUFBRSxFQUNGO1lBQ0UsU0FBUyxFQUFFLGdCQUFnQjtZQUMzQixPQUFPLEVBQUUsY0FBYyxHQUFHLEVBQUU7U0FDN0IsQ0FDRixDQUFDO1FBRUYsSUFBSSxtQkFBbUIsQ0FBQyxN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
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
import { type L2Block } from '@aztec/circuit-types';
|
|
2
|
-
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
2
|
+
import { type LmdbStatsCallback, type TelemetryClient } from '@aztec/telemetry-client';
|
|
3
3
|
export declare class ArchiverInstrumentation {
|
|
4
4
|
private telemetry;
|
|
5
5
|
private blockHeight;
|
|
6
6
|
private blockSize;
|
|
7
7
|
private syncDuration;
|
|
8
|
+
private l1BlocksSynced;
|
|
8
9
|
private proofsSubmittedDelay;
|
|
9
10
|
private proofsSubmittedCount;
|
|
10
11
|
private dbMetrics;
|
|
11
12
|
private log;
|
|
12
|
-
constructor(
|
|
13
|
-
|
|
14
|
-
mappingSize: number;
|
|
15
|
-
numItems: number;
|
|
16
|
-
actualSize: number;
|
|
17
|
-
}): void;
|
|
13
|
+
private constructor();
|
|
14
|
+
static new(telemetry: TelemetryClient, lmdbStats?: LmdbStatsCallback): Promise<ArchiverInstrumentation>;
|
|
18
15
|
isEnabled(): boolean;
|
|
19
16
|
processNewBlocks(syncTimePerBlock: number, blocks: L2Block[]): void;
|
|
20
17
|
updateLastProvenBlock(blockNumber: number): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/archiver/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,
|
|
1
|
+
{"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/archiver/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAKL,KAAK,iBAAiB,EAEtB,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAEjC,qBAAa,uBAAuB;IAWd,OAAO,CAAC,SAAS;IAVrC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAY;IAChC,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,oBAAoB,CAAY;IACxC,OAAO,CAAC,oBAAoB,CAAgB;IAC5C,OAAO,CAAC,SAAS,CAAc;IAE/B,OAAO,CAAC,GAAG,CAA4C;IAEvD,OAAO;WA2Ca,GAAG,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,iBAAiB;IAU1E,SAAS,IAAI,OAAO;IAIpB,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAS5D,qBAAqB,CAAC,WAAW,EAAE,MAAM;IAIzC,qBAAqB,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE;CAYhG"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Attributes, LmdbMetrics, Metrics, ValueType,
|
|
1
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
2
|
+
import { Attributes, LmdbMetrics, Metrics, ValueType, } from '@aztec/telemetry-client';
|
|
3
3
|
export class ArchiverInstrumentation {
|
|
4
|
-
constructor(telemetry) {
|
|
4
|
+
constructor(telemetry, lmdbStats) {
|
|
5
5
|
this.telemetry = telemetry;
|
|
6
|
-
this.log =
|
|
6
|
+
this.log = createLogger('archiver:instrumentation');
|
|
7
7
|
const meter = telemetry.getMeter('Archiver');
|
|
8
8
|
this.blockHeight = meter.createGauge(Metrics.ARCHIVER_BLOCK_HEIGHT, {
|
|
9
9
|
description: 'The height of the latest block processed by the archiver',
|
|
@@ -17,9 +17,6 @@ export class ArchiverInstrumentation {
|
|
|
17
17
|
unit: 'ms',
|
|
18
18
|
description: 'Duration to sync a block',
|
|
19
19
|
valueType: ValueType.INT,
|
|
20
|
-
advice: {
|
|
21
|
-
explicitBucketBoundaries: exponentialBuckets(1, 16),
|
|
22
|
-
},
|
|
23
20
|
});
|
|
24
21
|
this.proofsSubmittedCount = meter.createUpDownCounter(Metrics.ARCHIVER_ROLLUP_PROOF_COUNT, {
|
|
25
22
|
description: 'Number of proofs submitted',
|
|
@@ -29,23 +26,20 @@ export class ArchiverInstrumentation {
|
|
|
29
26
|
unit: 'ms',
|
|
30
27
|
description: 'Time after a block is submitted until its proof is published',
|
|
31
28
|
valueType: ValueType.INT,
|
|
32
|
-
advice: {
|
|
33
|
-
explicitBucketBoundaries: millisecondBuckets(1, 80), // 10ms -> ~3hs
|
|
34
|
-
},
|
|
35
29
|
});
|
|
36
|
-
this.
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}, {
|
|
40
|
-
name: Metrics.ARCHIVER_DB_USED_SIZE,
|
|
41
|
-
description: 'Database used size for the archiver',
|
|
42
|
-
}, {
|
|
43
|
-
name: Metrics.ARCHIVER_DB_NUM_ITEMS,
|
|
44
|
-
description: 'Num items in the archiver database',
|
|
30
|
+
this.l1BlocksSynced = meter.createUpDownCounter(Metrics.ARCHIVER_L1_BLOCKS_SYNCED, {
|
|
31
|
+
description: 'Number of blocks synced from L1',
|
|
32
|
+
valueType: ValueType.INT,
|
|
45
33
|
});
|
|
34
|
+
this.dbMetrics = new LmdbMetrics(meter, {
|
|
35
|
+
[Attributes.DB_DATA_TYPE]: 'archiver',
|
|
36
|
+
}, lmdbStats);
|
|
46
37
|
}
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
static async new(telemetry, lmdbStats) {
|
|
39
|
+
const instance = new ArchiverInstrumentation(telemetry, lmdbStats);
|
|
40
|
+
instance.l1BlocksSynced.add(0);
|
|
41
|
+
await instance.telemetry.flush();
|
|
42
|
+
return instance;
|
|
49
43
|
}
|
|
50
44
|
isEnabled() {
|
|
51
45
|
return this.telemetry.isEnabled();
|
|
@@ -53,6 +47,7 @@ export class ArchiverInstrumentation {
|
|
|
53
47
|
processNewBlocks(syncTimePerBlock, blocks) {
|
|
54
48
|
this.syncDuration.record(Math.ceil(syncTimePerBlock));
|
|
55
49
|
this.blockHeight.record(Math.max(...blocks.map(b => b.number)));
|
|
50
|
+
this.l1BlocksSynced.add(blocks.length);
|
|
56
51
|
for (const block of blocks) {
|
|
57
52
|
this.blockSize.record(block.body.txEffects.length);
|
|
58
53
|
}
|
|
@@ -73,4 +68,4 @@ export class ArchiverInstrumentation {
|
|
|
73
68
|
}
|
|
74
69
|
}
|
|
75
70
|
}
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FyY2hpdmVyL2luc3RydW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUNMLFVBQVUsRUFHVixXQUFXLEVBRVgsT0FBTyxFQUdQLFNBQVMsR0FDVixNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE1BQU0sT0FBTyx1QkFBdUI7SUFXbEMsWUFBNEIsU0FBMEIsRUFBRSxTQUE2QjtRQUF6RCxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQUY5QyxRQUFHLEdBQUcsWUFBWSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFHckQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFO1lBQ2xFLFdBQVcsRUFBRSwwREFBMEQ7WUFDdkUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxHQUFHO1NBQ3pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLEVBQUU7WUFDOUQsV0FBVyxFQUFFLHVDQUF1QztZQUNwRCxTQUFTLEVBQUUsU0FBUyxDQUFDLEdBQUc7U0FDekIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRTtZQUN4RSxJQUFJLEVBQUUsSUFBSTtZQUNWLFdBQVcsRUFBRSwwQkFBMEI7WUFDdkMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxHQUFHO1NBQ3pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUMsbUJBQW1C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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type InBlock, L2Block, type TxEffect, type TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
|
-
import { type AztecAddress,
|
|
2
|
+
import { type AztecAddress, BlockHeader } from '@aztec/circuits.js';
|
|
3
3
|
import { type AztecKVStore } from '@aztec/kv-store';
|
|
4
4
|
import { type L1Published } from '../structs/published.js';
|
|
5
5
|
/**
|
|
@@ -42,7 +42,7 @@ export declare class BlockStore {
|
|
|
42
42
|
* @param limit - The number of blocks to return.
|
|
43
43
|
* @returns The requested L2 block headers
|
|
44
44
|
*/
|
|
45
|
-
getBlockHeaders(start: number, limit: number): IterableIterator<
|
|
45
|
+
getBlockHeaders(start: number, limit: number): IterableIterator<BlockHeader>;
|
|
46
46
|
private getBlockFromBlockStorage;
|
|
47
47
|
/**
|
|
48
48
|
* Gets a tx effect.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/block_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,OAAO,EAAE,OAAO,EAAe,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvH,OAAO,EAA0B,KAAK,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/block_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,OAAO,EAAE,OAAO,EAAe,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvH,OAAO,EAA0B,KAAK,YAAY,EAAE,WAAW,EAAwB,MAAM,oBAAoB,CAAC;AAElH,OAAO,EAAE,KAAK,YAAY,EAAkD,MAAM,iBAAiB,CAAC;AAEpG,OAAO,EAAE,KAAK,WAAW,EAAwB,MAAM,yBAAyB,CAAC;AAUjF;;GAEG;AACH,qBAAa,UAAU;;IAwBT,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IAUpC;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA0B3D;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IA2BjD;;;;;OAKG;IACF,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAMhF;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,SAAS;IAS/D;;;;;OAKG;IACF,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC;IAM7E,OAAO,CAAC,wBAAwB;IAgBhC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS;IAkB1D;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAmB1D;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,SAAS;IAIjF;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,YAAY,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,SAAS;IAIpG;;;OAGG;IACH,uBAAuB,IAAI,MAAM;IAKjC;;;OAGG;IACH,uBAAuB,IAAI,MAAM,GAAG,SAAS;IAI7C,uBAAuB,CAAC,aAAa,EAAE,MAAM;IAI7C,sBAAsB,IAAI,MAAM;IAIhC,sBAAsB,CAAC,WAAW,EAAE,MAAM;IAI1C,sBAAsB,IAAI,MAAM,GAAG,SAAS;IAI5C,sBAAsB,CAAC,WAAW,EAAE,MAAM;CAgB3C"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var _BlockStore_instances, _BlockStore_blocks, _BlockStore_blockBodies, _BlockStore_lastSynchedL1Block, _BlockStore_lastProvenL2Block, _BlockStore_lastProvenL2Epoch, _BlockStore_txIndex, _BlockStore_contractIndex, _BlockStore_log, _BlockStore_computeBlockRange;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { Body, L2Block, L2BlockHash, TxReceipt } from '@aztec/circuit-types';
|
|
4
|
-
import { AppendOnlyTreeSnapshot,
|
|
5
|
-
import {
|
|
4
|
+
import { AppendOnlyTreeSnapshot, BlockHeader, INITIAL_L2_BLOCK_NUM } from '@aztec/circuits.js';
|
|
5
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
6
6
|
/**
|
|
7
7
|
* LMDB implementation of the ArchiverDataStore interface.
|
|
8
8
|
*/
|
|
@@ -24,7 +24,7 @@ export class BlockStore {
|
|
|
24
24
|
_BlockStore_txIndex.set(this, void 0);
|
|
25
25
|
/** Index mapping a contract's address (as a string) to its location in a block */
|
|
26
26
|
_BlockStore_contractIndex.set(this, void 0);
|
|
27
|
-
_BlockStore_log.set(this,
|
|
27
|
+
_BlockStore_log.set(this, createLogger('archiver:block_store'));
|
|
28
28
|
__classPrivateFieldSet(this, _BlockStore_blocks, db.openMap('archiver_blocks'), "f");
|
|
29
29
|
__classPrivateFieldSet(this, _BlockStore_blockBodies, db.openMap('archiver_block_bodies'), "f");
|
|
30
30
|
__classPrivateFieldSet(this, _BlockStore_txIndex, db.openMap('archiver_tx_index'), "f");
|
|
@@ -119,11 +119,11 @@ export class BlockStore {
|
|
|
119
119
|
*/
|
|
120
120
|
*getBlockHeaders(start, limit) {
|
|
121
121
|
for (const blockStorage of __classPrivateFieldGet(this, _BlockStore_blocks, "f").values(__classPrivateFieldGet(this, _BlockStore_instances, "m", _BlockStore_computeBlockRange).call(this, start, limit))) {
|
|
122
|
-
yield
|
|
122
|
+
yield BlockHeader.fromBuffer(blockStorage.header);
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
getBlockFromBlockStorage(blockStorage) {
|
|
126
|
-
const header =
|
|
126
|
+
const header = BlockHeader.fromBuffer(blockStorage.header);
|
|
127
127
|
const archive = AppendOnlyTreeSnapshot.fromBuffer(blockStorage.archive);
|
|
128
128
|
const blockHash = header.hash().toString();
|
|
129
129
|
const blockBodyBuffer = __classPrivateFieldGet(this, _BlockStore_blockBodies, "f").get(blockHash);
|
|
@@ -225,4 +225,4 @@ _BlockStore_blocks = new WeakMap(), _BlockStore_blockBodies = new WeakMap(), _Bl
|
|
|
225
225
|
const end = start + limit;
|
|
226
226
|
return { start, end };
|
|
227
227
|
};
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
228
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUvYmxvY2tfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFnQixPQUFPLEVBQUUsV0FBVyxFQUE4QixTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQXFCLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQWFyRDs7R0FFRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBd0JyQixZQUFvQixFQUFnQjs7UUFBaEIsT0FBRSxHQUFGLEVBQUUsQ0FBYztRQXZCcEMscUNBQXFDO1FBQ3JDLHFDQUF3QztRQUV4QyxtQ0FBbUM7UUFDbkMsMENBQXVDO1FBRXZDLCtFQUErRTtRQUMvRSxpREFBNEM7UUFFNUMsc0RBQXNEO1FBQ3RELGdEQUEyQztRQUUzQyxzREFBc0Q7UUFDdEQsZ0RBQTJDO1FBRTNDLDhFQUE4RTtRQUM5RSxzQ0FBNEM7UUFFNUMsa0ZBQWtGO1FBQ2xGLDRDQUFrRDtRQUVsRCwwQkFBTyxZQUFZLENBQUMsc0JBQXNCLENBQUMsRUFBQztRQUcxQyx1QkFBQSxJQUFJLHNCQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsTUFBQSxDQUFDO1FBQzdDLHVCQUFBLElBQUksMkJBQWdCLEVBQUUsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUMsTUFBQSxDQUFDO1FBQ3hELHVCQUFBLElBQUksdUJBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFBLENBQUM7UUFDaEQsdUJBQUEsSUFBSSw2QkFBa0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxNQUFBLENBQUM7UUFDNUQs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
|
|
@@ -33,7 +33,7 @@ export class ContractClassStore {
|
|
|
33
33
|
return value === undefined ? undefined : Fr.fromBuffer(value);
|
|
34
34
|
}
|
|
35
35
|
getContractClassIds() {
|
|
36
|
-
return Array.from(__classPrivateFieldGet(this, _ContractClassStore_contractClasses, "f").keys()).map(key => Fr.
|
|
36
|
+
return Array.from(__classPrivateFieldGet(this, _ContractClassStore_contractClasses, "f").keys()).map(key => Fr.fromHexString(key));
|
|
37
37
|
}
|
|
38
38
|
async addFunctions(contractClassId, newPrivateFunctions, newUnconstrainedFunctions) {
|
|
39
39
|
await this.db.transaction(() => {
|
|
@@ -114,4 +114,4 @@ function deserializeUnconstrainedFunction(buffer) {
|
|
|
114
114
|
artifactTreeLeafIndex: reader.readNumber(),
|
|
115
115
|
};
|
|
116
116
|
}
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfY2xhc3Nfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUvY29udHJhY3RfY2xhc3Nfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBSUwsRUFBRSxFQUNGLGdCQUFnQixFQUVoQixNQUFNLEdBQ1AsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRzFGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUFvQixFQUFnQjtRQUFoQixPQUFFLEdBQUYsRUFBRSxDQUFjO1FBSHBDLHNEQUEyQztRQUMzQywwREFBK0M7UUFHN0MsdUJBQUEsSUFBSSx1Q0FBb0IsRUFBRSxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxNQUFBLENBQUM7UUFDaEUsdUJBQUEsSUFBSSwyQ0FBd0IsRUFBRSxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQyxNQUFBLENBQUM7SUFDMUUsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FDcEIsYUFBa0MsRUFDbEMsa0JBQXNCLEVBQ3RCLFdBQW1CO1FBRW5CLE1BQU0sdUJBQUEsSUFBSSwyQ0FBaUIsQ0FBQyxjQUFjLENBQ3hDLGFBQWEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQzNCLDRCQUE0QixDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQy9FLENBQUM7UUFDRixNQUFNLHVCQUFBLElBQUksK0NBQXFCLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsS0FBSyxDQUFDLHFCQUFxQixDQUFDLGFB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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import { type ContractClassPublic, type ContractInstanceWithAddress, type ExecutablePrivateFunctionWithMembershipProof, type Fr, type
|
|
1
|
+
import { type GetUnencryptedLogsResponse, type InBlock, type InboxLeaf, type L2Block, type LogFilter, type TxHash, type TxReceipt, type TxScopedL2Log } from '@aztec/circuit-types';
|
|
2
|
+
import { type BlockHeader, type ContractClassPublic, type ContractInstanceWithAddress, type ExecutablePrivateFunctionWithMembershipProof, type Fr, type PrivateLog, type UnconstrainedFunctionWithMembershipProof } from '@aztec/circuits.js';
|
|
3
3
|
import { type ContractArtifact, FunctionSelector } from '@aztec/foundation/abi';
|
|
4
4
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
5
5
|
import { type AztecKVStore } from '@aztec/kv-store';
|
|
@@ -55,7 +55,7 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
|
|
|
55
55
|
* @param limit - The number of blocks to return.
|
|
56
56
|
* @returns The requested L2 blocks
|
|
57
57
|
*/
|
|
58
|
-
getBlockHeaders(start: number, limit: number): Promise<
|
|
58
|
+
getBlockHeaders(start: number, limit: number): Promise<BlockHeader[]>;
|
|
59
59
|
/**
|
|
60
60
|
* Gets a tx effect.
|
|
61
61
|
* @param txHash - The txHash of the tx corresponding to the tx effect.
|
|
@@ -103,13 +103,12 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
|
|
|
103
103
|
*/
|
|
104
104
|
getL1ToL2Messages(blockNumber: bigint): Promise<Fr[]>;
|
|
105
105
|
/**
|
|
106
|
-
*
|
|
107
|
-
* @param
|
|
108
|
-
* @param limit - The number of
|
|
109
|
-
* @
|
|
110
|
-
* @returns The requested logs.
|
|
106
|
+
* Retrieves all private logs from up to `limit` blocks, starting from the block number `from`.
|
|
107
|
+
* @param from - The block number from which to begin retrieving logs.
|
|
108
|
+
* @param limit - The maximum number of blocks to retrieve logs from.
|
|
109
|
+
* @returns An array of private logs from the specified range of blocks.
|
|
111
110
|
*/
|
|
112
|
-
|
|
111
|
+
getPrivateLogs(from: number, limit: number): Promise<PrivateLog[]>;
|
|
113
112
|
/**
|
|
114
113
|
* Gets all logs that match any of the received tags (i.e. logs with their first field equal to a tag).
|
|
115
114
|
* @param tags - The tags to filter the logs by.
|