@aztec/aztec-node 0.0.1-commit.4d79d1f2d → 0.0.1-commit.4eabbdb
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/aztec-node/config.d.ts +7 -4
- package/dest/aztec-node/config.d.ts.map +1 -1
- package/dest/aztec-node/config.js +10 -2
- package/dest/aztec-node/server.d.ts +16 -3
- package/dest/aztec-node/server.d.ts.map +1 -1
- package/dest/aztec-node/server.js +141 -17
- package/dest/sentinel/sentinel.d.ts +2 -2
- package/dest/sentinel/sentinel.d.ts.map +1 -1
- package/dest/sentinel/sentinel.js +53 -27
- package/dest/sentinel/store.d.ts +2 -2
- package/dest/sentinel/store.d.ts.map +1 -1
- package/dest/sentinel/store.js +11 -7
- package/package.json +27 -25
- package/src/aztec-node/config.ts +24 -8
- package/src/aztec-node/server.ts +181 -25
- package/src/sentinel/sentinel.ts +56 -23
- package/src/sentinel/store.ts +12 -12
|
@@ -7,7 +7,8 @@ import { type KeyStore } from '@aztec/node-keystore';
|
|
|
7
7
|
import { type SharedNodeConfig } from '@aztec/node-lib/config';
|
|
8
8
|
import { type P2PConfig } from '@aztec/p2p/config';
|
|
9
9
|
import { type ProverClientUserConfig } from '@aztec/prover-client/config';
|
|
10
|
-
import { type
|
|
10
|
+
import { type ProverNodeConfig } from '@aztec/prover-node/config';
|
|
11
|
+
import { type SequencerClientConfig, type SequencerTxSenderConfig, sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
|
|
11
12
|
import { type NodeRPCConfig } from '@aztec/stdlib/config';
|
|
12
13
|
import type { SlasherConfig } from '@aztec/stdlib/interfaces/server';
|
|
13
14
|
import { type ValidatorClientConfig } from '@aztec/validator-client/config';
|
|
@@ -17,7 +18,7 @@ export { sequencerClientConfigMappings, type SequencerClientConfig };
|
|
|
17
18
|
/**
|
|
18
19
|
* The configuration the aztec node.
|
|
19
20
|
*/
|
|
20
|
-
export type AztecNodeConfig = ArchiverConfig & SequencerClientConfig & ValidatorClientConfig & ProverClientUserConfig & WorldStateConfig & Pick<ProverClientUserConfig, 'bbBinaryPath' | 'bbWorkingDirectory' | 'realProofs'> & P2PConfig & DataStoreConfig & SentinelConfig & SharedNodeConfig & GenesisStateConfig & NodeRPCConfig & SlasherConfig & {
|
|
21
|
+
export type AztecNodeConfig = ArchiverConfig & SequencerClientConfig & ValidatorClientConfig & ProverClientUserConfig & WorldStateConfig & Pick<ProverClientUserConfig, 'bbBinaryPath' | 'bbWorkingDirectory' | 'realProofs'> & P2PConfig & DataStoreConfig & SentinelConfig & SharedNodeConfig & GenesisStateConfig & NodeRPCConfig & SlasherConfig & ProverNodeConfig & {
|
|
21
22
|
/** L1 contracts addresses */
|
|
22
23
|
l1Contracts: L1ContractAddresses;
|
|
23
24
|
/** Whether the validator is disabled for this node */
|
|
@@ -26,6 +27,8 @@ export type AztecNodeConfig = ArchiverConfig & SequencerClientConfig & Validator
|
|
|
26
27
|
skipArchiverInitialSync: boolean;
|
|
27
28
|
/** A flag to force verification of tx Chonk proofs. Only used for testnet */
|
|
28
29
|
debugForceTxProofVerification: boolean;
|
|
30
|
+
/** Whether to enable the prover node as a subsystem. */
|
|
31
|
+
enableProverNode: boolean;
|
|
29
32
|
};
|
|
30
33
|
export declare const aztecNodeConfigMappings: ConfigMappingsType<AztecNodeConfig>;
|
|
31
34
|
/**
|
|
@@ -33,5 +36,5 @@ export declare const aztecNodeConfigMappings: ConfigMappingsType<AztecNodeConfig
|
|
|
33
36
|
* @returns A valid aztec node config.
|
|
34
37
|
*/
|
|
35
38
|
export declare function getConfigEnvVars(): AztecNodeConfig;
|
|
36
|
-
export declare function createKeyStoreForValidator(config:
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
export declare function createKeyStoreForValidator(config: SequencerTxSenderConfig & SequencerClientConfig & SharedNodeConfig): KeyStore | undefined;
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssY0FBYyxFQUEwQixNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUE4QixNQUFNLHdCQUF3QixDQUFDO0FBQzdGLE9BQU8sRUFBRSxLQUFLLG1CQUFtQixFQUE4QixNQUFNLHVDQUF1QyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUE4QyxNQUFNLDBCQUEwQixDQUFDO0FBRS9HLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRixPQUFPLEVBQ0wsS0FBSyxRQUFRLEVBSWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBNEIsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsS0FBSyxTQUFTLEVBQXFCLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLEtBQUssc0JBQXNCLEVBQThCLE1BQU0sNkJBQTZCLENBQUM7QUFDdEcsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBR3RCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUNMLEtBQUsscUJBQXFCLEVBQzFCLEtBQUssdUJBQXVCLEVBQzVCLDZCQUE2QixFQUM5QixNQUFNLGdDQUFnQyxDQUFDO0FBR3hDLE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBeUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxxQkFBcUIsRUFBaUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRyxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBNEIsTUFBTSwyQkFBMkIsQ0FBQztBQUk1RixPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQTBCLE1BQU0sdUJBQXVCLENBQUM7QUFFcEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsQ0FBQztBQUVyRTs7R0FFRztBQUNILE1BQU0sTUFBTSxlQUFlLEdBQUcsY0FBYyxHQUMxQyxxQkFBcUIsR0FDckIscUJBQXFCLEdBQ3JCLHNCQUFzQixHQUN0QixnQkFBZ0IsR0FDaEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLGNBQWMsR0FBRyxvQkFBb0IsR0FBRyxZQUFZLENBQUMsR0FDbEYsU0FBUyxHQUNULGVBQWUsR0FDZixjQUFjLEdBQ2QsZ0JBQWdCLEdBQ2hCLGtCQUFrQixHQUNsQixhQUFhLEdBQ2IsYUFBYSxHQUNiLGdCQUFnQixHQUFHO0lBQ2pCLDZCQUE2QjtJQUM3QixXQUFXLEVBQUUsbUJBQW1CLENBQUM7SUFDakMsc0RBQXNEO0lBQ3RELGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQixpR0FBaUc7SUFDakcsdUJBQXVCLEVBQUUsT0FBTyxDQUFDO0lBQ2pDLDZFQUE2RTtJQUM3RSw2QkFBNkIsRUFBRSxPQUFPLENBQUM7SUFDdkMsd0RBQXdEO0lBQ3hELGdCQUFnQixFQUFFLE9BQU8sQ0FBQztDQUMzQixDQUFDO0FBRUosZUFBTyxNQUFNLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDLGVBQWUsQ0F3Q3ZFLENBQUM7QUFFRjs7O0dBR0c7QUFDSCx3QkFBZ0IsZ0JBQWdCLElBQUksZUFBZSxDQUVsRDtBQXNFRCx3QkFBZ0IsMEJBQTBCLENBQ3hDLE1BQU0sRUFBRSx1QkFBdUIsR0FBRyxxQkFBcUIsR0FBRyxnQkFBZ0IsR0FDekUsUUFBUSxHQUFHLFNBQVMsQ0FNdEIifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/aztec-node/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,KAAK,mBAAmB,EAA8B,MAAM,uCAAuC,CAAC;AAC7G,OAAO,EAAE,KAAK,kBAAkB,EAA8C,MAAM,0BAA0B,CAAC;AAE/G,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,KAAK,QAAQ,EAId,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,KAAK,sBAAsB,EAA8B,MAAM,6BAA6B,CAAC;AACtG,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/aztec-node/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,KAAK,mBAAmB,EAA8B,MAAM,uCAAuC,CAAC;AAC7G,OAAO,EAAE,KAAK,kBAAkB,EAA8C,MAAM,0BAA0B,CAAC;AAE/G,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,KAAK,QAAQ,EAId,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,KAAK,sBAAsB,EAA8B,MAAM,6BAA6B,CAAC;AACtG,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC9B,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,KAAK,aAAa,EAAyB,MAAM,sBAAsB,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,KAAK,qBAAqB,EAAiC,MAAM,gCAAgC,CAAC;AAC3G,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,2BAA2B,CAAC;AAI5F,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,uBAAuB,CAAC;AAEpF,OAAO,EAAE,6BAA6B,EAAE,KAAK,qBAAqB,EAAE,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,cAAc,GAC1C,qBAAqB,GACrB,qBAAqB,GACrB,sBAAsB,GACtB,gBAAgB,GAChB,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,oBAAoB,GAAG,YAAY,CAAC,GAClF,SAAS,GACT,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,gBAAgB,GAAG;IACjB,6BAA6B;IAC7B,WAAW,EAAE,mBAAmB,CAAC;IACjC,sDAAsD;IACtD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iGAAiG;IACjG,uBAAuB,EAAE,OAAO,CAAC;IACjC,6EAA6E;IAC7E,6BAA6B,EAAE,OAAO,CAAC;IACvC,wDAAwD;IACxD,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEJ,eAAO,MAAM,uBAAuB,EAAE,kBAAkB,CAAC,eAAe,CAwCvE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,eAAe,CAElD;AAsED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,uBAAuB,GAAG,qBAAqB,GAAG,gBAAgB,GACzE,QAAQ,GAAG,SAAS,CAMtB"}
|
|
@@ -8,6 +8,7 @@ import { ethPrivateKeySchema, keyStoreConfigMappings } from '@aztec/node-keystor
|
|
|
8
8
|
import { sharedNodeConfigMappings } from '@aztec/node-lib/config';
|
|
9
9
|
import { p2pConfigMappings } from '@aztec/p2p/config';
|
|
10
10
|
import { proverClientConfigMappings } from '@aztec/prover-client/config';
|
|
11
|
+
import { proverNodeConfigMappings, specificProverNodeConfigMappings } from '@aztec/prover-node/config';
|
|
11
12
|
import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
|
|
12
13
|
import { slasherConfigMappings } from '@aztec/slasher';
|
|
13
14
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
@@ -22,6 +23,7 @@ export const aztecNodeConfigMappings = {
|
|
|
22
23
|
...keyStoreConfigMappings,
|
|
23
24
|
...archiverConfigMappings,
|
|
24
25
|
...sequencerClientConfigMappings,
|
|
26
|
+
...proverNodeConfigMappings,
|
|
25
27
|
...validatorClientConfigMappings,
|
|
26
28
|
...proverClientConfigMappings,
|
|
27
29
|
...worldStateConfigMappings,
|
|
@@ -31,6 +33,7 @@ export const aztecNodeConfigMappings = {
|
|
|
31
33
|
...genesisStateConfigMappings,
|
|
32
34
|
...nodeRpcConfigMappings,
|
|
33
35
|
...slasherConfigMappings,
|
|
36
|
+
...specificProverNodeConfigMappings,
|
|
34
37
|
l1Contracts: {
|
|
35
38
|
description: 'The deployed L1 contract addresses',
|
|
36
39
|
nested: l1ContractAddressesMapping
|
|
@@ -49,6 +52,11 @@ export const aztecNodeConfigMappings = {
|
|
|
49
52
|
env: 'DEBUG_FORCE_TX_PROOF_VERIFICATION',
|
|
50
53
|
description: 'Whether to skip waiting for the archiver to be fully synced before starting other services.',
|
|
51
54
|
...booleanConfigHelper(false)
|
|
55
|
+
},
|
|
56
|
+
enableProverNode: {
|
|
57
|
+
env: 'ENABLE_PROVER_NODE',
|
|
58
|
+
description: 'Whether to enable the prover node as a subsystem.',
|
|
59
|
+
...booleanConfigHelper(false)
|
|
52
60
|
}
|
|
53
61
|
};
|
|
54
62
|
/**
|
|
@@ -67,7 +75,7 @@ function createKeyStoreFromWeb3Signer(config) {
|
|
|
67
75
|
feeRecipient: config.feeRecipient ?? AztecAddress.ZERO,
|
|
68
76
|
coinbase: config.coinbase ?? config.validatorAddresses[0],
|
|
69
77
|
remoteSigner: config.web3SignerUrl,
|
|
70
|
-
publisher: config.
|
|
78
|
+
publisher: config.sequencerPublisherAddresses ?? []
|
|
71
79
|
});
|
|
72
80
|
const keyStore = {
|
|
73
81
|
schemaVersion: 1,
|
|
@@ -86,7 +94,7 @@ function createKeyStoreFromPrivateKeys(config) {
|
|
|
86
94
|
}
|
|
87
95
|
const coinbase = config.coinbase ?? EthAddress.fromString(privateKeyToAddress(ethPrivateKeys[0]));
|
|
88
96
|
const feeRecipient = config.feeRecipient ?? AztecAddress.ZERO;
|
|
89
|
-
const publisherKeys = config.
|
|
97
|
+
const publisherKeys = config.sequencerPublisherPrivateKeys ? config.sequencerPublisherPrivateKeys.map((k)=>ethPrivateKeySchema.parse(k.getValue())) : [];
|
|
90
98
|
validatorKeyStores.push({
|
|
91
99
|
attester: ethPrivateKeys,
|
|
92
100
|
feeRecipient: feeRecipient,
|
|
@@ -8,11 +8,13 @@ import { EthAddress } from '@aztec/foundation/eth-address';
|
|
|
8
8
|
import { type Logger } from '@aztec/foundation/log';
|
|
9
9
|
import { DateProvider } from '@aztec/foundation/timer';
|
|
10
10
|
import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
|
|
11
|
+
import { KeystoreManager } from '@aztec/node-keystore';
|
|
11
12
|
import { type P2P, type P2PClientDeps } from '@aztec/p2p';
|
|
13
|
+
import { type ProverNode, type ProverNodeDeps } from '@aztec/prover-node';
|
|
12
14
|
import { SequencerClient, type SequencerPublisher } from '@aztec/sequencer-client';
|
|
13
15
|
import { EpochPruneWatcher, type SlasherClientInterface } from '@aztec/slasher';
|
|
14
16
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
15
|
-
import { BlockHash, type BlockParameter, type DataInBlock, L2Block, type L2BlockSource } from '@aztec/stdlib/block';
|
|
17
|
+
import { type BlockData, BlockHash, type BlockParameter, type DataInBlock, L2Block, type L2BlockSource } from '@aztec/stdlib/block';
|
|
16
18
|
import type { PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
|
|
17
19
|
import type { ContractClassPublic, ContractDataSource, ContractInstanceWithAddress, NodeInfo, ProtocolContractAddresses } from '@aztec/stdlib/contract';
|
|
18
20
|
import { GasFees } from '@aztec/stdlib/gas';
|
|
@@ -27,6 +29,7 @@ import { MerkleTreeId, NullifierMembershipWitness, PublicDataWitness } from '@az
|
|
|
27
29
|
import { type BlockHeader, type GlobalVariableBuilder as GlobalVariableBuilderInterface, type IndexedTxEffect, PublicSimulationOutput, Tx, type TxHash, TxReceipt, type TxValidationResult } from '@aztec/stdlib/tx';
|
|
28
30
|
import type { SingleValidatorStats, ValidatorsStats } from '@aztec/stdlib/validators';
|
|
29
31
|
import { type TelemetryClient, type Traceable, type Tracer } from '@aztec/telemetry-client';
|
|
32
|
+
import { ValidatorClient } from '@aztec/validator-client';
|
|
30
33
|
import { Sentinel } from '../sentinel/sentinel.js';
|
|
31
34
|
import { type AztecNodeConfig } from './config.js';
|
|
32
35
|
/**
|
|
@@ -42,6 +45,7 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
42
45
|
protected readonly l1ToL2MessageSource: L1ToL2MessageSource;
|
|
43
46
|
protected readonly worldStateSynchronizer: WorldStateSynchronizer;
|
|
44
47
|
protected readonly sequencer: SequencerClient | undefined;
|
|
48
|
+
protected readonly proverNode: ProverNode | undefined;
|
|
45
49
|
protected readonly slasherClient: SlasherClientInterface | undefined;
|
|
46
50
|
protected readonly validatorsSentinel: Sentinel | undefined;
|
|
47
51
|
protected readonly epochPruneWatcher: EpochPruneWatcher | undefined;
|
|
@@ -54,11 +58,13 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
54
58
|
private telemetry;
|
|
55
59
|
private log;
|
|
56
60
|
private blobClient?;
|
|
61
|
+
private validatorClient?;
|
|
62
|
+
private keyStoreManager?;
|
|
57
63
|
private metrics;
|
|
58
64
|
private initialHeaderHashPromise;
|
|
59
65
|
private isUploadingSnapshot;
|
|
60
66
|
readonly tracer: Tracer;
|
|
61
|
-
constructor(config: AztecNodeConfig, p2pClient: P2P, blockSource: L2BlockSource & Partial<Service>, logsSource: L2LogsSource, contractDataSource: ContractDataSource, l1ToL2MessageSource: L1ToL2MessageSource, worldStateSynchronizer: WorldStateSynchronizer, sequencer: SequencerClient | undefined, slasherClient: SlasherClientInterface | undefined, validatorsSentinel: Sentinel | undefined, epochPruneWatcher: EpochPruneWatcher | undefined, l1ChainId: number, version: number, globalVariableBuilder: GlobalVariableBuilderInterface, epochCache: EpochCacheInterface, packageVersion: string, proofVerifier: ClientProtocolCircuitVerifier, telemetry?: TelemetryClient, log?: Logger, blobClient?: BlobClientInterface | undefined);
|
|
67
|
+
constructor(config: AztecNodeConfig, p2pClient: P2P, blockSource: L2BlockSource & Partial<Service>, logsSource: L2LogsSource, contractDataSource: ContractDataSource, l1ToL2MessageSource: L1ToL2MessageSource, worldStateSynchronizer: WorldStateSynchronizer, sequencer: SequencerClient | undefined, proverNode: ProverNode | undefined, slasherClient: SlasherClientInterface | undefined, validatorsSentinel: Sentinel | undefined, epochPruneWatcher: EpochPruneWatcher | undefined, l1ChainId: number, version: number, globalVariableBuilder: GlobalVariableBuilderInterface, epochCache: EpochCacheInterface, packageVersion: string, proofVerifier: ClientProtocolCircuitVerifier, telemetry?: TelemetryClient, log?: Logger, blobClient?: BlobClientInterface | undefined, validatorClient?: ValidatorClient | undefined, keyStoreManager?: KeystoreManager | undefined);
|
|
62
68
|
getWorldStateSyncStatus(): Promise<WorldStateSyncStatus>;
|
|
63
69
|
getL2Tips(): Promise<import("@aztec/stdlib/block").L2Tips>;
|
|
64
70
|
/**
|
|
@@ -72,15 +78,19 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
72
78
|
publisher?: SequencerPublisher;
|
|
73
79
|
dateProvider?: DateProvider;
|
|
74
80
|
p2pClientDeps?: P2PClientDeps<P2PClientType.Full>;
|
|
81
|
+
proverNodeDeps?: Partial<ProverNodeDeps>;
|
|
75
82
|
}, options?: {
|
|
76
83
|
prefilledPublicData?: PublicDataTreeLeaf[];
|
|
77
84
|
dontStartSequencer?: boolean;
|
|
85
|
+
dontStartProverNode?: boolean;
|
|
78
86
|
}): Promise<AztecNodeService>;
|
|
79
87
|
/**
|
|
80
88
|
* Returns the sequencer client instance.
|
|
81
89
|
* @returns The sequencer client instance.
|
|
82
90
|
*/
|
|
83
91
|
getSequencer(): SequencerClient | undefined;
|
|
92
|
+
/** Returns the prover node subsystem, if enabled. */
|
|
93
|
+
getProverNode(): ProverNode | undefined;
|
|
84
94
|
getBlockSource(): L2BlockSource;
|
|
85
95
|
getContractDataSource(): ContractDataSource;
|
|
86
96
|
getP2P(): P2P;
|
|
@@ -248,6 +258,8 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
248
258
|
* @returns The requested block header.
|
|
249
259
|
*/
|
|
250
260
|
getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
|
|
261
|
+
getBlockData(number: BlockNumber): Promise<BlockData | undefined>;
|
|
262
|
+
getBlockDataByArchive(archive: Fr): Promise<BlockData | undefined>;
|
|
251
263
|
/**
|
|
252
264
|
* Simulates the public part of a transaction with the current state.
|
|
253
265
|
* @param tx - The transaction to simulate.
|
|
@@ -269,5 +281,6 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
269
281
|
resumeSync(): Promise<void>;
|
|
270
282
|
getSlashPayloads(): Promise<SlashPayloadRound[]>;
|
|
271
283
|
getSlashOffenses(round: bigint | 'all' | 'current'): Promise<Offense[]>;
|
|
284
|
+
reloadKeystore(): Promise<void>;
|
|
272
285
|
}
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssbUJBQW1CLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFDckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLHdCQUF3QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RyxPQUFPLEVBQWMsS0FBSyxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTFFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFekcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBUyxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU96RSxPQUFPLEVBQUUsS0FBSyxHQUFHLEVBQUUsS0FBSyxhQUFhLEVBQW9ELE1BQU0sWUFBWSxDQUFDO0FBRTVHLE9BQU8sRUFBeUIsZUFBZSxFQUFFLEtBQUssa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUUxRyxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLEtBQUssc0JBQXNCLEVBRzVCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxT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
|
|
286
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssbUJBQW1CLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFFckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLHdCQUF3QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RyxPQUFPLEVBQWMsS0FBSyxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTFFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFekcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBUyxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQWlCLGVBQWUsRUFBaUMsTUFBTSxzQkFBc0IsQ0FBQztBQUdyRyxPQUFPLEVBQUUsS0FBSyxHQUFHLEVBQUUsS0FBSyxhQUFhLEVBQW9ELE1BQU0sWUFBWSxDQUFDO0FBRTVHLE9BQU8sRUFBRSxLQUFLLFVBQVUsRUFBRSxLQUFLLGNBQWMsRUFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RixPQUFPLEVBQXlCLGVBQWUsRUFBRSxLQUFLLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsT0FBTyxFQUVM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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aztec-node/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,mBAAmB,EAAkC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aztec-node/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -374,12 +374,13 @@ var _dec, _initProto;
|
|
|
374
374
|
import { createArchiver } from '@aztec/archiver';
|
|
375
375
|
import { BBCircuitVerifier, QueuedIVCVerifier, TestCircuitVerifier } from '@aztec/bb-prover';
|
|
376
376
|
import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
|
|
377
|
+
import { Blob } from '@aztec/blob-lib';
|
|
377
378
|
import { EpochCache } from '@aztec/epoch-cache';
|
|
378
379
|
import { createEthereumChain } from '@aztec/ethereum/chain';
|
|
379
380
|
import { getPublicClient } from '@aztec/ethereum/client';
|
|
380
381
|
import { RegistryContract, RollupContract } from '@aztec/ethereum/contracts';
|
|
381
382
|
import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
382
|
-
import { compactArray, pick } from '@aztec/foundation/collection';
|
|
383
|
+
import { compactArray, pick, unique } from '@aztec/foundation/collection';
|
|
383
384
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
384
385
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
385
386
|
import { BadRequestError } from '@aztec/foundation/json-rpc';
|
|
@@ -389,9 +390,11 @@ import { DateProvider, Timer } from '@aztec/foundation/timer';
|
|
|
389
390
|
import { MembershipWitness } from '@aztec/foundation/trees';
|
|
390
391
|
import { KeystoreManager, loadKeystores, mergeKeystores } from '@aztec/node-keystore';
|
|
391
392
|
import { trySnapshotSync, uploadSnapshot } from '@aztec/node-lib/actions';
|
|
392
|
-
import {
|
|
393
|
+
import { createForwarderL1TxUtilsFromSigners, createL1TxUtilsFromSigners } from '@aztec/node-lib/factories';
|
|
393
394
|
import { createP2PClient, getDefaultAllowedSetupFunctions } from '@aztec/p2p';
|
|
394
395
|
import { ProtocolContractAddress } from '@aztec/protocol-contracts';
|
|
396
|
+
import { createProverNode } from '@aztec/prover-node';
|
|
397
|
+
import { createKeyStoreForProver } from '@aztec/prover-node/config';
|
|
395
398
|
import { GlobalVariableBuilder, SequencerClient } from '@aztec/sequencer-client';
|
|
396
399
|
import { PublicProcessorFactory } from '@aztec/simulator/server';
|
|
397
400
|
import { AttestationsBlockWatcher, EpochPruneWatcher, createSlasher } from '@aztec/slasher';
|
|
@@ -428,6 +431,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
428
431
|
l1ToL2MessageSource;
|
|
429
432
|
worldStateSynchronizer;
|
|
430
433
|
sequencer;
|
|
434
|
+
proverNode;
|
|
431
435
|
slasherClient;
|
|
432
436
|
validatorsSentinel;
|
|
433
437
|
epochPruneWatcher;
|
|
@@ -440,6 +444,8 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
440
444
|
telemetry;
|
|
441
445
|
log;
|
|
442
446
|
blobClient;
|
|
447
|
+
validatorClient;
|
|
448
|
+
keyStoreManager;
|
|
443
449
|
static{
|
|
444
450
|
({ e: [_initProto] } = _apply_decs_2203_r(this, [
|
|
445
451
|
[
|
|
@@ -454,7 +460,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
454
460
|
// Prevent two snapshot operations to happen simultaneously
|
|
455
461
|
isUploadingSnapshot;
|
|
456
462
|
tracer;
|
|
457
|
-
constructor(config, p2pClient, blockSource, logsSource, contractDataSource, l1ToL2MessageSource, worldStateSynchronizer, sequencer, slasherClient, validatorsSentinel, epochPruneWatcher, l1ChainId, version, globalVariableBuilder, epochCache, packageVersion, proofVerifier, telemetry = getTelemetryClient(), log = createLogger('node'), blobClient){
|
|
463
|
+
constructor(config, p2pClient, blockSource, logsSource, contractDataSource, l1ToL2MessageSource, worldStateSynchronizer, sequencer, proverNode, slasherClient, validatorsSentinel, epochPruneWatcher, l1ChainId, version, globalVariableBuilder, epochCache, packageVersion, proofVerifier, telemetry = getTelemetryClient(), log = createLogger('node'), blobClient, validatorClient, keyStoreManager){
|
|
458
464
|
this.config = config;
|
|
459
465
|
this.p2pClient = p2pClient;
|
|
460
466
|
this.blockSource = blockSource;
|
|
@@ -463,6 +469,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
463
469
|
this.l1ToL2MessageSource = l1ToL2MessageSource;
|
|
464
470
|
this.worldStateSynchronizer = worldStateSynchronizer;
|
|
465
471
|
this.sequencer = sequencer;
|
|
472
|
+
this.proverNode = proverNode;
|
|
466
473
|
this.slasherClient = slasherClient;
|
|
467
474
|
this.validatorsSentinel = validatorsSentinel;
|
|
468
475
|
this.epochPruneWatcher = epochPruneWatcher;
|
|
@@ -475,6 +482,8 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
475
482
|
this.telemetry = telemetry;
|
|
476
483
|
this.log = log;
|
|
477
484
|
this.blobClient = blobClient;
|
|
485
|
+
this.validatorClient = validatorClient;
|
|
486
|
+
this.keyStoreManager = keyStoreManager;
|
|
478
487
|
this.initialHeaderHashPromise = (_initProto(this), undefined);
|
|
479
488
|
this.isUploadingSnapshot = false;
|
|
480
489
|
this.metrics = new NodeMetrics(telemetry, 'AztecNodeService');
|
|
@@ -502,16 +511,27 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
502
511
|
const telemetry = deps.telemetry ?? getTelemetryClient();
|
|
503
512
|
const dateProvider = deps.dateProvider ?? new DateProvider();
|
|
504
513
|
const ethereumChain = createEthereumChain(config.l1RpcUrls, config.l1ChainId);
|
|
505
|
-
// Build a key store from file if given or from environment otherwise
|
|
514
|
+
// Build a key store from file if given or from environment otherwise.
|
|
515
|
+
// We keep the raw KeyStore available so we can merge with prover keys if enableProverNode is set.
|
|
506
516
|
let keyStoreManager;
|
|
507
517
|
const keyStoreProvided = config.keyStoreDirectory !== undefined && config.keyStoreDirectory.length > 0;
|
|
508
518
|
if (keyStoreProvided) {
|
|
509
519
|
const keyStores = loadKeystores(config.keyStoreDirectory);
|
|
510
520
|
keyStoreManager = new KeystoreManager(mergeKeystores(keyStores));
|
|
511
521
|
} else {
|
|
512
|
-
const
|
|
513
|
-
|
|
514
|
-
|
|
522
|
+
const rawKeyStores = [];
|
|
523
|
+
const validatorKeyStore = createKeyStoreForValidator(config);
|
|
524
|
+
if (validatorKeyStore) {
|
|
525
|
+
rawKeyStores.push(validatorKeyStore);
|
|
526
|
+
}
|
|
527
|
+
if (config.enableProverNode) {
|
|
528
|
+
const proverKeyStore = createKeyStoreForProver(config);
|
|
529
|
+
if (proverKeyStore) {
|
|
530
|
+
rawKeyStores.push(proverKeyStore);
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
if (rawKeyStores.length > 0) {
|
|
534
|
+
keyStoreManager = new KeystoreManager(rawKeyStores.length === 1 ? rawKeyStores[0] : mergeKeystores(rawKeyStores));
|
|
515
535
|
}
|
|
516
536
|
}
|
|
517
537
|
await keyStoreManager?.validateSigners();
|
|
@@ -520,8 +540,8 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
520
540
|
if (keyStoreManager === undefined) {
|
|
521
541
|
throw new Error('Failed to create key store, a requirement for running a validator');
|
|
522
542
|
}
|
|
523
|
-
if (!keyStoreProvided) {
|
|
524
|
-
log.warn(
|
|
543
|
+
if (!keyStoreProvided && process.env.NODE_ENV !== 'test') {
|
|
544
|
+
log.warn("Keystore created from env: it's recommended to use a file-based key store for production");
|
|
525
545
|
}
|
|
526
546
|
ValidatorClient.validateKeyStoreConfiguration(keyStoreManager, log);
|
|
527
547
|
}
|
|
@@ -552,7 +572,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
552
572
|
if (config.rollupVersion !== Number(rollupVersionFromRollup)) {
|
|
553
573
|
log.warn(`Registry looked up and returned a rollup with version (${config.rollupVersion}), but this does not match with version detected from the rollup directly: (${rollupVersionFromRollup}).`);
|
|
554
574
|
}
|
|
555
|
-
const blobClient = await createBlobClientWithFileStores(config,
|
|
575
|
+
const blobClient = await createBlobClientWithFileStores(config, log.createChild('blob-client'));
|
|
556
576
|
// attempt snapshot sync if possible
|
|
557
577
|
await trySnapshotSync(config, log);
|
|
558
578
|
const epochCache = await EpochCache.create(config.l1Contracts.rollupAddress, config, {
|
|
@@ -658,20 +678,22 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
658
678
|
const validatorAddresses = keyStoreManager ? NodeKeystoreAdapter.fromKeyStoreManager(keyStoreManager).getAddresses() : [];
|
|
659
679
|
slasherClient = await createSlasher(config, config.l1Contracts, getPublicClient(config), watchers, dateProvider, epochCache, validatorAddresses, undefined);
|
|
660
680
|
await slasherClient.start();
|
|
661
|
-
const l1TxUtils = config.
|
|
681
|
+
const l1TxUtils = config.sequencerPublisherForwarderAddress ? await createForwarderL1TxUtilsFromSigners(publicClient, keyStoreManager.createAllValidatorPublisherSigners(), config.sequencerPublisherForwarderAddress, {
|
|
662
682
|
...config,
|
|
663
683
|
scope: 'sequencer'
|
|
664
684
|
}, {
|
|
665
685
|
telemetry,
|
|
666
686
|
logger: log.createChild('l1-tx-utils'),
|
|
667
|
-
dateProvider
|
|
668
|
-
|
|
687
|
+
dateProvider,
|
|
688
|
+
kzg: Blob.getViemKzgInstance()
|
|
689
|
+
}) : await createL1TxUtilsFromSigners(publicClient, keyStoreManager.createAllValidatorPublisherSigners(), {
|
|
669
690
|
...config,
|
|
670
691
|
scope: 'sequencer'
|
|
671
692
|
}, {
|
|
672
693
|
telemetry,
|
|
673
694
|
logger: log.createChild('l1-tx-utils'),
|
|
674
|
-
dateProvider
|
|
695
|
+
dateProvider,
|
|
696
|
+
kzg: Blob.getViemKzgInstance()
|
|
675
697
|
});
|
|
676
698
|
// Create and start the sequencer client
|
|
677
699
|
const checkpointsBuilder = new CheckpointsBuilder({
|
|
@@ -702,13 +724,35 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
702
724
|
} else if (sequencer) {
|
|
703
725
|
log.warn(`Sequencer created but not started`);
|
|
704
726
|
}
|
|
727
|
+
// Create prover node subsystem if enabled
|
|
728
|
+
let proverNode;
|
|
729
|
+
if (config.enableProverNode) {
|
|
730
|
+
proverNode = await createProverNode(config, {
|
|
731
|
+
...deps.proverNodeDeps,
|
|
732
|
+
telemetry,
|
|
733
|
+
dateProvider,
|
|
734
|
+
archiver,
|
|
735
|
+
worldStateSynchronizer,
|
|
736
|
+
p2pClient,
|
|
737
|
+
epochCache,
|
|
738
|
+
blobClient,
|
|
739
|
+
keyStoreManager
|
|
740
|
+
});
|
|
741
|
+
if (!options.dontStartProverNode) {
|
|
742
|
+
await proverNode.start();
|
|
743
|
+
log.info(`Prover node subsystem started`);
|
|
744
|
+
} else {
|
|
745
|
+
log.info(`Prover node subsystem created but not started`);
|
|
746
|
+
}
|
|
747
|
+
}
|
|
705
748
|
const globalVariableBuilder = new GlobalVariableBuilder({
|
|
706
749
|
...config,
|
|
707
750
|
rollupVersion: BigInt(config.rollupVersion),
|
|
708
751
|
l1GenesisTime,
|
|
709
752
|
slotDuration: Number(slotDuration)
|
|
710
753
|
});
|
|
711
|
-
|
|
754
|
+
const node = new AztecNodeService(config, p2pClient, archiver, archiver, archiver, archiver, worldStateSynchronizer, sequencer, proverNode, slasherClient, validatorsSentinel, epochPruneWatcher, ethereumChain.chainInfo.id, config.rollupVersion, globalVariableBuilder, epochCache, packageVersion, proofVerifier, telemetry, log, blobClient, validatorClient, keyStoreManager);
|
|
755
|
+
return node;
|
|
712
756
|
}
|
|
713
757
|
/**
|
|
714
758
|
* Returns the sequencer client instance.
|
|
@@ -716,6 +760,9 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
716
760
|
*/ getSequencer() {
|
|
717
761
|
return this.sequencer;
|
|
718
762
|
}
|
|
763
|
+
/** Returns the prover node subsystem, if enabled. */ getProverNode() {
|
|
764
|
+
return this.proverNode;
|
|
765
|
+
}
|
|
719
766
|
getBlockSource() {
|
|
720
767
|
return this.blockSource;
|
|
721
768
|
}
|
|
@@ -958,6 +1005,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
958
1005
|
await tryStop(this.slasherClient);
|
|
959
1006
|
await tryStop(this.proofVerifier);
|
|
960
1007
|
await tryStop(this.sequencer);
|
|
1008
|
+
await tryStop(this.proverNode);
|
|
961
1009
|
await tryStop(this.p2pClient);
|
|
962
1010
|
await tryStop(this.worldStateSynchronizer);
|
|
963
1011
|
await tryStop(this.blockSource);
|
|
@@ -1195,6 +1243,12 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
1195
1243
|
*/ async getBlockHeaderByArchive(archive) {
|
|
1196
1244
|
return await this.blockSource.getBlockHeaderByArchive(archive);
|
|
1197
1245
|
}
|
|
1246
|
+
getBlockData(number) {
|
|
1247
|
+
return this.blockSource.getBlockData(number);
|
|
1248
|
+
}
|
|
1249
|
+
getBlockDataByArchive(archive) {
|
|
1250
|
+
return this.blockSource.getBlockDataByArchive(archive);
|
|
1251
|
+
}
|
|
1198
1252
|
/**
|
|
1199
1253
|
* Simulates the public part of a transaction with the current state.
|
|
1200
1254
|
* @param tx - The transaction to simulate.
|
|
@@ -1207,7 +1261,8 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
1207
1261
|
throw new BadRequestError(`Transaction total gas limit ${txGasLimit + teardownGasLimit} (${txGasLimit} + ${teardownGasLimit}) exceeds maximum gas limit ${this.config.rpcSimulatePublicMaxGasLimit} for simulation`);
|
|
1208
1262
|
}
|
|
1209
1263
|
const txHash = tx.getTxHash();
|
|
1210
|
-
const
|
|
1264
|
+
const latestBlockNumber = await this.blockSource.getBlockNumber();
|
|
1265
|
+
const blockNumber = BlockNumber.add(latestBlockNumber, 1);
|
|
1211
1266
|
// If sequencer is not initialized, we just set these values to zero for simulation.
|
|
1212
1267
|
const coinbase = EthAddress.ZERO;
|
|
1213
1268
|
const feeRecipient = AztecAddress.ZERO;
|
|
@@ -1218,6 +1273,8 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
1218
1273
|
txHash,
|
|
1219
1274
|
blockNumber
|
|
1220
1275
|
});
|
|
1276
|
+
// Ensure world-state has caught up with the latest block we loaded from the archiver
|
|
1277
|
+
await this.worldStateSynchronizer.syncImmediate(latestBlockNumber);
|
|
1221
1278
|
const merkleTreeFork = await this.worldStateSynchronizer.fork();
|
|
1222
1279
|
try {
|
|
1223
1280
|
const config = PublicSimulatorConfig.from({
|
|
@@ -1251,7 +1308,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
1251
1308
|
async isValidTx(tx, { isSimulation, skipFeeEnforcement } = {}) {
|
|
1252
1309
|
const db = this.worldStateSynchronizer.getCommitted();
|
|
1253
1310
|
const verifier = isSimulation ? undefined : this.proofVerifier;
|
|
1254
|
-
// We accept transactions if they are not expired by the next slot (checked based on the
|
|
1311
|
+
// We accept transactions if they are not expired by the next slot (checked based on the ExpirationTimestamp field)
|
|
1255
1312
|
const { ts: nextSlotTimestamp } = this.epochCache.getEpochAndSlotInNextL1Slot();
|
|
1256
1313
|
const blockNumber = BlockNumber(await this.blockSource.getBlockNumber() + 1);
|
|
1257
1314
|
const validator = createValidatorForAcceptingTxs(db, this.contractDataSource, verifier, {
|
|
@@ -1405,6 +1462,73 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
|
|
|
1405
1462
|
return this.slasherClient.gatherOffensesForRound(round === 'current' ? undefined : BigInt(round));
|
|
1406
1463
|
}
|
|
1407
1464
|
}
|
|
1465
|
+
async reloadKeystore() {
|
|
1466
|
+
if (!this.config.keyStoreDirectory?.length) {
|
|
1467
|
+
throw new BadRequestError('Cannot reload keystore: node is not using a file-based keystore. ' + 'Set KEY_STORE_DIRECTORY to use file-based keystores.');
|
|
1468
|
+
}
|
|
1469
|
+
if (!this.validatorClient) {
|
|
1470
|
+
throw new BadRequestError('Cannot reload keystore: validator is not enabled.');
|
|
1471
|
+
}
|
|
1472
|
+
this.log.info('Reloading keystore from disk');
|
|
1473
|
+
// Re-read and validate keystore files
|
|
1474
|
+
const keyStores = loadKeystores(this.config.keyStoreDirectory);
|
|
1475
|
+
const newManager = new KeystoreManager(mergeKeystores(keyStores));
|
|
1476
|
+
await newManager.validateSigners();
|
|
1477
|
+
ValidatorClient.validateKeyStoreConfiguration(newManager, this.log);
|
|
1478
|
+
// Validate that every validator's publisher keys overlap with the L1 signers
|
|
1479
|
+
// that were initialized at startup. Publishers cannot be hot-reloaded, so a
|
|
1480
|
+
// validator with a publisher key that doesn't match any existing L1 signer
|
|
1481
|
+
// would silently fail on every proposer slot.
|
|
1482
|
+
if (this.keyStoreManager && this.sequencer) {
|
|
1483
|
+
const oldAdapter = NodeKeystoreAdapter.fromKeyStoreManager(this.keyStoreManager);
|
|
1484
|
+
const availablePublishers = new Set(oldAdapter.getAttesterAddresses().flatMap((a)=>oldAdapter.getPublisherAddresses(a).map((p)=>p.toString().toLowerCase())));
|
|
1485
|
+
const newAdapter = NodeKeystoreAdapter.fromKeyStoreManager(newManager);
|
|
1486
|
+
for (const attester of newAdapter.getAttesterAddresses()){
|
|
1487
|
+
const pubs = newAdapter.getPublisherAddresses(attester);
|
|
1488
|
+
if (pubs.length > 0 && !pubs.some((p)=>availablePublishers.has(p.toString().toLowerCase()))) {
|
|
1489
|
+
throw new BadRequestError(`Cannot reload keystore: validator ${attester} has publisher keys ` + `[${pubs.map((p)=>p.toString()).join(', ')}] but none match the L1 signers initialized at startup ` + `[${[
|
|
1490
|
+
...availablePublishers
|
|
1491
|
+
].join(', ')}]. Publishers cannot be hot-reloaded — ` + `use an existing publisher key or restart the node.`);
|
|
1492
|
+
}
|
|
1493
|
+
}
|
|
1494
|
+
}
|
|
1495
|
+
// Build adapters for old and new keystores to compute diff
|
|
1496
|
+
const newAdapter = NodeKeystoreAdapter.fromKeyStoreManager(newManager);
|
|
1497
|
+
const newAddresses = newAdapter.getAttesterAddresses();
|
|
1498
|
+
const oldAddresses = this.keyStoreManager ? NodeKeystoreAdapter.fromKeyStoreManager(this.keyStoreManager).getAttesterAddresses() : [];
|
|
1499
|
+
const oldSet = new Set(oldAddresses.map((a)=>a.toString()));
|
|
1500
|
+
const newSet = new Set(newAddresses.map((a)=>a.toString()));
|
|
1501
|
+
const added = newAddresses.filter((a)=>!oldSet.has(a.toString()));
|
|
1502
|
+
const removed = oldAddresses.filter((a)=>!newSet.has(a.toString()));
|
|
1503
|
+
if (added.length > 0) {
|
|
1504
|
+
this.log.info(`Keystore reload: adding attester keys: ${added.map((a)=>a.toString()).join(', ')}`);
|
|
1505
|
+
}
|
|
1506
|
+
if (removed.length > 0) {
|
|
1507
|
+
this.log.info(`Keystore reload: removing attester keys: ${removed.map((a)=>a.toString()).join(', ')}`);
|
|
1508
|
+
}
|
|
1509
|
+
if (added.length === 0 && removed.length === 0) {
|
|
1510
|
+
this.log.info('Keystore reload: attester keys unchanged');
|
|
1511
|
+
}
|
|
1512
|
+
// Update the validator client (coinbase, feeRecipient, attester keys)
|
|
1513
|
+
this.validatorClient.reloadKeystore(newManager);
|
|
1514
|
+
// Update the publisher factory's keystore so newly-added validators
|
|
1515
|
+
// can be matched to existing publisher keys when proposing blocks.
|
|
1516
|
+
if (this.sequencer) {
|
|
1517
|
+
this.sequencer.updatePublisherNodeKeyStore(newAdapter);
|
|
1518
|
+
}
|
|
1519
|
+
// Update slasher's "don't-slash-self" list with new validator addresses
|
|
1520
|
+
if (this.slasherClient && !this.config.slashSelfAllowed) {
|
|
1521
|
+
const slashValidatorsNever = unique([
|
|
1522
|
+
...this.config.slashValidatorsNever ?? [],
|
|
1523
|
+
...newAddresses
|
|
1524
|
+
].map((a)=>a.toString())).map(EthAddress.fromString);
|
|
1525
|
+
this.slasherClient.updateConfig({
|
|
1526
|
+
slashValidatorsNever
|
|
1527
|
+
});
|
|
1528
|
+
}
|
|
1529
|
+
this.keyStoreManager = newManager;
|
|
1530
|
+
this.log.info('Keystore reloaded: coinbase, feeRecipient, and attester keys updated');
|
|
1531
|
+
}
|
|
1408
1532
|
#getInitialHeaderHash() {
|
|
1409
1533
|
if (!this.initialHeaderHashPromise) {
|
|
1410
1534
|
this.initialHeaderHashPromise = this.worldStateSynchronizer.getCommitted().getInitialHeader().hash();
|