@aztec/aztec-node 0.0.1-commit.9ef841308 → 0.0.1-commit.a89ec08

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.
@@ -2,6 +2,7 @@ import { type ArchiverConfig } from '@aztec/archiver/config';
2
2
  import { type GenesisStateConfig } from '@aztec/ethereum/config';
3
3
  import { type L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
4
4
  import { type ConfigMappingsType } from '@aztec/foundation/config';
5
+ import { type DataStoreConfig } from '@aztec/kv-store/config';
5
6
  import { type KeyStore } from '@aztec/node-keystore';
6
7
  import { type SharedNodeConfig } from '@aztec/node-lib/config';
7
8
  import { type P2PConfig } from '@aztec/p2p/config';
@@ -10,7 +11,6 @@ import { type ProverNodeConfig } from '@aztec/prover-node/config';
10
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
- import { type DataStoreConfig } from '@aztec/stdlib/kv-store';
14
14
  import { type ValidatorClientConfig } from '@aztec/validator-client/config';
15
15
  import { type WorldStateConfig } from '@aztec/world-state/config';
16
16
  import { type SentinelConfig } from '../sentinel/config.js';
@@ -37,4 +37,4 @@ export declare const aztecNodeConfigMappings: ConfigMappingsType<AztecNodeConfig
37
37
  */
38
38
  export declare function getConfigEnvVars(): AztecNodeConfig;
39
39
  export declare function createKeyStoreForValidator(config: SequencerTxSenderConfig & SequencerClientConfig & SharedNodeConfig): KeyStore | undefined;
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssY0FBYyxFQUEwQixNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUE4QixNQUFNLHdCQUF3QixDQUFDO0FBQzdGLE9BQU8sRUFBRSxLQUFLLG1CQUFtQixFQUE4QixNQUFNLHVDQUF1QyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUE4QyxNQUFNLDBCQUEwQixDQUFDO0FBRS9HLE9BQU8sRUFDTCxLQUFLLFFBQVEsRUFJZCxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUE0QixNQUFNLHdCQUF3QixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBcUIsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsS0FBSyxzQkFBc0IsRUFBOEIsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RyxPQUFPLEVBQ0wsS0FBSyxnQkFBZ0IsRUFHdEIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQ0wsS0FBSyxxQkFBcUIsRUFDMUIsS0FBSyx1QkFBdUIsRUFDNUIsNkJBQTZCLEVBQzlCLE1BQU0sZ0NBQWdDLENBQUM7QUFHeEMsT0FBTyxFQUFFLEtBQUssYUFBYSxFQUF5QixNQUFNLHNCQUFzQixDQUFDO0FBQ2pGLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsS0FBSyxxQkFBcUIsRUFBaUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRyxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBNEIsTUFBTSwyQkFBMkIsQ0FBQztBQUk1RixPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQTBCLE1BQU0sdUJBQXVCLENBQUM7QUFFcEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsQ0FBQztBQUVyRTs7R0FFRztBQUNILE1BQU0sTUFBTSxlQUFlLEdBQUcsY0FBYyxHQUMxQyxxQkFBcUIsR0FDckIscUJBQXFCLEdBQ3JCLHNCQUFzQixHQUN0QixnQkFBZ0IsR0FDaEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLGNBQWMsR0FBRyxvQkFBb0IsR0FBRyxZQUFZLENBQUMsR0FDbEYsU0FBUyxHQUNULGVBQWUsR0FDZixjQUFjLEdBQ2QsZ0JBQWdCLEdBQ2hCLGtCQUFrQixHQUNsQixhQUFhLEdBQ2IsYUFBYSxHQUNiLGdCQUFnQixHQUFHO0lBQ2pCLDZCQUE2QjtJQUM3QixXQUFXLEVBQUUsbUJBQW1CLENBQUM7SUFDakMsc0RBQXNEO0lBQ3RELGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQixpR0FBaUc7SUFDakcsdUJBQXVCLEVBQUUsT0FBTyxDQUFDO0lBQ2pDLDZFQUE2RTtJQUM3RSw2QkFBNkIsRUFBRSxPQUFPLENBQUM7SUFDdkMsd0RBQXdEO0lBQ3hELGdCQUFnQixFQUFFLE9BQU8sQ0FBQztDQUMzQixDQUFDO0FBRUosZUFBTyxNQUFNLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDLGVBQWUsQ0F3Q3ZFLENBQUM7QUFFRjs7O0dBR0c7QUFDSCx3QkFBZ0IsZ0JBQWdCLElBQUksZUFBZSxDQUVsRDtBQXNFRCx3QkFBZ0IsMEJBQTBCLENBQ3hDLE1BQU0sRUFBRSx1QkFBdUIsR0FBRyxxQkFBcUIsR0FBRyxnQkFBZ0IsR0FDekUsUUFBUSxHQUFHLFNBQVMsQ0FNdEIifQ==
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,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,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAClF,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"}
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"}
@@ -3,6 +3,7 @@ import { genesisStateConfigMappings } from '@aztec/ethereum/config';
3
3
  import { l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
4
4
  import { booleanConfigHelper, getConfigFromMappings } from '@aztec/foundation/config';
5
5
  import { EthAddress } from '@aztec/foundation/eth-address';
6
+ import { dataConfigMappings } from '@aztec/kv-store/config';
6
7
  import { ethPrivateKeySchema, keyStoreConfigMappings } from '@aztec/node-keystore';
7
8
  import { sharedNodeConfigMappings } from '@aztec/node-lib/config';
8
9
  import { p2pConfigMappings } from '@aztec/p2p/config';
@@ -12,7 +13,6 @@ import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
12
13
  import { slasherConfigMappings } from '@aztec/slasher';
13
14
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
14
15
  import { nodeRpcConfigMappings } from '@aztec/stdlib/config';
15
- import { dataConfigMappings } from '@aztec/stdlib/kv-store';
16
16
  import { validatorClientConfigMappings } from '@aztec/validator-client/config';
17
17
  import { worldStateConfigMappings } from '@aztec/world-state/config';
18
18
  import { privateKeyToAddress } from 'viem/accounts';
@@ -18,7 +18,7 @@ import { type BlockData, BlockHash, type BlockParameter, type DataInBlock, L2Blo
18
18
  import type { PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
19
19
  import type { ContractClassPublic, ContractDataSource, ContractInstanceWithAddress, NodeInfo, ProtocolContractAddresses } from '@aztec/stdlib/contract';
20
20
  import { GasFees } from '@aztec/stdlib/gas';
21
- import { type AztecNode, type AztecNodeAdmin, type AztecNodeAdminConfig, type GetContractClassLogsResponse, type GetPublicLogsResponse } from '@aztec/stdlib/interfaces/client';
21
+ import { type AztecNode, type AztecNodeAdmin, type AztecNodeAdminConfig, type AztecNodeDebug, type GetContractClassLogsResponse, type GetPublicLogsResponse } from '@aztec/stdlib/interfaces/client';
22
22
  import { type AllowedElement, type ClientProtocolCircuitVerifier, type L2LogsSource, type Service, type WorldStateSyncStatus, type WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
23
23
  import type { DebugLogStore, LogFilter, SiloedTag, Tag, TxScopedL2Log } from '@aztec/stdlib/logs';
24
24
  import { type L1ToL2MessageSource } from '@aztec/stdlib/messaging';
@@ -35,7 +35,7 @@ import { type AztecNodeConfig } from './config.js';
35
35
  /**
36
36
  * The aztec node.
37
37
  */
38
- export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
38
+ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, AztecNodeDebug, Traceable {
39
39
  #private;
40
40
  protected config: AztecNodeConfig;
41
41
  protected readonly p2pClient: P2P;
@@ -54,8 +54,7 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
54
54
  protected readonly globalVariableBuilder: GlobalVariableBuilderInterface;
55
55
  protected readonly epochCache: EpochCacheInterface;
56
56
  protected readonly packageVersion: string;
57
- private peerProofVerifier;
58
- private rpcProofVerifier;
57
+ private proofVerifier;
59
58
  private telemetry;
60
59
  private log;
61
60
  private blobClient?;
@@ -66,9 +65,7 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
66
65
  private initialHeaderHashPromise;
67
66
  private isUploadingSnapshot;
68
67
  readonly tracer: Tracer;
69
- 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, peerProofVerifier: ClientProtocolCircuitVerifier, rpcProofVerifier: ClientProtocolCircuitVerifier, telemetry?: TelemetryClient, log?: Logger, blobClient?: BlobClientInterface | undefined, validatorClient?: ValidatorClient | undefined, keyStoreManager?: KeystoreManager | undefined, debugLogStore?: DebugLogStore);
70
- /** @internal Exposed for testing — returns the RPC proof verifier. */
71
- getProofVerifier(): ClientProtocolCircuitVerifier;
68
+ 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, debugLogStore?: DebugLogStore);
72
69
  getWorldStateSyncStatus(): Promise<WorldStateSyncStatus>;
73
70
  getL2Tips(): Promise<import("@aztec/stdlib/block").L2Tips>;
74
71
  /**
@@ -274,6 +271,7 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
274
271
  getSlashPayloads(): Promise<SlashPayloadRound[]>;
275
272
  getSlashOffenses(round: bigint | 'all' | 'current'): Promise<Offense[]>;
276
273
  reloadKeystore(): Promise<void>;
274
+ mineBlock(): Promise<void>;
277
275
  /**
278
276
  * Returns an instance of MerkleTreeOperations having first ensured the world state is fully synched
279
277
  * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
@@ -283,4 +281,4 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
283
281
  /** Resolves a block parameter to a block number. */
284
282
  protected resolveBlockNumber(block: BlockParameter): Promise<BlockNumber>;
285
283
  }
286
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLEtBQUssbUJBQW1CLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFFckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLHdCQUF3QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RyxPQUFPLEVBQWMsS0FBSyxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTFFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFekcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBUyxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQWlCLGVBQWUsRUFBaUMsTUFBTSxzQkFBc0IsQ0FBQztBQUdyRyxPQUFPLEVBQ0wsS0FBSyxHQUFHLEVBQ1IsS0FBSyxhQUFhLEVBSW5CLE1BQU0sWUFBWSxDQUFDO0FBRXBCLE9BQU8sRUFBRSxLQUFLLFVBQVUsRUFBRSxLQUFLLGNBQWMsRUFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RixPQUFPLEVBQXlCLGVBQWUsRUFBRSxLQUFLLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsT0FBTyxFQUVM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
284
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp0ZWMtbm9kZS9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssbUJBQW1CLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFFckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLHdCQUF3QixFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RyxPQUFPLEVBQWMsS0FBSyxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTFFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFekcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFHbEUsT0FBTyxFQUFFLFlBQVksRUFBUyxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQWlCLGVBQWUsRUFBaUMsTUFBTSxzQkFBc0IsQ0FBQztBQUdyRyxPQUFPLEVBQ0wsS0FBSyxHQUFHLEVBQ1IsS0FBSyxhQUFhLEVBSW5CLE1BQU0sWUFBWSxDQUFDO0FBRXBCLE9BQU8sRUFBRSxLQUFLLFVBQVUsRUFBRSxLQUFLLGNBQWMsRUFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RixPQUFPLEVBQXlCLGVBQWUsRUFBRSxLQUFLLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsT0FBTyxFQUVM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
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aztec-node/server.ts"],"names":[],"mappings":"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"}
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;AAErG,OAAO,EAAE,cAAc,EAAE,KAAK,wBAAwB,EAAE,KAAK,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC7G,OAAO,EAAc,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAI1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,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,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,YAAY,EAAS,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAiB,eAAe,EAAiC,MAAM,sBAAsB,CAAC;AAGrG,OAAO,EACL,KAAK,GAAG,EACR,KAAK,aAAa,EAInB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AAE5F,OAAO,EAAyB,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE1G,OAAO,EAEL,iBAAiB,EACjB,KAAK,sBAAsB,EAG5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,KAAK,SAAS,EACd,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,OAAO,EACP,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,QAAQ,EACR,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EACL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,cAAc,EACnB,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,6BAA6B,EAClC,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAE5B,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAElG,OAAO,EAAa,KAAK,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAyB,kBAAkB,EAA8B,MAAM,qBAAqB,CAAC;AACjH,OAAO,EAAE,YAAY,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,qBAAqB,IAAI,8BAA8B,EAC5D,KAAK,eAAe,EACpB,sBAAsB,EACtB,EAAE,EACF,KAAK,MAAM,EACX,SAAS,EAET,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAIL,eAAe,EAGhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAMnF,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,KAAK,eAAe,EAA8B,MAAM,aAAa,CAAC;AAG/E;;GAEG;AACH,qBAAa,gBAAiB,YAAW,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS;;IAUzF,SAAS,CAAC,MAAM,EAAE,eAAe;IACjC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG;IACjC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAChE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,YAAY;IAC3C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB;IACzD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB;IAC3D,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB;IACjE,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,SAAS;IACzD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS;IACrD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,sBAAsB,GAAG,SAAS;IACpE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS;IAC3D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS;IACnE,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM;IACpC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM;IAClC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,8BAA8B;IACxE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAmB;IAClD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM;IACzC,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,eAAe,CAAC;IACxB,OAAO,CAAC,eAAe,CAAC;IACxB,OAAO,CAAC,aAAa;IAhCvB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,wBAAwB,CAA6C;IAG7E,OAAO,CAAC,mBAAmB,CAAS;IAEpC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,YACY,MAAM,EAAE,eAAe,EACd,SAAS,EAAE,GAAG,EACd,WAAW,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,EAC7C,UAAU,EAAE,YAAY,EACxB,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,EAC9C,SAAS,EAAE,eAAe,GAAG,SAAS,EACtC,UAAU,EAAE,UAAU,GAAG,SAAS,EAClC,aAAa,EAAE,sBAAsB,GAAG,SAAS,EACjD,kBAAkB,EAAE,QAAQ,GAAG,SAAS,EACxC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS,EAChD,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,qBAAqB,EAAE,8BAA8B,EACrD,UAAU,EAAE,mBAAmB,EAC/B,cAAc,EAAE,MAAM,EACjC,aAAa,EAAE,6BAA6B,EAC5C,SAAS,GAAE,eAAsC,EACjD,GAAG,SAAuB,EAC1B,UAAU,CAAC,iCAAqB,EAChC,eAAe,CAAC,6BAAiB,EACjC,eAAe,CAAC,6BAAiB,EACjC,aAAa,GAAE,aAAuC,EAc/D;IAEY,uBAAuB,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAGpE;IAEM,SAAS,kDAEf;IAED;;;;OAIG;IACH,OAAoB,aAAa,CAC/B,WAAW,EAAE,eAAe,EAC5B,IAAI,GAAE;QACJ,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,kBAAkB,CAAC;QAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACzC,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;KAC9C,EACN,OAAO,GAAE;QACP,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;QAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC1B,GACL,OAAO,CAAC,gBAAgB,CAAC,CAqY3B;IAED;;;OAGG;IACI,YAAY,IAAI,eAAe,GAAG,SAAS,CAEjD;IAED,qDAAqD;IAC9C,aAAa,IAAI,UAAU,GAAG,SAAS,CAE7C;IAEM,cAAc,IAAI,aAAa,CAErC;IAEM,qBAAqB,IAAI,kBAAkB,CAEjD;IAEM,MAAM,IAAI,GAAG,CAEnB;IAED;;;OAGG;IACI,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAE5D;IAEM,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAElD;IAEY,qBAAqB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAE9D;IAED;;;OAGG;IACI,OAAO,qBAEb;IAEY,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,CAqB5C;IAED;;;;OAIG;IACU,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CASzE;IAED;;;;OAIG;IACU,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAM9E;IAED,OAAO,CAAC,iBAAiB;IAKzB;;;;OAIG;IACU,iBAAiB,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAExE;IAED;;;;;OAKG;IACU,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAE3E;IAEY,cAAc,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAEjG;IAEY,qBAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,gEAElE;IAEM,0BAA0B,CAAC,WAAW,EAAE,WAAW,gEAEzD;IAED;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEjD;IAEY,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAMlD;IAED;;;OAGG;IACU,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAElD;IAEY,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,CAExD;IAEY,0BAA0B,IAAI,OAAO,CAAC,WAAW,CAAC,CAE9D;IAEM,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAEtD;IAED;;;OAGG;IACI,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvC;IAED;;;OAGG;IACI,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAEnC;IAED;;;OAGG;IACI,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAEnC;IAEM,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAExE;IAEM,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAE1F;IAEY,oBAAoB,CAC/B,IAAI,EAAE,SAAS,EAAE,EACjB,IAAI,CAAC,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,SAAS,GACzB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAa5B;IAEY,+BAA+B,CAC1C,eAAe,EAAE,YAAY,EAC7B,IAAI,EAAE,GAAG,EAAE,EACX,IAAI,CAAC,EAAE,MAAM,EACb,cAAc,CAAC,EAAE,SAAS,GACzB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAa5B;IAED;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAE/D;IAED;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAE7E;IAED;;;OAGG;IACU,MAAM,CAAC,EAAE,EAAE,EAAE,iBAEzB;IAoBY,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAyB5D;IAEM,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAEvE;IAED;;OAEG;IACU,IAAI,kBAchB;IAED;;;OAGG;IACI,aAAa,IAAI,mBAAmB,GAAG,SAAS,CAEtD;IAED;;;;;OAKG;IACI,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAElE;IAEM,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE1C;IAED;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAE1D;IAED;;;;OAIG;IACU,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAE3D;IAEY,iBAAiB,CAC5B,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,EAAE,EAAE,GACf,OAAO,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,CA+D9C;IAEY,6BAA6B,CACxC,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,iBAAiB,CAAC,OAAO,cAAc,CAAC,GAAG,SAAS,CAAC,CAoB/D;IAEY,4BAA4B,CACvC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,EAAE,GACX,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,GAAG,SAAS,CAAC,CAStE;IAEY,iCAAiC,CAC5C,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,EAAE,GAChB,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,GAAG,SAAS,CAAC,CAS7E;IAEY,0BAA0B,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAGhG;IAED;;;;OAIG;IACU,qBAAqB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAGtE;IAED;;;;OAIG;IACU,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAStE;IAEY,6BAA6B,CACxC,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,EAAE,GACZ,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAcjD;IAEY,gCAAgC,CAC3C,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,EAAE,GACZ,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAgBjD;IAEK,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAa/G;IAEY,kBAAkB,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAa7G;IAEY,cAAc,CAAC,KAAK,GAAE,cAAyB,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAgB9F;IAED;;;;OAIG;IACU,uBAAuB,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAElF;IAEM,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAEvE;IAEM,qBAAqB,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAExE;IAED;;;QAGI;IAIS,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,kBAAkB,UAAQ,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA6EpG;IAEY,SAAS,CACpB,EAAE,EAAE,EAAE,EACN,EAAE,YAAY,EAAE,kBAAkB,EAAE,GAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAO,GAClG,OAAO,CAAC,kBAAkB,CAAC,CAgC7B;IAEM,SAAS,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAIhD;IAEY,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAe3E;IAEM,4BAA4B,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAOxE;IAEM,kCAAkC,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;IAEM,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAEpD;IAEM,iBAAiB,CACtB,gBAAgB,EAAE,UAAU,EAC5B,QAAQ,CAAC,EAAE,UAAU,EACrB,MAAM,CAAC,EAAE,UAAU,GAClB,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAE3C;IAEY,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0ChE;IAEY,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkChF;IAEY,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAItC;IAEM,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAKjC;IAEM,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAKtD;IAEM,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAS7E;IAEY,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAsF3C;IAEY,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAgCtC;IASD;;;;OAIG;IACH,UAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,kEAsDlD;IAED,oDAAoD;IACpD,UAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,CAgB9E;CAUF"}
@@ -372,8 +372,7 @@ function _apply_decs_2203_r(targetClass, memberDecs, classDecs, parentClass) {
372
372
  }
373
373
  var _dec, _initProto;
374
374
  import { createArchiver } from '@aztec/archiver';
375
- import { BBCircuitVerifier, BatchChonkVerifier, QueuedIVCVerifier } from '@aztec/bb-prover';
376
- import { TestCircuitVerifier } from '@aztec/bb-prover/test';
375
+ import { BBCircuitVerifier, QueuedIVCVerifier, TestCircuitVerifier } from '@aztec/bb-prover';
377
376
  import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
378
377
  import { Blob } from '@aztec/blob-lib';
379
378
  import { EpochCache } from '@aztec/epoch-cache';
@@ -386,6 +385,7 @@ import { Fr } from '@aztec/foundation/curves/bn254';
386
385
  import { EthAddress } from '@aztec/foundation/eth-address';
387
386
  import { BadRequestError } from '@aztec/foundation/json-rpc';
388
387
  import { createLogger } from '@aztec/foundation/log';
388
+ import { retryUntil } from '@aztec/foundation/retry';
389
389
  import { count } from '@aztec/foundation/string';
390
390
  import { DateProvider, Timer } from '@aztec/foundation/timer';
391
391
  import { MembershipWitness } from '@aztec/foundation/trees';
@@ -441,8 +441,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
441
441
  globalVariableBuilder;
442
442
  epochCache;
443
443
  packageVersion;
444
- peerProofVerifier;
445
- rpcProofVerifier;
444
+ proofVerifier;
446
445
  telemetry;
447
446
  log;
448
447
  blobClient;
@@ -463,7 +462,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
463
462
  // Prevent two snapshot operations to happen simultaneously
464
463
  isUploadingSnapshot;
465
464
  tracer;
466
- constructor(config, p2pClient, blockSource, logsSource, contractDataSource, l1ToL2MessageSource, worldStateSynchronizer, sequencer, proverNode, slasherClient, validatorsSentinel, epochPruneWatcher, l1ChainId, version, globalVariableBuilder, epochCache, packageVersion, peerProofVerifier, rpcProofVerifier, telemetry = getTelemetryClient(), log = createLogger('node'), blobClient, validatorClient, keyStoreManager, debugLogStore = new NullDebugLogStore()){
465
+ 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, debugLogStore = new NullDebugLogStore()){
467
466
  this.config = config;
468
467
  this.p2pClient = p2pClient;
469
468
  this.blockSource = blockSource;
@@ -481,8 +480,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
481
480
  this.globalVariableBuilder = globalVariableBuilder;
482
481
  this.epochCache = epochCache;
483
482
  this.packageVersion = packageVersion;
484
- this.peerProofVerifier = peerProofVerifier;
485
- this.rpcProofVerifier = rpcProofVerifier;
483
+ this.proofVerifier = proofVerifier;
486
484
  this.telemetry = telemetry;
487
485
  this.log = log;
488
486
  this.blobClient = blobClient;
@@ -502,9 +500,6 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
502
500
  throw new Error('debugLogStore should never be enabled when realProofs are set');
503
501
  }
504
502
  }
505
- /** @internal Exposed for testing — returns the RPC proof verifier. */ getProofVerifier() {
506
- return this.rpcProofVerifier;
507
- }
508
503
  async getWorldStateSyncStatus() {
509
504
  const status = await this.worldStateSynchronizer.status();
510
505
  return status.syncSummary;
@@ -603,17 +598,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
603
598
  });
604
599
  // now create the merkle trees and the world state synchronizer
605
600
  const worldStateSynchronizer = await createWorldStateSynchronizer(config, archiver, options.prefilledPublicData, telemetry);
606
- const useRealVerifiers = config.realProofs || config.debugForceTxProofVerification;
607
- let peerProofVerifier;
608
- let rpcProofVerifier;
609
- if (useRealVerifiers) {
610
- peerProofVerifier = await BatchChonkVerifier.new(config, config.bbChonkVerifyMaxBatch, 'peer');
611
- const rpcVerifier = await BBCircuitVerifier.new(config);
612
- rpcProofVerifier = new QueuedIVCVerifier(rpcVerifier, config.numConcurrentIVCVerifiers);
613
- } else {
614
- peerProofVerifier = new TestCircuitVerifier(config.proverTestVerificationDelayMs);
615
- rpcProofVerifier = new TestCircuitVerifier(config.proverTestVerificationDelayMs);
616
- }
601
+ const circuitVerifier = config.realProofs || config.debugForceTxProofVerification ? await BBCircuitVerifier.new(config) : new TestCircuitVerifier(config.proverTestVerificationDelayMs);
617
602
  let debugLogStore;
618
603
  if (!config.realProofs) {
619
604
  log.warn(`Aztec node is accepting fake proofs`);
@@ -622,12 +607,13 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
622
607
  } else {
623
608
  debugLogStore = new NullDebugLogStore();
624
609
  }
610
+ const proofVerifier = new QueuedIVCVerifier(config, circuitVerifier);
625
611
  const proverOnly = config.enableProverNode && config.disableValidator;
626
612
  if (proverOnly) {
627
613
  log.info('Starting in prover-only mode: skipping validator, sequencer, sentinel, and slasher subsystems');
628
614
  }
629
615
  // create the tx pool and the p2p client, which will need the l2 block source
630
- const p2pClient = await createP2PClient(config, archiver, peerProofVerifier, worldStateSynchronizer, epochCache, packageVersion, dateProvider, telemetry, deps.p2pClientDeps);
616
+ const p2pClient = await createP2PClient(config, archiver, proofVerifier, worldStateSynchronizer, epochCache, packageVersion, dateProvider, telemetry, deps.p2pClientDeps);
631
617
  // We'll accumulate sentinel watchers here
632
618
  const watchers = [];
633
619
  // Create FullNodeCheckpointsBuilder for block proposal handling and tx validation.
@@ -747,22 +733,6 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
747
733
  dateProvider,
748
734
  kzg: Blob.getViemKzgInstance()
749
735
  });
