@aztec/node-lib 0.0.1-commit.934299a21 → 0.0.1-commit.949a33fd8

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.
@@ -3,11 +3,12 @@ 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 ReadOnlyFileStore } from '@aztec/stdlib/file-store';
8
+ import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
8
9
  import { type SnapshotMetadata } from '@aztec/stdlib/snapshots';
9
10
  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> & EthereumClientConfig & {
11
+ type SnapshotSyncConfig = Pick<SharedNodeConfig, 'syncMode'> & Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<L1ContractsConfig, 'aztecEpochDuration'> & Pick<ArchiverConfig, 'archiverStoreMapSizeKb' | 'maxLogs'> & DataStoreConfig & Required<Pick<DataStoreConfig, 'l1Contracts'>> & EthereumClientConfig & {
11
12
  snapshotsUrls?: string[];
12
13
  minL1BlocksToTriggerReplace?: number;
13
14
  };
@@ -22,7 +23,7 @@ export declare function trySnapshotSync(config: SnapshotSyncConfig, log: Logger)
22
23
  export declare function snapshotSync(snapshot: Pick<SnapshotMetadata, 'dataUrls'>, log: Logger, config: {
23
24
  dataDirectory: string;
24
25
  rollupAddress: EthAddress;
25
- snapshotsUrl: string;
26
+ fileStore: ReadOnlyFileStore;
26
27
  }): Promise<void>;
27
28
  export {};
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3Qtc3luYy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvc25hcHNob3Qtc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRDLEtBQUssY0FBYyxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBRXJILE9BQU8sRUFBRSxLQUFLLG9CQUFvQixFQUFtQixNQUFNLHdCQUF3QixDQUFDO0FBQ3BGLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHeEQsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0seUJBQXlCLENBQUM7QUFNakMsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUszRCxLQUFLLGtCQUFrQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsR0FDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsZUFBZSxDQUFDLEdBQ2hELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsQ0FBQyxHQUM3QyxJQUFJLENBQUMsY0FBYyxFQUFFLHdCQUF3QixHQUFHLFNBQVMsQ0FBQyxHQUMxRCxRQUFRLENBQUMsZUFBZSxDQUFDLEdBQ3pCLG9CQUFvQixHQUFHO0lBQ3JCLGFBQWEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLDJCQUEyQixDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ3RDLENBQUM7QUFFSjs7O0dBR0c7QUFDSCx3QkFBc0IsZUFBZSxDQUFDLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxvQkFxSzVFO0FBRUQ7O0dBRUc7QUFDSCx3QkFBc0IsWUFBWSxDQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxFQUM1QyxHQUFHLEVBQUUsTUFBTSxFQUNYLE1BQU0sRUFBRTtJQUFFLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFBQyxhQUFhLEVBQUUsVUFBVSxDQUFDO0lBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQTtDQUFFLGlCQXFEbkYifQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3Qtc3luYy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvc25hcHNob3Qtc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRDLEtBQUssY0FBYyxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBRXJILE9BQU8sRUFBRSxLQUFLLG9CQUFvQixFQUFtQixNQUFNLHdCQUF3QixDQUFDO0FBQ3BGLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLEtBQUssaUJBQWlCLEVBQTJCLE1BQU0sMEJBQTBCLENBQUM7QUFDM0YsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0seUJBQXlCLENBQUM7QUFNakMsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUszRCxLQUFLLGtCQUFrQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsR0FDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsZUFBZSxDQUFDLEdBQ2hELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsQ0FBQyxHQUM3QyxJQUFJLENBQUMsY0FBYyxFQUFFLHdCQUF3QixHQUFHLFNBQVMsQ0FBQyxHQUMxRCxlQUFlLEdBQ2YsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUMsR0FDOUMsb0JBQW9CLEdBQUc7SUFDckIsYUFBYSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDekIsMkJBQTJCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEMsQ0FBQztBQUVKOzs7R0FHRztBQUNILHdCQUFzQixlQUFlLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQXFLNUU7QUFFRDs7R0FFRztBQUNILHdCQUFzQixZQUFZLENBQ2hDLFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLEVBQzVDLEdBQUcsRUFBRSxNQUFNLEVBQ1gsTUFBTSxFQUFFO0lBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7SUFBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUE7Q0FBRSxpQkFtRDNGIn0=
@@ -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;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,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,QAAQ,CAAC,eAAe,CAAC,GACzB,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"}
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;AAExD,OAAO,EAAE,KAAK,iBAAiB,EAA2B,MAAM,0BAA0B,CAAC;AAC3F,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,SAAS,EAAE,iBAAiB,CAAA;CAAE,iBAmD3F"}
@@ -32,9 +32,7 @@ const MIN_L1_BLOCKS_TO_TRIGGER_REPLACE = 86400 / 2 / 12;
32
32
  }
