@aztec/archiver 0.0.1-commit.c7c42ec → 0.0.1-commit.f295ac2
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 +147 -22
- package/dest/archiver.d.ts +135 -0
- package/dest/archiver.d.ts.map +1 -0
- package/dest/archiver.js +769 -0
- package/dest/{archiver/config.d.ts → config.d.ts} +9 -1
- package/dest/config.d.ts.map +1 -0
- package/dest/{archiver/config.js → config.js} +11 -2
- package/dest/{archiver/errors.d.ts → errors.d.ts} +1 -1
- package/dest/errors.d.ts.map +1 -0
- package/dest/factory.d.ts +5 -6
- package/dest/factory.d.ts.map +1 -1
- package/dest/factory.js +82 -5
- package/dest/index.d.ts +10 -4
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +8 -3
- package/dest/interfaces.d.ts +9 -0
- package/dest/interfaces.d.ts.map +1 -0
- package/dest/interfaces.js +3 -0
- package/dest/{archiver/l1 → l1}/bin/retrieve-calldata.d.ts +1 -1
- package/dest/l1/bin/retrieve-calldata.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/calldata_retriever.d.ts +3 -3
- package/dest/l1/calldata_retriever.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/calldata_retriever.js +2 -2
- package/dest/l1/data_retrieval.d.ts +88 -0
- package/dest/l1/data_retrieval.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/data_retrieval.js +34 -53
- package/dest/{archiver/l1 → l1}/debug_tx.d.ts +1 -1
- package/dest/l1/debug_tx.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/spire_proposer.d.ts +1 -1
- package/dest/l1/spire_proposer.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/trace_tx.d.ts +1 -1
- package/dest/l1/trace_tx.d.ts.map +1 -0
- package/dest/l1/types.d.ts +12 -0
- package/dest/l1/types.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/validate_trace.d.ts +1 -1
- package/dest/l1/validate_trace.d.ts.map +1 -0
- package/dest/{archiver/l1 → l1}/validate_trace.js +1 -1
- package/dest/modules/data_source_base.d.ts +85 -0
- package/dest/modules/data_source_base.d.ts.map +1 -0
- package/dest/modules/data_source_base.js +291 -0
- package/dest/modules/data_store_updater.d.ts +69 -0
- package/dest/modules/data_store_updater.d.ts.map +1 -0
- package/dest/modules/data_store_updater.js +304 -0
- package/dest/modules/instrumentation.d.ts +37 -0
- package/dest/modules/instrumentation.d.ts.map +1 -0
- package/dest/{archiver → modules}/instrumentation.js +15 -63
- package/dest/modules/l1_synchronizer.d.ts +75 -0
- package/dest/modules/l1_synchronizer.d.ts.map +1 -0
- package/dest/modules/l1_synchronizer.js +1113 -0
- package/dest/modules/validation.d.ts +17 -0
- package/dest/modules/validation.d.ts.map +1 -0
- package/dest/{archiver → modules}/validation.js +7 -1
- package/dest/{archiver/kv_archiver_store → store}/block_store.d.ts +27 -6
- package/dest/store/block_store.d.ts.map +1 -0
- package/dest/{archiver/kv_archiver_store → store}/block_store.js +87 -14
- package/dest/store/contract_class_store.d.ts +18 -0
- package/dest/store/contract_class_store.d.ts.map +1 -0
- package/dest/{archiver/kv_archiver_store → store}/contract_class_store.js +1 -1
- package/dest/store/contract_instance_store.d.ts +24 -0
- package/dest/store/contract_instance_store.d.ts.map +1 -0
- package/dest/{archiver/kv_archiver_store → store}/contract_instance_store.js +1 -1
- package/dest/{archiver/archiver_store.d.ts → store/kv_archiver_store.d.ts} +155 -132
- package/dest/store/kv_archiver_store.d.ts.map +1 -0
- package/dest/{archiver/kv_archiver_store → store}/kv_archiver_store.js +173 -48
- package/dest/{archiver/kv_archiver_store → store}/log_store.d.ts +1 -1
- package/dest/store/log_store.d.ts.map +1 -0
- package/dest/{archiver/kv_archiver_store → store}/log_store.js +69 -48
- package/dest/{archiver/kv_archiver_store → store}/message_store.d.ts +1 -1
- package/dest/store/message_store.d.ts.map +1 -0
- package/dest/{archiver/structs → structs}/data_retrieval.d.ts +1 -1
- package/dest/structs/data_retrieval.d.ts.map +1 -0
- package/dest/structs/inbox_message.d.ts +15 -0
- package/dest/structs/inbox_message.d.ts.map +1 -0
- package/dest/{archiver/structs → structs}/published.d.ts +1 -1
- package/dest/structs/published.d.ts.map +1 -0
- package/dest/test/fake_l1_state.d.ts +190 -0
- package/dest/test/fake_l1_state.d.ts.map +1 -0
- package/dest/test/fake_l1_state.js +383 -0
- package/dest/test/index.d.ts +2 -1
- package/dest/test/index.d.ts.map +1 -1
- package/dest/test/index.js +1 -0
- package/dest/test/mock_archiver.d.ts +2 -2
- package/dest/test/mock_archiver.d.ts.map +1 -1
- package/dest/test/mock_archiver.js +1 -2
- package/dest/test/mock_l1_to_l2_message_source.d.ts +2 -2
- package/dest/test/mock_l1_to_l2_message_source.d.ts.map +1 -1
- package/dest/test/mock_l1_to_l2_message_source.js +12 -3
- package/dest/test/mock_l2_block_source.d.ts +21 -14
- package/dest/test/mock_l2_block_source.d.ts.map +1 -1
- package/dest/test/mock_l2_block_source.js +147 -40
- package/dest/test/mock_structs.d.ts +76 -2
- package/dest/test/mock_structs.d.ts.map +1 -1
- package/dest/test/mock_structs.js +133 -2
- package/package.json +15 -17
- package/src/archiver.ts +525 -0
- package/src/{archiver/config.ts → config.ts} +13 -2
- package/src/factory.ts +118 -6
- package/src/index.ts +10 -3
- package/src/interfaces.ts +9 -0
- package/src/{archiver/l1 → l1}/calldata_retriever.ts +3 -3
- package/src/{archiver/l1 → l1}/data_retrieval.ts +54 -71
- package/src/{archiver/l1 → l1}/validate_trace.ts +1 -1
- package/src/modules/data_source_base.ts +414 -0
- package/src/modules/data_store_updater.ts +419 -0
- package/src/{archiver → modules}/instrumentation.ts +14 -63
- package/src/modules/l1_synchronizer.ts +931 -0
- package/src/{archiver → modules}/validation.ts +11 -6
- package/src/{archiver/kv_archiver_store → store}/block_store.ts +116 -19
- package/src/{archiver/kv_archiver_store → store}/contract_class_store.ts +1 -1
- package/src/{archiver/kv_archiver_store → store}/contract_instance_store.ts +1 -1
- package/src/{archiver/kv_archiver_store → store}/kv_archiver_store.ts +196 -12
- package/src/{archiver/kv_archiver_store → store}/log_store.ts +112 -76
- package/src/test/fake_l1_state.ts +599 -0
- package/src/test/index.ts +1 -0
- package/src/test/mock_archiver.ts +2 -2
- package/src/test/mock_l1_to_l2_message_source.ts +10 -4
- package/src/test/mock_l2_block_source.ts +168 -52
- package/src/test/mock_structs.ts +247 -2
- package/dest/archiver/archiver.d.ts +0 -304
- package/dest/archiver/archiver.d.ts.map +0 -1
- package/dest/archiver/archiver.js +0 -1645
- package/dest/archiver/archiver_store.d.ts.map +0 -1
- package/dest/archiver/archiver_store.js +0 -4
- package/dest/archiver/archiver_store_test_suite.d.ts +0 -8
- package/dest/archiver/archiver_store_test_suite.d.ts.map +0 -1
- package/dest/archiver/archiver_store_test_suite.js +0 -2770
- package/dest/archiver/config.d.ts.map +0 -1
- package/dest/archiver/errors.d.ts.map +0 -1
- package/dest/archiver/index.d.ts +0 -7
- package/dest/archiver/index.d.ts.map +0 -1
- package/dest/archiver/index.js +0 -4
- package/dest/archiver/instrumentation.d.ts +0 -37
- package/dest/archiver/instrumentation.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/block_store.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts +0 -18
- package/dest/archiver/kv_archiver_store/contract_class_store.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/contract_instance_store.d.ts +0 -24
- package/dest/archiver/kv_archiver_store/contract_instance_store.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +0 -158
- package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/log_store.d.ts.map +0 -1
- package/dest/archiver/kv_archiver_store/message_store.d.ts.map +0 -1
- package/dest/archiver/l1/bin/retrieve-calldata.d.ts.map +0 -1
- package/dest/archiver/l1/calldata_retriever.d.ts.map +0 -1
- package/dest/archiver/l1/data_retrieval.d.ts +0 -90
- package/dest/archiver/l1/data_retrieval.d.ts.map +0 -1
- package/dest/archiver/l1/debug_tx.d.ts.map +0 -1
- package/dest/archiver/l1/spire_proposer.d.ts.map +0 -1
- package/dest/archiver/l1/trace_tx.d.ts.map +0 -1
- package/dest/archiver/l1/types.d.ts +0 -12
- package/dest/archiver/l1/types.d.ts.map +0 -1
- package/dest/archiver/l1/validate_trace.d.ts.map +0 -1
- package/dest/archiver/structs/data_retrieval.d.ts.map +0 -1
- package/dest/archiver/structs/inbox_message.d.ts +0 -15
- package/dest/archiver/structs/inbox_message.d.ts.map +0 -1
- package/dest/archiver/structs/published.d.ts.map +0 -1
- package/dest/archiver/validation.d.ts +0 -17
- package/dest/archiver/validation.d.ts.map +0 -1
- package/dest/rpc/index.d.ts +0 -9
- package/dest/rpc/index.d.ts.map +0 -1
- package/dest/rpc/index.js +0 -15
- package/src/archiver/archiver.ts +0 -2157
- package/src/archiver/archiver_store.ts +0 -372
- package/src/archiver/archiver_store_test_suite.ts +0 -2843
- package/src/archiver/index.ts +0 -6
- package/src/rpc/index.ts +0 -16
- /package/dest/{archiver/errors.js → errors.js} +0 -0
- /package/dest/{archiver/l1 → l1}/bin/retrieve-calldata.js +0 -0
- /package/dest/{archiver/l1 → l1}/debug_tx.js +0 -0
- /package/dest/{archiver/l1 → l1}/spire_proposer.js +0 -0
- /package/dest/{archiver/l1 → l1}/trace_tx.js +0 -0
- /package/dest/{archiver/l1 → l1}/types.js +0 -0
- /package/dest/{archiver/kv_archiver_store → store}/message_store.js +0 -0
- /package/dest/{archiver/structs → structs}/data_retrieval.js +0 -0
- /package/dest/{archiver/structs → structs}/inbox_message.js +0 -0
- /package/dest/{archiver/structs → structs}/published.js +0 -0
- /package/src/{archiver/errors.ts → errors.ts} +0 -0
- /package/src/{archiver/l1 → l1}/README.md +0 -0
- /package/src/{archiver/l1 → l1}/bin/retrieve-calldata.ts +0 -0
- /package/src/{archiver/l1 → l1}/debug_tx.ts +0 -0
- /package/src/{archiver/l1 → l1}/spire_proposer.ts +0 -0
- /package/src/{archiver/l1 → l1}/trace_tx.ts +0 -0
- /package/src/{archiver/l1 → l1}/types.ts +0 -0
- /package/src/{archiver/kv_archiver_store → store}/message_store.ts +0 -0
- /package/src/{archiver/structs → structs}/data_retrieval.ts +0 -0
- /package/src/{archiver/structs → structs}/inbox_message.ts +0 -0
- /package/src/{archiver/structs → structs}/published.ts +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BlockNumber,
|
|
1
|
+
import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import type { L2Tips } from '@aztec/stdlib/block';
|
|
4
4
|
import type { L1ToL2MessageSource } from '@aztec/stdlib/messaging';
|
|
@@ -16,4 +16,4 @@ export declare class MockL1ToL2MessageSource implements L1ToL2MessageSource {
|
|
|
16
16
|
getBlockNumber(): Promise<BlockNumber>;
|
|
17
17
|
getL2Tips(): Promise<L2Tips>;
|
|
18
18
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19sMV90b19sMl9tZXNzYWdlX3NvdXJjZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvbW9ja19sMV90b19sMl9tZXNzYWdlX3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFvQyxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRixPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5FOztHQUVHO0FBQ0gscUJBQWEsdUJBQXdCLFlBQVcsbUJBQW1CO0lBR3JELE9BQU8sQ0FBQyxXQUFXO0lBRi9CLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBcUM7SUFFbEUsWUFBb0IsV0FBVyxFQUFFLE1BQU0sRUFBSTtJQUVwQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFFBRXRFO0lBRU0sY0FBYyxDQUFDLFdBQVcsRUFBRSxNQUFNLFFBRXhDO0lBRUQsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBRW5FO0lBRUQscUJBQXFCLENBQUMsY0FBYyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUVyRTtJQUVELGNBQWMseUJBRWI7SUFFRCxTQUFTLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQWMzQjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock_l1_to_l2_message_source.d.ts","sourceRoot":"","sources":["../../src/test/mock_l1_to_l2_message_source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"mock_l1_to_l2_message_source.d.ts","sourceRoot":"","sources":["../../src/test/mock_l1_to_l2_message_source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAoC,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAGrD,OAAO,CAAC,WAAW;IAF/B,OAAO,CAAC,qBAAqB,CAAqC;IAElE,YAAoB,WAAW,EAAE,MAAM,EAAI;IAEpC,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,QAEtE;IAEM,cAAc,CAAC,WAAW,EAAE,MAAM,QAExC;IAED,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAEnE;IAED,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAErE;IAED,cAAc,yBAEb;IAED,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAc3B;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
1
|
+
import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
/**
|
|
4
4
|
* A mocked implementation of L1ToL2MessageSource to be used in tests.
|
|
@@ -26,12 +26,21 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
26
26
|
}
|
|
27
27
|
getL2Tips() {
|
|
28
28
|
const number = this.blockNumber;
|
|
29
|
-
const
|
|
29
|
+
const blockId = {
|
|
30
30
|
number: BlockNumber(number),
|
|
31
31
|
hash: new Fr(number).toString()
|
|
32
32
|
};
|
|
33
|
+
const checkpointId = {
|
|
34
|
+
number: CheckpointNumber(number),
|
|
35
|
+
hash: new Fr(number + 1).toString()
|
|
36
|
+
};
|
|
37
|
+
const tip = {
|
|
38
|
+
block: blockId,
|
|
39
|
+
checkpoint: checkpointId
|
|
40
|
+
};
|
|
33
41
|
return Promise.resolve({
|
|
34
|
-
|
|
42
|
+
proposed: blockId,
|
|
43
|
+
checkpointed: tip,
|
|
35
44
|
proven: tip,
|
|
36
45
|
finalized: tip
|
|
37
46
|
});
|
|
@@ -3,8 +3,8 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
3
3
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
4
|
import type { FunctionSelector } from '@aztec/stdlib/abi';
|
|
5
5
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { CheckpointedL2Block, L2BlockHash, L2BlockNew, type L2BlockSource, type L2Tips, type ValidateCheckpointResult } from '@aztec/stdlib/block';
|
|
7
|
+
import { Checkpoint, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
8
8
|
import type { ContractClassPublic, ContractDataSource, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
9
9
|
import { type L1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
10
10
|
import { type BlockHeader, TxHash, TxReceipt } from '@aztec/stdlib/tx';
|
|
@@ -13,15 +13,17 @@ import type { UInt64 } from '@aztec/stdlib/types';
|
|
|
13
13
|
* A mocked implementation of L2BlockSource to be used in tests.
|
|
14
14
|
*/
|
|
15
15
|
export declare class MockL2BlockSource implements L2BlockSource, ContractDataSource {
|
|
16
|
-
protected l2Blocks:
|
|
16
|
+
protected l2Blocks: L2BlockNew[];
|
|
17
17
|
private provenBlockNumber;
|
|
18
18
|
private finalizedBlockNumber;
|
|
19
|
+
private checkpointedBlockNumber;
|
|
19
20
|
private log;
|
|
20
21
|
createBlocks(numBlocks: number): Promise<void>;
|
|
21
|
-
addBlocks(blocks:
|
|
22
|
+
addBlocks(blocks: L2BlockNew[]): void;
|
|
22
23
|
removeBlocks(numBlocks: number): void;
|
|
23
24
|
setProvenBlockNumber(provenBlockNumber: number): void;
|
|
24
25
|
setFinalizedBlockNumber(finalizedBlockNumber: number): void;
|
|
26
|
+
setCheckpointedBlockNumber(checkpointedBlockNumber: number): void;
|
|
25
27
|
/**
|
|
26
28
|
* Method to fetch the rollup contract address at the base-layer.
|
|
27
29
|
* @returns The rollup address.
|
|
@@ -38,13 +40,14 @@ export declare class MockL2BlockSource implements L2BlockSource, ContractDataSou
|
|
|
38
40
|
*/
|
|
39
41
|
getBlockNumber(): Promise<BlockNumber>;
|
|
40
42
|
getProvenBlockNumber(): Promise<BlockNumber>;
|
|
41
|
-
getCheckpointedBlock(
|
|
43
|
+
getCheckpointedBlock(number: BlockNumber): Promise<CheckpointedL2Block | undefined>;
|
|
44
|
+
getCheckpointedBlocks(from: BlockNumber, limit: number, _proven?: boolean): Promise<CheckpointedL2Block[]>;
|
|
42
45
|
/**
|
|
43
46
|
* Gets an l2 block.
|
|
44
47
|
* @param number - The block number to return (inclusive).
|
|
45
48
|
* @returns The requested L2 block.
|
|
46
49
|
*/
|
|
47
|
-
getBlock(number: number): Promise<
|
|
50
|
+
getBlock(number: number): Promise<L2BlockNew | undefined>;
|
|
48
51
|
/**
|
|
49
52
|
* Gets an L2 block (new format).
|
|
50
53
|
* @param number - The block number to return.
|
|
@@ -57,17 +60,21 @@ export declare class MockL2BlockSource implements L2BlockSource, ContractDataSou
|
|
|
57
60
|
* @param limit - The maximum number of blocks to return.
|
|
58
61
|
* @returns The requested mocked L2 blocks.
|
|
59
62
|
*/
|
|
60
|
-
getBlocks(from: number, limit: number, proven?: boolean): Promise<
|
|
61
|
-
getPublishedCheckpoints(from: CheckpointNumber, limit: number): Promise<
|
|
63
|
+
getBlocks(from: number, limit: number, proven?: boolean): Promise<L2BlockNew[]>;
|
|
64
|
+
getPublishedCheckpoints(from: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
|
|
62
65
|
getCheckpointByArchive(archive: Fr): Promise<Checkpoint | undefined>;
|
|
63
|
-
getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<
|
|
64
|
-
|
|
65
|
-
|
|
66
|
+
getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<CheckpointedL2Block[]>;
|
|
67
|
+
getL2BlocksNew(from: BlockNumber, limit: number, proven?: boolean): Promise<L2BlockNew[]>;
|
|
68
|
+
getPublishedBlockByHash(blockHash: Fr): Promise<CheckpointedL2Block | undefined>;
|
|
69
|
+
getPublishedBlockByArchive(archive: Fr): Promise<CheckpointedL2Block | undefined>;
|
|
70
|
+
getL2BlockNewByHash(blockHash: Fr): Promise<L2BlockNew | undefined>;
|
|
71
|
+
getL2BlockNewByArchive(archive: Fr): Promise<L2BlockNew | undefined>;
|
|
66
72
|
getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
|
|
67
73
|
getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
|
|
68
74
|
getBlockHeader(number: number | 'latest'): Promise<BlockHeader | undefined>;
|
|
69
75
|
getCheckpointsForEpoch(epochNumber: EpochNumber): Promise<Checkpoint[]>;
|
|
70
|
-
getBlocksForEpoch(epochNumber: EpochNumber): Promise<
|
|
76
|
+
getBlocksForEpoch(epochNumber: EpochNumber): Promise<L2BlockNew[]>;
|
|
77
|
+
getBlocksForSlot(slotNumber: SlotNumber): Promise<L2BlockNew[]>;
|
|
71
78
|
getBlockHeadersForEpoch(epochNumber: EpochNumber): Promise<BlockHeader[]>;
|
|
72
79
|
/**
|
|
73
80
|
* Gets a tx effect.
|
|
@@ -113,6 +120,6 @@ export declare class MockL2BlockSource implements L2BlockSource, ContractDataSou
|
|
|
113
120
|
registerContractFunctionSignatures(_signatures: string[]): Promise<void>;
|
|
114
121
|
syncImmediate(): Promise<void>;
|
|
115
122
|
isPendingChainInvalid(): Promise<boolean>;
|
|
116
|
-
getPendingChainValidationStatus(): Promise<
|
|
123
|
+
getPendingChainValidationStatus(): Promise<ValidateCheckpointResult>;
|
|
117
124
|
}
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19sMl9ibG9ja19zb3VyY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L21vY2tfbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXpHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLFdBQVcsRUFDWCxVQUFVLEVBQ1YsS0FBSyxhQUFhLEVBQ2xCLEtBQUssTUFBTSxFQUNYLEtBQUssd0JBQXdCLEVBQzlCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLFVBQVUsRUFBbUIsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RixPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ILE9BQU8sRUFBMEIsS0FBSyxpQkFBaUIsRUFBd0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBWSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pGLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWxEOztHQUVHO0FBQ0gscUJBQWEsaUJBQWtCLFlBQVcsYUFBYSxFQUFFLGtCQUFrQjtJQUN6RSxTQUFTLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxD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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock_l2_block_source.d.ts","sourceRoot":"","sources":["../../src/test/mock_l2_block_source.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAEzG,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"mock_l2_block_source.d.ts","sourceRoot":"","sources":["../../src/test/mock_l2_block_source.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { GENESIS_ARCHIVE_ROOT } from '@aztec/constants';
|
|
2
2
|
import { DefaultL1ContractsConfig } from '@aztec/ethereum/config';
|
|
3
|
-
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
3
|
+
import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
4
4
|
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
5
5
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
6
6
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
7
7
|
import { createLogger } from '@aztec/foundation/log';
|
|
8
|
-
import {
|
|
9
|
-
import { L1PublishedData } from '@aztec/stdlib/checkpoint';
|
|
8
|
+
import { CheckpointedL2Block, L2BlockHash, L2BlockNew } from '@aztec/stdlib/block';
|
|
9
|
+
import { Checkpoint, L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
10
10
|
import { EmptyL1RollupConstants, getSlotRangeForEpoch } from '@aztec/stdlib/epoch-helpers';
|
|
11
11
|
import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
12
12
|
/**
|
|
@@ -15,11 +15,14 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
15
15
|
l2Blocks = [];
|
|
16
16
|
provenBlockNumber = 0;
|
|
17
17
|
finalizedBlockNumber = 0;
|
|
18
|
+
checkpointedBlockNumber = 0;
|
|
18
19
|
log = createLogger('archiver:mock_l2_block_source');
|
|
19
20
|
async createBlocks(numBlocks) {
|
|
20
21
|
for(let i = 0; i < numBlocks; i++){
|
|
21
22
|
const blockNum = this.l2Blocks.length + 1;
|
|
22
|
-
const block = await
|
|
23
|
+
const block = await L2BlockNew.random(BlockNumber(blockNum), {
|
|
24
|
+
slotNumber: SlotNumber(blockNum)
|
|
25
|
+
});
|
|
23
26
|
this.l2Blocks.push(block);
|
|
24
27
|
}
|
|
25
28
|
this.log.verbose(`Created ${numBlocks} blocks in the mock L2 block source`);
|
|
@@ -41,6 +44,9 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
41
44
|
}
|
|
42
45
|
this.finalizedBlockNumber = finalizedBlockNumber;
|
|
43
46
|
}
|
|
47
|
+
setCheckpointedBlockNumber(checkpointedBlockNumber) {
|
|
48
|
+
this.checkpointedBlockNumber = checkpointedBlockNumber;
|
|
49
|
+
}
|
|
44
50
|
/**
|
|
45
51
|
* Method to fetch the rollup contract address at the base-layer.
|
|
46
52
|
* @returns The rollup address.
|
|
@@ -62,16 +68,38 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
62
68
|
getProvenBlockNumber() {
|
|
63
69
|
return Promise.resolve(BlockNumber(this.provenBlockNumber));
|
|
64
70
|
}
|
|
65
|
-
getCheckpointedBlock(
|
|
66
|
-
|
|
67
|
-
|
|
71
|
+
getCheckpointedBlock(number) {
|
|
72
|
+
if (number > this.checkpointedBlockNumber) {
|
|
73
|
+
return Promise.resolve(undefined);
|
|
74
|
+
}
|
|
75
|
+
const block = this.l2Blocks[number - 1];
|
|
76
|
+
if (!block) {
|
|
77
|
+
return Promise.resolve(undefined);
|
|
78
|
+
}
|
|
79
|
+
const checkpointedBlock = new CheckpointedL2Block(CheckpointNumber(number), block, new L1PublishedData(BigInt(number), BigInt(number), `0x${number.toString(16).padStart(64, '0')}`), []);
|
|
80
|
+
return Promise.resolve(checkpointedBlock);
|
|
81
|
+
}
|
|
82
|
+
async getCheckpointedBlocks(from, limit, _proven) {
|
|
83
|
+
const result = [];
|
|
84
|
+
for(let i = 0; i < limit; i++){
|
|
85
|
+
const blockNum = from + i;
|
|
86
|
+
if (blockNum > this.checkpointedBlockNumber) {
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
const block = await this.getCheckpointedBlock(BlockNumber(blockNum));
|
|
90
|
+
if (block) {
|
|
91
|
+
result.push(block);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return result;
|
|
68
95
|
}
|
|
69
96
|
/**
|
|
70
97
|
* Gets an l2 block.
|
|
71
98
|
* @param number - The block number to return (inclusive).
|
|
72
99
|
* @returns The requested L2 block.
|
|
73
100
|
*/ getBlock(number) {
|
|
74
|
-
|
|
101
|
+
const block = this.l2Blocks[number - 1];
|
|
102
|
+
return Promise.resolve(block);
|
|
75
103
|
}
|
|
76
104
|
/**
|
|
77
105
|
* Gets an L2 block (new format).
|
|
@@ -79,7 +107,7 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
79
107
|
* @returns The requested L2 block.
|
|
80
108
|
*/ getL2BlockNew(number) {
|
|
81
109
|
const block = this.l2Blocks[number - 1];
|
|
82
|
-
return Promise.resolve(block
|
|
110
|
+
return Promise.resolve(block);
|
|
83
111
|
}
|
|
84
112
|
/**
|
|
85
113
|
* Gets up to `limit` amount of L2 blocks starting from `from`.
|
|
@@ -89,27 +117,54 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
89
117
|
*/ getBlocks(from, limit, proven) {
|
|
90
118
|
return Promise.resolve(this.l2Blocks.slice(from - 1, from - 1 + limit).filter((b)=>!proven || this.provenBlockNumber === undefined || b.number <= this.provenBlockNumber));
|
|
91
119
|
}
|
|
92
|
-
|
|
93
|
-
// TODO: Implement this properly. This only works when we have one block per checkpoint.
|
|
94
|
-
|
|
120
|
+
getPublishedCheckpoints(from, limit) {
|
|
121
|
+
// TODO(mbps): Implement this properly. This only works when we have one block per checkpoint.
|
|
122
|
+
const blocks = this.l2Blocks.slice(from - 1, from - 1 + limit);
|
|
123
|
+
return Promise.all(blocks.map(async (block)=>{
|
|
124
|
+
// Create a checkpoint from the block - manually construct since L2BlockNew doesn't have toCheckpoint()
|
|
125
|
+
const checkpoint = await Checkpoint.random(block.checkpointNumber, {
|
|
126
|
+
numBlocks: 1
|
|
127
|
+
});
|
|
128
|
+
checkpoint.blocks = [
|
|
129
|
+
block
|
|
130
|
+
];
|
|
131
|
+
return new PublishedCheckpoint(checkpoint, new L1PublishedData(BigInt(block.number), BigInt(block.number), Buffer32.random().toString()), []);
|
|
132
|
+
}));
|
|
95
133
|
}
|
|
96
134
|
async getCheckpointByArchive(archive) {
|
|
97
|
-
// TODO: Implement this properly. This only works when we have one block per checkpoint.
|
|
98
|
-
|
|
135
|
+
// TODO(mbps): Implement this properly. This only works when we have one block per checkpoint.
|
|
136
|
+
const block = this.l2Blocks.find((b)=>b.archive.root.equals(archive));
|
|
137
|
+
if (!block) {
|
|
138
|
+
return undefined;
|
|
139
|
+
}
|
|
140
|
+
// Create a checkpoint from the block - manually construct since L2BlockNew doesn't have toCheckpoint()
|
|
141
|
+
const checkpoint = await Checkpoint.random(block.checkpointNumber, {
|
|
142
|
+
numBlocks: 1
|
|
143
|
+
});
|
|
144
|
+
checkpoint.blocks = [
|
|
145
|
+
block
|
|
146
|
+
];
|
|
147
|
+
return checkpoint;
|
|
99
148
|
}
|
|
100
|
-
|
|
101
|
-
const blocks =
|
|
102
|
-
return blocks.map((block)=>
|
|
149
|
+
getPublishedBlocks(from, limit, proven) {
|
|
150
|
+
const blocks = this.l2Blocks.slice(from - 1, from - 1 + limit).filter((b)=>!proven || this.provenBlockNumber === undefined || b.number <= this.provenBlockNumber);
|
|
151
|
+
return Promise.resolve(blocks.map((block)=>CheckpointedL2Block.fromFields({
|
|
152
|
+
checkpointNumber: CheckpointNumber(block.number),
|
|
103
153
|
block,
|
|
104
154
|
l1: new L1PublishedData(BigInt(block.number), BigInt(block.number), Buffer32.random().toString()),
|
|
105
155
|
attestations: []
|
|
106
|
-
}));
|
|
156
|
+
})));
|
|
157
|
+
}
|
|
158
|
+
getL2BlocksNew(from, limit, proven) {
|
|
159
|
+
// getBlocks already returns L2BlockNew[], so just return directly
|
|
160
|
+
return this.getBlocks(from, limit, proven);
|
|
107
161
|
}
|
|
108
162
|
async getPublishedBlockByHash(blockHash) {
|
|
109
163
|
for (const block of this.l2Blocks){
|
|
110
164
|
const hash = await block.hash();
|
|
111
165
|
if (hash.equals(blockHash)) {
|
|
112
|
-
return
|
|
166
|
+
return CheckpointedL2Block.fromFields({
|
|
167
|
+
checkpointNumber: CheckpointNumber(block.number),
|
|
113
168
|
block,
|
|
114
169
|
l1: new L1PublishedData(BigInt(block.number), BigInt(block.number), Buffer32.random().toString()),
|
|
115
170
|
attestations: []
|
|
@@ -123,31 +178,62 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
123
178
|
if (!block) {
|
|
124
179
|
return Promise.resolve(undefined);
|
|
125
180
|
}
|
|
126
|
-
return Promise.resolve(
|
|
181
|
+
return Promise.resolve(CheckpointedL2Block.fromFields({
|
|
182
|
+
checkpointNumber: CheckpointNumber(block.number),
|
|
127
183
|
block,
|
|
128
184
|
l1: new L1PublishedData(BigInt(block.number), BigInt(block.number), Buffer32.random().toString()),
|
|
129
185
|
attestations: []
|
|
130
186
|
}));
|
|
131
187
|
}
|
|
188
|
+
async getL2BlockNewByHash(blockHash) {
|
|
189
|
+
for (const block of this.l2Blocks){
|
|
190
|
+
const hash = await block.hash();
|
|
191
|
+
if (hash.equals(blockHash)) {
|
|
192
|
+
return block;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return undefined;
|
|
196
|
+
}
|
|
197
|
+
getL2BlockNewByArchive(archive) {
|
|
198
|
+
const block = this.l2Blocks.find((b)=>b.archive.root.equals(archive));
|
|
199
|
+
return Promise.resolve(block);
|
|
200
|
+
}
|
|
132
201
|
async getBlockHeaderByHash(blockHash) {
|
|
133
202
|
for (const block of this.l2Blocks){
|
|
134
203
|
const hash = await block.hash();
|
|
135
204
|
if (hash.equals(blockHash)) {
|
|
136
|
-
return block.
|
|
205
|
+
return block.header;
|
|
137
206
|
}
|
|
138
207
|
}
|
|
139
208
|
return undefined;
|
|
140
209
|
}
|
|
141
210
|
getBlockHeaderByArchive(archive) {
|
|
142
211
|
const block = this.l2Blocks.find((b)=>b.archive.root.equals(archive));
|
|
143
|
-
return Promise.resolve(block?.
|
|
212
|
+
return Promise.resolve(block?.header);
|
|
144
213
|
}
|
|
145
214
|
getBlockHeader(number) {
|
|
146
|
-
return Promise.resolve(this.l2Blocks.at(typeof number === 'number' ? number - 1 : -1)?.
|
|
215
|
+
return Promise.resolve(this.l2Blocks.at(typeof number === 'number' ? number - 1 : -1)?.header);
|
|
147
216
|
}
|
|
148
217
|
getCheckpointsForEpoch(epochNumber) {
|
|
149
|
-
// TODO: Implement this properly. This only works when we have one block per checkpoint.
|
|
150
|
-
|
|
218
|
+
// TODO(mbps): Implement this properly. This only works when we have one block per checkpoint.
|
|
219
|
+
const epochDuration = DefaultL1ContractsConfig.aztecEpochDuration;
|
|
220
|
+
const [start, end] = getSlotRangeForEpoch(epochNumber, {
|
|
221
|
+
epochDuration
|
|
222
|
+
});
|
|
223
|
+
const blocks = this.l2Blocks.filter((b)=>{
|
|
224
|
+
const slot = b.header.globalVariables.slotNumber;
|
|
225
|
+
return slot >= start && slot <= end;
|
|
226
|
+
});
|
|
227
|
+
// Create checkpoints from blocks - manually construct since L2BlockNew doesn't have toCheckpoint()
|
|
228
|
+
return Promise.all(blocks.map(async (block)=>{
|
|
229
|
+
const checkpoint = await Checkpoint.random(block.checkpointNumber, {
|
|
230
|
+
numBlocks: 1
|
|
231
|
+
});
|
|
232
|
+
checkpoint.blocks = [
|
|
233
|
+
block
|
|
234
|
+
];
|
|
235
|
+
return checkpoint;
|
|
236
|
+
}));
|
|
151
237
|
}
|
|
152
238
|
getBlocksForEpoch(epochNumber) {
|
|
153
239
|
const epochDuration = DefaultL1ContractsConfig.aztecEpochDuration;
|
|
@@ -160,9 +246,13 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
160
246
|
});
|
|
161
247
|
return Promise.resolve(blocks);
|
|
162
248
|
}
|
|
249
|
+
getBlocksForSlot(slotNumber) {
|
|
250
|
+
const blocks = this.l2Blocks.filter((b)=>b.header.globalVariables.slotNumber === slotNumber);
|
|
251
|
+
return Promise.resolve(blocks);
|
|
252
|
+
}
|
|
163
253
|
async getBlockHeadersForEpoch(epochNumber) {
|
|
164
254
|
const blocks = await this.getBlocksForEpoch(epochNumber);
|
|
165
|
-
return blocks.map((b)=>b.
|
|
255
|
+
return blocks.map((b)=>b.header);
|
|
166
256
|
}
|
|
167
257
|
/**
|
|
168
258
|
* Gets a tx effect.
|
|
@@ -199,27 +289,44 @@ import { TxReceipt, TxStatus } from '@aztec/stdlib/tx';
|
|
|
199
289
|
return undefined;
|
|
200
290
|
}
|
|
201
291
|
async getL2Tips() {
|
|
202
|
-
const [latest, proven, finalized] = [
|
|
292
|
+
const [latest, proven, finalized, checkpointed] = [
|
|
203
293
|
await this.getBlockNumber(),
|
|
204
294
|
await this.getProvenBlockNumber(),
|
|
205
|
-
this.finalizedBlockNumber
|
|
295
|
+
this.finalizedBlockNumber,
|
|
296
|
+
this.checkpointedBlockNumber
|
|
206
297
|
];
|
|
207
298
|
const latestBlock = this.l2Blocks[latest - 1];
|
|
208
299
|
const provenBlock = this.l2Blocks[proven - 1];
|
|
209
300
|
const finalizedBlock = this.l2Blocks[finalized - 1];
|
|
301
|
+
const checkpointedBlock = this.l2Blocks[checkpointed - 1];
|
|
302
|
+
const latestBlockId = {
|
|
303
|
+
number: BlockNumber(latest),
|
|
304
|
+
hash: (await latestBlock?.hash())?.toString()
|
|
305
|
+
};
|
|
306
|
+
const provenBlockId = {
|
|
307
|
+
number: BlockNumber(proven),
|
|
308
|
+
hash: (await provenBlock?.hash())?.toString()
|
|
309
|
+
};
|
|
310
|
+
const finalizedBlockId = {
|
|
311
|
+
number: BlockNumber(finalized),
|
|
312
|
+
hash: (await finalizedBlock?.hash())?.toString()
|
|
313
|
+
};
|
|
314
|
+
const checkpointedBlockId = {
|
|
315
|
+
number: BlockNumber(checkpointed),
|
|
316
|
+
hash: (await checkpointedBlock?.hash())?.toString()
|
|
317
|
+
};
|
|
318
|
+
const makeTipId = (blockId)=>({
|
|
319
|
+
block: blockId,
|
|
320
|
+
checkpoint: {
|
|
321
|
+
number: CheckpointNumber(blockId.number),
|
|
322
|
+
hash: blockId.hash
|
|
323
|
+
}
|
|
324
|
+
});
|
|
210
325
|
return {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
proven: {
|
|
216
|
-
number: BlockNumber(proven),
|
|
217
|
-
hash: (await provenBlock?.hash())?.toString()
|
|
218
|
-
},
|
|
219
|
-
finalized: {
|
|
220
|
-
number: BlockNumber(finalized),
|
|
221
|
-
hash: (await finalizedBlock?.hash())?.toString()
|
|
222
|
-
}
|
|
326
|
+
proposed: latestBlockId,
|
|
327
|
+
checkpointed: makeTipId(checkpointedBlockId),
|
|
328
|
+
proven: makeTipId(provenBlockId),
|
|
329
|
+
finalized: makeTipId(finalizedBlockId)
|
|
223
330
|
};
|
|
224
331
|
}
|
|
225
332
|
getL2EpochNumber() {
|
|
@@ -1,10 +1,84 @@
|
|
|
1
1
|
import { CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
2
|
import { Buffer16 } from '@aztec/foundation/buffer';
|
|
3
|
-
import {
|
|
3
|
+
import type { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
|
|
4
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
5
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
+
import { Checkpoint, L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
7
|
+
import { PrivateLog, PublicLog, SiloedTag, Tag } from '@aztec/stdlib/logs';
|
|
8
|
+
import { AppendOnlyTreeSnapshot } from '@aztec/stdlib/trees';
|
|
9
|
+
import { StateReference } from '@aztec/stdlib/tx';
|
|
10
|
+
import { type InboxMessage } from '../structs/inbox_message.js';
|
|
4
11
|
export declare function makeInboxMessage(previousRollingHash?: Buffer16, overrides?: Partial<InboxMessage>): InboxMessage;
|
|
5
12
|
export declare function makeInboxMessages(count: number, opts?: {
|
|
6
13
|
initialHash?: Buffer16;
|
|
7
14
|
initialCheckpointNumber?: CheckpointNumber;
|
|
8
15
|
overrideFn?: (msg: InboxMessage, index: number) => InboxMessage;
|
|
9
16
|
}): InboxMessage[];
|
|
10
|
-
|
|
17
|
+
/** Creates inbox messages distributed across multiple blocks with proper checkpoint numbering. */
|
|
18
|
+
export declare function makeInboxMessagesWithFullBlocks(blockCount: number, opts?: {
|
|
19
|
+
initialCheckpointNumber?: CheckpointNumber;
|
|
20
|
+
}): InboxMessage[];
|
|
21
|
+
/** Creates a deterministic block hash from a block number. */
|
|
22
|
+
export declare function makeBlockHash(blockNumber: number): `0x${string}`;
|
|
23
|
+
/**
|
|
24
|
+
* Creates a StateReference with properly calculated noteHashTree.nextAvailableLeafIndex.
|
|
25
|
+
* This ensures LogStore's dataStartIndexForBlock calculation doesn't produce negative values.
|
|
26
|
+
*/
|
|
27
|
+
export declare function makeStateForBlock(blockNumber: number, txsPerBlock: number): StateReference;
|
|
28
|
+
/** Creates L1PublishedData with deterministic values based on l1BlockNumber. */
|
|
29
|
+
export declare function makeL1PublishedData(l1BlockNumber: number): L1PublishedData;
|
|
30
|
+
/** Wraps a Checkpoint with L1 published data and random attestations. */
|
|
31
|
+
export declare function makePublishedCheckpoint(checkpoint: Checkpoint, l1BlockNumber: number, attestationCount?: number): PublishedCheckpoint;
|
|
32
|
+
export interface MakeChainedCheckpointsOptions {
|
|
33
|
+
/** Number of L2 blocks per checkpoint. Default: 1 */
|
|
34
|
+
blocksPerCheckpoint?: number;
|
|
35
|
+
/** Number of transactions per block. Default: 4 */
|
|
36
|
+
txsPerBlock?: number;
|
|
37
|
+
/** Starting checkpoint number. Default: CheckpointNumber(1) */
|
|
38
|
+
startCheckpointNumber?: CheckpointNumber;
|
|
39
|
+
/** Starting block number. Default: 1 */
|
|
40
|
+
startBlockNumber?: number;
|
|
41
|
+
/** Starting L1 block number. Default: 10 */
|
|
42
|
+
startL1BlockNumber?: number;
|
|
43
|
+
/** Previous archive to chain from. Default: undefined */
|
|
44
|
+
previousArchive?: AppendOnlyTreeSnapshot;
|
|
45
|
+
/** Optional function to provide per-checkpoint overrides */
|
|
46
|
+
makeCheckpointOptions?: (cpNumber: CheckpointNumber) => Partial<Parameters<typeof Checkpoint.random>[1]>;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Creates multiple checkpoints with properly chained archives.
|
|
50
|
+
* Each checkpoint's blocks have their lastArchive set to the previous block's archive,
|
|
51
|
+
* ensuring archive chain continuity for testing.
|
|
52
|
+
*/
|
|
53
|
+
export declare function makeChainedCheckpoints(count: number, options?: MakeChainedCheckpointsOptions): Promise<PublishedCheckpoint[]>;
|
|
54
|
+
/**
|
|
55
|
+
* Creates a PublishedCheckpoint with attestations signed by the provided signers.
|
|
56
|
+
* Useful for testing attestation validation.
|
|
57
|
+
*/
|
|
58
|
+
export declare function makeSignedPublishedCheckpoint(checkpoint: Checkpoint, signers: Secp256k1Signer[], committee: EthAddress[], l1BlockNumber?: number): PublishedCheckpoint;
|
|
59
|
+
/** Creates a deterministic SiloedTag for private log testing. */
|
|
60
|
+
export declare function makePrivateLogTag(blockNumber: number, txIndex: number, logIndex: number): SiloedTag;
|
|
61
|
+
/** Creates a PrivateLog with fields derived from the tag. */
|
|
62
|
+
export declare function makePrivateLog(tag: SiloedTag): PrivateLog;
|
|
63
|
+
/** Creates multiple private logs for a transaction. */
|
|
64
|
+
export declare function mockPrivateLogs(blockNumber: number, txIndex: number, numLogsPerTx: number): PrivateLog[];
|
|
65
|
+
/** Creates a deterministic Tag for public log testing. */
|
|
66
|
+
export declare function makePublicLogTag(blockNumber: number, txIndex: number, logIndex: number): Tag;
|
|
67
|
+
/** Creates a PublicLog with fields derived from the tag. */
|
|
68
|
+
export declare function makePublicLog(tag: Tag, contractAddress?: AztecAddress): PublicLog;
|
|
69
|
+
/** Creates multiple public logs for a transaction. */
|
|
70
|
+
export declare function makePublicLogs(blockNumber: number, txIndex: number, numLogsPerTx: number, contractAddress?: AztecAddress): PublicLog[];
|
|
71
|
+
export interface MockCheckpointWithLogsOptions {
|
|
72
|
+
previousArchive?: AppendOnlyTreeSnapshot;
|
|
73
|
+
numTxsPerBlock?: number;
|
|
74
|
+
privateLogs?: {
|
|
75
|
+
numLogsPerTx: number;
|
|
76
|
+
};
|
|
77
|
+
publicLogs?: {
|
|
78
|
+
numLogsPerTx: number;
|
|
79
|
+
contractAddress?: AztecAddress;
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/** Creates a checkpoint with specified logs on each tx effect. */
|
|
83
|
+
export declare function makeCheckpointWithLogs(blockNumber: number, options?: MockCheckpointWithLogsOptions): Promise<PublishedCheckpoint>;
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19zdHJ1Y3RzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2NrX3N0cnVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFlLGdCQUFnQixFQUF5QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxRQUFRLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUc5RCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUVqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSzNFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFBeUIsY0FBYyxFQUFZLE1BQU0sa0JBQWtCLENBQUM7QUFFbkYsT0FBTyxFQUFFLEtBQUssWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRW5GLHdCQUFnQixnQkFBZ0IsQ0FDOUIsbUJBQW1CLFdBQWdCLEVBQ25DLFNBQVMsR0FBRSxPQUFPLENBQUMsWUFBWSxDQUFNLEdBQ3BDLFlBQVksQ0FnQmQ7QUFFRCx3QkFBZ0IsaUJBQWlCLENBQy9CLEtBQUssRUFBRSxNQUFNLEVBQ2IsSUFBSSxHQUFFO0lBQ0osV0FBVyxDQUFDLEVBQUUsUUFBUSxDQUFDO0lBQ3ZCLHVCQUF1QixDQUFDLEVBQUUsZ0JBQWdCLENBQUM7SUFDM0MsVUFBVSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEtBQUss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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock_structs.d.ts","sourceRoot":"","sources":["../../src/test/mock_structs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mock_structs.d.ts","sourceRoot":"","sources":["../../src/test/mock_structs.ts"],"names":[],"mappings":"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"}
|