@aztec/txe 0.0.1-commit.993d240 → 0.0.1-commit.9a89641
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/AuthRegistry-QVGDDH5X.js +3 -0
- package/dest/AuthRegistry-QVGDDH5X.js.map +7 -0
- package/dest/ContractClassRegistry-PVNCKGG7.js +3 -0
- package/dest/ContractClassRegistry-PVNCKGG7.js.map +7 -0
- package/dest/ContractInstanceRegistry-WLOZKTR6.js +3 -0
- package/dest/ContractInstanceRegistry-WLOZKTR6.js.map +7 -0
- package/dest/FeeJuice-MAQJU53K.js +3 -0
- package/dest/FeeJuice-MAQJU53K.js.map +7 -0
- package/dest/HandshakeRegistry-GY5CPEPS.js +3 -0
- package/dest/HandshakeRegistry-GY5CPEPS.js.map +7 -0
- package/dest/MultiCallEntrypoint-QG5H33ZZ.js +3 -0
- package/dest/MultiCallEntrypoint-QG5H33ZZ.js.map +7 -0
- package/dest/SchnorrAccount-ADD65DYA.js +3 -0
- package/dest/SchnorrAccount-ADD65DYA.js.map +7 -0
- package/dest/SchnorrInitializerlessAccount-TWGKRUSY.js +3 -0
- package/dest/SchnorrInitializerlessAccount-TWGKRUSY.js.map +7 -0
- package/dest/bin/check_txe_oracle_version.js +9 -19
- package/dest/bin/index.js +1 -1
- package/dest/bin/oracle_test_server.d.ts +3 -0
- package/dest/bin/oracle_test_server.d.ts.map +1 -0
- package/dest/bin/oracle_test_server.js +41 -0
- package/dest/chunk-32UHX7YY.js +3 -0
- package/dest/{chunk-DF6RMOC6.js → chunk-RVEPNDEP.js} +2 -2
- package/dest/{chunk-DF6RMOC6.js.map → chunk-RVEPNDEP.js.map} +3 -3
- package/dest/chunk-XWIMXLKD.js +258 -0
- package/dest/chunk-XWIMXLKD.js.map +7 -0
- package/dest/constants.d.ts +3 -1
- package/dest/constants.d.ts.map +1 -1
- package/dest/constants.js +5 -2
- package/dest/dispatcher_pool.d.ts +2 -2
- package/dest/dispatcher_pool.d.ts.map +1 -1
- package/dest/dispatcher_pool.js +5 -3
- package/dest/index.d.ts +6 -143
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +12 -169
- package/dest/metafile.json +10267 -9581
- package/dest/oracle/interfaces.d.ts +38 -11
- package/dest/oracle/interfaces.d.ts.map +1 -1
- package/dest/oracle/tagging_secret_strategy.d.ts +12 -0
- package/dest/oracle/tagging_secret_strategy.d.ts.map +1 -0
- package/dest/oracle/tagging_secret_strategy.js +12 -0
- package/dest/oracle/test-resolver/default_fixtures.d.ts +16 -0
- package/dest/oracle/test-resolver/default_fixtures.d.ts.map +1 -0
- package/dest/oracle/test-resolver/default_fixtures.js +200 -0
- package/dest/oracle/test-resolver/index.d.ts +9 -0
- package/dest/oracle/test-resolver/index.d.ts.map +1 -0
- package/dest/oracle/test-resolver/index.js +32 -0
- package/dest/oracle/test-resolver/resolver.d.ts +48 -0
- package/dest/oracle/test-resolver/resolver.d.ts.map +1 -0
- package/dest/oracle/test-resolver/resolver.js +181 -0
- package/dest/oracle/txe_oracle_public_context.d.ts +25 -6
- package/dest/oracle/txe_oracle_public_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_public_context.js +34 -1
- package/dest/oracle/txe_oracle_registry.d.ts +172 -0
- package/dest/oracle/txe_oracle_registry.d.ts.map +1 -0
- package/dest/oracle/txe_oracle_registry.js +767 -0
- package/dest/oracle/txe_oracle_top_level_context.d.ts +39 -14
- package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.js +489 -289
- package/dest/{txe_oracle_version.d.ts → oracle/txe_oracle_version.d.ts} +5 -5
- package/dest/oracle/txe_oracle_version.d.ts.map +1 -0
- package/dest/{txe_oracle_version.js → oracle/txe_oracle_version.js} +4 -4
- package/dest/rpc_translator.d.ts +116 -284
- package/dest/rpc_translator.d.ts.map +1 -1
- package/dest/rpc_translator.js +809 -860
- package/dest/server.bundle.js +1 -1
- package/dest/state_machine/archiver.d.ts +3 -2
- package/dest/state_machine/archiver.d.ts.map +1 -1
- package/dest/state_machine/archiver.js +9 -3
- package/dest/state_machine/dummy_p2p_client.d.ts +5 -2
- package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -1
- package/dest/state_machine/dummy_p2p_client.js +9 -0
- package/dest/state_machine/global_variable_builder.d.ts +3 -4
- package/dest/state_machine/global_variable_builder.d.ts.map +1 -1
- package/dest/state_machine/global_variable_builder.js +0 -3
- package/dest/state_machine/index.d.ts +8 -6
- package/dest/state_machine/index.d.ts.map +1 -1
- package/dest/state_machine/index.js +41 -19
- package/dest/state_machine/mock_epoch_cache.d.ts +2 -3
- package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
- package/dest/state_machine/mock_epoch_cache.js +3 -6
- package/dest/state_machine/synchronizer.d.ts +10 -2
- package/dest/state_machine/synchronizer.d.ts.map +1 -1
- package/dest/state_machine/synchronizer.js +18 -5
- package/dest/txe_session.d.ts +43 -28
- package/dest/txe_session.d.ts.map +1 -1
- package/dest/txe_session.js +183 -47
- package/dest/utils/block_creation.d.ts +2 -2
- package/dest/utils/block_creation.d.ts.map +1 -1
- package/dest/utils/block_creation.js +2 -2
- package/dest/utils/encoding.d.ts +8 -5
- package/dest/utils/encoding.d.ts.map +1 -1
- package/dest/utils/tx_effect_creation.d.ts +1 -1
- package/dest/utils/tx_effect_creation.d.ts.map +1 -1
- package/dest/utils/tx_effect_creation.js +0 -1
- package/dest/utils/txe_artifact_resolver.d.ts +37 -0
- package/dest/utils/txe_artifact_resolver.d.ts.map +1 -0
- package/dest/utils/txe_artifact_resolver.js +161 -0
- package/dest/utils/txe_public_contract_data_source.d.ts +1 -1
- package/dest/utils/txe_public_contract_data_source.d.ts.map +1 -1
- package/dest/utils/txe_public_contract_data_source.js +7 -4
- package/dest/worker.bundle.js +1 -1
- package/package.json +18 -17
- package/src/bin/check_txe_oracle_version.ts +11 -17
- package/src/bin/oracle_test_server.ts +51 -0
- package/src/constants.ts +6 -2
- package/src/dispatcher_pool.ts +4 -3
- package/src/index.ts +21 -198
- package/src/oracle/interfaces.ts +35 -9
- package/src/oracle/tagging_secret_strategy.ts +25 -0
- package/src/oracle/test-resolver/default_fixtures.ts +271 -0
- package/src/oracle/test-resolver/index.ts +44 -0
- package/src/oracle/test-resolver/resolver.ts +245 -0
- package/src/oracle/txe_oracle_public_context.ts +36 -4
- package/src/oracle/txe_oracle_registry.ts +556 -0
- package/src/oracle/txe_oracle_top_level_context.ts +249 -66
- package/src/{txe_oracle_version.ts → oracle/txe_oracle_version.ts} +4 -4
- package/src/rpc_translator.ts +850 -1065
- package/src/state_machine/archiver.ts +9 -3
- package/src/state_machine/dummy_p2p_client.ts +13 -0
- package/src/state_machine/global_variable_builder.ts +2 -16
- package/src/state_machine/index.ts +50 -34
- package/src/state_machine/mock_epoch_cache.ts +4 -8
- package/src/state_machine/synchronizer.ts +26 -5
- package/src/txe_session.ts +325 -56
- package/src/utils/block_creation.ts +2 -1
- package/src/utils/tx_effect_creation.ts +0 -2
- package/src/utils/txe_artifact_resolver.ts +217 -0
- package/src/utils/txe_public_contract_data_source.ts +6 -4
- package/dest/ContractClassRegistry-KKNT527R.js +0 -3
- package/dest/ContractClassRegistry-KKNT527R.js.map +0 -7
- package/dest/ContractInstanceRegistry-GSKBNL3Q.js +0 -3
- package/dest/ContractInstanceRegistry-GSKBNL3Q.js.map +0 -7
- package/dest/FeeJuice-GUJ5O6GB.js +0 -3
- package/dest/FeeJuice-GUJ5O6GB.js.map +0 -7
- package/dest/MultiCallEntrypoint-ZQPCKVKL.js +0 -3
- package/dest/MultiCallEntrypoint-ZQPCKVKL.js.map +0 -7
- package/dest/SchnorrAccount-QIXE5DXA.js +0 -3
- package/dest/SchnorrAccount-QIXE5DXA.js.map +0 -7
- package/dest/chunk-BJVAAXNA.js +0 -3
- package/dest/chunk-PPJTNNUG.js +0 -265
- package/dest/chunk-PPJTNNUG.js.map +0 -7
- package/dest/txe_oracle_version.d.ts.map +0 -1
- /package/dest/{chunk-BJVAAXNA.js.map → chunk-32UHX7YY.js.map} +0 -0
package/dest/server.bundle.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { createRequire as __txeCreateRequire } from 'node:module';
|
|
2
2
|
const require = __txeCreateRequire(import.meta.url);
|
|
3
|
-
import{createTXERpcServer}from"./chunk-
|
|
3
|
+
import{createTXERpcServer}from"./chunk-RVEPNDEP.js";import"./chunk-XWIMXLKD.js";import"./chunk-32UHX7YY.js";export{createTXERpcServer};
|
|
@@ -5,7 +5,7 @@ import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
|
5
5
|
import type { AztecAsyncKVStore } from '@aztec/kv-store';
|
|
6
6
|
import { type L2Tips, type ValidateCheckpointResult } from '@aztec/stdlib/block';
|
|
7
7
|
import type { PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
8
|
-
import type
|
|
8
|
+
import { type L1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
9
9
|
/**
|
|
10
10
|
* TXE Archiver implementation.
|
|
11
11
|
* Provides most of the endpoints needed by the node for reading from and writing to state,
|
|
@@ -27,5 +27,6 @@ export declare class TXEArchiver extends ArchiverDataSourceBase {
|
|
|
27
27
|
getSyncedL2EpochNumber(): Promise<EpochNumber | undefined>;
|
|
28
28
|
isEpochComplete(_epochNumber: EpochNumber): Promise<boolean>;
|
|
29
29
|
syncImmediate(): Promise<void>;
|
|
30
|
+
getL2ToL1MembershipWitness(): Promise<undefined>;
|
|
30
31
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZV9tYWNoaW5lL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBc0QsTUFBTSxpQkFBaUIsQ0FBQztBQUU3RyxPQUFPLEVBQW9CLEtBQUssV0FBVyxFQUFFLEtBQUssVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUtMLEtBQUssTUFBTSxFQUNYLEtBQUssd0JBQXdCLEVBQzlCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRSxPQUFPLEVBQTBCLEtBQUssaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUc3Rjs7OztHQUlHO0FBQ0gscUJBQWEsV0FBWSxTQUFRLHNCQUFzQjtJQUNyRCxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBNkM7SUFFckUsWUFBWSxFQUFFLEVBQUUsaUJBQWlCLEVBUWhDO0lBRVksY0FBYyxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLHdCQUF3QixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFaEg7SUFFTSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBRTdDO0lBRU0sa0JBQWtCLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUUvQztJQUVNLGNBQWMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FJbEQ7SUFFTSxnQkFBZ0IsSUFBSSxPQUFPLENBQUM7UUFBRSxrQkFBa0IsRUFBRSxFQUFFLENBQUE7S0FBRSxDQUFDLENBRTdEO0lBRU0sY0FBYyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBRW5EO0lBRVksU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FpQ3hDO0lBRU0scUJBQXFCLElBQUksT0FBTyxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FFOUQ7SUFFTSxzQkFBc0IsSUFBSSxPQUFPLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxDQUVoRTtJQUVNLGVBQWUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FFbEU7SUFFTSxhQUFhLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUVwQztJQUVNLDBCQUEwQixJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FHdEQ7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/state_machine/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAsD,MAAM,iBAAiB,CAAC;AAE7G,OAAO,EAAoB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACtG,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAKL,KAAK,MAAM,EACX,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/state_machine/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAsD,MAAM,iBAAiB,CAAC;AAE7G,OAAO,EAAoB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACtG,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAKL,KAAK,MAAM,EACX,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAG7F;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,sBAAsB;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IAErE,YAAY,EAAE,EAAE,iBAAiB,EAQhC;IAEY,cAAc,CAAC,WAAW,EAAE,mBAAmB,EAAE,EAAE,MAAM,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhH;IAEM,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC,CAE7C;IAEM,kBAAkB,IAAI,OAAO,CAAC,UAAU,CAAC,CAE/C;IAEM,cAAc,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAIlD;IAEM,gBAAgB,IAAI,OAAO,CAAC;QAAE,kBAAkB,EAAE,EAAE,CAAA;KAAE,CAAC,CAE7D;IAEM,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEnD;IAEY,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAiCxC;IAEM,qBAAqB,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAE9D;IAEM,sBAAsB,IAAI,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAEhE;IAEM,eAAe,CAAC,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAElE;IAEM,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpC;IAEM,0BAA0B,IAAI,OAAO,CAAC,SAAS,CAAC,CAGtD;CACF"}
|
|
@@ -3,6 +3,7 @@ import { GENESIS_ARCHIVE_ROOT } from '@aztec/constants';
|
|
|
3
3
|
import { CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
4
4
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
5
|
import { GENESIS_BLOCK_HEADER_HASH } from '@aztec/stdlib/block';
|
|
6
|
+
import { EmptyL1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
6
7
|
import { BlockHeader } from '@aztec/stdlib/tx';
|
|
7
8
|
/**
|
|
8
9
|
* TXE Archiver implementation.
|
|
@@ -23,7 +24,9 @@ import { BlockHeader } from '@aztec/stdlib/tx';
|
|
|
23
24
|
throw new Error('TXE Archiver does not implement "getRegistryAddress"');
|
|
24
25
|
}
|
|
25
26
|
getL1Constants() {
|
|
26
|
-
|
|
27
|
+
// The TXE has no L1, so it serves the empty constants (epochDuration=1) used throughout the TXE state machine
|
|
28
|
+
// (see mock_epoch_cache). The node calls this when assembling a mined tx receipt to derive the epoch number.
|
|
29
|
+
return Promise.resolve(EmptyL1RollupConstants);
|
|
27
30
|
}
|
|
28
31
|
getGenesisValues() {
|
|
29
32
|
return Promise.resolve({
|
|
@@ -70,8 +73,7 @@ import { BlockHeader } from '@aztec/stdlib/tx';
|
|
|
70
73
|
proposed: blockId,
|
|
71
74
|
proven: tipId,
|
|
72
75
|
finalized: tipId,
|
|
73
|
-
checkpointed: tipId
|
|
74
|
-
proposedCheckpoint: tipId
|
|
76
|
+
checkpointed: tipId
|
|
75
77
|
};
|
|
76
78
|
}
|
|
77
79
|
getSyncedL2SlotNumber() {
|
|
@@ -86,4 +88,8 @@ import { BlockHeader } from '@aztec/stdlib/tx';
|
|
|
86
88
|
syncImmediate() {
|
|
87
89
|
throw new Error('TXE Archiver does not implement "syncImmediate"');
|
|
88
90
|
}
|
|
91
|
+
getL2ToL1MembershipWitness() {
|
|
92
|
+
// TXE doesn't drive the L2-to-L1 message flow through this archiver.
|
|
93
|
+
return Promise.resolve(undefined);
|
|
94
|
+
}
|
|
89
95
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CheckpointProposalHash, SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
|
-
import type { AuthRequest, ENR, P2P, P2PBlockReceivedCallback, P2PCheckpointAttestationCallback, P2PCheckpointReceivedCallback, P2PConfig, P2PDuplicateAttestationCallback, P2PDuplicateProposalCallback, P2PSyncState, PeerId, ReqRespSubProtocol, ReqRespSubProtocolHandler, StatusMessage } from '@aztec/p2p';
|
|
2
|
+
import type { AuthRequest, ENR, P2P, P2PBlockReceivedCallback, P2PCheckpointAttestationCallback, P2PCheckpointReceivedCallback, P2PConfig, P2PDuplicateAttestationCallback, P2PDuplicateProposalCallback, P2POversizedProposalCallback, P2PSyncState, PeerId, ReqRespSubProtocol, ReqRespSubProtocolHandler, StatusMessage } from '@aztec/p2p';
|
|
3
3
|
import type { EthAddress, L2BlockStreamEvent, L2Tips } from '@aztec/stdlib/block';
|
|
4
4
|
import type { ITxProvider, PeerInfo } from '@aztec/stdlib/interfaces/server';
|
|
5
5
|
import type { BlockProposal, CheckpointAttestation, CheckpointProposal, CheckpointProposalCore, TopicType } from '@aztec/stdlib/p2p';
|
|
@@ -28,6 +28,7 @@ export declare class DummyP2P implements P2P {
|
|
|
28
28
|
iteratePendingTxs(): AsyncIterableIterator<Tx>;
|
|
29
29
|
iterateEligiblePendingTxs(): AsyncIterableIterator<Tx>;
|
|
30
30
|
getPendingTxCount(): Promise<number>;
|
|
31
|
+
hasEligiblePendingTxs(_minCount: number): Promise<boolean>;
|
|
31
32
|
start(): Promise<void>;
|
|
32
33
|
stop(): Promise<void>;
|
|
33
34
|
isReady(): boolean;
|
|
@@ -42,6 +43,7 @@ export declare class DummyP2P implements P2P {
|
|
|
42
43
|
blockProposals: BlockProposal[];
|
|
43
44
|
checkpointProposals: CheckpointProposalCore[];
|
|
44
45
|
}>;
|
|
46
|
+
hasCheckpointProposalForSlot(_slot: SlotNumber): Promise<boolean>;
|
|
45
47
|
getL2BlockHash(_number: number): Promise<string | undefined>;
|
|
46
48
|
updateP2PConfig(_config: Partial<P2PConfig>): Promise<void>;
|
|
47
49
|
getL2Tips(): Promise<L2Tips>;
|
|
@@ -58,8 +60,9 @@ export declare class DummyP2P implements P2P {
|
|
|
58
60
|
handleAuthRequestFromPeer(_authRequest: AuthRequest, _peerId: PeerId): Promise<StatusMessage>;
|
|
59
61
|
registerThisValidatorAddresses(_address: EthAddress[]): void;
|
|
60
62
|
registerDuplicateProposalCallback(_callback: P2PDuplicateProposalCallback): void;
|
|
63
|
+
registerOversizedProposalCallback(_callback: P2POversizedProposalCallback): void;
|
|
61
64
|
registerDuplicateAttestationCallback(_callback: P2PDuplicateAttestationCallback): void;
|
|
62
65
|
registerCheckpointAttestationCallback(_callback: P2PCheckpointAttestationCallback): void;
|
|
63
66
|
hasBlockProposalsForSlot(_slot: SlotNumber): Promise<boolean>;
|
|
64
67
|
}
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVtbXlfcDJwX2NsaWVudC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvZHVtbXlfcDJwX2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRixPQUFPLEtBQUssRUFDVixXQUFXLEVBQ1gsR0FBRyxFQUNILEdBQUcsRUFDSCx3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBQ2hDLDZCQUE2QixFQUM3QixTQUFTLEVBQ1QsK0JBQStCLEVBQy9CLDRCQUE0QixFQUM1Qiw0QkFBNEIsRUFDNUIsWUFBWSxFQUNaLE1BQU0sRUFDTixrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLGFBQWEsRUFDZCxNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sS0FBSyxFQUNWLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixTQUFTLEVBQ1YsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhFLHFCQUFhLFFBQVMsWUFBVyxHQUFHO0lBQzNCLGtDQUFrQyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBRW5FO0lBRU0sS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFNUI7SUFFTSxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBRXBDO0lBRU0sYUFBYSxJQUFJ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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dummy_p2p_client.d.ts","sourceRoot":"","sources":["../../src/state_machine/dummy_p2p_client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dummy_p2p_client.d.ts","sourceRoot":"","sources":["../../src/state_machine/dummy_p2p_client.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,9 @@ export class DummyP2P {
|
|
|
70
70
|
getPendingTxCount() {
|
|
71
71
|
throw new Error('DummyP2P does not implement "getPendingTxCount"');
|
|
72
72
|
}
|
|
73
|
+
hasEligiblePendingTxs(_minCount) {
|
|
74
|
+
throw new Error('DummyP2P does not implement "hasEligiblePendingTxs"');
|
|
75
|
+
}
|
|
73
76
|
start() {
|
|
74
77
|
throw new Error('DummyP2P does not implement "start"');
|
|
75
78
|
}
|
|
@@ -106,6 +109,9 @@ export class DummyP2P {
|
|
|
106
109
|
checkpointProposals: []
|
|
107
110
|
});
|
|
108
111
|
}
|
|
112
|
+
hasCheckpointProposalForSlot(_slot) {
|
|
113
|
+
return Promise.resolve(false);
|
|
114
|
+
}
|
|
109
115
|
getL2BlockHash(_number) {
|
|
110
116
|
throw new Error('DummyP2P does not implement "getL2BlockHash"');
|
|
111
117
|
}
|
|
@@ -153,6 +159,9 @@ export class DummyP2P {
|
|
|
153
159
|
registerDuplicateProposalCallback(_callback) {
|
|
154
160
|
throw new Error('DummyP2P does not implement "registerDuplicateProposalCallback"');
|
|
155
161
|
}
|
|
162
|
+
registerOversizedProposalCallback(_callback) {
|
|
163
|
+
throw new Error('DummyP2P does not implement "registerOversizedProposalCallback"');
|
|
164
|
+
}
|
|
156
165
|
registerDuplicateAttestationCallback(_callback) {
|
|
157
166
|
throw new Error('DummyP2P does not implement "registerDuplicateAttestationCallback"');
|
|
158
167
|
}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import type { SimulationOverridesPlan } from '@aztec/ethereum/contracts';
|
|
2
|
-
import {
|
|
2
|
+
import type { SlotNumber } from '@aztec/foundation/branded-types';
|
|
3
3
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
4
4
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
5
5
|
import { GasFees } from '@aztec/stdlib/gas';
|
|
6
|
-
import {
|
|
6
|
+
import type { CheckpointGlobalVariables, FeeProvider, GlobalVariableBuilder } from '@aztec/stdlib/tx';
|
|
7
7
|
/** Simple FeeProvider for TXE that returns zero fees. */
|
|
8
8
|
export declare class TXEFeeProvider implements FeeProvider {
|
|
9
9
|
getCurrentMinFees(): Promise<GasFees>;
|
|
10
10
|
getPredictedMinFees(): Promise<GasFees[]>;
|
|
11
11
|
}
|
|
12
12
|
export declare class TXEGlobalVariablesBuilder implements GlobalVariableBuilder {
|
|
13
|
-
buildGlobalVariables(_blockNumber: BlockNumber, _coinbase: EthAddress, _feeRecipient: AztecAddress, _slotNumber?: SlotNumber): Promise<GlobalVariables>;
|
|
14
13
|
buildCheckpointGlobalVariables(_coinbase: EthAddress, _feeRecipient: AztecAddress, _slotNumber: SlotNumber, _simulationOverridesPlan?: SimulationOverridesPlan): Promise<CheckpointGlobalVariables>;
|
|
15
14
|
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsX3ZhcmlhYmxlX2J1aWxkZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZV9tYWNoaW5lL2dsb2JhbF92YXJpYWJsZV9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU1RCxPQUFPLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV0Ryx5REFBeUQ7QUFDekQscUJBQWEsY0FBZSxZQUFXLFdBQVc7SUFDekMsaUJBQWlCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUUzQztJQUVNLG1CQUFtQixJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUUvQztDQUNGO0FBRUQscUJBQWEseUJBQTBCLFlBQVcscUJBQXFCO0lBQzlELDhCQUE4QixDQUNuQyxTQUFTLEVBQUUsVUFBVSxFQUNyQixhQUFhLEVBQUUsWUFBWSxFQUMzQixXQUFXLEVBQUUsVUFBVSxFQUN2Qix3QkFBd0IsQ0FBQyxFQUFFLHVCQUF1QixHQUNqRCxPQUFPLENBQUMseUJBQXlCLENBQUMsQ0FXcEM7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global_variable_builder.d.ts","sourceRoot":"","sources":["../../src/state_machine/global_variable_builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"global_variable_builder.d.ts","sourceRoot":"","sources":["../../src/state_machine/global_variable_builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAkB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEtG,yDAAyD;AACzD,qBAAa,cAAe,YAAW,WAAW;IACzC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3C;IAEM,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAE/C;CACF;AAED,qBAAa,yBAA0B,YAAW,qBAAqB;IAC9D,8BAA8B,CACnC,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,YAAY,EAC3B,WAAW,EAAE,UAAU,EACvB,wBAAwB,CAAC,EAAE,uBAAuB,GACjD,OAAO,CAAC,yBAAyB,CAAC,CAWpC;CACF"}
|
|
@@ -10,9 +10,6 @@ import { makeGlobalVariables } from '@aztec/stdlib/testing';
|
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
export class TXEGlobalVariablesBuilder {
|
|
13
|
-
buildGlobalVariables(_blockNumber, _coinbase, _feeRecipient, _slotNumber) {
|
|
14
|
-
return Promise.resolve(makeGlobalVariables());
|
|
15
|
-
}
|
|
16
13
|
buildCheckpointGlobalVariables(_coinbase, _feeRecipient, _slotNumber, _simulationOverridesPlan) {
|
|
17
14
|
const vars = makeGlobalVariables();
|
|
18
15
|
return Promise.resolve({
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
|
+
import { type AnchorBlockStore, ContractClassService, type ContractStore, ContractSyncService, type NoteStore } from '@aztec/pxe/server';
|
|
3
|
+
import { TxResolverService } from '@aztec/pxe/simulator';
|
|
3
4
|
import { L2Block, type L2TipsProvider } from '@aztec/stdlib/block';
|
|
4
5
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
5
6
|
import { TXEArchiver } from './archiver.js';
|
|
@@ -10,11 +11,12 @@ export declare class TXEStateMachine {
|
|
|
10
11
|
archiver: TXEArchiver;
|
|
11
12
|
anchorBlockStore: AnchorBlockStore;
|
|
12
13
|
contractSyncService: ContractSyncService;
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
contractClassService: ContractClassService;
|
|
15
|
+
txResolver: TxResolverService;
|
|
16
|
+
constructor(node: AztecNode, synchronizer: TXESynchronizer, archiver: TXEArchiver, anchorBlockStore: AnchorBlockStore, contractSyncService: ContractSyncService, contractClassService: ContractClassService, txResolver: TxResolverService);
|
|
15
17
|
static create(archiver: TXEArchiver, anchorBlockStore: AnchorBlockStore, contractStore: ContractStore, noteStore: NoteStore): Promise<TXEStateMachine>;
|
|
16
18
|
/** Returns an {@link L2TipsProvider} backed by this node's chain tips. */
|
|
17
19
|
get l2TipsProvider(): L2TipsProvider;
|
|
18
|
-
handleL2Block(block: L2Block): Promise<void>;
|
|
20
|
+
handleL2Block(block: L2Block, l1ToL2Messages?: Fr[]): Promise<void>;
|
|
19
21
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZV9tYWNoaW5lL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQ0wsS0FBSyxnQkFBZ0IsRUFDckIsb0JBQW9CLEVBQ3BCLEtBQUssYUFBYSxFQUNsQixtQkFBbUIsRUFDbkIsS0FBSyxTQUFTLEVBQ2YsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk1QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFRcEQscUJBQWEsZUFBZTtJQUVqQixJQUFJLEVBQUUsU0FBUztJQUNmLFlBQVksRUFBRSxlQUFlO0lBQzdCLFFBQVEsRUFBRSxXQUFXO0lBQ3JCLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxtQkFBbUIsRUFBRSxtQkFBbUI7SUFDeEMsb0JBQW9CLEVBQUUsb0JBQW9CO0lBQzFDLFVBQVUsRUFBRSxpQkFBaUI7SUFQdEMsWUFDUyxJQUFJLEVBQUUsU0FBUyxFQUNmLFlBQVksRUFBRSxlQUFlLEVBQzdCLFFBQVEsRUFBRSxXQUFXLEVBQ3JCLGdCQUFnQixFQUFFLGdCQUFnQixFQUNsQyxtQkFBbUIsRUFBRSxtQkFBbUIsRUFDeEMsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQzFDLFVBQVUsRUFBRSxpQkFBaUIsRUFDbEM7SUFFSixPQUFvQixNQUFNLENBQ3hCLFFBQVEsRUFBRSxXQUFXLEVBQ3JCLGdCQUFnQixFQUFFLGdCQUFnQixFQUNsQyxhQUFhLEVBQUUsYUFBYSxFQUM1QixTQUFTLEVBQUUsU0FBUyw0QkFvRHJCO0lBRUQsMEVBQTBFO0lBQzFFLElBQVcsY0FBYyxJQUFJLGNBQWMsQ0FLMUM7SUFFWSxhQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxjQUFjLEdBQUUsRUFBRSxFQUFPLGlCQTBDbkU7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state_machine/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state_machine/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACpB,KAAK,aAAa,EAClB,mBAAmB,EACnB,KAAK,SAAS,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQpD,qBAAa,eAAe;IAEjB,IAAI,EAAE,SAAS;IACf,YAAY,EAAE,eAAe;IAC7B,QAAQ,EAAE,WAAW;IACrB,gBAAgB,EAAE,gBAAgB;IAClC,mBAAmB,EAAE,mBAAmB;IACxC,oBAAoB,EAAE,oBAAoB;IAC1C,UAAU,EAAE,iBAAiB;IAPtC,YACS,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,oBAAoB,EAAE,oBAAoB,EAC1C,UAAU,EAAE,iBAAiB,EAClC;IAEJ,OAAoB,MAAM,CACxB,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,4BAoDrB;IAED,0EAA0E;IAC1E,IAAW,cAAc,IAAI,cAAc,CAK1C;IAEY,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,GAAE,EAAE,EAAO,iBA0CnE;CACF"}
|
|
@@ -3,8 +3,8 @@ import { TestCircuitVerifier } from '@aztec/bb-prover/test';
|
|
|
3
3
|
import { CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
4
4
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
5
|
import { createLogger } from '@aztec/foundation/log';
|
|
6
|
-
import { ContractSyncService } from '@aztec/pxe/server';
|
|
7
|
-
import {
|
|
6
|
+
import { ContractClassService, ContractSyncService } from '@aztec/pxe/server';
|
|
7
|
+
import { TxResolverService } from '@aztec/pxe/simulator';
|
|
8
8
|
import { Checkpoint, L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
9
9
|
import { CheckpointHeader } from '@aztec/stdlib/rollup';
|
|
10
10
|
import { DummyP2P } from './dummy_p2p_client.js';
|
|
@@ -22,37 +22,58 @@ export class TXEStateMachine {
|
|
|
22
22
|
archiver;
|
|
23
23
|
anchorBlockStore;
|
|
24
24
|
contractSyncService;
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
contractClassService;
|
|
26
|
+
txResolver;
|
|
27
|
+
constructor(node, synchronizer, archiver, anchorBlockStore, contractSyncService, contractClassService, txResolver){
|
|
27
28
|
this.node = node;
|
|
28
29
|
this.synchronizer = synchronizer;
|
|
29
30
|
this.archiver = archiver;
|
|
30
31
|
this.anchorBlockStore = anchorBlockStore;
|
|
31
32
|
this.contractSyncService = contractSyncService;
|
|
32
|
-
this.
|
|
33
|
+
this.contractClassService = contractClassService;
|
|
34
|
+
this.txResolver = txResolver;
|
|
33
35
|
}
|
|
34
36
|
static async create(archiver, anchorBlockStore, contractStore, noteStore) {
|
|
35
37
|
const synchronizer = await TXESynchronizer.create();
|
|
36
38
|
const aztecNodeConfig = {};
|
|
37
39
|
const log = createLogger('txe_node');
|
|
38
|
-
const node = new AztecNodeService(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
const node = new AztecNodeService({
|
|
41
|
+
config: aztecNodeConfig,
|
|
42
|
+
p2pClient: new DummyP2P(),
|
|
43
|
+
blockSource: archiver,
|
|
44
|
+
logsSource: archiver,
|
|
45
|
+
contractDataSource: archiver,
|
|
46
|
+
l1ToL2MessageSource: archiver,
|
|
47
|
+
worldStateSynchronizer: synchronizer,
|
|
48
|
+
sequencer: undefined,
|
|
49
|
+
proverNode: undefined,
|
|
50
|
+
slasherClient: undefined,
|
|
51
|
+
validatorsSentinel: undefined,
|
|
52
|
+
stopStartedWatchers: async ()=>{},
|
|
53
|
+
l1ChainId: CHAIN_ID,
|
|
54
|
+
version: VERSION,
|
|
55
|
+
globalVariableBuilder: new TXEGlobalVariablesBuilder(),
|
|
56
|
+
rollupContract: undefined,
|
|
57
|
+
feeProvider: new TXEFeeProvider(),
|
|
58
|
+
epochCache: new MockEpochCache(),
|
|
59
|
+
packageVersion: PACKAGE_VERSION,
|
|
60
|
+
peerProofVerifier: new TestCircuitVerifier(),
|
|
61
|
+
rpcProofVerifier: new TestCircuitVerifier(),
|
|
62
|
+
telemetry: undefined,
|
|
63
|
+
log
|
|
64
|
+
});
|
|
65
|
+
const contractClassService = new ContractClassService(node, contractStore);
|
|
66
|
+
const contractSyncService = new ContractSyncService(node, contractStore, contractClassService, noteStore, createLogger('txe:contract_sync'));
|
|
67
|
+
const txResolver = new TxResolverService(node);
|
|
68
|
+
return new this(node, synchronizer, archiver, anchorBlockStore, contractSyncService, contractClassService, txResolver);
|
|
42
69
|
}
|
|
43
70
|
/** Returns an {@link L2TipsProvider} backed by this node's chain tips. */ get l2TipsProvider() {
|
|
44
71
|
const node = this.node;
|
|
45
72
|
return {
|
|
46
|
-
getL2Tips:
|
|
47
|
-
const tips = await node.getChainTips();
|
|
48
|
-
return {
|
|
49
|
-
...tips,
|
|
50
|
-
proposedCheckpoint: tips.checkpointed
|
|
51
|
-
};
|
|
52
|
-
}
|
|
73
|
+
getL2Tips: ()=>node.getChainTips()
|
|
53
74
|
};
|
|
54
75
|
}
|
|
55
|
-
async handleL2Block(block) {
|
|
76
|
+
async handleL2Block(block, l1ToL2Messages = []) {
|
|
56
77
|
// Create a checkpoint from the block manually.
|
|
57
78
|
// TXE uses 1-block-per-checkpoint for testing simplicity, so we can use block number as checkpoint number.
|
|
58
79
|
// This uses the deprecated fromBlockNumber method intentionally for the TXE testing environment.
|
|
@@ -68,7 +89,8 @@ export class TXEStateMachine {
|
|
|
68
89
|
coinbase: block.header.globalVariables.coinbase,
|
|
69
90
|
feeRecipient: block.header.globalVariables.feeRecipient,
|
|
70
91
|
gasFees: block.header.globalVariables.gasFees,
|
|
71
|
-
totalManaUsed: block.header.totalManaUsed
|
|
92
|
+
totalManaUsed: block.header.totalManaUsed,
|
|
93
|
+
accumulatedFees: block.header.totalFees
|
|
72
94
|
}), [
|
|
73
95
|
block
|
|
74
96
|
], checkpointNumber);
|
|
@@ -76,7 +98,7 @@ export class TXEStateMachine {
|
|
|
76
98
|
// Wipe contract sync cache when anchor block changes (mirrors BlockSynchronizer behavior)
|
|
77
99
|
this.contractSyncService.wipe();
|
|
78
100
|
await Promise.all([
|
|
79
|
-
this.synchronizer.handleL2Block(block),
|
|
101
|
+
this.synchronizer.handleL2Block(block, l1ToL2Messages),
|
|
80
102
|
this.archiver.addCheckpoints([
|
|
81
103
|
publishedCheckpoint
|
|
82
104
|
], undefined),
|
|
@@ -21,8 +21,6 @@ export declare class MockEpochCache implements EpochCacheInterface {
|
|
|
21
21
|
getTargetEpochAndSlotInNextL1Slot(): EpochAndSlot & {
|
|
22
22
|
nowSeconds: bigint;
|
|
23
23
|
};
|
|
24
|
-
isProposerPipeliningEnabled(): boolean;
|
|
25
|
-
pipeliningOffset(): number;
|
|
26
24
|
getProposerIndexEncoding(_epoch: EpochNumber, _slot: SlotNumber, _seed: bigint): `0x${string}`;
|
|
27
25
|
computeProposerIndex(_slot: SlotNumber, _epoch: EpochNumber, _seed: bigint, _size: bigint): bigint;
|
|
28
26
|
getCurrentAndNextSlot(): {
|
|
@@ -40,5 +38,6 @@ export declare class MockEpochCache implements EpochCacheInterface {
|
|
|
40
38
|
isEscapeHatchOpen(_epoch: EpochNumber): Promise<boolean>;
|
|
41
39
|
isEscapeHatchOpenAtSlot(_slot: SlotTag): Promise<boolean>;
|
|
42
40
|
getL1Constants(): L1RollupConstants;
|
|
41
|
+
getLagInEpochsForValidatorSet(): number;
|
|
43
42
|
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19lcG9jaF9jYWNoZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvbW9ja19lcG9jaF9jYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUEwQixLQUFLLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFN0Y7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLG1CQUFtQjtJQUN4RCxZQUFZLENBQUMsS0FBSyxHQUFFLE9BQWUsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FPaEU7SUFFRCxVQUFVLElBQUksVUFBVSxDQUV2QjtJQUVELGFBQWEsSUFBSSxVQUFVLENBRTFCO0lBRUQsV0FBVyxJQUFJLFdBQVcsQ0FFekI7SUFFRCxjQUFjLElBQUksV0FBVyxDQUU1QjtJQUVELGtCQUFrQixJQUFJLFlBQVksR0FBRztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9yRDtJQUVELDJCQUEyQixJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9uRTtJQUVELGlDQUFpQyxJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUV6RTtJQUVELHdCQUF3QixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLEtBQUssTUFBTSxFQUFFLENBRTdGO0lBRUQsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxNQUFNLENBRWpHO0lBRUQscUJBQXFCLElBQUk7UUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3pFO0lBRUQsb0JBQW9CLElBQUk7UUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3ZFO0lBRUQsZ0NBQWdDLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUVuRjtJQUVELGFBQWEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV0RTtJQUVELHVCQUF1QixJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUUvQztJQUVELGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUVsRjtJQUVELGlCQUFpQixDQUFDLE1BQU0sRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV2RDtJQUVELHVCQUF1QixDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV4RDtJQUVELGNBQWMsSUFBSSxpQkFBaUIsQ0FFbEM7SUFFRCw2QkFBNkIsSUFBSSxNQUFNLENBRXRDO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock_epoch_cache.d.ts","sourceRoot":"","sources":["../../src/state_machine/mock_epoch_cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAE7F;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,YAAY,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOhE;IAED,UAAU,IAAI,UAAU,CAEvB;IAED,aAAa,IAAI,UAAU,CAE1B;IAED,WAAW,IAAI,WAAW,CAEzB;IAED,cAAc,IAAI,WAAW,CAE5B;IAED,kBAAkB,IAAI,YAAY,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAOrD;IAED,2BAA2B,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAOnE;IAED,iCAAiC,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAEzE;IAED,
|
|
1
|
+
{"version":3,"file":"mock_epoch_cache.d.ts","sourceRoot":"","sources":["../../src/state_machine/mock_epoch_cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAE7F;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,YAAY,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOhE;IAED,UAAU,IAAI,UAAU,CAEvB;IAED,aAAa,IAAI,UAAU,CAE1B;IAED,WAAW,IAAI,WAAW,CAEzB;IAED,cAAc,IAAI,WAAW,CAE5B;IAED,kBAAkB,IAAI,YAAY,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAOrD;IAED,2BAA2B,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAOnE;IAED,iCAAiC,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAEzE;IAED,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAE7F;IAED,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjG;IAED,qBAAqB,IAAI;QAAE,WAAW,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKzE;IAED,oBAAoB,IAAI;QAAE,UAAU,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKvE;IAED,gCAAgC,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAEnF;IAED,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAEtE;IAED,uBAAuB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAE/C;IAED,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAElF;IAED,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvD;IAED,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAExD;IAED,cAAc,IAAI,iBAAiB,CAElC;IAED,6BAA6B,IAAI,MAAM,CAEtC;CACF"}
|
|
@@ -43,12 +43,6 @@ import { EmptyL1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
|
43
43
|
getTargetEpochAndSlotInNextL1Slot() {
|
|
44
44
|
return this.getEpochAndSlotInNextL1Slot();
|
|
45
45
|
}
|
|
46
|
-
isProposerPipeliningEnabled() {
|
|
47
|
-
return false;
|
|
48
|
-
}
|
|
49
|
-
pipeliningOffset() {
|
|
50
|
-
return 0;
|
|
51
|
-
}
|
|
52
46
|
getProposerIndexEncoding(_epoch, _slot, _seed) {
|
|
53
47
|
return '0x00';
|
|
54
48
|
}
|
|
@@ -88,4 +82,7 @@ import { EmptyL1RollupConstants } from '@aztec/stdlib/epoch-helpers';
|
|
|
88
82
|
getL1Constants() {
|
|
89
83
|
return EmptyL1RollupConstants;
|
|
90
84
|
}
|
|
85
|
+
getLagInEpochsForValidatorSet() {
|
|
86
|
+
return 0;
|
|
87
|
+
}
|
|
91
88
|
}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
+
import { AvmSimulatorPool } from '@aztec/simulator/server';
|
|
2
4
|
import type { BlockHash, L2Block } from '@aztec/stdlib/block';
|
|
3
5
|
import type { MerkleTreeReadOperations, MerkleTreeWriteOperations, SnapshotDataKeys, WorldStateSynchronizer, WorldStateSynchronizerStatus } from '@aztec/stdlib/interfaces/server';
|
|
4
6
|
import { NativeWorldStateService } from '@aztec/world-state/native';
|
|
5
7
|
export declare class TXESynchronizer implements WorldStateSynchronizer {
|
|
6
8
|
nativeWorldStateService: NativeWorldStateService;
|
|
7
9
|
private blockNumber;
|
|
10
|
+
/** AVM execution backend (simulator pool + CDB server) shared across all public simulations. */
|
|
11
|
+
avmSimulator: AvmSimulatorPool;
|
|
8
12
|
constructor(nativeWorldStateService: NativeWorldStateService);
|
|
9
13
|
static create(): Promise<TXESynchronizer>;
|
|
10
|
-
handleL2Block(block: L2Block): Promise<void>;
|
|
14
|
+
handleL2Block(block: L2Block, l1ToL2Messages?: Fr[]): Promise<void>;
|
|
11
15
|
/**
|
|
12
16
|
* Forces an immediate sync to an optionally provided minimum block number.
|
|
13
17
|
* @param targetBlockNumber - The target block number that we must sync to. Will download unproven blocks if needed to reach it.
|
|
@@ -21,6 +25,8 @@ export declare class TXESynchronizer implements WorldStateSynchronizer {
|
|
|
21
25
|
fork(block?: number): Promise<MerkleTreeWriteOperations>;
|
|
22
26
|
/** Gets a handle that allows reading the state as it was at the given block number. */
|
|
23
27
|
getSnapshot(blockNumber: number): MerkleTreeReadOperations;
|
|
28
|
+
/** Gets a snapshot at the given block number. The TXE has no reorgs, so the fork hash is not verified. */
|
|
29
|
+
getVerifiedSnapshot(blockNumber: number, _blockHash: BlockHash): Promise<MerkleTreeReadOperations>;
|
|
24
30
|
/** Backups the db to the target path. */
|
|
25
31
|
backupTo(dstPath: string, compact?: boolean): Promise<Record<Exclude<SnapshotDataKeys, 'archiver'>, string>>;
|
|
26
32
|
start(): Promise<void>;
|
|
@@ -29,5 +35,7 @@ export declare class TXESynchronizer implements WorldStateSynchronizer {
|
|
|
29
35
|
stopSync(): Promise<void>;
|
|
30
36
|
resumeSync(): void;
|
|
31
37
|
clear(): Promise<void>;
|
|
38
|
+
/** Clean up IPC resources. */
|
|
39
|
+
closeIpc(): Promise<void>;
|
|
32
40
|
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luY2hyb25pemVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RhdGVfbWFjaGluZS9zeW5jaHJvbml6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQ1Ysd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6QixnQkFBZ0IsRUFDaEIsc0JBQXNCLEVBQ3RCLDRCQUE0QixFQUM3QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLHFCQUFhLGVBQWdCLFlBQVcsc0JBQXNCO0lBT3pDLHVCQUF1QixFQUFFLHVCQUF1QjtJQUxuRSxPQUFPLENBQUMsV0FBVyxDQUFvQjtJQUV2QyxnR0FBZ0c7SUFDekYsWUFBWSxFQUFHLGdCQUFnQixDQUFDO0lBRXZDLFlBQW1CLHVCQUF1QixFQUFFLHVCQUF1QixFQUFJO0lBRXZFLE9BQWEsTUFBTSw2QkFVbEI7SUFFWSxhQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxjQUFjLEdBQUUsRUFBRSxFQUFPLGlCQU9uRTtJQUVEOzs7OztPQUtHO0lBQ0ksYUFBYSxDQUFDLGVBQWUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUVoRztJQUVELCtGQUErRjtJQUN4RixZQUFZLElBQUksd0JBQXdCLENBRTlDO0lBRUQscUZBQXFGO0lBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBRTlEO0lBRUQsdUZBQXVGO0lBQ2hGLFdBQVcsQ0FBQyxXQUFXLEVBQUUsTUFBTSxHQUFHLHdCQUF3QixDQUVoRTtJQUVELDBHQUEwRztJQUNuRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLHdCQUF3QixDQUFDLENBRXhHO0lBRUQseUNBQXlDO0lBQ2xDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUVsSDtJQUVNLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTVCO0lBRU0sTUFBTSxJQUFJLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUVyRDtJQUVZLElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRWpDO0lBRU0sUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFL0I7SUFFTSxVQUFVLElBQUksSUFBSSxDQUV4QjtJQUVNLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTVCO0lBRUQsOEJBQThCO0lBQ2pCLFFBQVEsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXJDO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synchronizer.d.ts","sourceRoot":"","sources":["../../src/state_machine/synchronizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,qBAAa,eAAgB,YAAW,sBAAsB;
|
|
1
|
+
{"version":3,"file":"synchronizer.d.ts","sourceRoot":"","sources":["../../src/state_machine/synchronizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,qBAAa,eAAgB,YAAW,sBAAsB;IAOzC,uBAAuB,EAAE,uBAAuB;IALnE,OAAO,CAAC,WAAW,CAAoB;IAEvC,gGAAgG;IACzF,YAAY,EAAG,gBAAgB,CAAC;IAEvC,YAAmB,uBAAuB,EAAE,uBAAuB,EAAI;IAEvE,OAAa,MAAM,6BAUlB;IAEY,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,GAAE,EAAE,EAAO,iBAOnE;IAED;;;;;OAKG;IACI,aAAa,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAEhG;IAED,+FAA+F;IACxF,YAAY,IAAI,wBAAwB,CAE9C;IAED,qFAAqF;IAC9E,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAE9D;IAED,uFAAuF;IAChF,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,wBAAwB,CAEhE;IAED,0GAA0G;IACnG,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAExG;IAED,yCAAyC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAElH;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAEM,MAAM,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAErD;IAEY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjC;IAEM,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/B;IAEM,UAAU,IAAI,IAAI,CAExB;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAED,8BAA8B;IACjB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAErC;CACF"}
|
|
@@ -1,21 +1,28 @@
|
|
|
1
1
|
import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
|
|
2
2
|
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
3
|
+
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
3
4
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
5
|
+
import { AvmSimulatorPool } from '@aztec/simulator/server';
|
|
4
6
|
import { NativeWorldStateService } from '@aztec/world-state/native';
|
|
5
7
|
export class TXESynchronizer {
|
|
6
8
|
nativeWorldStateService;
|
|
7
9
|
// This works when set to 1 as well.
|
|
8
10
|
blockNumber;
|
|
11
|
+
/** AVM execution backend (simulator pool + CDB server) shared across all public simulations. */ avmSimulator;
|
|
9
12
|
constructor(nativeWorldStateService){
|
|
10
13
|
this.nativeWorldStateService = nativeWorldStateService;
|
|
11
14
|
this.blockNumber = BlockNumber.ZERO;
|
|
12
15
|
}
|
|
13
16
|
static async create() {
|
|
14
17
|
const nativeWorldStateService = await NativeWorldStateService.ephemeral();
|
|
15
|
-
|
|
18
|
+
const synchronizer = new this(nativeWorldStateService);
|
|
19
|
+
synchronizer.avmSimulator = await AvmSimulatorPool.spawn({
|
|
20
|
+
wsdbIpcPath: nativeWorldStateService.getIpcPath()
|
|
21
|
+
});
|
|
22
|
+
return synchronizer;
|
|
16
23
|
}
|
|
17
|
-
async handleL2Block(block) {
|
|
18
|
-
await this.nativeWorldStateService.handleL2BlockAndMessages(block,
|
|
24
|
+
async handleL2Block(block, l1ToL2Messages = []) {
|
|
25
|
+
await this.nativeWorldStateService.handleL2BlockAndMessages(block, padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP));
|
|
19
26
|
this.blockNumber = block.header.globalVariables.blockNumber;
|
|
20
27
|
}
|
|
21
28
|
/**
|
|
@@ -35,6 +42,9 @@ export class TXESynchronizer {
|
|
|
35
42
|
/** Gets a handle that allows reading the state as it was at the given block number. */ getSnapshot(blockNumber) {
|
|
36
43
|
return this.nativeWorldStateService.getSnapshot(BlockNumber(blockNumber));
|
|
37
44
|
}
|
|
45
|
+
/** Gets a snapshot at the given block number. The TXE has no reorgs, so the fork hash is not verified. */ getVerifiedSnapshot(blockNumber, _blockHash) {
|
|
46
|
+
return Promise.resolve(this.getSnapshot(blockNumber));
|
|
47
|
+
}
|
|
38
48
|
/** Backups the db to the target path. */ backupTo(dstPath, compact) {
|
|
39
49
|
return this.nativeWorldStateService.backupTo(dstPath, compact);
|
|
40
50
|
}
|
|
@@ -44,8 +54,8 @@ export class TXESynchronizer {
|
|
|
44
54
|
status() {
|
|
45
55
|
throw new Error('TXE Synchronizer does not implement "status"');
|
|
46
56
|
}
|
|
47
|
-
stop() {
|
|
48
|
-
|
|
57
|
+
async stop() {
|
|
58
|
+
await this.closeIpc();
|
|
49
59
|
}
|
|
50
60
|
stopSync() {
|
|
51
61
|
throw new Error('TXE Synchronizer does not implement "stopSync"');
|
|
@@ -56,4 +66,7 @@ export class TXESynchronizer {
|
|
|
56
66
|
clear() {
|
|
57
67
|
throw new Error('TXE Synchronizer does not implement "clear"');
|
|
58
68
|
}
|
|
69
|
+
/** Clean up IPC resources. */ async closeIpc() {
|
|
70
|
+
await this.avmSimulator?.[Symbol.asyncDispose]();
|
|
71
|
+
}
|
|
59
72
|
}
|