@aztec/archiver 3.0.0-devnet.2 → 3.0.0-manual.20251030
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 -7
- package/dest/archiver/archiver.d.ts.map +1 -1
- package/dest/archiver/archiver.js +14 -17
- package/dest/factory.d.ts +2 -4
- package/dest/factory.d.ts.map +1 -1
- package/package.json +13 -13
- package/src/archiver/archiver.ts +21 -19
- package/src/factory.ts +1 -3
|
@@ -51,9 +51,7 @@ export declare class Archiver extends Archiver_base implements ArchiveSource, Tr
|
|
|
51
51
|
private readonly instrumentation;
|
|
52
52
|
private readonly l1constants;
|
|
53
53
|
private readonly log;
|
|
54
|
-
/**
|
|
55
|
-
* A promise in which we will be continually fetching new L2 blocks.
|
|
56
|
-
*/
|
|
54
|
+
/** A loop in which we will be continually fetching new L2 blocks. */
|
|
57
55
|
private runningPromise?;
|
|
58
56
|
private rollup;
|
|
59
57
|
private inbox;
|
|
@@ -61,6 +59,7 @@ export declare class Archiver extends Archiver_base implements ArchiveSource, Tr
|
|
|
61
59
|
private l1BlockNumber;
|
|
62
60
|
private l1Timestamp;
|
|
63
61
|
private initialSyncComplete;
|
|
62
|
+
private initialSyncPromise;
|
|
64
63
|
readonly tracer: Tracer;
|
|
65
64
|
/**
|
|
66
65
|
* Creates a new instance of the Archiver.
|
|
@@ -100,6 +99,7 @@ export declare class Archiver extends Archiver_base implements ArchiveSource, Tr
|
|
|
100
99
|
*/
|
|
101
100
|
start(blockUntilSynced: boolean): Promise<void>;
|
|
102
101
|
syncImmediate(): Promise<void>;
|
|
102
|
+
waitForInitialSync(): Promise<void>;
|
|
103
103
|
private syncSafe;
|
|
104
104
|
/**
|
|
105
105
|
* Fetches logs from L1 contracts and processes them.
|
|
@@ -130,10 +130,10 @@ export declare class Archiver extends Archiver_base implements ArchiveSource, Tr
|
|
|
130
130
|
}>;
|
|
131
131
|
getRollupAddress(): Promise<EthAddress>;
|
|
132
132
|
getRegistryAddress(): Promise<EthAddress>;
|
|
133
|
-
getL1BlockNumber(): bigint;
|
|
134
|
-
getL1Timestamp(): Promise<bigint>;
|
|
135
|
-
getL2SlotNumber(): Promise<bigint>;
|
|
136
|
-
getL2EpochNumber(): Promise<bigint>;
|
|
133
|
+
getL1BlockNumber(): bigint | undefined;
|
|
134
|
+
getL1Timestamp(): Promise<bigint | undefined>;
|
|
135
|
+
getL2SlotNumber(): Promise<bigint | undefined>;
|
|
136
|
+
getL2EpochNumber(): Promise<bigint | undefined>;
|
|
137
137
|
getBlocksForEpoch(epochNumber: bigint): Promise<L2Block[]>;
|
|
138
138
|
getBlockHeadersForEpoch(epochNumber: bigint): Promise<BlockHeader[]>;
|
|
139
139
|
isEpochComplete(epochNumber: bigint): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAGL,KAAK,SAAS,EAEd,KAAK,gBAAgB,EAEtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAY,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/archiver/archiver.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import { Buffer16, Buffer32 } from '@aztec/foundation/buffer';
|
|
|
11
11
|
import { merge, pick } from '@aztec/foundation/collection';
|
|
12
12
|
import { Fr } from '@aztec/foundation/fields';
|
|
13
13
|
import { createLogger } from '@aztec/foundation/log';
|
|
14
|
+
import { promiseWithResolvers } from '@aztec/foundation/promise';
|
|
14
15
|
import { RunningPromise, makeLoggingErrorHandler } from '@aztec/foundation/running-promise';
|
|
15
16
|
import { sleep } from '@aztec/foundation/sleep';
|
|
16
17
|
import { count } from '@aztec/foundation/string';
|
|
@@ -49,15 +50,14 @@ function mapArchiverConfig(config) {
|
|
|
49
50
|
instrumentation;
|
|
50
51
|
l1constants;
|
|
51
52
|
log;
|
|
52
|
-
/**
|
|
53
|
-
* A promise in which we will be continually fetching new L2 blocks.
|
|
54
|
-
*/ runningPromise;
|
|
53
|
+
/** A loop in which we will be continually fetching new L2 blocks. */ runningPromise;
|
|
55
54
|
rollup;
|
|
56
55
|
inbox;
|
|
57
56
|
store;
|
|
58
57
|
l1BlockNumber;
|
|
59
58
|
l1Timestamp;
|
|
60
59
|
initialSyncComplete;
|
|
60
|
+
initialSyncPromise;
|
|
61
61
|
tracer;
|
|
62
62
|
/**
|
|
63
63
|
* Creates a new instance of the Archiver.
|
|
@@ -74,6 +74,7 @@ function mapArchiverConfig(config) {
|
|
|
74
74
|
this.store = new ArchiverStoreHelper(dataStore);
|
|
75
75
|
this.rollup = new RollupContract(publicClient, l1Addresses.rollupAddress);
|
|
76
76
|
this.inbox = new InboxContract(publicClient, l1Addresses.inboxAddress);
|
|
77
|
+
this.initialSyncPromise = promiseWithResolvers();
|
|
77
78
|
}
|
|
78
79
|
/**
|
|
79
80
|
* Creates a new instance of the Archiver and blocks until it syncs from chain.
|
|
@@ -148,6 +149,9 @@ function mapArchiverConfig(config) {
|
|
|
148
149
|
}
|
|
149
150
|
return this.runningPromise.trigger();
|
|
150
151
|
}
|
|
152
|
+
waitForInitialSync() {
|
|
153
|
+
return this.initialSyncPromise.promise;
|
|
154
|
+
}
|
|
151
155
|
async syncSafe(initialRun) {
|
|
152
156
|
try {
|
|
153
157
|
await this.sync(initialRun);
|
|
@@ -241,6 +245,7 @@ function mapArchiverConfig(config) {
|
|
|
241
245
|
this.l1Timestamp = currentL1Timestamp;
|
|
242
246
|
this.l1BlockNumber = currentL1BlockNumber;
|
|
243
247
|
this.initialSyncComplete = true;
|
|
248
|
+
this.initialSyncPromise.resolve();
|
|
244
249
|
if (initialRun) {
|
|
245
250
|
this.log.info(`Initial archiver sync to L1 block ${currentL1BlockNumber} complete.`, {
|
|
246
251
|
l1BlockNumber: currentL1BlockNumber,
|
|
@@ -732,24 +737,16 @@ function mapArchiverConfig(config) {
|
|
|
732
737
|
return Promise.resolve(this.l1Addresses.registryAddress);
|
|
733
738
|
}
|
|
734
739
|
getL1BlockNumber() {
|
|
735
|
-
|
|
736
|
-
if (!l1BlockNumber) {
|
|
737
|
-
throw new Error('L1 block number not yet available. Complete an initial sync first.');
|
|
738
|
-
}
|
|
739
|
-
return l1BlockNumber;
|
|
740
|
+
return this.l1BlockNumber;
|
|
740
741
|
}
|
|
741
742
|
getL1Timestamp() {
|
|
742
|
-
|
|
743
|
-
if (!l1Timestamp) {
|
|
744
|
-
throw new Error('L1 timestamp not yet available. Complete an initial sync first.');
|
|
745
|
-
}
|
|
746
|
-
return Promise.resolve(l1Timestamp);
|
|
743
|
+
return Promise.resolve(this.l1Timestamp);
|
|
747
744
|
}
|
|
748
|
-
|
|
749
|
-
return getSlotAtTimestamp(
|
|
745
|
+
getL2SlotNumber() {
|
|
746
|
+
return Promise.resolve(this.l1Timestamp === undefined ? undefined : getSlotAtTimestamp(this.l1Timestamp, this.l1constants));
|
|
750
747
|
}
|
|
751
|
-
|
|
752
|
-
return getEpochNumberAtTimestamp(
|
|
748
|
+
getL2EpochNumber() {
|
|
749
|
+
return Promise.resolve(this.l1Timestamp === undefined ? undefined : getEpochNumberAtTimestamp(this.l1Timestamp, this.l1constants));
|
|
753
750
|
}
|
|
754
751
|
async getBlocksForEpoch(epochNumber) {
|
|
755
752
|
const [start, end] = getSlotRangeForEpoch(epochNumber, this.l1constants);
|
package/dest/factory.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
2
|
-
import type
|
|
3
|
-
import type { ArchiverApi, Service } from '@aztec/stdlib/interfaces/server';
|
|
4
|
-
import { type ArchiverDeps } from './archiver/archiver.js';
|
|
2
|
+
import { Archiver, type ArchiverDeps } from './archiver/archiver.js';
|
|
5
3
|
import type { ArchiverConfig } from './archiver/config.js';
|
|
6
4
|
import { KVArchiverDataStore } from './archiver/kv_archiver_store/kv_archiver_store.js';
|
|
7
5
|
export declare const ARCHIVER_STORE_NAME = "archiver";
|
|
@@ -17,5 +15,5 @@ export declare function createArchiverStore(userConfig: Pick<ArchiverConfig, 'ar
|
|
|
17
15
|
*/
|
|
18
16
|
export declare function createArchiver(config: ArchiverConfig & DataStoreConfig, deps: ArchiverDeps, opts?: {
|
|
19
17
|
blockUntilSync: boolean;
|
|
20
|
-
}): Promise<
|
|
18
|
+
}): Promise<Archiver>;
|
|
21
19
|
//# sourceMappingURL=factory.d.ts.map
|
package/dest/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAO9D,OAAO,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAuB,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AAE7G,eAAO,MAAM,mBAAmB,aAAa,CAAC;AAE9C,iCAAiC;AACjC,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,wBAAwB,GAAG,SAAS,CAAC,GAAG,eAAe,gCAQzF;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,GAAG,eAAe,EACxC,IAAI,EAAE,YAAY,EAClB,IAAI,GAAE;IAAE,cAAc,EAAE,OAAO,CAAA;CAA6B,GAC3D,OAAO,CAAC,QAAQ,CAAC,CAInB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/archiver",
|
|
3
|
-
"version": "3.0.0-
|
|
3
|
+
"version": "3.0.0-manual.20251030",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -66,18 +66,18 @@
|
|
|
66
66
|
]
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@aztec/blob-lib": "3.0.0-
|
|
70
|
-
"@aztec/blob-sink": "3.0.0-
|
|
71
|
-
"@aztec/constants": "3.0.0-
|
|
72
|
-
"@aztec/epoch-cache": "3.0.0-
|
|
73
|
-
"@aztec/ethereum": "3.0.0-
|
|
74
|
-
"@aztec/foundation": "3.0.0-
|
|
75
|
-
"@aztec/kv-store": "3.0.0-
|
|
76
|
-
"@aztec/l1-artifacts": "3.0.0-
|
|
77
|
-
"@aztec/noir-protocol-circuits-types": "3.0.0-
|
|
78
|
-
"@aztec/protocol-contracts": "3.0.0-
|
|
79
|
-
"@aztec/stdlib": "3.0.0-
|
|
80
|
-
"@aztec/telemetry-client": "3.0.0-
|
|
69
|
+
"@aztec/blob-lib": "3.0.0-manual.20251030",
|
|
70
|
+
"@aztec/blob-sink": "3.0.0-manual.20251030",
|
|
71
|
+
"@aztec/constants": "3.0.0-manual.20251030",
|
|
72
|
+
"@aztec/epoch-cache": "3.0.0-manual.20251030",
|
|
73
|
+
"@aztec/ethereum": "3.0.0-manual.20251030",
|
|
74
|
+
"@aztec/foundation": "3.0.0-manual.20251030",
|
|
75
|
+
"@aztec/kv-store": "3.0.0-manual.20251030",
|
|
76
|
+
"@aztec/l1-artifacts": "3.0.0-manual.20251030",
|
|
77
|
+
"@aztec/noir-protocol-circuits-types": "3.0.0-manual.20251030",
|
|
78
|
+
"@aztec/protocol-contracts": "3.0.0-manual.20251030",
|
|
79
|
+
"@aztec/stdlib": "3.0.0-manual.20251030",
|
|
80
|
+
"@aztec/telemetry-client": "3.0.0-manual.20251030",
|
|
81
81
|
"lodash.groupby": "^4.6.0",
|
|
82
82
|
"lodash.omit": "^4.5.0",
|
|
83
83
|
"tsc-watch": "^6.0.0",
|
package/src/archiver/archiver.ts
CHANGED
|
@@ -14,6 +14,7 @@ import { merge, pick } from '@aztec/foundation/collection';
|
|
|
14
14
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
15
15
|
import { Fr } from '@aztec/foundation/fields';
|
|
16
16
|
import { type Logger, createLogger } from '@aztec/foundation/log';
|
|
17
|
+
import { type PromiseWithResolvers, promiseWithResolvers } from '@aztec/foundation/promise';
|
|
17
18
|
import { RunningPromise, makeLoggingErrorHandler } from '@aztec/foundation/running-promise';
|
|
18
19
|
import { sleep } from '@aztec/foundation/sleep';
|
|
19
20
|
import { count } from '@aztec/foundation/string';
|
|
@@ -116,9 +117,7 @@ function mapArchiverConfig(config: Partial<ArchiverConfig>) {
|
|
|
116
117
|
* concern themselves with it.
|
|
117
118
|
*/
|
|
118
119
|
export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implements ArchiveSource, Traceable {
|
|
119
|
-
/**
|
|
120
|
-
* A promise in which we will be continually fetching new L2 blocks.
|
|
121
|
-
*/
|
|
120
|
+
/** A loop in which we will be continually fetching new L2 blocks. */
|
|
122
121
|
private runningPromise?: RunningPromise;
|
|
123
122
|
|
|
124
123
|
private rollup: RollupContract;
|
|
@@ -129,6 +128,7 @@ export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implem
|
|
|
129
128
|
private l1BlockNumber: bigint | undefined;
|
|
130
129
|
private l1Timestamp: bigint | undefined;
|
|
131
130
|
private initialSyncComplete: boolean = false;
|
|
131
|
+
private initialSyncPromise: PromiseWithResolvers<void>;
|
|
132
132
|
|
|
133
133
|
public readonly tracer: Tracer;
|
|
134
134
|
|
|
@@ -160,6 +160,7 @@ export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implem
|
|
|
160
160
|
|
|
161
161
|
this.rollup = new RollupContract(publicClient, l1Addresses.rollupAddress);
|
|
162
162
|
this.inbox = new InboxContract(publicClient, l1Addresses.inboxAddress);
|
|
163
|
+
this.initialSyncPromise = promiseWithResolvers();
|
|
163
164
|
}
|
|
164
165
|
|
|
165
166
|
/**
|
|
@@ -272,6 +273,10 @@ export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implem
|
|
|
272
273
|
return this.runningPromise.trigger();
|
|
273
274
|
}
|
|
274
275
|
|
|
276
|
+
public waitForInitialSync() {
|
|
277
|
+
return this.initialSyncPromise.promise;
|
|
278
|
+
}
|
|
279
|
+
|
|
275
280
|
private async syncSafe(initialRun: boolean) {
|
|
276
281
|
try {
|
|
277
282
|
await this.sync(initialRun);
|
|
@@ -384,6 +389,7 @@ export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implem
|
|
|
384
389
|
this.l1Timestamp = currentL1Timestamp;
|
|
385
390
|
this.l1BlockNumber = currentL1BlockNumber;
|
|
386
391
|
this.initialSyncComplete = true;
|
|
392
|
+
this.initialSyncPromise.resolve();
|
|
387
393
|
|
|
388
394
|
if (initialRun) {
|
|
389
395
|
this.log.info(`Initial archiver sync to L1 block ${currentL1BlockNumber} complete.`, {
|
|
@@ -991,28 +997,24 @@ export class Archiver extends (EventEmitter as new () => ArchiverEmitter) implem
|
|
|
991
997
|
return Promise.resolve(this.l1Addresses.registryAddress);
|
|
992
998
|
}
|
|
993
999
|
|
|
994
|
-
public getL1BlockNumber(): bigint {
|
|
995
|
-
|
|
996
|
-
if (!l1BlockNumber) {
|
|
997
|
-
throw new Error('L1 block number not yet available. Complete an initial sync first.');
|
|
998
|
-
}
|
|
999
|
-
return l1BlockNumber;
|
|
1000
|
+
public getL1BlockNumber(): bigint | undefined {
|
|
1001
|
+
return this.l1BlockNumber;
|
|
1000
1002
|
}
|
|
1001
1003
|
|
|
1002
|
-
public getL1Timestamp(): Promise<bigint> {
|
|
1003
|
-
|
|
1004
|
-
if (!l1Timestamp) {
|
|
1005
|
-
throw new Error('L1 timestamp not yet available. Complete an initial sync first.');
|
|
1006
|
-
}
|
|
1007
|
-
return Promise.resolve(l1Timestamp);
|
|
1004
|
+
public getL1Timestamp(): Promise<bigint | undefined> {
|
|
1005
|
+
return Promise.resolve(this.l1Timestamp);
|
|
1008
1006
|
}
|
|
1009
1007
|
|
|
1010
|
-
public
|
|
1011
|
-
return
|
|
1008
|
+
public getL2SlotNumber(): Promise<bigint | undefined> {
|
|
1009
|
+
return Promise.resolve(
|
|
1010
|
+
this.l1Timestamp === undefined ? undefined : getSlotAtTimestamp(this.l1Timestamp, this.l1constants),
|
|
1011
|
+
);
|
|
1012
1012
|
}
|
|
1013
1013
|
|
|
1014
|
-
public
|
|
1015
|
-
return
|
|
1014
|
+
public getL2EpochNumber(): Promise<bigint | undefined> {
|
|
1015
|
+
return Promise.resolve(
|
|
1016
|
+
this.l1Timestamp === undefined ? undefined : getEpochNumberAtTimestamp(this.l1Timestamp, this.l1constants),
|
|
1017
|
+
);
|
|
1016
1018
|
}
|
|
1017
1019
|
|
|
1018
1020
|
public async getBlocksForEpoch(epochNumber: bigint): Promise<L2Block[]> {
|
package/src/factory.ts
CHANGED
|
@@ -4,9 +4,7 @@ import { createStore } from '@aztec/kv-store/lmdb-v2';
|
|
|
4
4
|
import { protocolContractNames } from '@aztec/protocol-contracts';
|
|
5
5
|
import { BundledProtocolContractsProvider } from '@aztec/protocol-contracts/providers/bundle';
|
|
6
6
|
import { FunctionType, decodeFunctionSignature } from '@aztec/stdlib/abi';
|
|
7
|
-
import type { L2BlockSourceEventEmitter } from '@aztec/stdlib/block';
|
|
8
7
|
import { type ContractClassPublic, computePublicBytecodeCommitment } from '@aztec/stdlib/contract';
|
|
9
|
-
import type { ArchiverApi, Service } from '@aztec/stdlib/interfaces/server';
|
|
10
8
|
|
|
11
9
|
import { Archiver, type ArchiverDeps } from './archiver/archiver.js';
|
|
12
10
|
import type { ArchiverConfig } from './archiver/config.js';
|
|
@@ -38,7 +36,7 @@ export async function createArchiver(
|
|
|
38
36
|
config: ArchiverConfig & DataStoreConfig,
|
|
39
37
|
deps: ArchiverDeps,
|
|
40
38
|
opts: { blockUntilSync: boolean } = { blockUntilSync: true },
|
|
41
|
-
): Promise<
|
|
39
|
+
): Promise<Archiver> {
|
|
42
40
|
const archiverStore = await createArchiverStore(config);
|
|
43
41
|
await registerProtocolContracts(archiverStore);
|
|
44
42
|
return Archiver.createAndSync(config, archiverStore, deps, opts.blockUntilSync);
|