750
- // Create a funder L1TxUtils from the keystore funding account (if configured)
751
- const fundingSigner = keyStoreManager?.createFundingSigner();
752
- let funderL1TxUtils;
753
- if (fundingSigner) {
754
- const [funder] = await createL1TxUtilsFromSigners(publicClient, [
755
- fundingSigner
756
- ], {
757
- ...config,
758
- scope: 'sequencer'
759
- }, {
760
- telemetry,
761
- logger: log.createChild('l1-tx-utils:funder'),
762
- dateProvider
763
- });
764
- funderL1TxUtils = funder;
765
- }
766
736
  // Create and start the sequencer client
767
737
  const checkpointsBuilder = new CheckpointsBuilder({
768
738
  ...config,
@@ -774,7 +744,6 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
774
744
  ...deps,
775
745
  epochCache,
776
746
  l1TxUtils,
777
- funderL1TxUtils,
778
747
  validatorClient,
779
748
  p2pClient,
780
749
  worldStateSynchronizer,
@@ -816,7 +785,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
816
785
  log.info(`Prover node subsystem created but not started`);
817
786
  }
818
787
  }
819
- const node = new AztecNodeService(config, p2pClient, archiver, archiver, archiver, archiver, worldStateSynchronizer, sequencer, proverNode, slasherClient, validatorsSentinel, epochPruneWatcher, ethereumChain.chainInfo.id, config.rollupVersion, globalVariableBuilder, epochCache, packageVersion, peerProofVerifier, rpcProofVerifier, telemetry, log, blobClient, validatorClient, keyStoreManager, debugLogStore);
788
+ 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, debugLogStore);
820
789
  return node;