33
33
  // Create an archiver store to check the current state (do this only once)
34
34
  log.verbose(`Creating temporary archiver data store`);
35
- const archiverStore = await createArchiverStore(config, {
36
- epochDuration: config.aztecEpochDuration
37
- });
35
+ const archiverStore = await createArchiverStore(config);
38
36
  let archiverL1BlockNumber;
39
37
  let archiverL2BlockNumber;
40
38
  try {
@@ -134,7 +132,7 @@ const MIN_L1_BLOCKS_TO_TRIGGER_REPLACE = 86400 / 2 / 12;
134
132
  // Sort candidates by L1 block number (highest first)
135
133
  snapshotCandidates.sort((a, b)=>b.snapshot.l1BlockNumber - a.snapshot.l1BlockNumber);
136
134
  // Try each candidate in order until one succeeds
137
- for (const { snapshot, url } of snapshotCandidates){
135
+ for (const { snapshot, url, fileStore } of snapshotCandidates){
138
136
  const { l1BlockNumber, l2BlockNumber } = snapshot;
139
137
  log.info(`Attempting to sync from snapshot at L1 block ${l1BlockNumber} L2 block ${l2BlockNumber}`, {
140
138
  snapshot,
@@ -144,7 +142,7 @@ const MIN_L1_BLOCKS_TO_TRIGGER_REPLACE = 86400 / 2 / 12;
144
142
  await snapshotSync(snapshot, log, {
145
143
  dataDirectory: config.dataDirectory,
146
144
  rollupAddress: config.l1Contracts.rollupAddress,
147
- snapshotsUrl: url
145
+ fileStore
148
146
  });
149
147
  log.info(`Snapshot synced to L1 block ${l1BlockNumber} L2 block ${l2BlockNumber}`, {
150
148
  snapshot,
@@ -167,11 +165,10 @@ const MIN_L1_BLOCKS_TO_TRIGGER_REPLACE = 86400 / 2 / 12;
167
165
  /**
168
166
  * Downloads the given snapshot replacing any local data stores.
169
167
  */ export async function snapshotSync(snapshot, log, config) {
170
- const { dataDirectory, rollupAddress } = config;
168
+ const { dataDirectory, rollupAddress, fileStore } = config;
171
169
  if (!dataDirectory) {
172
170
  throw new Error(`No local data directory defined. Cannot sync snapshot.`);
173
171
  }
174
- const fileStore = await createReadOnlyFileStore(config.snapshotsUrl, log);
175
172
  let downloadDir;
176
173
  try {
177
174
  // Download the snapshot to a temp location.
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXNuYXBzaG90LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy91cGxvYWQtc25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixLQUFLLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFXOUUsTUFBTSxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLGVBQWUsQ0FBQyxHQUNqRixJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBRXpDOzs7R0FHRztBQUNILHdCQUFzQixjQUFjLENBQ2xDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLFVBQVUsRUFBRSxzQkFBc0IsRUFDbEMsTUFBTSxFQUFFLG9CQUFvQixFQUM1QixHQUFHLEVBQUUsTUFBTSxpQkFvQloifQ==
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,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAW9E,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"}
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"}
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQXVCLE1BQU0sMEJBQTBCLENBQUM7QUFFeEYsTUFBTSxNQUFNLGdCQUFnQixHQUFHO0lBQzdCLHlGQUF5RjtJQUN6RixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLHlGQUF5RjtJQUN6RixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLGdLQUFnSztJQUNoSyxRQUFRLEVBQUUsTUFBTSxHQUFHLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztJQUNqRCw2SUFBNkk7SUFDN0ksYUFBYSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFFekIscU9BQXFPO0lBQ3JPLFVBQVUsQ0FBQyxFQUFFLFVBQVUsR0FBRyxRQUFRLEdBQUcsUUFBUSxHQUFHLG9CQUFvQixDQUFDO0lBQ3JFLHNEQUFzRDtJQUN0RCxhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFdkIscUNBQXFDO0lBQ3JDLGFBQWEsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN2Qix1Q0FBdUM7SUFDdkMsYUFBYSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBRXhCLG1FQUFtRTtJQUNuRSw2QkFBNkIsRUFBRSxPQUFPLENBQUM7Q0FDeEMsQ0FBQztBQUVGLGVBQU8sTUFBTSx3QkFBd0IsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FvRHpFLENBQUMifQ==
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,gKAAgK;IAChK,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,gBAAgB,CAAC;IACjD,6IAA6I;IAC7I,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB,qOAAqO;IACrO,UAAU,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,oBAAoB,CAAC;IACrE,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,mEAAmE;IACnE,6BAA6B,EAAE,OAAO,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,gBAAgB,CAoDzE,CAAC"}
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"}
@@ -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/config';
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdHhfdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mYWN0b3JpZXMvbDFfdHhfdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkUsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbEYsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBc0M3RDs7O0dBR0c7QUFDSCx3QkFBc0IsMEJBQTBCLENBQzlDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxFQUNuQyxNQUFNLEVBQUUsZUFBZSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRztJQUFFLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFBO0NBQUUsRUFDdEcsSUFBSSxFQUFFO0lBQ0osU0FBUyxFQUFFLGVBQWUsQ0FBQztJQUMzQixNQUFNLENBQUMsRUFBRSxVQUFVLENBQUMsT0FBTyxZQUFZLENBQUMsQ0FBQztJQUN6QyxZQUFZLEVBQUUsWUFBWSxDQUFDO0lBQzNCLEdBQUcsQ0FBQyxFQUFFLGVBQWUsQ0FBQztDQUN2Qiw4REFLRjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBc0IsMEJBQTBCLENBQzlDLE1BQU0sRUFBRSxVQUFVLEVBQ2xCLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFDcEIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsOERBdUJGO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFzQixtQ0FBbUMsQ0FDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLEVBQ25DLGdCQUFnQixFQUFFLFVBQVUsRUFDNUIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsa0ZBT0Y7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQXNCLG1DQUFtQyxDQUN2RCxNQUFNLEVBQUUsVUFBVSxFQUNsQixPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQ3BCLGdCQUFnQixFQUFFLFVBQVUsRUFDNUIsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLEdBQUc7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQTtDQUFFLEVBQ3RHLElBQUksRUFBRTtJQUNKLFNBQVMsRUFBRSxlQUFlLENBQUM7SUFDM0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUM7SUFDekMsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixHQUFHLENBQUMsRUFBRSxlQUFlLENBQUM7Q0FDdkIsa0ZBT0YifQ==
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;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,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"}
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"}
@@ -26,4 +26,4 @@ export declare class L1TxMetrics implements IL1TxMetrics {
26
26
  recordMinedTx(state: L1TxState, l1Timestamp: Date): void;
27
27
  recordDroppedTx(state: L1TxState): void;
28
28
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdHhfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21ldHJpY3MvbDFfdHhfbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHM0UsT0FBTyxFQUdMLEtBQUssS0FBSyxFQUlYLE1BQU0seUJBQXlCLENBQUM7QUFFakMsTUFBTSxNQUFNLFNBQVMsR0FBRyxXQUFXLEdBQUcsUUFBUSxHQUFHLE9BQU8sQ0FBQztBQUV6RDs7R0FFRztBQUNILHFCQUFhLFdBQVksWUFBVyxZQUFZO0lBbUI1QyxPQUFPLENBQUMsS0FBSztJQUNiLE9BQU8sQ0FBQyxLQUFLO0lBQ2IsT0FBTyxDQUFDLE1BQU07SUFuQmhCLE9BQU8sQ0FBQyxlQUFlLENBQVk7SUFHbkMsT0FBTyxDQUFDLG9CQUFvQixDQUFZO0lBR3hDLE9BQU8sQ0FBQyxZQUFZLENBQWdCO0lBQ3BDLE9BQU8sQ0FBQyxlQUFlLENBQWdCO0lBQ3ZDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBZ0I7SUFDeEMsT0FBTyxDQUFDLGVBQWUsQ0FBZ0I7SUFHdkMsT0FBTyxDQUFDLHVCQUF1QixDQUFZO0lBQzNDLE9BQU8sQ0FBQyxlQUFlLENBQVk7SUFDbkMsT0FBTyxDQUFDLGdCQUFnQixDQUFZO0lBRXBDLFlBQ1UsS0FBSyxFQUFFLEtBQUssRUFDWixLQUFLLEdBQUUsU0FBbUIsRUFDMUIsTUFBTSx5Q0FBc0MsRUFvQnJEO0lBRUQ7Ozs7T0FJRztJQUNJLGFBQWEsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxJQUFJLEdBQUcsSUFBSSxDQW9EOUQ7SUFFTSxlQUFlLENBQUMsS0FBSyxFQUFFLFNBQVMsR0FBRyxJQUFJLENBaUI3QztDQUNGIn0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdHhfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21ldHJpY3MvbDFfdHhfbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHM0UsT0FBTyxFQUdMLEtBQUssS0FBSyxFQUlYLE1BQU0seUJBQXlCLENBQUM7QUFFakMsTUFBTSxNQUFNLFNBQVMsR0FBRyxXQUFXLEdBQUcsUUFBUSxHQUFHLE9BQU8sQ0FBQztBQUV6RDs7R0FFRztBQUNILHFCQUFhLFdBQVksWUFBVyxZQUFZO0lBbUI1QyxPQUFPLENBQUMsS0FBSztJQUNiLE9BQU8sQ0FBQyxLQUFLO0lBQ2IsT0FBTyxDQUFDLE1BQU07SUFuQmhCLE9BQU8sQ0FBQyxlQUFlLENBQVk7SUFHbkMsT0FBTyxDQUFDLG9CQUFvQixDQUFZO0lBR3hDLE9BQU8sQ0FBQyxZQUFZLENBQWdCO0lBQ3BDLE9BQU8sQ0FBQyxlQUFlLENBQWdCO0lBQ3ZDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBZ0I7SUFDeEMsT0FBTyxDQUFDLGVBQWUsQ0FBZ0I7SUFHdkMsT0FBTyxDQUFDLHVCQUF1QixDQUFZO0lBQzNDLE9BQU8sQ0FBQyxlQUFlLENBQVk7SUFDbkMsT0FBTyxDQUFDLGdCQUFnQixDQUFZO0lBRXBDLFlBQ1UsS0FBSyxFQUFFLEtBQUssRUFDWixLQUFLLEdBQUUsU0FBbUIsRUFDMUIsTUFBTSx5Q0FBc0MsRUFvQnJEO0lBRUQ7Ozs7T0FJRztJQUNJLGFBQWEsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxJQUFJLEdBQUcsSUFBSSxDQXNEOUQ7SUFFTSxlQUFlLENBQUMsS0FBSyxFQUFFLFNBQVMsR0FBRyxJQUFJLENBaUI3QztDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"l1_tx_metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/l1_tx_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAGL,KAAK,KAAK,EAIX,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAmB5C,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IAnBhB,OAAO,CAAC,eAAe,CAAY;IAGnC,OAAO,CAAC,oBAAoB,CAAY;IAGxC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,eAAe,CAAgB;IAGvC,OAAO,CAAC,uBAAuB,CAAY;IAC3C,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,gBAAgB,CAAY;IAEpC,YACU,KAAK,EAAE,KAAK,EACZ,KAAK,GAAE,SAAmB,EAC1B,MAAM,yCAAsC,EAoBrD;IAED;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,GAAG,IAAI,CAoD9D;IAEM,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAiB7C;CACF"}
1
+ {"version":3,"file":"l1_tx_metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/l1_tx_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAGL,KAAK,KAAK,EAIX,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAmB5C,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IAnBhB,OAAO,CAAC,eAAe,CAAY;IAGnC,OAAO,CAAC,oBAAoB,CAAY;IAGxC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,eAAe,CAAgB;IAGvC,OAAO,CAAC,uBAAuB,CAAY;IAC3C,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,gBAAgB,CAAY;IAEpC,YACU,KAAK,EAAE,KAAK,EACZ,KAAK,GAAE,SAAmB,EAC1B,MAAM,yCAAsC,EAoBrD;IAED;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,GAAG,IAAI,CAsD9D;IAEM,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAiB7C;CACF"}
@@ -69,15 +69,15 @@ import { Attributes, Metrics, createUpDownCounterWithDefault } from '@aztec/tele
69
69
  // Record number of attempts until mined
70
70
  const attempts = isCancelTx ? state.cancelTxHashes.length : state.txHashes.length;
71
71
  this.txAttemptsUntilMined.record(attempts, attributes);
72
- // Record gas prices at end state (in wei as integers)
73
- const maxPriorityFeeWei = Number(state.gasPrice.maxPriorityFeePerGas);
74
- const maxFeeWei = Number(state.gasPrice.maxFeePerGas);
75
- const blobFeeWei = state.gasPrice.maxFeePerBlobGas ? Number(state.gasPrice.maxFeePerBlobGas) : undefined;
76
- this.maxPriorityFeeHistogram.record(maxPriorityFeeWei, attributes);
77
- this.maxFeeHistogram.record(maxFeeWei, attributes);
78
- // Record blob fee if present (in wei as integer)
79
- if (blobFeeWei !== undefined) {
80
- this.blobFeeHistogram.record(blobFeeWei, attributes);
72
+ // Record gas prices at end state, converted from wei to gwei to match metric unit definitions
73
+ const weiToGwei = 1e9;
74
+ const maxPriorityFeeGwei = Number(state.gasPrice.maxPriorityFeePerGas) / weiToGwei;
75
+ const maxFeeGwei = Number(state.gasPrice.maxFeePerGas) / weiToGwei;
76
+ const blobFeeGwei = state.gasPrice.maxFeePerBlobGas ? Number(state.gasPrice.maxFeePerBlobGas) / weiToGwei : undefined;
77
+ this.maxPriorityFeeHistogram.record(maxPriorityFeeGwei, attributes);
78
+ this.maxFeeHistogram.record(maxFeeGwei, attributes);
79
+ if (blobFeeGwei !== undefined) {
80
+ this.blobFeeHistogram.record(blobFeeGwei, attributes);
81
81
  }
82
82
  this.logger.debug(`Recorded tx end state metrics`, {
83
83
  status: TxUtilsState[state.status],
@@ -85,9 +85,9 @@ import { Attributes, Metrics, createUpDownCounterWithDefault } from '@aztec/tele
85
85
  isCancelTx,
86
86
  isReverted,
87
87
  scope: this.scope,
88
- maxPriorityFeeWei,
89
- maxFeeWei,
90
- blobFeeWei
88
+ maxPriorityFeeGwei,
89
+ maxFeeGwei,
90
+ blobFeeGwei
91
91
  });
92
92
  }
93
93
  recordDroppedTx(state) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/node-lib",
3
- "version": "0.0.1-commit.934299a21",
3
+ "version": "0.0.1-commit.949a33fd8",
4
4
  "type": "module",
5
5
  "typedocOptions": {
6
6
  "entryPoints": [
@@ -66,29 +66,28 @@
66
66
  ]
67
67
  },
68
68
  "dependencies": {
69
- "@aztec/archiver": "0.0.1-commit.934299a21",
70
- "@aztec/bb-prover": "0.0.1-commit.934299a21",
71
- "@aztec/blob-client": "0.0.1-commit.934299a21",
72
- "@aztec/constants": "0.0.1-commit.934299a21",
73
- "@aztec/epoch-cache": "0.0.1-commit.934299a21",
74
- "@aztec/ethereum": "0.0.1-commit.934299a21",
75
- "@aztec/foundation": "0.0.1-commit.934299a21",
76
- "@aztec/kv-store": "0.0.1-commit.934299a21",
77
- "@aztec/merkle-tree": "0.0.1-commit.934299a21",
78
- "@aztec/p2p": "0.0.1-commit.934299a21",
79
- "@aztec/protocol-contracts": "0.0.1-commit.934299a21",
80
- "@aztec/prover-client": "0.0.1-commit.934299a21",
81
- "@aztec/sequencer-client": "0.0.1-commit.934299a21",
82
- "@aztec/simulator": "0.0.1-commit.934299a21",
83
- "@aztec/stdlib": "0.0.1-commit.934299a21",
84
- "@aztec/telemetry-client": "0.0.1-commit.934299a21",
85
- "@aztec/validator-client": "0.0.1-commit.934299a21",
86
- "@aztec/world-state": "0.0.1-commit.934299a21",
69
+ "@aztec/archiver": "0.0.1-commit.949a33fd8",
70
+ "@aztec/bb-prover": "0.0.1-commit.949a33fd8",
71
+ "@aztec/blob-client": "0.0.1-commit.949a33fd8",
72
+ "@aztec/constants": "0.0.1-commit.949a33fd8",
73
+ "@aztec/epoch-cache": "0.0.1-commit.949a33fd8",
74
+ "@aztec/ethereum": "0.0.1-commit.949a33fd8",
75
+ "@aztec/foundation": "0.0.1-commit.949a33fd8",
76
+ "@aztec/kv-store": "0.0.1-commit.949a33fd8",
77
+ "@aztec/p2p": "0.0.1-commit.949a33fd8",
78
+ "@aztec/protocol-contracts": "0.0.1-commit.949a33fd8",
79
+ "@aztec/prover-client": "0.0.1-commit.949a33fd8",
80
+ "@aztec/sequencer-client": "0.0.1-commit.949a33fd8",
81
+ "@aztec/simulator": "0.0.1-commit.949a33fd8",
82
+ "@aztec/stdlib": "0.0.1-commit.949a33fd8",
83
+ "@aztec/telemetry-client": "0.0.1-commit.949a33fd8",
84
+ "@aztec/validator-client": "0.0.1-commit.949a33fd8",
85
+ "@aztec/world-state": "0.0.1-commit.949a33fd8",
87
86
  "tslib": "^2.4.0"
88
87
  },
89
88
  "devDependencies": {
90
- "@aztec/blob-lib": "0.0.1-commit.934299a21",
91
- "@aztec/node-keystore": "0.0.1-commit.934299a21",
89
+ "@aztec/blob-lib": "0.0.1-commit.949a33fd8",
90
+ "@aztec/node-keystore": "0.0.1-commit.949a33fd8",
92
91
  "@jest/globals": "^30.0.0",
93
92
  "@types/jest": "^30.0.0",
94
93
  "@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
- Required<DataStoreConfig> &
34
+ DataStoreConfig &
35
+ Required<Pick<DataStoreConfig, 'l1Contracts'>> &
35
36
  EthereumClientConfig & {
36
37
  snapshotsUrls?: string[];
37
38
  minL1BlocksToTriggerReplace?: number;
@@ -60,7 +61,7 @@ export async function trySnapshotSync(config: SnapshotSyncConfig, log: Logger) {
60
61
 
61
62
  // Create an archiver store to check the current state (do this only once)
62
63
  log.verbose(`Creating temporary archiver data store`);
63
- const archiverStore = await createArchiverStore(config, { epochDuration: config.aztecEpochDuration });
64
+ const archiverStore = await createArchiverStore(config);
64
65
  let archiverL1BlockNumber: bigint | undefined;
65
66
  let archiverL2BlockNumber: number | undefined;
66
67
  try {
@@ -177,7 +178,7 @@ export async function trySnapshotSync(config: SnapshotSyncConfig, log: Logger) {
177
178
  snapshotCandidates.sort((a, b) => b.snapshot.l1BlockNumber - a.snapshot.l1BlockNumber);
178
179
 
179
180
  // Try each candidate in order until one succeeds
180
- for (const { snapshot, url } of snapshotCandidates) {
181
+ for (const { snapshot, url, fileStore } of snapshotCandidates) {
181
182
  const { l1BlockNumber, l2BlockNumber } = snapshot;
182
183
  log.info(`Attempting to sync from snapshot at L1 block ${l1BlockNumber} L2 block ${l2BlockNumber}`, {
183
184
  snapshot,
@@ -188,7 +189,7 @@ export async function trySnapshotSync(config: SnapshotSyncConfig, log: Logger) {
188
189
  await snapshotSync(snapshot, log, {
189
190
  dataDirectory: config.dataDirectory!,
190
191
  rollupAddress: config.l1Contracts.rollupAddress,
191
- snapshotsUrl: url,
192
+ fileStore,
192
193
  });
193
194
  log.info(`Snapshot synced to L1 block ${l1BlockNumber} L2 block ${l2BlockNumber}`, {
194
195
  snapshot,
@@ -214,15 +215,13 @@ export async function trySnapshotSync(config: SnapshotSyncConfig, log: Logger) {
214
215
  export async function snapshotSync(
215
216
  snapshot: Pick<SnapshotMetadata, 'dataUrls'>,
216
217
  log: Logger,
217
- config: { dataDirectory: string; rollupAddress: EthAddress; snapshotsUrl: string },
218
+ config: { dataDirectory: string; rollupAddress: EthAddress; fileStore: ReadOnlyFileStore },
218
219
  ) {
219
- const { dataDirectory, rollupAddress } = config;
220
+ const { dataDirectory, rollupAddress, fileStore } = config;
220
221
  if (!dataDirectory) {
221
222
  throw new Error(`No local data directory defined. Cannot sync snapshot.`);
222
223
  }
223
224
 
224
- const fileStore = await createReadOnlyFileStore(config.snapshotsUrl, log);
225
-
226
225
  let downloadDir: string | undefined;
227
226
 
228
227
  try {
@@ -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
 
@@ -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';
@@ -92,17 +92,19 @@ export class L1TxMetrics implements IL1TxMetrics {
92
92
  const attempts = isCancelTx ? state.cancelTxHashes.length : state.txHashes.length;
93
93
  this.txAttemptsUntilMined.record(attempts, attributes);
94
94
 
95
- // Record gas prices at end state (in wei as integers)
96
- const maxPriorityFeeWei = Number(state.gasPrice.maxPriorityFeePerGas);
97
- const maxFeeWei = Number(state.gasPrice.maxFeePerGas);
98
- const blobFeeWei = state.gasPrice.maxFeePerBlobGas ? Number(state.gasPrice.maxFeePerBlobGas) : undefined;
99
-
100
- this.maxPriorityFeeHistogram.record(maxPriorityFeeWei, attributes);
101
- this.maxFeeHistogram.record(maxFeeWei, attributes);
102
-
103
- // Record blob fee if present (in wei as integer)
104
- if (blobFeeWei !== undefined) {
105
- this.blobFeeHistogram.record(blobFeeWei, attributes);
95
+ // Record gas prices at end state, converted from wei to gwei to match metric unit definitions
96
+ const weiToGwei = 1e9;
97
+ const maxPriorityFeeGwei = Number(state.gasPrice.maxPriorityFeePerGas) / weiToGwei;
98
+ const maxFeeGwei = Number(state.gasPrice.maxFeePerGas) / weiToGwei;
99
+ const blobFeeGwei = state.gasPrice.maxFeePerBlobGas
100
+ ? Number(state.gasPrice.maxFeePerBlobGas) / weiToGwei
101
+ : undefined;
102
+
103
+ this.maxPriorityFeeHistogram.record(maxPriorityFeeGwei, attributes);
104
+ this.maxFeeHistogram.record(maxFeeGwei, attributes);
105
+
106
+ if (blobFeeGwei !== undefined) {
107
+ this.blobFeeHistogram.record(blobFeeGwei, attributes);
106
108
  }
107
109
 
108
110
  this.logger.debug(`Recorded tx end state metrics`, {
@@ -111,9 +113,9 @@ export class L1TxMetrics implements IL1TxMetrics {
111
113
  isCancelTx,
112
114
  isReverted,
113
115
  scope: this.scope,
114
- maxPriorityFeeWei,
115
- maxFeeWei,
116
- blobFeeWei,
116
+ maxPriorityFeeGwei,
117
+ maxFeeGwei,
118
+ blobFeeGwei,
117
119
  });
118
120
  }
119
121