@aztec/archiver 0.0.1-commit.2ed92850 → 0.0.1-commit.3469e52
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/README.md +0 -9
- package/dest/archiver.d.ts +4 -4
- package/dest/archiver.d.ts.map +1 -1
- package/dest/archiver.js +20 -19
- package/dest/errors.d.ts +1 -6
- package/dest/errors.d.ts.map +1 -1
- package/dest/errors.js +0 -8
- package/dest/factory.d.ts +2 -3
- package/dest/factory.d.ts.map +1 -1
- package/dest/factory.js +3 -5
- package/dest/l1/bin/retrieve-calldata.js +2 -2
- package/dest/l1/data_retrieval.d.ts +1 -1
- package/dest/l1/data_retrieval.d.ts.map +1 -1
- package/dest/l1/data_retrieval.js +2 -2
- package/dest/modules/data_source_base.d.ts +17 -16
- package/dest/modules/data_source_base.d.ts.map +1 -1
- package/dest/modules/data_source_base.js +52 -21
- package/dest/modules/data_store_updater.d.ts +19 -23
- package/dest/modules/data_store_updater.d.ts.map +1 -1
- package/dest/modules/data_store_updater.js +49 -47
- package/dest/modules/instrumentation.d.ts +3 -3
- package/dest/modules/instrumentation.d.ts.map +1 -1
- package/dest/modules/l1_synchronizer.js +7 -7
- package/dest/store/block_store.d.ts +19 -33
- package/dest/store/block_store.d.ts.map +1 -1
- package/dest/store/block_store.js +39 -80
- package/dest/store/kv_archiver_store.d.ts +22 -26
- package/dest/store/kv_archiver_store.d.ts.map +1 -1
- package/dest/store/kv_archiver_store.js +14 -18
- package/dest/store/log_store.d.ts +4 -4
- package/dest/store/log_store.d.ts.map +1 -1
- package/dest/test/fake_l1_state.d.ts +4 -4
- package/dest/test/fake_l1_state.d.ts.map +1 -1
- package/dest/test/mock_archiver.js +1 -1
- package/dest/test/mock_l2_block_source.d.ts +18 -18
- package/dest/test/mock_l2_block_source.d.ts.map +1 -1
- package/dest/test/mock_l2_block_source.js +40 -39
- package/dest/test/mock_structs.js +4 -4
- package/package.json +13 -13
- package/src/archiver.ts +26 -24
- package/src/errors.ts +0 -12
- package/src/factory.ts +2 -4
- package/src/l1/bin/retrieve-calldata.ts +2 -7
- package/src/l1/data_retrieval.ts +3 -3
- package/src/modules/data_source_base.ts +76 -25
- package/src/modules/data_store_updater.ts +55 -59
- package/src/modules/instrumentation.ts +2 -2
- package/src/modules/l1_synchronizer.ts +9 -9
- package/src/store/block_store.ts +56 -103
- package/src/store/kv_archiver_store.ts +24 -32
- package/src/store/log_store.ts +8 -8
- package/src/test/fake_l1_state.ts +2 -2
- package/src/test/mock_archiver.ts +1 -1
- package/src/test/mock_l2_block_source.ts +60 -50
- package/src/test/mock_structs.ts +4 -4
|
@@ -2,9 +2,8 @@ import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/bra
|
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import type { AztecAsyncKVStore } from '@aztec/kv-store';
|
|
4
4
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
5
|
-
import { CheckpointedL2Block,
|
|
5
|
+
import { CheckpointedL2Block, L2BlockHash, L2BlockNew, type ValidateCheckpointResult } from '@aztec/stdlib/block';
|
|
6
6
|
import { L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
7
|
-
import type { L1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
8
7
|
import { CheckpointHeader } from '@aztec/stdlib/rollup';
|
|
9
8
|
import { AppendOnlyTreeSnapshot } from '@aztec/stdlib/trees';
|
|
10
9
|
import { BlockHeader, type IndexedTxEffect, TxHash, TxReceipt } from '@aztec/stdlib/tx';
|
|
@@ -18,33 +17,19 @@ export type CheckpointData = {
|
|
|
18
17
|
l1: L1PublishedData;
|
|
19
18
|
attestations: Buffer[];
|
|
20
19
|
};
|
|
21
|
-
export type RemoveCheckpointsResult = {
|
|
22
|
-
blocksRemoved: L2Block[] | undefined;
|
|
23
|
-
};
|
|
24
20
|
/**
|
|
25
21
|
* LMDB-based block storage for the archiver.
|
|
26
22
|
*/
|
|
27
23
|
export declare class BlockStore {
|
|
28
24
|
#private;
|
|
29
25
|
private db;
|
|
30
|
-
|
|
31
|
-
constructor(db: AztecAsyncKVStore, l1Constants: Pick<L1RollupConstants, 'epochDuration'>);
|
|
32
|
-
/**
|
|
33
|
-
* Computes the finalized block number based on the proven block number.
|
|
34
|
-
* A block is considered finalized when it's 2 epochs behind the proven block.
|
|
35
|
-
* TODO(#13569): Compute proper finalized block number based on L1 finalized block.
|
|
36
|
-
* TODO(palla/mbps): Even the provisional computation is wrong, since it should subtract checkpoints, not blocks
|
|
37
|
-
* @returns The finalized block number.
|
|
38
|
-
*/
|
|
39
|
-
getFinalizedL2BlockNumber(): Promise<BlockNumber>;
|
|
26
|
+
constructor(db: AztecAsyncKVStore);
|
|
40
27
|
/**
|
|
41
|
-
* Append new
|
|
42
|
-
*
|
|
43
|
-
* For checkpointed blocks (already published to L1), use addCheckpoints() instead.
|
|
44
|
-
* @param blocks - The proposed L2 blocks to be added to the store.
|
|
28
|
+
* Append new blocks to the store's list. All blocks must be for the 'current' checkpoint
|
|
29
|
+
* @param blocks - The L2 blocks to be added to the store.
|
|
45
30
|
* @returns True if the operation is successful.
|
|
46
31
|
*/
|
|
47
|
-
|
|
32
|
+
addBlocks(blocks: L2BlockNew[], opts?: {
|
|
48
33
|
force?: boolean;
|
|
49
34
|
}): Promise<boolean>;
|
|
50
35
|
/**
|
|
@@ -58,29 +43,30 @@ export declare class BlockStore {
|
|
|
58
43
|
private addBlockToDatabase;
|
|
59
44
|
private deleteBlock;
|
|
60
45
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
46
|
+
* Unwinds checkpoints from the database
|
|
47
|
+
* @param from - The tip of the chain, passed for verification purposes,
|
|
48
|
+
* ensuring that we don't end up deleting something we did not intend
|
|
49
|
+
* @param checkpointsToUnwind - The number of checkpoints we are to unwind
|
|
50
|
+
* @returns True if the operation is successful
|
|
64
51
|
*/
|
|
65
|
-
|
|
52
|
+
unwindCheckpoints(from: CheckpointNumber, checkpointsToUnwind: number): Promise<boolean>;
|
|
66
53
|
getCheckpointData(checkpointNumber: CheckpointNumber): Promise<CheckpointData | undefined>;
|
|
67
54
|
getRangeOfCheckpoints(from: CheckpointNumber, limit: number): Promise<CheckpointData[]>;
|
|
68
55
|
private checkpointDataFromCheckpointStorage;
|
|
69
|
-
getBlocksForCheckpoint(checkpointNumber: CheckpointNumber): Promise<
|
|
56
|
+
getBlocksForCheckpoint(checkpointNumber: CheckpointNumber): Promise<L2BlockNew[] | undefined>;
|
|
70
57
|
/**
|
|
71
58
|
* Gets all blocks that have the given slot number.
|
|
72
59
|
* Iterates backwards through blocks for efficiency since we usually query for the last slot.
|
|
73
60
|
* @param slotNumber - The slot number to search for.
|
|
74
61
|
* @returns All blocks with the given slot number, in ascending block number order.
|
|
75
62
|
*/
|
|
76
|
-
getBlocksForSlot(slotNumber: SlotNumber): Promise<
|
|
63
|
+
getBlocksForSlot(slotNumber: SlotNumber): Promise<L2BlockNew[]>;
|
|
77
64
|
/**
|
|
78
65
|
* Removes all blocks with block number > blockNumber.
|
|
79
|
-
* Does not remove any associated checkpoints.
|
|
80
66
|
* @param blockNumber - The block number to remove after.
|
|
81
67
|
* @returns The removed blocks (for event emission).
|
|
82
68
|
*/
|
|
83
|
-
|
|
69
|
+
unwindBlocksAfter(blockNumber: BlockNumber): Promise<L2BlockNew[]>;
|
|
84
70
|
getProvenBlockNumber(): Promise<BlockNumber>;
|
|
85
71
|
getLatestBlockNumber(): Promise<BlockNumber>;
|
|
86
72
|
getLatestCheckpointNumber(): Promise<CheckpointNumber>;
|
|
@@ -100,25 +86,25 @@ export declare class BlockStore {
|
|
|
100
86
|
* @param limit - The number of blocks to return.
|
|
101
87
|
* @returns The requested L2 blocks
|
|
102
88
|
*/
|
|
103
|
-
getBlocks(start: BlockNumber, limit: number): AsyncIterableIterator<
|
|
89
|
+
getBlocks(start: BlockNumber, limit: number): AsyncIterableIterator<L2BlockNew>;
|
|
104
90
|
/**
|
|
105
91
|
* Gets an L2 block.
|
|
106
92
|
* @param blockNumber - The number of the block to return.
|
|
107
93
|
* @returns The requested L2 block.
|
|
108
94
|
*/
|
|
109
|
-
getBlock(blockNumber: BlockNumber): Promise<
|
|
95
|
+
getBlock(blockNumber: BlockNumber): Promise<L2BlockNew | undefined>;
|
|
110
96
|
/**
|
|
111
97
|
* Gets an L2 block by its hash.
|
|
112
98
|
* @param blockHash - The hash of the block to return.
|
|
113
99
|
* @returns The requested L2 block.
|
|
114
100
|
*/
|
|
115
|
-
getBlockByHash(blockHash: L2BlockHash): Promise<
|
|
101
|
+
getBlockByHash(blockHash: L2BlockHash): Promise<L2BlockNew | undefined>;
|
|
116
102
|
/**
|
|
117
103
|
* Gets an L2 block by its archive root.
|
|
118
104
|
* @param archive - The archive root of the block to return.
|
|
119
105
|
* @returns The requested L2 block.
|
|
120
106
|
*/
|
|
121
|
-
getBlockByArchive(archive: Fr): Promise<
|
|
107
|
+
getBlockByArchive(archive: Fr): Promise<L2BlockNew | undefined>;
|
|
122
108
|
/**
|
|
123
109
|
* Gets a block header by its hash.
|
|
124
110
|
* @param blockHash - The hash of the block to return.
|
|
@@ -189,4 +175,4 @@ export declare class BlockStore {
|
|
|
189
175
|
*/
|
|
190
176
|
setPendingChainValidationStatus(status: ValidateCheckpointResult | undefined): Promise<void>;
|
|
191
177
|
}
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfc3RvcmUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdG9yZS9ibG9ja19zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUF5QixVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuSCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFNcEQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQTZDLE1BQU0saUJBQWlCLENBQUM7QUFDcEcsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUVMLG1CQUFtQixFQUVuQixXQUFXLEVBQ1gsVUFBVSxFQUNWLEtBQUssd0JBQXdCLEVBRzlCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFDTCxXQUFXLEVBQ1gsS0FBSyxlQUFlLEVBRXBCLE1BQU0sRUFDTixTQUFTLEVBR1YsTUFBTSxrQkFBa0IsQ0FBQztBQWMxQixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssUUFBUSxFQUFFLEtBQUssTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFzQnpFLE1BQU0sTUFBTSxjQUFjLEdBQUc7SUFDM0IsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbkMsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0lBQ3pCLE9BQU8sRUFBRSxzQkFBc0IsQ0FBQztJQUNoQyxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsRUFBRSxFQUFFLGVBQWUsQ0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../src/store/block_store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAyB,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACnH,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAMpD,OAAO,KAAK,EAAE,iBAAiB,EAA6C,MAAM,iBAAiB,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAEL,mBAAmB,EAEnB,
|
|
1
|
+
{"version":3,"file":"block_store.d.ts","sourceRoot":"","sources":["../../src/store/block_store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAyB,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACnH,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAMpD,OAAO,KAAK,EAAE,iBAAiB,EAA6C,MAAM,iBAAiB,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAEL,mBAAmB,EAEnB,WAAW,EACX,UAAU,EACV,KAAK,wBAAwB,EAG9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,KAAK,eAAe,EAEpB,MAAM,EACN,SAAS,EAGV,MAAM,kBAAkB,CAAC;AAc1B,OAAO,EAAE,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAsBzE,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,sBAAsB,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,eAAe,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,qBAAa,UAAU;;IAiCT,OAAO,CAAC,EAAE;IAAtB,YAAoB,EAAE,EAAE,iBAAiB,EAWxC;IAED;;;;OAIG;IACG,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAgFtF;IAED;;;;OAIG;IACG,cAAc,CAAC,WAAW,EAAE,mBAAmB,EAAE,EAAE,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAwGzG;YAEa,kBAAkB;YA6BlB,WAAW;IAgBzB;;;;;;OAMG;IACG,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,oBAwC1E;IAEK,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAM/F;IAEK,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAU5F;IAED,OAAO,CAAC,mCAAmC;IAarC,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAelG;IAED;;;;;OAKG;IACG,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAiBpE;IAED;;;;OAIG;IACG,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAuBvE;IAEK,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,CAWjD;IAEK,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,CAKjD;IAEK,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAM3D;IAEK,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAmBxF;IAED;;;;;OAKG;IACI,qBAAqB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC,mBAAmB,CAAC,CAoB1G;IAEK,0BAA0B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAMxF;IAEK,6BAA6B,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAMzF;IAED;;;;;OAKG;IACI,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAOrF;IAED;;;;OAIG;IACG,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAMxE;IAED;;;;OAIG;IACG,cAAc,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAM5E;IAED;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAMpE;IAED;;;;OAIG;IACG,oBAAoB,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAUnF;IAED;;;;OAIG;IACG,uBAAuB,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAU3E;IAED;;;;;OAKG;IACI,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAU5F;YAEc,gBAAgB;YAajB,wBAAwB;IA6CtC;;;;OAIG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAMtE;IAED;;;;OAIG;IACG,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAcxE;IAED;;;;OAIG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAOtG;IAED;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAE5G;IAED;;;OAGG;IACG,4BAA4B,IAAI,OAAO,CAAC,WAAW,CAAC,CAOzD;IAEK,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAGnD;IAED;;;OAGG;IACH,uBAAuB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAErD;IAED,uBAAuB,CAAC,aAAa,EAAE,MAAM,oBAE5C;IAEK,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAQ3D;IAEK,yBAAyB,CAAC,gBAAgB,EAAE,gBAAgB,oBAGjE;IAcD;;;OAGG;IACG,+BAA+B,IAAI,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAMrF;IAED;;;OAGG;IACG,+BAA+B,CAAC,MAAM,EAAE,wBAAwB,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAOjG;CACF"}
|
|
@@ -6,18 +6,17 @@ import { createLogger } from '@aztec/foundation/log';
|
|
|
6
6
|
import { BufferReader } from '@aztec/foundation/serialize';
|
|
7
7
|
import { bufferToHex } from '@aztec/foundation/string';
|
|
8
8
|
import { isDefined } from '@aztec/foundation/types';
|
|
9
|
-
import { Body, CheckpointedL2Block, CommitteeAttestation,
|
|
9
|
+
import { Body, CheckpointedL2Block, CommitteeAttestation, L2BlockHash, L2BlockNew, deserializeValidateCheckpointResult, serializeValidateCheckpointResult } from '@aztec/stdlib/block';
|
|
10
10
|
import { L1PublishedData } from '@aztec/stdlib/checkpoint';
|
|
11
11
|
import { CheckpointHeader } from '@aztec/stdlib/rollup';
|
|
12
12
|
import { AppendOnlyTreeSnapshot } from '@aztec/stdlib/trees';
|
|
13
|
-
import { BlockHeader, TxHash, TxReceipt,
|
|
14
|
-
import { BlockArchiveNotConsistentError, BlockIndexNotSequentialError, BlockNotFoundError, BlockNumberNotSequentialError,
|
|
13
|
+
import { BlockHeader, TxHash, TxReceipt, deserializeIndexedTxEffect, serializeIndexedTxEffect } from '@aztec/stdlib/tx';
|
|
14
|
+
import { BlockArchiveNotConsistentError, BlockIndexNotSequentialError, BlockNotFoundError, BlockNumberNotSequentialError, CheckpointNotFoundError, CheckpointNumberNotConsistentError, CheckpointNumberNotSequentialError, InitialBlockNumberNotSequentialError, InitialCheckpointNumberNotSequentialError } from '../errors.js';
|
|
15
15
|
export { TxReceipt } from '@aztec/stdlib/tx';
|
|
16
16
|
/**
|
|
17
17
|
* LMDB-based block storage for the archiver.
|
|
18
18
|
*/ export class BlockStore {
|
|
19
19
|
db;
|
|
20
|
-
l1Constants;
|
|
21
20
|
/** Map block number to block data */ #blocks;
|
|
22
21
|
/** Map checkpoint number to checkpoint data */ #checkpoints;
|
|
23
22
|
/** Map block hash to list of tx hashes */ #blockTxs;
|
|
@@ -29,9 +28,8 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
29
28
|
/** Index mapping block hash to block number */ #blockHashIndex;
|
|
30
29
|
/** Index mapping block archive to block number */ #blockArchiveIndex;
|
|
31
30
|
#log;
|
|
32
|
-
constructor(db
|
|
31
|
+
constructor(db){
|
|
33
32
|
this.db = db;
|
|
34
|
-
this.l1Constants = l1Constants;
|
|
35
33
|
this.#log = createLogger('archiver:block_store');
|
|
36
34
|
this.#blocks = db.openMap('archiver_blocks');
|
|
37
35
|
this.#blockTxs = db.openMap('archiver_block_txs');
|
|
@@ -45,22 +43,10 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
45
43
|
this.#checkpoints = db.openMap('archiver_checkpoints');
|
|
46
44
|
}
|
|
47
45
|
/**
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* TODO(#13569): Compute proper finalized block number based on L1 finalized block.
|
|
51
|
-
* TODO(palla/mbps): Even the provisional computation is wrong, since it should subtract checkpoints, not blocks
|
|
52
|
-
* @returns The finalized block number.
|
|
53
|
-
*/ async getFinalizedL2BlockNumber() {
|
|
54
|
-
const provenBlockNumber = await this.getProvenBlockNumber();
|
|
55
|
-
return BlockNumber(Math.max(provenBlockNumber - this.l1Constants.epochDuration * 2, 0));
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Append new proposed blocks to the store's list. All blocks must be for the 'current' checkpoint.
|
|
59
|
-
* These are uncheckpointed blocks that have been proposed by the sequencer but not yet included in a checkpoint on L1.
|
|
60
|
-
* For checkpointed blocks (already published to L1), use addCheckpoints() instead.
|
|
61
|
-
* @param blocks - The proposed L2 blocks to be added to the store.
|
|
46
|
+
* Append new blocks to the store's list. All blocks must be for the 'current' checkpoint
|
|
47
|
+
* @param blocks - The L2 blocks to be added to the store.
|
|
62
48
|
* @returns True if the operation is successful.
|
|
63
|
-
*/ async
|
|
49
|
+
*/ async addBlocks(blocks, opts = {}) {
|
|
64
50
|
if (blocks.length === 0) {
|
|
65
51
|
return true;
|
|
66
52
|
}
|
|
@@ -73,11 +59,6 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
73
59
|
// Extract the latest block and checkpoint numbers
|
|
74
60
|
const previousBlockNumber = await this.getLatestBlockNumber();
|
|
75
61
|
const previousCheckpointNumber = await this.getLatestCheckpointNumber();
|
|
76
|
-
// Verify we're not overwriting checkpointed blocks
|
|
77
|
-
const lastCheckpointedBlockNumber = await this.getCheckpointedL2BlockNumber();
|
|
78
|
-
if (!opts.force && firstBlockNumber <= lastCheckpointedBlockNumber) {
|
|
79
|
-
throw new CannotOverwriteCheckpointedBlockError(firstBlockNumber, lastCheckpointedBlockNumber);
|
|
80
|
-
}
|
|
81
62
|
// Check that the first block number is the expected one
|
|
82
63
|
if (!opts.force && previousBlockNumber !== firstBlockNumber - 1) {
|
|
83
64
|
throw new InitialBlockNumberNotSequentialError(firstBlockNumber, previousBlockNumber);
|
|
@@ -247,45 +228,41 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
247
228
|
await this.#blockArchiveIndex.delete(block.archive.root.toString());
|
|
248
229
|
}
|
|
249
230
|
/**
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
253
|
-
|
|
231
|
+
* Unwinds checkpoints from the database
|
|
232
|
+
* @param from - The tip of the chain, passed for verification purposes,
|
|
233
|
+
* ensuring that we don't end up deleting something we did not intend
|
|
234
|
+
* @param checkpointsToUnwind - The number of checkpoints we are to unwind
|
|
235
|
+
* @returns True if the operation is successful
|
|
236
|
+
*/ async unwindCheckpoints(from, checkpointsToUnwind) {
|
|
254
237
|
return await this.db.transactionAsync(async ()=>{
|
|
255
|
-
const
|
|
256
|
-
if (
|
|
257
|
-
|
|
258
|
-
return {
|
|
259
|
-
blocksRemoved: undefined
|
|
260
|
-
};
|
|
238
|
+
const last = await this.getLatestCheckpointNumber();
|
|
239
|
+
if (from !== last) {
|
|
240
|
+
throw new Error(`Can only unwind checkpoints from the tip (requested ${from} but current tip is ${last})`);
|
|
261
241
|
}
|
|
262
|
-
// If the proven checkpoint is beyond the target, update it
|
|
263
242
|
const proven = await this.getProvenCheckpointNumber();
|
|
264
|
-
if (
|
|
265
|
-
this
|
|
266
|
-
await this.setProvenCheckpointNumber(checkpointNumber);
|
|
243
|
+
if (from - checkpointsToUnwind < proven) {
|
|
244
|
+
await this.setProvenCheckpointNumber(CheckpointNumber(from - checkpointsToUnwind));
|
|
267
245
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
246
|
+
for(let i = 0; i < checkpointsToUnwind; i++){
|
|
247
|
+
const checkpointNumber = from - i;
|
|
248
|
+
const checkpoint = await this.#checkpoints.getAsync(checkpointNumber);
|
|
249
|
+
if (checkpoint === undefined) {
|
|
250
|
+
this.#log.warn(`Cannot remove checkpoint ${checkpointNumber} from the store since we don't have it`);
|
|
251
|
+
continue;
|
|
252
|
+
}
|
|
253
|
+
await this.#checkpoints.delete(checkpointNumber);
|
|
254
|
+
const maxBlock = checkpoint.startBlock + checkpoint.numBlocks - 1;
|
|
255
|
+
for(let blockNumber = checkpoint.startBlock; blockNumber <= maxBlock; blockNumber++){
|
|
256
|
+
const block = await this.getBlock(BlockNumber(blockNumber));
|
|
257
|
+
if (block === undefined) {
|
|
258
|
+
this.#log.warn(`Cannot remove block ${blockNumber} from the store since we don't have it`);
|
|
259
|
+
continue;
|
|
260
|
+
}
|
|
261
|
+
await this.deleteBlock(block);
|
|
262
|
+
this.#log.debug(`Unwound block ${blockNumber} ${(await block.hash()).toString()} for checkpoint ${checkpointNumber}`);
|
|
276
263
|
}
|
|
277
|
-
lastBlockToKeep = BlockNumber(targetCheckpoint.startBlock + targetCheckpoint.numBlocks - 1);
|
|
278
|
-
}
|
|
279
|
-
// Remove all blocks after lastBlockToKeep (both checkpointed and uncheckpointed)
|
|
280
|
-
const blocksRemoved = await this.removeBlocksAfter(lastBlockToKeep);
|
|
281
|
-
// Remove all checkpoints after the target
|
|
282
|
-
for(let c = latestCheckpointNumber; c > checkpointNumber; c = CheckpointNumber(c - 1)){
|
|
283
|
-
await this.#checkpoints.delete(c);
|
|
284
|
-
this.#log.debug(`Removed checkpoint ${c}`);
|
|
285
264
|
}
|
|
286
|
-
return
|
|
287
|
-
blocksRemoved
|
|
288
|
-
};
|
|
265
|
+
return true;
|
|
289
266
|
});
|
|
290
267
|
}
|
|
291
268
|
async getCheckpointData(checkpointNumber) {
|
|
@@ -355,10 +332,9 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
355
332
|
}
|
|
356
333
|
/**
|
|
357
334
|
* Removes all blocks with block number > blockNumber.
|
|
358
|
-
* Does not remove any associated checkpoints.
|
|
359
335
|
* @param blockNumber - The block number to remove after.
|
|
360
336
|
* @returns The removed blocks (for event emission).
|
|
361
|
-
*/ async
|
|
337
|
+
*/ async unwindBlocksAfter(blockNumber) {
|
|
362
338
|
return await this.db.transactionAsync(async ()=>{
|
|
363
339
|
const removedBlocks = [];
|
|
364
340
|
// Get the latest block number to determine the range
|
|
@@ -580,7 +556,7 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
580
556
|
txEffects.push(deserializeIndexedTxEffect(txEffect).data);
|
|
581
557
|
}
|
|
582
558
|
const body = new Body(txEffects);
|
|
583
|
-
const block = new
|
|
559
|
+
const block = new L2BlockNew(archive, header, body, CheckpointNumber(blockStorage.checkpointNumber), IndexWithinCheckpoint(blockStorage.indexWithinCheckpoint));
|
|
584
560
|
if (block.number !== blockNumber) {
|
|
585
561
|
throw new Error(`Block number mismatch when retrieving block from archive (expected ${blockNumber} but got ${block.number} with hash ${blockHashString})`);
|
|
586
562
|
}
|
|
@@ -606,24 +582,7 @@ export { TxReceipt } from '@aztec/stdlib/tx';
|
|
|
606
582
|
if (!txEffect) {
|
|
607
583
|
return undefined;
|
|
608
584
|
}
|
|
609
|
-
|
|
610
|
-
// Use existing archiver methods to determine finalization level
|
|
611
|
-
const [provenBlockNumber, checkpointedBlockNumber, finalizedBlockNumber] = await Promise.all([
|
|
612
|
-
this.getProvenBlockNumber(),
|
|
613
|
-
this.getCheckpointedL2BlockNumber(),
|
|
614
|
-
this.getFinalizedL2BlockNumber()
|
|
615
|
-
]);
|
|
616
|
-
let status;
|
|
617
|
-
if (blockNumber <= finalizedBlockNumber) {
|
|
618
|
-
status = TxStatus.FINALIZED;
|
|
619
|
-
} else if (blockNumber <= provenBlockNumber) {
|
|
620
|
-
status = TxStatus.PROVEN;
|
|
621
|
-
} else if (blockNumber <= checkpointedBlockNumber) {
|
|
622
|
-
status = TxStatus.CHECKPOINTED;
|
|
623
|
-
} else {
|
|
624
|
-
status = TxStatus.PROPOSED;
|
|
625
|
-
}
|
|
626
|
-
return new TxReceipt(txHash, status, TxReceipt.executionResultFromRevertCode(txEffect.data.revertCode), undefined, txEffect.data.transactionFee.toBigInt(), txEffect.l2BlockHash, blockNumber);
|
|
585
|
+
return new TxReceipt(txHash, TxReceipt.statusFromRevertCode(txEffect.data.revertCode), '', txEffect.data.transactionFee.toBigInt(), txEffect.l2BlockHash, BlockNumber(txEffect.l2BlockNumber));
|
|
627
586
|
}
|
|
628
587
|
/**
|
|
629
588
|
* Looks up which block included the requested tx effect.
|
|
@@ -4,16 +4,15 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
4
4
|
import type { AztecAsyncKVStore, CustomRange, StoreSize } from '@aztec/kv-store';
|
|
5
5
|
import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
6
6
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
7
|
-
import { CheckpointedL2Block,
|
|
7
|
+
import { CheckpointedL2Block, L2BlockNew, type ValidateCheckpointResult } from '@aztec/stdlib/block';
|
|
8
8
|
import type { PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
9
9
|
import type { ContractClassPublic, ContractDataSource, ContractInstanceUpdateWithAddress, ContractInstanceWithAddress, ExecutablePrivateFunctionWithMembershipProof, UtilityFunctionWithMembershipProof } from '@aztec/stdlib/contract';
|
|
10
|
-
import type { L1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
11
10
|
import type { GetContractClassLogsResponse, GetPublicLogsResponse } from '@aztec/stdlib/interfaces/client';
|
|
12
11
|
import type { LogFilter, SiloedTag, Tag, TxScopedL2Log } from '@aztec/stdlib/logs';
|
|
13
12
|
import type { BlockHeader, TxHash, TxReceipt } from '@aztec/stdlib/tx';
|
|
14
13
|
import type { UInt64 } from '@aztec/stdlib/types';
|
|
15
14
|
import type { InboxMessage } from '../structs/inbox_message.js';
|
|
16
|
-
import { type CheckpointData
|
|
15
|
+
import { type CheckpointData } from './block_store.js';
|
|
17
16
|
export declare const ARCHIVER_DB_VERSION = 5;
|
|
18
17
|
export declare const MAX_FUNCTION_SIGNATURES = 1000;
|
|
19
18
|
export declare const MAX_FUNCTION_NAME_LEN = 256;
|
|
@@ -35,7 +34,7 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
35
34
|
private db;
|
|
36
35
|
static readonly SCHEMA_VERSION = 5;
|
|
37
36
|
private functionNames;
|
|
38
|
-
constructor(db: AztecAsyncKVStore, logsMaxPageSize
|
|
37
|
+
constructor(db: AztecAsyncKVStore, logsMaxPageSize?: number);
|
|
39
38
|
/** Opens a new transaction to the underlying store and runs all operations within it. */
|
|
40
39
|
transactionAsync<T>(callback: () => Promise<T>): Promise<T>;
|
|
41
40
|
getBlockNumber(): Promise<BlockNumber>;
|
|
@@ -44,8 +43,6 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
44
43
|
backupTo(path: string, compress?: boolean): Promise<string>;
|
|
45
44
|
/** Closes the underlying data store. */
|
|
46
45
|
close(): Promise<void>;
|
|
47
|
-
/** Computes the finalized block number based on the proven block number. */
|
|
48
|
-
getFinalizedL2BlockNumber(): Promise<BlockNumber>;
|
|
49
46
|
/** Looks up a public function name given a selector. */
|
|
50
47
|
getDebugFunctionName(_address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
51
48
|
/** Register a public function signature, so it can be looked up by selector. */
|
|
@@ -94,13 +91,11 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
94
91
|
addContractInstanceUpdates(data: ContractInstanceUpdateWithAddress[], timestamp: UInt64): Promise<boolean>;
|
|
95
92
|
deleteContractInstanceUpdates(data: ContractInstanceUpdateWithAddress[], timestamp: UInt64): Promise<boolean>;
|
|
96
93
|
/**
|
|
97
|
-
* Append new
|
|
98
|
-
*
|
|
99
|
-
* For checkpointed blocks (already published to L1), use addCheckpoints() instead.
|
|
100
|
-
* @param blocks - The proposed L2 blocks to be added to the store.
|
|
94
|
+
* Append new blocks to the store's list.
|
|
95
|
+
* @param blocks - The L2 blocks to be added to the store and the last processed L1 block.
|
|
101
96
|
* @returns True if the operation is successful.
|
|
102
97
|
*/
|
|
103
|
-
|
|
98
|
+
addBlocks(blocks: L2BlockNew[], opts?: {
|
|
104
99
|
force?: boolean;
|
|
105
100
|
checkpointNumber?: number;
|
|
106
101
|
}): Promise<boolean>;
|
|
@@ -117,11 +112,13 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
117
112
|
*/
|
|
118
113
|
getLatestBlockNumber(): Promise<BlockNumber>;
|
|
119
114
|
/**
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
115
|
+
* Unwinds checkpoints from the database
|
|
116
|
+
* @param from - The tip of the chain, passed for verification purposes,
|
|
117
|
+
* ensuring that we don't end up deleting something we did not intend
|
|
118
|
+
* @param checkpointsToUnwind - The number of checkpoints we are to unwind
|
|
119
|
+
* @returns True if the operation is successful
|
|
123
120
|
*/
|
|
124
|
-
|
|
121
|
+
unwindCheckpoints(from: CheckpointNumber, checkpointsToUnwind: number): Promise<boolean>;
|
|
125
122
|
/**
|
|
126
123
|
* Appends new checkpoints, and their blocks to the store's collection
|
|
127
124
|
* @param checkpoints The collection of checkpoints to be added
|
|
@@ -147,24 +144,24 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
147
144
|
* Returns the block for the given number, or undefined if not exists.
|
|
148
145
|
* @param number - The block number to return.
|
|
149
146
|
*/
|
|
150
|
-
getBlock(number: BlockNumber): Promise<
|
|
147
|
+
getBlock(number: BlockNumber): Promise<L2BlockNew | undefined>;
|
|
151
148
|
/**
|
|
152
149
|
* Returns the block for the given hash, or undefined if not exists.
|
|
153
150
|
* @param blockHash - The block hash to return.
|
|
154
151
|
*/
|
|
155
|
-
getBlockByHash(blockHash: Fr): Promise<
|
|
152
|
+
getBlockByHash(blockHash: Fr): Promise<L2BlockNew | undefined>;
|
|
156
153
|
/**
|
|
157
154
|
* Returns the block for the given archive root, or undefined if not exists.
|
|
158
155
|
* @param archive - The archive root to return.
|
|
159
156
|
*/
|
|
160
|
-
getBlockByArchive(archive: Fr): Promise<
|
|
157
|
+
getBlockByArchive(archive: Fr): Promise<L2BlockNew | undefined>;
|
|
161
158
|
/**
|
|
162
159
|
* Gets up to `limit` amount of published L2 blocks starting from `from`.
|
|
163
160
|
* @param from - Number of the first block to return (inclusive).
|
|
164
161
|
* @param limit - The number of blocks to return.
|
|
165
162
|
* @returns The requested L2 blocks.
|
|
166
163
|
*/
|
|
167
|
-
getBlocks(from: BlockNumber, limit: number): Promise<
|
|
164
|
+
getBlocks(from: BlockNumber, limit: number): Promise<L2BlockNew[]>;
|
|
168
165
|
/**
|
|
169
166
|
* Gets up to `limit` amount of checkpointed L2 blocks starting from `from`.
|
|
170
167
|
* @param from - Number of the first block to return (inclusive).
|
|
@@ -206,8 +203,8 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
206
203
|
* @param blocks - The blocks for which to add the logs.
|
|
207
204
|
* @returns True if the operation is successful.
|
|
208
205
|
*/
|
|
209
|
-
addLogs(blocks:
|
|
210
|
-
deleteLogs(blocks:
|
|
206
|
+
addLogs(blocks: L2BlockNew[]): Promise<boolean>;
|
|
207
|
+
deleteLogs(blocks: L2BlockNew[]): Promise<boolean>;
|
|
211
208
|
/**
|
|
212
209
|
* Get the total number of L1 to L2 messages
|
|
213
210
|
* @returns The number of L1 to L2 messages in the store
|
|
@@ -316,7 +313,7 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
316
313
|
* @param checkpointNumber Retrieves all blocks for the given checkpoint
|
|
317
314
|
* @returns The collection of blocks for the requested checkpoint if available (undefined otherwise)
|
|
318
315
|
*/
|
|
319
|
-
getBlocksForCheckpoint(checkpointNumber: CheckpointNumber): Promise<
|
|
316
|
+
getBlocksForCheckpoint(checkpointNumber: CheckpointNumber): Promise<L2BlockNew[] | undefined>;
|
|
320
317
|
/**
|
|
321
318
|
* Returns checkpoint data for the requested checkpoint number
|
|
322
319
|
* @param checkpointNumber - The checkpoint requested
|
|
@@ -328,13 +325,12 @@ export declare class KVArchiverDataStore implements ContractDataSource {
|
|
|
328
325
|
* @param slotNumber - The slot number to search for.
|
|
329
326
|
* @returns All blocks with the given slot number.
|
|
330
327
|
*/
|
|
331
|
-
getBlocksForSlot(slotNumber: SlotNumber): Promise<
|
|
328
|
+
getBlocksForSlot(slotNumber: SlotNumber): Promise<L2BlockNew[]>;
|
|
332
329
|
/**
|
|
333
330
|
* Removes all blocks with block number > blockNumber.
|
|
334
|
-
* Does not remove any associated checkpoints.
|
|
335
331
|
* @param blockNumber - The block number to remove after.
|
|
336
332
|
* @returns The removed blocks (for event emission).
|
|
337
333
|
*/
|
|
338
|
-
removeBlocksAfter(blockNumber: BlockNumber): Promise<
|
|
334
|
+
removeBlocksAfter(blockNumber: BlockNumber): Promise<L2BlockNew[]>;
|
|
339
335
|
}
|
|
340
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
336
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ZfYXJjaGl2ZXJfc3RvcmUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdG9yZS9rdl9hcmNoaXZlcl9zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakcsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHekQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBZSxVQUFVLEVBQUUsS0FBSyx3QkFBd0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xILE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEUsT0FBTyxLQUFLLEVBQ1YsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixpQ0FBaUMsRUFDakMsMkJBQTJCLEVBQzNCLDRDQUE0QyxFQUM1QyxrQ0FBa0MsRUFDbkMsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEtBQUssRUFBRSw0QkFBNEIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNHLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25GLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../src/store/kv_archiver_store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACjG,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../src/store/kv_archiver_store.ts"],"names":[],"mappings":"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"}
|