821
790
  }
822
791
  /**
@@ -986,36 +955,28 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
986
955
  return this.contractDataSource.getContract(address);
987
956
  }
988
957
  async getPrivateLogsByTags(tags, page, referenceBlock) {
989
- let upToBlockNumber;
990
958
  if (referenceBlock) {
991
959
  const initialBlockHash = await this.#getInitialHeaderHash();
992
- if (referenceBlock.equals(initialBlockHash)) {
993
- upToBlockNumber = BlockNumber(0);
994
- } else {
960
+ if (!referenceBlock.equals(initialBlockHash)) {
995
961
  const header = await this.blockSource.getBlockHeaderByHash(referenceBlock);
996
962
  if (!header) {
997
963
  throw new Error(`Block ${referenceBlock.toString()} not found in the node. This might indicate a reorg has occurred.`);
998
964
  }
999
- upToBlockNumber = header.globalVariables.blockNumber;
1000
965
  }
1001
966
  }
1002
- return this.logsSource.getPrivateLogsByTags(tags, page, upToBlockNumber);
967
+ return this.logsSource.getPrivateLogsByTags(tags, page);
1003
968
  }
1004
969
  async getPublicLogsByTagsFromContract(contractAddress, tags, page, referenceBlock) {
1005
- let upToBlockNumber;
1006
970
  if (referenceBlock) {
1007
971
  const initialBlockHash = await this.#getInitialHeaderHash();
1008
- if (referenceBlock.equals(initialBlockHash)) {
1009
- upToBlockNumber = BlockNumber(0);
1010
- } else {
972
+ if (!referenceBlock.equals(initialBlockHash)) {
1011
973
  const header = await this.blockSource.getBlockHeaderByHash(referenceBlock);
1012
974
  if (!header) {
1013
975
  throw new Error(`Block ${referenceBlock.toString()} not found in the node. This might indicate a reorg has occurred.`);
1014
976
  }
1015
- upToBlockNumber = header.globalVariables.blockNumber;
1016
977
  }
1017
978
  }
1018
- return this.logsSource.getPublicLogsByTagsFromContract(contractAddress, tags, page, upToBlockNumber);
979
+ return this.logsSource.getPublicLogsByTagsFromContract(contractAddress, tags, page);
1019
980
  }
1020
981
  /**
1021
982
  * Gets public logs based on the provided filter.
@@ -1088,10 +1049,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
1088
1049
  await tryStop(this.validatorsSentinel);
1089
1050
  await tryStop(this.epochPruneWatcher);
1090
1051
  await tryStop(this.slasherClient);
1091
- await Promise.all([
1092
- tryStop(this.peerProofVerifier),
1093
- tryStop(this.rpcProofVerifier)
1094
- ]);
1052
+ await tryStop(this.proofVerifier);
1095
1053
  await tryStop(this.sequencer);
1096
1054
  await tryStop(this.proverNode);
1097
1055
  await tryStop(this.p2pClient);
@@ -1186,14 +1144,20 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
1186
1144
  });
1187
1145
  }
1188
1146
  async getBlockHashMembershipWitness(referenceBlock, blockHash) {
1147
+ // Block 0 (the initial block) has an empty archive, so no membership witness can exist.
1148
+ if (referenceBlock === BlockNumber.ZERO) {
1149
+ return undefined;
1150
+ }
1151
+ if (BlockHash.isBlockHash(referenceBlock)) {
1152
+ const initialBlockHash = await this.#getInitialHeaderHash();
1153
+ if (referenceBlock.equals(initialBlockHash)) {
1154
+ return undefined;
1155
+ }
1156
+ }
1189
1157
  // The Noir circuit checks the archive membership proof against `anchor_block_header.last_archive.root`,
1190
1158
  // which is the archive tree root BEFORE the anchor block was added (i.e. the state after block N-1).
1191
1159
  // So we need the world state at block N-1, not block N, to produce a sibling path matching that root.
1192
1160
  const referenceBlockNumber = await this.resolveBlockNumber(referenceBlock);
1193
- if (referenceBlockNumber === BlockNumber.ZERO) {
1194
- // Block 0 (the initial block) has an empty archive, so no membership witness can exist.
1195
- return undefined;
1196
- }
1197
1161
  const committedDb = await this.getWorldState(BlockNumber(referenceBlockNumber - 1));
1198
1162
  const [pathAndIndex] = await committedDb.findSiblingPaths(MerkleTreeId.ARCHIVE, [
1199
1163
  blockHash
@@ -1381,7 +1345,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
1381
1345
  }
1382
1346
  async isValidTx(tx, { isSimulation, skipFeeEnforcement } = {}) {
1383
1347
  const db = this.worldStateSynchronizer.getCommitted();
1384
- const verifier = isSimulation ? undefined : this.rpcProofVerifier;
1348
+ const verifier = isSimulation ? undefined : this.proofVerifier;
1385
1349
  // We accept transactions if they are not expired by the next slot (checked based on the ExpirationTimestamp field)
1386
1350
  const { ts: nextSlotTimestamp } = this.epochCache.getEpochAndSlotInNextL1Slot();
1387
1351
  const blockNumber = BlockNumber(await this.blockSource.getBlockNumber() + 1);
@@ -1423,18 +1387,7 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
1423
1387
  archiver.updateConfig(config);
1424
1388
  }
1425
1389
  if (newConfig.realProofs !== this.config.realProofs) {
1426
- await Promise.all([
1427
- tryStop(this.peerProofVerifier),
1428
- tryStop(this.rpcProofVerifier)
1429
- ]);
1430
- if (newConfig.realProofs) {
1431
- this.peerProofVerifier = await BatchChonkVerifier.new(newConfig, newConfig.bbChonkVerifyMaxBatch, 'peer');
1432
- const rpcVerifier = await BBCircuitVerifier.new(newConfig);
1433
- this.rpcProofVerifier = new QueuedIVCVerifier(rpcVerifier, newConfig.numConcurrentIVCVerifiers);
1434
- } else {
1435
- this.peerProofVerifier = new TestCircuitVerifier();
1436
- this.rpcProofVerifier = new TestCircuitVerifier();
1437
- }
1390
+ this.proofVerifier = config.realProofs ? await BBCircuitVerifier.new(newConfig) : new TestCircuitVerifier();
1438
1391
  }
1439
1392
  this.config = newConfig;
1440
1393
  }
@@ -1621,6 +1574,33 @@ _dec = trackSpan('AztecNodeService.simulatePublicCalls', (tx)=>({
1621
1574
  this.keyStoreManager = newManager;
1622
1575
  this.log.info('Keystore reloaded: coinbase, feeRecipient, and attester keys updated');
1623
1576
  }
1577
+ async mineBlock() {
1578
+ if (!this.sequencer) {
1579
+ throw new BadRequestError('Cannot mine block: no sequencer is running');
1580
+ }
1581
+ const currentBlockNumber = await this.getBlockNumber();
1582
+ // Use slot duration + 50% buffer as the timeout so this works on running networks too
1583
+ const { slotDuration } = await this.blockSource.getL1Constants();
1584
+ const timeoutSeconds = Math.ceil(slotDuration * 1.5);
1585
+ // Temporarily set minTxsPerBlock to 0 so the sequencer produces a block even with no txs
1586
+ const originalMinTxsPerBlock = this.sequencer.getSequencer().getConfig().minTxsPerBlock;
1587
+ this.sequencer.updateConfig({
1588
+ minTxsPerBlock: 0
1589
+ });
1590
+ try {
1591
+ // Trigger the sequencer to produce a block immediately
1592
+ void this.sequencer.trigger();
1593
+ // Wait for the new L2 block to appear
1594
+ await retryUntil(async ()=>{
1595
+ const newBlockNumber = await this.getBlockNumber();
1596
+ return newBlockNumber > currentBlockNumber ? true : undefined;
1597
+ }, 'mineBlock', timeoutSeconds, 0.1);
1598
+ } finally{
1599
+ this.sequencer.updateConfig({
1600
+ minTxsPerBlock: originalMinTxsPerBlock
1601
+ });
1602
+ }
1603
+ }
1624
1604
  #getInitialHeaderHash() {
1625
1605
  if (!this.initialHeaderHashPromise) {
1626
1606
  this.initialHeaderHashPromise = this.worldStateSynchronizer.getCommitted().getInitialHeader().hash();
@@ -1,9 +1,9 @@
1
1
  import type { EpochCache } from '@aztec/epoch-cache';
2
+ import type { DataStoreConfig } from '@aztec/kv-store/config';
2
3
  import type { P2PClient } from '@aztec/p2p';
3
4
  import type { L2BlockSource } from '@aztec/stdlib/block';
4
5
  import type { SlasherConfig } from '@aztec/stdlib/interfaces/server';
5
- import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
6
6
  import type { SentinelConfig } from './config.js';
7
7
  import { Sentinel } from './sentinel.js';
8
8
  export declare function createSentinel(epochCache: EpochCache, archiver: L2BlockSource, p2p: P2PClient, config: SentinelConfig & DataStoreConfig & SlasherConfig, logger?: import("@aztec/foundation/log").Logger): Promise<Sentinel | undefined>;
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlbnRpbmVsL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHckQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pDLHdCQUFzQixjQUFjLENBQ2xDLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLFFBQVEsRUFBRSxhQUFhLEVBQ3ZCLEdBQUcsRUFBRSxTQUFTLEVBQ2QsTUFBTSxFQUFFLGNBQWMsR0FBRyxlQUFlLEdBQUcsYUFBYSxFQUN4RCxNQUFNLHlDQUFnQyxHQUNyQyxPQUFPLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQVkvQiJ9
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlbnRpbmVsL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pDLHdCQUFzQixjQUFjLENBQ2xDLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLFFBQVEsRUFBRSxhQUFhLEVBQ3ZCLEdBQUcsRUFBRSxTQUFTLEVBQ2QsTUFBTSxFQUFFLGNBQWMsR0FBRyxlQUFlLEdBQUcsYUFBYSxFQUN4RCxNQUFNLHlDQUFnQyxHQUNyQyxPQUFPLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQVkvQiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/sentinel/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,wBAAsB,cAAc,CAClC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,aAAa,EACvB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,cAAc,GAAG,eAAe,GAAG,aAAa,EACxD,MAAM,yCAAgC,GACrC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAY/B"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/sentinel/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,wBAAsB,cAAc,CAClC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,aAAa,EACvB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,cAAc,GAAG,eAAe,GAAG,aAAa,EACxD,MAAM,yCAAgC,GACrC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAY/B"}
@@ -48,7 +48,7 @@ export class Sentinel extends EventEmitter {
48
48
  this.runningPromise.start();
49
49
  }
50
50
  /** Loads initial slot and initializes blockstream. We will not process anything at or before the initial slot. */ async init() {
51
- this.initialSlot = this.epochCache.getSlotNow();
51
+ this.initialSlot = this.epochCache.getEpochAndSlotNow().slot;
52
52
  const startingBlock = BlockNumber(await this.archiver.getBlockNumber());
53
53
  this.logger.info(`Starting validator sentinel with initial slot ${this.initialSlot} and block ${startingBlock}`);
54
54
  this.blockStream = new L2BlockStream(this.archiver, this.l2TipsStore, this, this.logger, {
@@ -157,7 +157,7 @@ export class Sentinel extends EventEmitter {
157
157
  return false;
158
158
  }
159
159
  // Check that we have at least requiredConsecutiveEpochs and that all of them are above the inactivity threshold
160
- return pastEpochs.slice(0, requiredConsecutiveEpochs).every((p)=>p.total === 0 ? false : p.missed / p.total >= this.config.slashInactivityTargetPercentage);
160
+ return pastEpochs.slice(0, requiredConsecutiveEpochs).every((p)=>p.missed / p.total >= this.config.slashInactivityTargetPercentage);
161
161
  }
162
162
  async handleProvenPerformance(epoch, performance) {
163
163
  if (this.config.slashInactivityPenalty === 0n) {
@@ -190,7 +190,7 @@ export class Sentinel extends EventEmitter {
190
190
  * Note that we do not process historical data, since we rely on p2p data for processing,
191
191
  * and we don't have that data if we were offline during the period.
192
192
  */ async work() {
193
- const currentSlot = this.epochCache.getSlotNow();
193
+ const { slot: currentSlot } = this.epochCache.getEpochAndSlotNow();
194
194
  try {
195
195
  // Manually sync the block stream to ensure we have the latest data.
196
196
  // Note we never `start` the blockstream, so it loops at the same pace as we do.
@@ -351,7 +351,7 @@ export class Sentinel extends EventEmitter {
351
351
  v.toString(),
352
352
  await this.store.getHistory(v)
353
353
  ]))) : await this.store.getHistories();
354
- const slotNow = this.epochCache.getSlotNow();
354
+ const slotNow = this.epochCache.getEpochAndSlotNow().slot;
355
355
  fromSlot ??= SlotNumber(Math.max((this.lastProcessedSlot ?? slotNow) - this.store.getHistoryLength(), 0));
356
356
  toSlot ??= this.lastProcessedSlot ?? slotNow;
357
357
  const stats = mapValues(histories, (history, address)=>this.computeStatsForValidator(address, history ?? [], fromSlot, toSlot));
@@ -367,7 +367,7 @@ export class Sentinel extends EventEmitter {
367
367
  if (!history || history.length === 0) {
368
368
  return undefined;
369
369
  }
370
- const slotNow = this.epochCache.getSlotNow();
370
+ const slotNow = this.epochCache.getEpochAndSlotNow().slot;
371
371
  const effectiveFromSlot = fromSlot ?? SlotNumber(Math.max((this.lastProcessedSlot ?? slotNow) - this.store.getHistoryLength(), 0));
372
372
  const effectiveToSlot = toSlot ?? this.lastProcessedSlot ?? slotNow;
373
373
  const historyLength = BigInt(this.store.getHistoryLength());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/aztec-node",
3
- "version": "0.0.1-commit.9ef841308",
3
+ "version": "0.0.1-commit.a89ec08",
4
4
  "main": "dest/index.js",
5
5
  "type": "module",
6
6
  "exports": {
@@ -65,31 +65,32 @@
65
65
  ]
66
66
  },
67
67
  "dependencies": {
68
- "@aztec/archiver": "0.0.1-commit.9ef841308",
69
- "@aztec/bb-prover": "0.0.1-commit.9ef841308",
70
- "@aztec/blob-client": "0.0.1-commit.9ef841308",
71
- "@aztec/blob-lib": "0.0.1-commit.9ef841308",
72
- "@aztec/constants": "0.0.1-commit.9ef841308",
73
- "@aztec/epoch-cache": "0.0.1-commit.9ef841308",
74
- "@aztec/ethereum": "0.0.1-commit.9ef841308",
75
- "@aztec/foundation": "0.0.1-commit.9ef841308",
76
- "@aztec/kv-store": "0.0.1-commit.9ef841308",
77
- "@aztec/l1-artifacts": "0.0.1-commit.9ef841308",
78
- "@aztec/node-keystore": "0.0.1-commit.9ef841308",
79
- "@aztec/node-lib": "0.0.1-commit.9ef841308",
80
- "@aztec/noir-protocol-circuits-types": "0.0.1-commit.9ef841308",
81
- "@aztec/p2p": "0.0.1-commit.9ef841308",
82
- "@aztec/protocol-contracts": "0.0.1-commit.9ef841308",
83
- "@aztec/prover-client": "0.0.1-commit.9ef841308",
84
- "@aztec/prover-node": "0.0.1-commit.9ef841308",
85
- "@aztec/sequencer-client": "0.0.1-commit.9ef841308",
86
- "@aztec/simulator": "0.0.1-commit.9ef841308",
87
- "@aztec/slasher": "0.0.1-commit.9ef841308",
88
- "@aztec/stdlib": "0.0.1-commit.9ef841308",
89
- "@aztec/telemetry-client": "0.0.1-commit.9ef841308",
90
- "@aztec/validator-client": "0.0.1-commit.9ef841308",
91
- "@aztec/validator-ha-signer": "0.0.1-commit.9ef841308",
92
- "@aztec/world-state": "0.0.1-commit.9ef841308",
68
+ "@aztec/archiver": "0.0.1-commit.a89ec08",
69
+ "@aztec/bb-prover": "0.0.1-commit.a89ec08",
70
+ "@aztec/blob-client": "0.0.1-commit.a89ec08",
71
+ "@aztec/blob-lib": "0.0.1-commit.a89ec08",
72
+ "@aztec/constants": "0.0.1-commit.a89ec08",
73
+ "@aztec/epoch-cache": "0.0.1-commit.a89ec08",
74
+ "@aztec/ethereum": "0.0.1-commit.a89ec08",
75
+ "@aztec/foundation": "0.0.1-commit.a89ec08",
76
+ "@aztec/kv-store": "0.0.1-commit.a89ec08",
77
+ "@aztec/l1-artifacts": "0.0.1-commit.a89ec08",
78
+ "@aztec/merkle-tree": "0.0.1-commit.a89ec08",
79
+ "@aztec/node-keystore": "0.0.1-commit.a89ec08",
80
+ "@aztec/node-lib": "0.0.1-commit.a89ec08",
81
+ "@aztec/noir-protocol-circuits-types": "0.0.1-commit.a89ec08",
82
+ "@aztec/p2p": "0.0.1-commit.a89ec08",
83
+ "@aztec/protocol-contracts": "0.0.1-commit.a89ec08",
84
+ "@aztec/prover-client": "0.0.1-commit.a89ec08",
85
+ "@aztec/prover-node": "0.0.1-commit.a89ec08",
86
+ "@aztec/sequencer-client": "0.0.1-commit.a89ec08",
87
+ "@aztec/simulator": "0.0.1-commit.a89ec08",
88
+ "@aztec/slasher": "0.0.1-commit.a89ec08",
89
+ "@aztec/stdlib": "0.0.1-commit.a89ec08",
90
+ "@aztec/telemetry-client": "0.0.1-commit.a89ec08",
91
+ "@aztec/validator-client": "0.0.1-commit.a89ec08",
92
+ "@aztec/validator-ha-signer": "0.0.1-commit.a89ec08",
93
+ "@aztec/world-state": "0.0.1-commit.a89ec08",
93
94
  "koa": "^2.16.1",
94
95
  "koa-router": "^13.1.1",
95
96
  "tslib": "^2.4.0",
@@ -3,6 +3,7 @@ import { type GenesisStateConfig, genesisStateConfigMappings } from '@aztec/ethe
3
3
  import { type L1ContractAddresses, l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
4
4
  import { type ConfigMappingsType, booleanConfigHelper, getConfigFromMappings } from '@aztec/foundation/config';
5
5
  import { EthAddress } from '@aztec/foundation/eth-address';
6
+ import { type DataStoreConfig, dataConfigMappings } from '@aztec/kv-store/config';
6
7
  import {
7
8
  type KeyStore,
8
9
  type ValidatorKeyStore,
@@ -26,7 +27,6 @@ import { slasherConfigMappings } from '@aztec/slasher';
26
27
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
27
28
  import { type NodeRPCConfig, nodeRpcConfigMappings } from '@aztec/stdlib/config';
28
29
  import type { SlasherConfig } from '@aztec/stdlib/interfaces/server';
29
- import { type DataStoreConfig, dataConfigMappings } from '@aztec/stdlib/kv-store';
30
30
  import { type ValidatorClientConfig, validatorClientConfigMappings } from '@aztec/validator-client/config';
31
31
  import { type WorldStateConfig, worldStateConfigMappings } from '@aztec/world-state/config';
32
32
 
@@ -1,6 +1,5 @@
1
1
  import { Archiver, createArchiver } from '@aztec/archiver';
2
- import { BBCircuitVerifier, BatchChonkVerifier, QueuedIVCVerifier } from '@aztec/bb-prover';
3
- import { TestCircuitVerifier } from '@aztec/bb-prover/test';
2
+ import { BBCircuitVerifier, QueuedIVCVerifier, TestCircuitVerifier } from '@aztec/bb-prover';
4
3
  import { type BlobClientInterface, createBlobClientWithFileStores } from '@aztec/blob-client/client';
5
4
  import { Blob } from '@aztec/blob-lib';
6
5
  import { ARCHIVE_HEIGHT, type L1_TO_L2_MSG_TREE_HEIGHT, type NOTE_HASH_TREE_HEIGHT } from '@aztec/constants';
@@ -9,13 +8,13 @@ import { createEthereumChain } from '@aztec/ethereum/chain';
9
8
  import { getPublicClient, makeL1HttpTransport } from '@aztec/ethereum/client';
10
9
  import { RegistryContract, RollupContract } from '@aztec/ethereum/contracts';
11
10
  import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
12
- import type { L1TxUtils } from '@aztec/ethereum/l1-tx-utils';
13
11
  import { BlockNumber, CheckpointNumber, EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
14
12
  import { chunkBy, compactArray, pick, unique } from '@aztec/foundation/collection';
15
13
  import { Fr } from '@aztec/foundation/curves/bn254';
16
14
  import { EthAddress } from '@aztec/foundation/eth-address';
17
15
  import { BadRequestError } from '@aztec/foundation/json-rpc';
18
16
  import { type Logger, createLogger } from '@aztec/foundation/log';
17
+ import { retryUntil } from '@aztec/foundation/retry';
19
18
  import { count } from '@aztec/foundation/string';
20
19
  import { DateProvider, Timer } from '@aztec/foundation/timer';
21
20
  import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
@@ -66,6 +65,7 @@ import {
66
65
  type AztecNodeAdmin,
67
66
  type AztecNodeAdminConfig,
68
67
  AztecNodeAdminConfigSchema,
68
+ type AztecNodeDebug,
69
69
  type GetContractClassLogsResponse,
70
70
  type GetPublicLogsResponse,
71
71
  } from '@aztec/stdlib/interfaces/client';
@@ -126,7 +126,7 @@ import { NodeMetrics } from './node_metrics.js';
126
126
  /**
127
127
  * The aztec node.
128
128
  */
129
- export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
129
+ export class AztecNodeService implements AztecNode, AztecNodeAdmin, AztecNodeDebug, Traceable {
130
130
  private metrics: NodeMetrics;
131
131
  private initialHeaderHashPromise: Promise<BlockHash> | undefined = undefined;
132
132
 
@@ -153,8 +153,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
153
153
  protected readonly globalVariableBuilder: GlobalVariableBuilderInterface,
154
154
  protected readonly epochCache: EpochCacheInterface,
155
155
  protected readonly packageVersion: string,
156
- private peerProofVerifier: ClientProtocolCircuitVerifier,
157
- private rpcProofVerifier: ClientProtocolCircuitVerifier,
156
+ private proofVerifier: ClientProtocolCircuitVerifier,
158
157
  private telemetry: TelemetryClient = getTelemetryClient(),
159
158
  private log = createLogger('node'),
160
159
  private blobClient?: BlobClientInterface,
@@ -176,11 +175,6 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
176
175
  }
177
176
  }
178
177
 
179
- /** @internal Exposed for testing — returns the RPC proof verifier. */
180
- public getProofVerifier(): ClientProtocolCircuitVerifier {
181
- return this.rpcProofVerifier;
182
- }
183
-
184
178
  public async getWorldStateSyncStatus(): Promise<WorldStateSyncStatus> {
185
179
  const status = await this.worldStateSynchronizer.status();
186
180
  return status.syncSummary;
@@ -316,17 +310,10 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
316
310
  options.prefilledPublicData,
317
311
  telemetry,
318
312
  );
319
- const useRealVerifiers = config.realProofs || config.debugForceTxProofVerification;
320
- let peerProofVerifier: ClientProtocolCircuitVerifier;
321
- let rpcProofVerifier: ClientProtocolCircuitVerifier;
322
- if (useRealVerifiers) {
323
- peerProofVerifier = await BatchChonkVerifier.new(config, config.bbChonkVerifyMaxBatch, 'peer');
324
- const rpcVerifier = await BBCircuitVerifier.new(config);
325
- rpcProofVerifier = new QueuedIVCVerifier(rpcVerifier, config.numConcurrentIVCVerifiers);
326
- } else {
327
- peerProofVerifier = new TestCircuitVerifier(config.proverTestVerificationDelayMs);
328
- rpcProofVerifier = new TestCircuitVerifier(config.proverTestVerificationDelayMs);
329
- }
313
+ const circuitVerifier =
314
+ config.realProofs || config.debugForceTxProofVerification
315
+ ? await BBCircuitVerifier.new(config)
316
+ : new TestCircuitVerifier(config.proverTestVerificationDelayMs);
330
317
 
331
318
  let debugLogStore: DebugLogStore;
332
319
  if (!config.realProofs) {
@@ -340,6 +327,8 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
340
327
  debugLogStore = new NullDebugLogStore();
341
328
  }
342
329
 
330
+ const proofVerifier = new QueuedIVCVerifier(config, circuitVerifier);
331
+
343
332
  const proverOnly = config.enableProverNode && config.disableValidator;
344
333
  if (proverOnly) {
345
334
  log.info('Starting in prover-only mode: skipping validator, sequencer, sentinel, and slasher subsystems');
@@ -349,7 +338,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
349
338
  const p2pClient = await createP2PClient(
350
339
  config,
351
340
  archiver,
352
- peerProofVerifier,
341
+ proofVerifier,
353
342
  worldStateSynchronizer,
354
343
  epochCache,
355
344
  packageVersion,
@@ -518,19 +507,6 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
518
507
  { telemetry, logger: log.createChild('l1-tx-utils'), dateProvider, kzg: Blob.getViemKzgInstance() },
519
508
  );
520
509
 
521
- // Create a funder L1TxUtils from the keystore funding account (if configured)
522
- const fundingSigner = keyStoreManager?.createFundingSigner();
523
- let funderL1TxUtils: L1TxUtils | undefined;
524
- if (fundingSigner) {
525
- const [funder] = await createL1TxUtilsFromSigners(
526
- publicClient,
527
- [fundingSigner],
528
- { ...config, scope: 'sequencer' },
529
- { telemetry, logger: log.createChild('l1-tx-utils:funder'), dateProvider },
530
- );
531
- funderL1TxUtils = funder;
532
- }
533
-
534
510
  // Create and start the sequencer client
535
511
  const checkpointsBuilder = new CheckpointsBuilder(
536
512
  { ...config, l1GenesisTime, slotDuration: Number(slotDuration), rollupManaLimit },
@@ -545,7 +521,6 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
545
521
  ...deps,
546
522
  epochCache,
547
523
  l1TxUtils,
548
- funderL1TxUtils,
549
524
  validatorClient,
550
525
  p2pClient,
551
526
  worldStateSynchronizer,
@@ -609,8 +584,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
609
584
  globalVariableBuilder,
610
585
  epochCache,
611
586
  packageVersion,
612
- peerProofVerifier,
613
- rpcProofVerifier,
587
+ proofVerifier,
614
588
  telemetry,
615
589
  log,
616
590
  blobClient,
@@ -832,22 +806,18 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
832
806
  page?: number,
833
807
  referenceBlock?: BlockHash,
834
808
  ): Promise<TxScopedL2Log[][]> {
835
- let upToBlockNumber: BlockNumber | undefined;
836
809
  if (referenceBlock) {
837
810
  const initialBlockHash = await this.#getInitialHeaderHash();
838
- if (referenceBlock.equals(initialBlockHash)) {
839
- upToBlockNumber = BlockNumber(0);
840
- } else {
811
+ if (!referenceBlock.equals(initialBlockHash)) {
841
812
  const header = await this.blockSource.getBlockHeaderByHash(referenceBlock);
842
813
  if (!header) {
843
814
  throw new Error(
844
815
  `Block ${referenceBlock.toString()} not found in the node. This might indicate a reorg has occurred.`,
845
816
  );
846
817
  }
847
- upToBlockNumber = header.globalVariables.blockNumber;
848
818
  }
849
819
  }
850
- return this.logsSource.getPrivateLogsByTags(tags, page, upToBlockNumber);
820
+ return this.logsSource.getPrivateLogsByTags(tags, page);
851
821
  }
852
822
 
853
823
  public async getPublicLogsByTagsFromContract(
@@ -856,22 +826,18 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
856
826
  page?: number,
857
827
  referenceBlock?: BlockHash,
858
828
  ): Promise<TxScopedL2Log[][]> {
859
- let upToBlockNumber: BlockNumber | undefined;
860
829
  if (referenceBlock) {
861
830
  const initialBlockHash = await this.#getInitialHeaderHash();
862
- if (referenceBlock.equals(initialBlockHash)) {
863
- upToBlockNumber = BlockNumber(0);
864
- } else {
831
+ if (!referenceBlock.equals(initialBlockHash)) {
865
832
  const header = await this.blockSource.getBlockHeaderByHash(referenceBlock);
866
833
  if (!header) {
867
834
  throw new Error(
868
835
  `Block ${referenceBlock.toString()} not found in the node. This might indicate a reorg has occurred.`,
869
836
  );
870
837
  }
871
- upToBlockNumber = header.globalVariables.blockNumber;
872
838
  }
873
839
  }
874
- return this.logsSource.getPublicLogsByTagsFromContract(contractAddress, tags, page, upToBlockNumber);
840
+ return this.logsSource.getPublicLogsByTagsFromContract(contractAddress, tags, page);
875
841
  }
876
842
 
877
843
  /**
@@ -957,7 +923,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
957
923
  await tryStop(this.validatorsSentinel);
958
924
  await tryStop(this.epochPruneWatcher);
959
925
  await tryStop(this.slasherClient);
960
- await Promise.all([tryStop(this.peerProofVerifier), tryStop(this.rpcProofVerifier)]);
926
+ await tryStop(this.proofVerifier);
961
927
  await tryStop(this.sequencer);
962
928
  await tryStop(this.proverNode);
963
929
  await tryStop(this.p2pClient);
@@ -1081,14 +1047,20 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
1081
1047
  referenceBlock: BlockParameter,
1082
1048
  blockHash: BlockHash,
1083
1049
  ): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined> {
1050
+ // Block 0 (the initial block) has an empty archive, so no membership witness can exist.
1051
+ if (referenceBlock === BlockNumber.ZERO) {
1052
+ return undefined;
1053
+ }
1054
+ if (BlockHash.isBlockHash(referenceBlock)) {
1055
+ const initialBlockHash = await this.#getInitialHeaderHash();
1056
+ if (referenceBlock.equals(initialBlockHash)) {
1057
+ return undefined;
1058
+ }
1059
+ }
1084
1060
  // The Noir circuit checks the archive membership proof against `anchor_block_header.last_archive.root`,
1085
1061
  // which is the archive tree root BEFORE the anchor block was added (i.e. the state after block N-1).
1086
1062
  // So we need the world state at block N-1, not block N, to produce a sibling path matching that root.
1087
1063
  const referenceBlockNumber = await this.resolveBlockNumber(referenceBlock);
1088
- if (referenceBlockNumber === BlockNumber.ZERO) {
1089
- // Block 0 (the initial block) has an empty archive, so no membership witness can exist.
1090
- return undefined;
1091
- }
1092
1064
  const committedDb = await this.getWorldState(BlockNumber(referenceBlockNumber - 1));
1093
1065
  const [pathAndIndex] = await committedDb.findSiblingPaths<MerkleTreeId.ARCHIVE>(MerkleTreeId.ARCHIVE, [blockHash]);
1094
1066
  return pathAndIndex === undefined
@@ -1351,7 +1323,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
1351
1323
  { isSimulation, skipFeeEnforcement }: { isSimulation?: boolean; skipFeeEnforcement?: boolean } = {},
1352
1324
  ): Promise<TxValidationResult> {
1353
1325
  const db = this.worldStateSynchronizer.getCommitted();
1354
- const verifier = isSimulation ? undefined : this.rpcProofVerifier;
1326
+ const verifier = isSimulation ? undefined : this.proofVerifier;
1355
1327
 
1356
1328
  // We accept transactions if they are not expired by the next slot (checked based on the ExpirationTimestamp field)
1357
1329
  const { ts: nextSlotTimestamp } = this.epochCache.getEpochAndSlotInNextL1Slot();
@@ -1400,15 +1372,7 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
1400
1372
  archiver.updateConfig(config);
1401
1373
  }
1402
1374
  if (newConfig.realProofs !== this.config.realProofs) {
1403
- await Promise.all([tryStop(this.peerProofVerifier), tryStop(this.rpcProofVerifier)]);
1404
- if (newConfig.realProofs) {
1405
- this.peerProofVerifier = await BatchChonkVerifier.new(newConfig, newConfig.bbChonkVerifyMaxBatch, 'peer');
1406
- const rpcVerifier = await BBCircuitVerifier.new(newConfig);
1407
- this.rpcProofVerifier = new QueuedIVCVerifier(rpcVerifier, newConfig.numConcurrentIVCVerifiers);
1408
- } else {
1409
- this.peerProofVerifier = new TestCircuitVerifier();
1410
- this.rpcProofVerifier = new TestCircuitVerifier();
1411
- }
1375
+ this.proofVerifier = config.realProofs ? await BBCircuitVerifier.new(newConfig) : new TestCircuitVerifier();
1412
1376
  }
1413
1377
 
1414
1378
  this.config = newConfig;
@@ -1638,6 +1602,40 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
1638
1602
  this.log.info('Keystore reloaded: coinbase, feeRecipient, and attester keys updated');
1639
1603
  }
1640
1604
 
1605
+ public async mineBlock(): Promise<void> {
1606
+ if (!this.sequencer) {
1607
+ throw new BadRequestError('Cannot mine block: no sequencer is running');
1608
+ }
1609
+
1610
+ const currentBlockNumber = await this.getBlockNumber();
1611
+
1612
+ // Use slot duration + 50% buffer as the timeout so this works on running networks too
1613
+ const { slotDuration } = await this.blockSource.getL1Constants();
1614
+ const timeoutSeconds = Math.ceil(slotDuration * 1.5);
1615
+
1616
+ // Temporarily set minTxsPerBlock to 0 so the sequencer produces a block even with no txs
1617
+ const originalMinTxsPerBlock = this.sequencer.getSequencer().getConfig().minTxsPerBlock;
1618
+ this.sequencer.updateConfig({ minTxsPerBlock: 0 });
1619
+
1620
+ try {
1621
+ // Trigger the sequencer to produce a block immediately
1622
+ void this.sequencer.trigger();
1623
+
1624
+ // Wait for the new L2 block to appear
1625
+ await retryUntil(
1626
+ async () => {
1627
+ const newBlockNumber = await this.getBlockNumber();
1628
+ return newBlockNumber > currentBlockNumber ? true : undefined;
1629
+ },
1630
+ 'mineBlock',
1631
+ timeoutSeconds,
1632
+ 0.1,
1633
+ );
1634
+ } finally {
1635
+ this.sequencer.updateConfig({ minTxsPerBlock: originalMinTxsPerBlock });
1636
+ }
1637
+ }
1638
+
1641
1639
  #getInitialHeaderHash(): Promise<BlockHash> {
1642
1640
  if (!this.initialHeaderHashPromise) {
1643
1641
  this.initialHeaderHashPromise = this.worldStateSynchronizer.getCommitted().getInitialHeader().hash();
@@ -1,10 +1,10 @@
1
1
  import type { EpochCache } from '@aztec/epoch-cache';
2
2
  import { createLogger } from '@aztec/foundation/log';
3
+ import type { DataStoreConfig } from '@aztec/kv-store/config';
3
4
  import { createStore } from '@aztec/kv-store/lmdb-v2';
4
5
  import type { P2PClient } from '@aztec/p2p';
5
6
  import type { L2BlockSource } from '@aztec/stdlib/block';
6
7
  import type { SlasherConfig } from '@aztec/stdlib/interfaces/server';
7
- import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
8
8
 
9
9
  import type { SentinelConfig } from './config.js';
10
10
  import { Sentinel } from './sentinel.js';
@@ -88,7 +88,7 @@ export class Sentinel extends (EventEmitter as new () => WatcherEmitter) impleme
88
88
 
89
89
  /** Loads initial slot and initializes blockstream. We will not process anything at or before the initial slot. */
90
90
  protected async init() {
91
- this.initialSlot = this.epochCache.getSlotNow();
91
+ this.initialSlot = this.epochCache.getEpochAndSlotNow().slot;
92
92
  const startingBlock = BlockNumber(await this.archiver.getBlockNumber());
93
93
  this.logger.info(`Starting validator sentinel with initial slot ${this.initialSlot} and block ${startingBlock}`);
94
94
  this.blockStream = new L2BlockStream(this.archiver, this.l2TipsStore, this, this.logger, { startingBlock });
@@ -219,7 +219,7 @@ export class Sentinel extends (EventEmitter as new () => WatcherEmitter) impleme
219
219
  // Check that we have at least requiredConsecutiveEpochs and that all of them are above the inactivity threshold
220
220
  return pastEpochs
221
221
  .slice(0, requiredConsecutiveEpochs)
222
- .every(p => (p.total === 0 ? false : p.missed / p.total >= this.config.slashInactivityTargetPercentage));
222
+ .every(p => p.missed / p.total >= this.config.slashInactivityTargetPercentage);
223
223
  }
224
224
 
225
225
  protected async handleProvenPerformance(epoch: EpochNumber, performance: ValidatorsEpochPerformance) {
@@ -264,7 +264,7 @@ export class Sentinel extends (EventEmitter as new () => WatcherEmitter) impleme
264
264
  * and we don't have that data if we were offline during the period.
265
265
  */
266
266
  public async work() {
267
- const currentSlot = this.epochCache.getSlotNow();
267
+ const { slot: currentSlot } = this.epochCache.getEpochAndSlotNow();
268
268
  try {
269
269
  // Manually sync the block stream to ensure we have the latest data.
270
270
  // Note we never `start` the blockstream, so it loops at the same pace as we do.
@@ -436,7 +436,7 @@ export class Sentinel extends (EventEmitter as new () => WatcherEmitter) impleme
436
436
  ? fromEntries(await Promise.all(validators.map(async v => [v.toString(), await this.store.getHistory(v)])))
437
437
  : await this.store.getHistories();
438
438
 
439
- const slotNow = this.epochCache.getSlotNow();
439
+ const slotNow = this.epochCache.getEpochAndSlotNow().slot;
440
440
  fromSlot ??= SlotNumber(Math.max((this.lastProcessedSlot ?? slotNow) - this.store.getHistoryLength(), 0));
441
441
  toSlot ??= this.lastProcessedSlot ?? slotNow;
442
442
 
@@ -464,7 +464,7 @@ export class Sentinel extends (EventEmitter as new () => WatcherEmitter) impleme
464
464
  return undefined;
465
465
  }
466
466
 
467
- const slotNow = this.epochCache.getSlotNow();
467
+ const slotNow = this.epochCache.getEpochAndSlotNow().slot;
468
468
  const effectiveFromSlot =
469
469
  fromSlot ?? SlotNumber(Math.max((this.lastProcessedSlot ?? slotNow) - this.store.getHistoryLength(), 0));
470
470
  const effectiveToSlot = toSlot ?? this.lastProcessedSlot ?? slotNow;