@aztec/node-lib 0.0.1-commit.cd76b27 → 0.0.1-commit.d1cd2107c
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/actions/snapshot-sync.d.ts +3 -3
- package/dest/actions/snapshot-sync.d.ts.map +1 -1
- package/dest/actions/snapshot-sync.js +1 -1
- package/dest/actions/upload-snapshot.d.ts +2 -2
- package/dest/actions/upload-snapshot.d.ts.map +1 -1
- package/dest/config/index.d.ts +5 -5
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +11 -9
- package/dest/factories/l1_tx_utils.d.ts +2 -2
- package/dest/factories/l1_tx_utils.d.ts.map +1 -1
- package/package.json +21 -21
- package/src/actions/snapshot-sync.ts +8 -3
- package/src/actions/upload-snapshot.ts +1 -1
- package/src/config/index.ts +21 -15
- package/src/factories/l1_tx_utils.ts +1 -1
|
@@ -3,11 +3,11 @@ import { type EthereumClientConfig } from '@aztec/ethereum/client';
|
|
|
3
3
|
import type { L1ContractsConfig } from '@aztec/ethereum/config';
|
|
4
4
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
5
5
|
import type { Logger } from '@aztec/foundation/log';
|
|
6
|
-
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
7
6
|
import type { ChainConfig } from '@aztec/stdlib/config';
|
|
7
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
8
8
|
import { type SnapshotMetadata } from '@aztec/stdlib/snapshots';
|
|
9
9
|
import type { SharedNodeConfig } from '../config/index.js';
|
|
10
|
-
type SnapshotSyncConfig = Pick<SharedNodeConfig, 'syncMode'> & Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<L1ContractsConfig, 'aztecEpochDuration'> & Pick<ArchiverConfig, 'archiverStoreMapSizeKb' | 'maxLogs'> & Required<DataStoreConfig
|
|
10
|
+
type SnapshotSyncConfig = Pick<SharedNodeConfig, 'syncMode'> & Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<L1ContractsConfig, 'aztecEpochDuration'> & Pick<ArchiverConfig, 'archiverStoreMapSizeKb' | 'maxLogs'> & DataStoreConfig & Required<Pick<DataStoreConfig, 'l1Contracts'>> & EthereumClientConfig & {
|
|
11
11
|
snapshotsUrls?: string[];
|
|
12
12
|
minL1BlocksToTriggerReplace?: number;
|
|
13
13
|
};
|
|
@@ -25,4 +25,4 @@ export declare function snapshotSync(snapshot: Pick<SnapshotMetadata, 'dataUrls'
|
|
|
25
25
|
snapshotsUrl: string;
|
|
26
26
|
}): Promise<void>;
|
|
27
27
|
export {};
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3Qtc3luYy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvc25hcHNob3Qtc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRDLEtBQUssY0FBYyxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBRXJILE9BQU8sRUFBRSxLQUFLLG9CQUFvQixFQUFtQixNQUFNLHdCQUF3QixDQUFDO0FBQ3BGLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHeEQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0seUJBQXlCLENBQUM7QUFNakMsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUszRCxLQUFLLGtCQUFrQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsR0FDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsZUFBZSxDQUFDLEdBQ2hELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsQ0FBQyxHQUM3QyxJQUFJLENBQUMsY0FBYyxFQUFFLHdCQUF3QixHQUFHLFNBQVMsQ0FBQyxHQUMxRCxlQUFlLEdBQ2YsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUMsR0FDOUMsb0JBQW9CLEdBQUc7SUFDckIsYUFBYSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDekIsMkJBQTJCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEMsQ0FBQztBQUVKOzs7R0FHRztBQUNILHdCQUFzQixlQUFlLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQXFLNUU7QUFFRDs7R0FFRztBQUNILHdCQUFzQixZQUFZLENBQ2hDLFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLEVBQzVDLEdBQUcsRUFBRSxNQUFNLEVBQ1gsTUFBTSxFQUFFO0lBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7SUFBQyxZQUFZLEVBQUUsTUFBTSxDQUFBO0NBQUUsaUJBcURuRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-sync.d.ts","sourceRoot":"","sources":["../../src/actions/snapshot-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,cAAc,EAAuB,MAAM,iBAAiB,CAAC;AAErH,OAAO,EAAE,KAAK,oBAAoB,EAAmB,MAAM,wBAAwB,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot-sync.d.ts","sourceRoot":"","sources":["../../src/actions/snapshot-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,cAAc,EAAuB,MAAM,iBAAiB,CAAC;AAErH,OAAO,EAAE,KAAK,oBAAoB,EAAmB,MAAM,wBAAwB,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,KAAK,gBAAgB,EAKtB,MAAM,yBAAyB,CAAC;AAMjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAK3D,KAAK,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAC1D,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,CAAC,GAChD,IAAI,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAC7C,IAAI,CAAC,cAAc,EAAE,wBAAwB,GAAG,SAAS,CAAC,GAC1D,eAAe,GACf,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,GAC9C,oBAAoB,GAAG;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC,CAAC;AAEJ;;;GAGG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,oBAqK5E;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,EAC5C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,UAAU,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,iBAqDnF"}
|
|
@@ -55,7 +55,7 @@ const MIN_L1_BLOCKS_TO_TRIGGER_REPLACE = 86400 / 2 / 12;
|
|
|
55
55
|
return false;
|
|
56
56
|
}
|
|
57
57
|
const currentL1BlockNumber = await getPublicClient(config).getBlockNumber();
|
|
58
|
-
if (archiverL1BlockNumber && currentL1BlockNumber - archiverL1BlockNumber < minL1BlocksToTriggerReplace) {
|
|
58
|
+
if (archiverL1BlockNumber && currentL1BlockNumber >= archiverL1BlockNumber && currentL1BlockNumber - archiverL1BlockNumber < minL1BlocksToTriggerReplace) {
|
|
59
59
|
log.verbose(`Skipping snapshot sync as archiver is less than ${currentL1BlockNumber - archiverL1BlockNumber} L1 blocks behind.`, {
|
|
60
60
|
archiverL1BlockNumber,
|
|
61
61
|
currentL1BlockNumber,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { type Archiver } from '@aztec/archiver';
|
|
2
2
|
import type { Logger } from '@aztec/foundation/log';
|
|
3
|
-
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
4
3
|
import type { ChainConfig } from '@aztec/stdlib/config';
|
|
5
4
|
import type { WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
|
|
5
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
6
6
|
export type UploadSnapshotConfig = Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<DataStoreConfig, 'dataDirectory'>;
|
|
7
7
|
/**
|
|
8
8
|
* Pauses the archiver and world state sync, creates backups of the archiver and world state lmdb environments,
|
|
9
9
|
* and uploads them to the specified location. Location must be a URL supported by our file store (eg `gs://bucketname/path`).
|
|
10
10
|
*/
|
|
11
11
|
export declare function uploadSnapshot(location: string, archiver: Archiver, worldState: WorldStateSynchronizer, config: UploadSnapshotConfig, log: Logger): Promise<void>;
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXNuYXBzaG90LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy91cGxvYWQtc25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixLQUFLLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFXOUQsTUFBTSxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLGVBQWUsQ0FBQyxHQUNqRixJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBRXpDOzs7R0FHRztBQUNILHdCQUFzQixjQUFjLENBQ2xDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLFVBQVUsRUFBRSxzQkFBc0IsRUFDbEMsTUFBTSxFQUFFLG9CQUFvQixFQUM1QixHQUFHLEVBQUUsTUFBTSxpQkFvQloifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-snapshot.d.ts","sourceRoot":"","sources":["../../src/actions/upload-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAErE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"upload-snapshot.d.ts","sourceRoot":"","sources":["../../src/actions/upload-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAErE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAW9D,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,CAAC,GACjF,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAEzC;;;GAGG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,sBAAsB,EAClC,MAAM,EAAE,oBAAoB,EAC5B,GAAG,EAAE,MAAM,iBAoBZ"}
|
package/dest/config/index.d.ts
CHANGED
|
@@ -4,20 +4,20 @@ export type SharedNodeConfig = {
|
|
|
4
4
|
testAccounts: boolean;
|
|
5
5
|
/** Whether to populate the genesis state with initial fee juice for the sponsored FPC */
|
|
6
6
|
sponsoredFPC: boolean;
|
|
7
|
+
/** Additional addresses to prefund with fee juice at genesis */
|
|
8
|
+
prefundAddresses: string[];
|
|
7
9
|
/** Sync mode: full to always sync via L1, snapshot to download a snapshot if there is no local data, force-snapshot to download even if there is local data. */
|
|
8
10
|
syncMode: 'full' | 'snapshot' | 'force-snapshot';
|
|
9
11
|
/** Base URLs for snapshots index. Index file will be searched at `SNAPSHOTS_BASE_URL/aztec-L1_CHAIN_ID-VERSION-ROLLUP_ADDRESS/index.json` */
|
|
10
12
|
snapshotsUrls?: string[];
|
|
11
|
-
/** Auto update mode: disabled - to completely ignore remote signals to update the node. enabled - to respect the signals (potentially shutting this node down). log - check for updates but log a warning instead of applying them*/
|
|
12
|
-
autoUpdate?: 'disabled' | 'notify' | 'config' | 'config-and-version';
|
|
13
|
-
/** The base URL against which to check for updates */
|
|
14
|
-
autoUpdateUrl?: string;
|
|
15
13
|
/** URL of the Web3Signer instance */
|
|
16
14
|
web3SignerUrl?: string;
|
|
17
15
|
/** Whether to run in fisherman mode */
|
|
18
16
|
fishermanMode?: boolean;
|
|
19
17
|
/** Force verification of tx Chonk proofs. Only used for testnet */
|
|
20
18
|
debugForceTxProofVerification: boolean;
|
|
19
|
+
/** Check if the node version matches the latest version for the network */
|
|
20
|
+
enableVersionCheck: boolean;
|
|
21
21
|
};
|
|
22
22
|
export declare const sharedNodeConfigMappings: ConfigMappingsType<SharedNodeConfig>;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQXVCLE1BQU0sMEJBQTBCLENBQUM7QUFFeEYsTUFBTSxNQUFNLGdCQUFnQixHQUFHO0lBQzdCLHlGQUF5RjtJQUN6RixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLHlGQUF5RjtJQUN6RixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLGdFQUFnRTtJQUNoRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUMzQixnS0FBZ0s7SUFDaEssUUFBUSxFQUFFLE1BQU0sR0FBRyxVQUFVLEdBQUcsZ0JBQWdCLENBQUM7SUFDakQsNklBQTZJO0lBQzdJLGFBQWEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLHFDQUFxQztJQUNyQyxhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdkIsdUNBQXVDO0lBQ3ZDLGFBQWEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUV4QixtRUFBbUU7SUFDbkUsNkJBQTZCLEVBQUUsT0FBTyxDQUFDO0lBRXZDLDJFQUEyRTtJQUMzRSxrQkFBa0IsRUFBRSxPQUFPLENBQUM7Q0FDN0IsQ0FBQztBQUVGLGVBQU8sTUFBTSx3QkFBd0IsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0EyRHpFLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAuB,MAAM,0BAA0B,CAAC;AAExF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAuB,MAAM,0BAA0B,CAAC;AAExF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,YAAY,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,gKAAgK;IAChK,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,gBAAgB,CAAC;IACjD,6IAA6I;IAC7I,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,mEAAmE;IACnE,6BAA6B,EAAE,OAAO,CAAC;IAEvC,2EAA2E;IAC3E,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,gBAAgB,CA2DzE,CAAC"}
|
package/dest/config/index.js
CHANGED
|
@@ -10,6 +10,12 @@ export const sharedNodeConfigMappings = {
|
|
|
10
10
|
description: 'Whether to populate the genesis state with initial fee juice for the sponsored FPC.',
|
|
11
11
|
...booleanConfigHelper(false)
|
|
12
12
|
},
|
|
13
|
+
prefundAddresses: {
|
|
14
|
+
env: 'PREFUND_ADDRESSES',
|
|
15
|
+
description: 'Comma-separated list of Aztec addresses to prefund with fee juice at genesis (local network only).',
|
|
16
|
+
parseEnv: (val)=>val.split(',').map((a)=>a.trim()).filter((a)=>a.length > 0),
|
|
17
|
+
defaultValue: []
|
|
18
|
+
},
|
|
13
19
|
syncMode: {
|
|
14
20
|
env: 'SYNC_MODE',
|
|
15
21
|
description: 'Set sync mode to `full` to always sync via L1, `snapshot` to download a snapshot if there is no local data, `force-snapshot` to download even if there is local data.',
|
|
@@ -24,15 +30,6 @@ export const sharedNodeConfigMappings = {
|
|
|
24
30
|
],
|
|
25
31
|
defaultValue: []
|
|
26
32
|
},
|
|
27
|
-
autoUpdate: {
|
|
28
|
-
env: 'AUTO_UPDATE',
|
|
29
|
-
description: 'The auto update mode for this node',
|
|
30
|
-
defaultValue: 'disabled'
|
|
31
|
-
},
|
|
32
|
-
autoUpdateUrl: {
|
|
33
|
-
env: 'AUTO_UPDATE_URL',
|
|
34
|
-
description: 'Base URL to check for updates'
|
|
35
|
-
},
|
|
36
33
|
web3SignerUrl: {
|
|
37
34
|
env: 'WEB3_SIGNER_URL',
|
|
38
35
|
description: 'URL of the Web3Signer instance',
|
|
@@ -47,5 +44,10 @@ export const sharedNodeConfigMappings = {
|
|
|
47
44
|
env: 'DEBUG_FORCE_TX_PROOF_VERIFICATION',
|
|
48
45
|
description: 'Whether to force tx proof verification. Only has an effect if real proving is turned off',
|
|
49
46
|
...booleanConfigHelper(false)
|
|
47
|
+
},
|
|
48
|
+
enableVersionCheck: {
|
|
49
|
+
env: 'ENABLE_VERSION_CHECK',
|
|
50
|
+
description: 'Check if the node is running the latest version and is following the latest rollup',
|
|
51
|
+
...booleanConfigHelper(true)
|
|
50
52
|
}
|
|
51
53
|
};
|
|
@@ -5,7 +5,7 @@ import type { ExtendedViemWalletClient, ViemClient } from '@aztec/ethereum/types
|
|
|
5
5
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
6
6
|
import { createLogger } from '@aztec/foundation/log';
|
|
7
7
|
import type { DateProvider } from '@aztec/foundation/timer';
|
|
8
|
-
import type { DataStoreConfig } from '@aztec/kv-store
|
|
8
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
9
9
|
import type { TelemetryClient } from '@aztec/telemetry-client';
|
|
10
10
|
import type { L1TxScope } from '../metrics/l1_tx_metrics.js';
|
|
11
11
|
/**
|
|
@@ -63,4 +63,4 @@ export declare function createForwarderL1TxUtilsFromSigners(client: ViemClient,
|
|
|
63
63
|
dateProvider: DateProvider;
|
|
64
64
|
kzg?: BlobKzgInstance;
|
|
65
65
|
}): Promise<import("@aztec/ethereum/l1-tx-utils-with-blobs").ForwarderL1TxUtils[]>;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdHhfdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYWN0b3JpZXMvbDFfdHhfdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbEYsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTVELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBc0M3RDs7O0dBR0c7QUFDSCx3QkFBc0IsMEJBQTBCLENBQzlDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxFQUNuQyxNQUFNLEVBQUUsZUFBZSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRztJQUFFLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFBO0NBQUUsRUFDdEcsSUFBSSxFQUFFO0lBQ0osU0FBUyxFQUFFLGVBQWUsQ0FBQztJQUMzQixNQUFNLENBQUMsRUFBRSxVQUFVLENBQUMsT0FBTyxZQUFZLENBQUMsQ0FBQztJQUN6QyxZQUFZLEVBQUUsWUFBWSxDQUFDO0lBQzNCLEdBQUcsQ0FBQyxFQUFFLGVBQWUsQ0FBQztDQUN2Qiw4REFLRjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBc0IsMEJBQTBCLENBQzlDLE1BQU0sRUFBRSxVQUFVLEVBQ2xCLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFDcEIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsOERBdUJGO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFzQixtQ0FBbUMsQ0FDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLEVBQ25DLGdCQUFnQixFQUFFLFVBQVUsRUFDNUIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsa0ZBT0Y7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQXNCLG1DQUFtQyxDQUN2RCxNQUFNLEVBQUUsVUFBVSxFQUNsQixPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQ3BCLGdCQUFnQixFQUFFLFVBQVUsRUFDNUIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsa0ZBT0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"l1_tx_utils.d.ts","sourceRoot":"","sources":["../../src/factories/l1_tx_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAElF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"l1_tx_utils.d.ts","sourceRoot":"","sources":["../../src/factories/l1_tx_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAElF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAsC7D;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,wBAAwB,EAAE,EACnC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,EACtG,IAAI,EAAE;IACJ,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB,8DAKF;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,SAAS,EAAE,EACpB,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,EACtG,IAAI,EAAE;IACJ,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB,8DAuBF;AAED;;;;GAIG;AACH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,wBAAwB,EAAE,EACnC,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,EACtG,IAAI,EAAE;IACJ,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB,kFAOF;AAED;;;;GAIG;AACH,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,SAAS,EAAE,EACpB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,EACtG,IAAI,EAAE;IACJ,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB,kFAOF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/node-lib",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.d1cd2107c",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"typedocOptions": {
|
|
6
6
|
"entryPoints": [
|
|
@@ -66,29 +66,29 @@
|
|
|
66
66
|
]
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@aztec/archiver": "0.0.1-commit.
|
|
70
|
-
"@aztec/bb-prover": "0.0.1-commit.
|
|
71
|
-
"@aztec/blob-client": "0.0.1-commit.
|
|
72
|
-
"@aztec/constants": "0.0.1-commit.
|
|
73
|
-
"@aztec/epoch-cache": "0.0.1-commit.
|
|
74
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
75
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
76
|
-
"@aztec/kv-store": "0.0.1-commit.
|
|
77
|
-
"@aztec/merkle-tree": "0.0.1-commit.
|
|
78
|
-
"@aztec/p2p": "0.0.1-commit.
|
|
79
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
80
|
-
"@aztec/prover-client": "0.0.1-commit.
|
|
81
|
-
"@aztec/sequencer-client": "0.0.1-commit.
|
|
82
|
-
"@aztec/simulator": "0.0.1-commit.
|
|
83
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
84
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
85
|
-
"@aztec/validator-client": "0.0.1-commit.
|
|
86
|
-
"@aztec/world-state": "0.0.1-commit.
|
|
69
|
+
"@aztec/archiver": "0.0.1-commit.d1cd2107c",
|
|
70
|
+
"@aztec/bb-prover": "0.0.1-commit.d1cd2107c",
|
|
71
|
+
"@aztec/blob-client": "0.0.1-commit.d1cd2107c",
|
|
72
|
+
"@aztec/constants": "0.0.1-commit.d1cd2107c",
|
|
73
|
+
"@aztec/epoch-cache": "0.0.1-commit.d1cd2107c",
|
|
74
|
+
"@aztec/ethereum": "0.0.1-commit.d1cd2107c",
|
|
75
|
+
"@aztec/foundation": "0.0.1-commit.d1cd2107c",
|
|
76
|
+
"@aztec/kv-store": "0.0.1-commit.d1cd2107c",
|
|
77
|
+
"@aztec/merkle-tree": "0.0.1-commit.d1cd2107c",
|
|
78
|
+
"@aztec/p2p": "0.0.1-commit.d1cd2107c",
|
|
79
|
+
"@aztec/protocol-contracts": "0.0.1-commit.d1cd2107c",
|
|
80
|
+
"@aztec/prover-client": "0.0.1-commit.d1cd2107c",
|
|
81
|
+
"@aztec/sequencer-client": "0.0.1-commit.d1cd2107c",
|
|
82
|
+
"@aztec/simulator": "0.0.1-commit.d1cd2107c",
|
|
83
|
+
"@aztec/stdlib": "0.0.1-commit.d1cd2107c",
|
|
84
|
+
"@aztec/telemetry-client": "0.0.1-commit.d1cd2107c",
|
|
85
|
+
"@aztec/validator-client": "0.0.1-commit.d1cd2107c",
|
|
86
|
+
"@aztec/world-state": "0.0.1-commit.d1cd2107c",
|
|
87
87
|
"tslib": "^2.4.0"
|
|
88
88
|
},
|
|
89
89
|
"devDependencies": {
|
|
90
|
-
"@aztec/blob-lib": "0.0.1-commit.
|
|
91
|
-
"@aztec/node-keystore": "0.0.1-commit.
|
|
90
|
+
"@aztec/blob-lib": "0.0.1-commit.d1cd2107c",
|
|
91
|
+
"@aztec/node-keystore": "0.0.1-commit.d1cd2107c",
|
|
92
92
|
"@jest/globals": "^30.0.0",
|
|
93
93
|
"@types/jest": "^30.0.0",
|
|
94
94
|
"@types/node": "^22.15.17",
|
|
@@ -5,11 +5,11 @@ import type { L1ContractsConfig } from '@aztec/ethereum/config';
|
|
|
5
5
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
6
6
|
import { tryRmDir } from '@aztec/foundation/fs';
|
|
7
7
|
import type { Logger } from '@aztec/foundation/log';
|
|
8
|
-
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
9
8
|
import { P2P_STORE_NAME } from '@aztec/p2p';
|
|
10
9
|
import type { ChainConfig } from '@aztec/stdlib/config';
|
|
11
10
|
import { DatabaseVersionManager } from '@aztec/stdlib/database-version/manager';
|
|
12
11
|
import { type ReadOnlyFileStore, createReadOnlyFileStore } from '@aztec/stdlib/file-store';
|
|
12
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
13
13
|
import {
|
|
14
14
|
type SnapshotMetadata,
|
|
15
15
|
type SnapshotsIndexMetadata,
|
|
@@ -31,7 +31,8 @@ type SnapshotSyncConfig = Pick<SharedNodeConfig, 'syncMode'> &
|
|
|
31
31
|
Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
|
|
32
32
|
Pick<L1ContractsConfig, 'aztecEpochDuration'> &
|
|
33
33
|
Pick<ArchiverConfig, 'archiverStoreMapSizeKb' | 'maxLogs'> &
|
|
34
|
-
|
|
34
|
+
DataStoreConfig &
|
|
35
|
+
Required<Pick<DataStoreConfig, 'l1Contracts'>> &
|
|
35
36
|
EthereumClientConfig & {
|
|
36
37
|
snapshotsUrls?: string[];
|
|
37
38
|
minL1BlocksToTriggerReplace?: number;
|
|
@@ -82,7 +83,11 @@ export async function trySnapshotSync(config: SnapshotSyncConfig, log: Logger) {
|
|
|
82
83
|
}
|
|
83
84
|
|
|
84
85
|
const currentL1BlockNumber = await getPublicClient(config).getBlockNumber();
|
|
85
|
-
if (
|
|
86
|
+
if (
|
|
87
|
+
archiverL1BlockNumber &&
|
|
88
|
+
currentL1BlockNumber >= archiverL1BlockNumber &&
|
|
89
|
+
currentL1BlockNumber - archiverL1BlockNumber < minL1BlocksToTriggerReplace
|
|
90
|
+
) {
|
|
86
91
|
log.verbose(
|
|
87
92
|
`Skipping snapshot sync as archiver is less than ${
|
|
88
93
|
currentL1BlockNumber - archiverL1BlockNumber
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { ARCHIVER_DB_VERSION, type Archiver } from '@aztec/archiver';
|
|
2
2
|
import { tryRmDir } from '@aztec/foundation/fs';
|
|
3
3
|
import type { Logger } from '@aztec/foundation/log';
|
|
4
|
-
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
5
4
|
import type { ChainConfig } from '@aztec/stdlib/config';
|
|
6
5
|
import { createFileStore } from '@aztec/stdlib/file-store';
|
|
7
6
|
import type { WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
|
|
7
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
8
8
|
import { uploadSnapshotToIndex } from '@aztec/stdlib/snapshots';
|
|
9
9
|
import { WORLD_STATE_DB_VERSION } from '@aztec/world-state';
|
|
10
10
|
|
package/src/config/index.ts
CHANGED
|
@@ -5,16 +5,12 @@ export type SharedNodeConfig = {
|
|
|
5
5
|
testAccounts: boolean;
|
|
6
6
|
/** Whether to populate the genesis state with initial fee juice for the sponsored FPC */
|
|
7
7
|
sponsoredFPC: boolean;
|
|
8
|
+
/** Additional addresses to prefund with fee juice at genesis */
|
|
9
|
+
prefundAddresses: string[];
|
|
8
10
|
/** Sync mode: full to always sync via L1, snapshot to download a snapshot if there is no local data, force-snapshot to download even if there is local data. */
|
|
9
11
|
syncMode: 'full' | 'snapshot' | 'force-snapshot';
|
|
10
12
|
/** Base URLs for snapshots index. Index file will be searched at `SNAPSHOTS_BASE_URL/aztec-L1_CHAIN_ID-VERSION-ROLLUP_ADDRESS/index.json` */
|
|
11
13
|
snapshotsUrls?: string[];
|
|
12
|
-
|
|
13
|
-
/** Auto update mode: disabled - to completely ignore remote signals to update the node. enabled - to respect the signals (potentially shutting this node down). log - check for updates but log a warning instead of applying them*/
|
|
14
|
-
autoUpdate?: 'disabled' | 'notify' | 'config' | 'config-and-version';
|
|
15
|
-
/** The base URL against which to check for updates */
|
|
16
|
-
autoUpdateUrl?: string;
|
|
17
|
-
|
|
18
14
|
/** URL of the Web3Signer instance */
|
|
19
15
|
web3SignerUrl?: string;
|
|
20
16
|
/** Whether to run in fisherman mode */
|
|
@@ -22,6 +18,9 @@ export type SharedNodeConfig = {
|
|
|
22
18
|
|
|
23
19
|
/** Force verification of tx Chonk proofs. Only used for testnet */
|
|
24
20
|
debugForceTxProofVerification: boolean;
|
|
21
|
+
|
|
22
|
+
/** Check if the node version matches the latest version for the network */
|
|
23
|
+
enableVersionCheck: boolean;
|
|
25
24
|
};
|
|
26
25
|
|
|
27
26
|
export const sharedNodeConfigMappings: ConfigMappingsType<SharedNodeConfig> = {
|
|
@@ -35,6 +34,16 @@ export const sharedNodeConfigMappings: ConfigMappingsType<SharedNodeConfig> = {
|
|
|
35
34
|
description: 'Whether to populate the genesis state with initial fee juice for the sponsored FPC.',
|
|
36
35
|
...booleanConfigHelper(false),
|
|
37
36
|
},
|
|
37
|
+
prefundAddresses: {
|
|
38
|
+
env: 'PREFUND_ADDRESSES',
|
|
39
|
+
description: 'Comma-separated list of Aztec addresses to prefund with fee juice at genesis (local network only).',
|
|
40
|
+
parseEnv: (val: string) =>
|
|
41
|
+
val
|
|
42
|
+
.split(',')
|
|
43
|
+
.map(a => a.trim())
|
|
44
|
+
.filter(a => a.length > 0),
|
|
45
|
+
defaultValue: [],
|
|
46
|
+
},
|
|
38
47
|
syncMode: {
|
|
39
48
|
env: 'SYNC_MODE',
|
|
40
49
|
description:
|
|
@@ -52,15 +61,6 @@ export const sharedNodeConfigMappings: ConfigMappingsType<SharedNodeConfig> = {
|
|
|
52
61
|
fallback: ['SYNC_SNAPSHOTS_URL'],
|
|
53
62
|
defaultValue: [],
|
|
54
63
|
},
|
|
55
|
-
autoUpdate: {
|
|
56
|
-
env: 'AUTO_UPDATE',
|
|
57
|
-
description: 'The auto update mode for this node',
|
|
58
|
-
defaultValue: 'disabled',
|
|
59
|
-
},
|
|
60
|
-
autoUpdateUrl: {
|
|
61
|
-
env: 'AUTO_UPDATE_URL',
|
|
62
|
-
description: 'Base URL to check for updates',
|
|
63
|
-
},
|
|
64
64
|
web3SignerUrl: {
|
|
65
65
|
env: 'WEB3_SIGNER_URL',
|
|
66
66
|
description: 'URL of the Web3Signer instance',
|
|
@@ -76,4 +76,10 @@ export const sharedNodeConfigMappings: ConfigMappingsType<SharedNodeConfig> = {
|
|
|
76
76
|
description: 'Whether to force tx proof verification. Only has an effect if real proving is turned off',
|
|
77
77
|
...booleanConfigHelper(false),
|
|
78
78
|
},
|
|
79
|
+
|
|
80
|
+
enableVersionCheck: {
|
|
81
|
+
env: 'ENABLE_VERSION_CHECK',
|
|
82
|
+
description: 'Check if the node is running the latest version and is following the latest rollup',
|
|
83
|
+
...booleanConfigHelper(true),
|
|
84
|
+
},
|
|
79
85
|
};
|
|
@@ -8,8 +8,8 @@ import { omit } from '@aztec/foundation/collection';
|
|
|
8
8
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
9
9
|
import { createLogger } from '@aztec/foundation/log';
|
|
10
10
|
import type { DateProvider } from '@aztec/foundation/timer';
|
|
11
|
-
import type { DataStoreConfig } from '@aztec/kv-store/config';
|
|
12
11
|
import { createStore } from '@aztec/kv-store/lmdb-v2';
|
|
12
|
+
import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
13
13
|
import type { TelemetryClient } from '@aztec/telemetry-client';
|
|
14
14
|
|
|
15
15
|
import type { L1TxScope } from '../metrics/l1_tx_metrics.js';
|