@aztec/cli 0.0.1-commit.9b94fc1 → 0.0.1-commit.d3ec352c
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/cmds/aztec_node/get_block.d.ts +1 -1
- package/dest/cmds/aztec_node/get_block.d.ts.map +1 -1
- package/dest/cmds/aztec_node/get_block.js +2 -1
- package/dest/cmds/aztec_node/get_logs.d.ts +3 -2
- package/dest/cmds/aztec_node/get_logs.d.ts.map +1 -1
- package/dest/cmds/infrastructure/index.d.ts +1 -1
- package/dest/cmds/infrastructure/index.d.ts.map +1 -1
- package/dest/cmds/infrastructure/index.js +0 -1
- package/dest/cmds/infrastructure/sequencers.d.ts +1 -2
- package/dest/cmds/infrastructure/sequencers.d.ts.map +1 -1
- package/dest/cmds/l1/assume_proven_through.d.ts +1 -1
- package/dest/cmds/l1/assume_proven_through.d.ts.map +1 -1
- package/dest/cmds/l1/assume_proven_through.js +2 -1
- package/dest/config/network_config.d.ts +5 -2
- package/dest/config/network_config.d.ts.map +1 -1
- package/dest/config/network_config.js +43 -27
- package/dest/utils/inspect.d.ts +3 -2
- package/dest/utils/inspect.d.ts.map +1 -1
- package/package.json +30 -30
- package/src/cmds/aztec_node/get_block.ts +2 -1
- package/src/cmds/aztec_node/get_logs.ts +3 -2
- package/src/cmds/infrastructure/index.ts +0 -1
- package/src/cmds/infrastructure/sequencers.ts +0 -1
- package/src/cmds/l1/assume_proven_through.ts +4 -1
- package/src/config/network_config.ts +45 -28
- package/src/utils/inspect.ts +2 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function getBlock(nodeUrl: string, maybeBlockNumber: number | undefined, log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X2Jsb2NrLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9henRlY19ub2RlL2dldF9ibG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUluRCx3QkFBc0IsUUFBUSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFBRSxHQUFHLEVBQUUsS0FBSyxpQkFJL0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get_block.d.ts","sourceRoot":"","sources":["../../../src/cmds/aztec_node/get_block.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get_block.d.ts","sourceRoot":"","sources":["../../../src/cmds/aztec_node/get_block.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD,wBAAsB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,KAAK,iBAI/F"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { createAztecNodeClient } from '@aztec/aztec.js/node';
|
|
2
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
2
3
|
import { inspectBlock } from '../../utils/inspect.js';
|
|
3
4
|
export async function getBlock(nodeUrl, maybeBlockNumber, log) {
|
|
4
5
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
5
|
-
const blockNumber = maybeBlockNumber
|
|
6
|
+
const blockNumber = maybeBlockNumber ? BlockNumber(maybeBlockNumber) : await aztecNode.getBlockNumber();
|
|
6
7
|
await inspectBlock(aztecNode, blockNumber, log, {
|
|
7
8
|
showTxs: true
|
|
8
9
|
});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
2
|
import type { LogId } from '@aztec/aztec.js/log';
|
|
3
3
|
import type { TxHash } from '@aztec/aztec.js/tx';
|
|
4
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
5
|
import type { LogFn } from '@aztec/foundation/log';
|
|
5
|
-
export declare function getLogs(txHash: TxHash, fromBlock:
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
export declare function getLogs(txHash: TxHash, fromBlock: BlockNumber, toBlock: BlockNumber, afterLog: LogId, contractAddress: AztecAddress, nodeUrl: string, follow: boolean, log: LogFn): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X2xvZ3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL2F6dGVjX25vZGUvZ2V0X2xvZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQWEsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR25ELHdCQUFzQixPQUFPLENBQzNCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsU0FBUyxFQUFFLFdBQVcsRUFDdEIsT0FBTyxFQUFFLFdBQVcsRUFDcEIsUUFBUSxFQUFFLEtBQUssRUFDZixlQUFlLEVBQUUsWUFBWSxFQUM3QixPQUFPLEVBQUUsTUFBTSxFQUNmLE1BQU0sRUFBRSxPQUFPLEVBQ2YsR0FBRyxFQUFFLEtBQUssaUJBbURYIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get_logs.d.ts","sourceRoot":"","sources":["../../../src/cmds/aztec_node/get_logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAa,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"get_logs.d.ts","sourceRoot":"","sources":["../../../src/cmds/aztec_node/get_logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAa,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,KAAK,EACf,eAAe,EAAE,YAAY,EAC7B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,KAAK,iBAmDX"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
import type { Command } from 'commander';
|
|
3
3
|
export declare function injectCommands(program: Command, log: LogFn): Command;
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL2luZnJhc3RydWN0dXJlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRW5ELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUl6Qyx3QkFBZ0IsY0FBYyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssV0E2QzFEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmds/infrastructure/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmds/infrastructure/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,WA6C1D"}
|
|
@@ -7,7 +7,6 @@ export declare function sequencers(opts: {
|
|
|
7
7
|
nodeUrl: string;
|
|
8
8
|
l1RpcUrls: string[];
|
|
9
9
|
chainId: number;
|
|
10
|
-
blockNumber?: number;
|
|
11
10
|
log: LogFn;
|
|
12
11
|
}): Promise<void>;
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2Vycy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NtZHMvaW5mcmFzdHJ1Y3R1cmUvc2VxdWVuY2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU1uRCx3QkFBc0IsVUFBVSxDQUFDLElBQUksRUFBRTtJQUNyQyxPQUFPLEVBQUUsTUFBTSxHQUFHLEtBQUssR0FBRyxRQUFRLEdBQUcsVUFBVSxHQUFHLE9BQU8sQ0FBQztJQUMxRCxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDYixRQUFRLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbEIsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3hCLE9BQU8sRUFBRSxNQUFNLENBQUM7SUFDaEIsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3BCLE9BQU8sRUFBRSxNQUFNLENBQUM7SUFDaEIsR0FBRyxFQUFFLEtBQUssQ0FBQztDQUNaLGlCQW9HQSJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequencers.d.ts","sourceRoot":"","sources":["../../../src/cmds/infrastructure/sequencers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAMnD,wBAAsB,UAAU,CAAC,IAAI,EAAE;IACrC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,
|
|
1
|
+
{"version":3,"file":"sequencers.d.ts","sourceRoot":"","sources":["../../../src/cmds/infrastructure/sequencers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAMnD,wBAAsB,UAAU,CAAC,IAAI,EAAE;IACrC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,KAAK,CAAC;CACZ,iBAoGA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function assumeProvenThrough(blockNumberOrLatest: number | undefined, l1RpcUrls: string[], nodeUrl: string, log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzdW1lX3Byb3Zlbl90aHJvdWdoLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9sMS9hc3N1bWVfcHJvdmVuX3Rocm91Z2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHbkQsd0JBQXNCLG1CQUFtQixDQUN2QyxtQkFBbUIsRUFBRSxNQUFNLEdBQUcsU0FBUyxFQUN2QyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQ25CLE9BQU8sRUFBRSxNQUFNLEVBQ2YsR0FBRyxFQUFFLEtBQUssaUJBWVgifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assume_proven_through.d.ts","sourceRoot":"","sources":["../../../src/cmds/l1/assume_proven_through.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assume_proven_through.d.ts","sourceRoot":"","sources":["../../../src/cmds/l1/assume_proven_through.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,wBAAsB,mBAAmB,CACvC,mBAAmB,EAAE,MAAM,GAAG,SAAS,EACvC,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,KAAK,iBAYX"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { createAztecNodeClient } from '@aztec/aztec.js/node';
|
|
2
2
|
import { RollupCheatCodes } from '@aztec/ethereum/test';
|
|
3
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
3
4
|
import { DateProvider } from '@aztec/foundation/timer';
|
|
4
5
|
export async function assumeProvenThrough(blockNumberOrLatest, l1RpcUrls, nodeUrl, log) {
|
|
5
6
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
6
7
|
const rollupAddress = await aztecNode.getNodeInfo().then((i)=>i.l1ContractAddresses.rollupAddress);
|
|
7
|
-
const blockNumber = blockNumberOrLatest
|
|
8
|
+
const blockNumber = blockNumberOrLatest ? BlockNumber(blockNumberOrLatest) : await aztecNode.getBlockNumber();
|
|
8
9
|
const rollupCheatCodes = RollupCheatCodes.create(l1RpcUrls, {
|
|
9
10
|
rollupAddress
|
|
10
11
|
}, new DateProvider());
|
|
@@ -5,7 +5,8 @@ import { type NetworkConfig, type NetworkNames } from '@aztec/foundation/config'
|
|
|
5
5
|
*
|
|
6
6
|
* @param networkName - The network name to fetch config for
|
|
7
7
|
* @param cacheDir - Optional cache directory for storing fetched config
|
|
8
|
-
* @returns Remote configuration for the specified network, or undefined if not found
|
|
8
|
+
* @returns Remote configuration for the specified network, or undefined if network not found in config
|
|
9
|
+
* @throws Error if both primary and fallback URLs fail to fetch
|
|
9
10
|
*/
|
|
10
11
|
export declare function getNetworkConfig(networkName: NetworkNames, cacheDir?: string): Promise<NetworkConfig | undefined>;
|
|
11
12
|
/**
|
|
@@ -14,6 +15,8 @@ export declare function getNetworkConfig(networkName: NetworkNames, cacheDir?: s
|
|
|
14
15
|
* from the remote config, following the same pattern as enrichEnvironmentWithChainConfig().
|
|
15
16
|
*
|
|
16
17
|
* @param networkName - The network name to fetch remote config for
|
|
18
|
+
* @throws Error if network config fetch fails (network errors, parse errors, etc.)
|
|
19
|
+
* Does not throw if the network simply doesn't exist in the config - just returns without enriching
|
|
17
20
|
*/
|
|
18
21
|
export declare function enrichEnvironmentWithNetworkConfig(networkName: NetworkNames): Promise<void>;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya19jb25maWcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvbmV0d29ya19jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssYUFBYSxFQUEwQixLQUFLLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBYXpHOzs7Ozs7OztHQVFHO0FBQ0gsd0JBQXNCLGdCQUFnQixDQUNwQyxXQUFXLEVBQUUsWUFBWSxFQUN6QixRQUFRLENBQUMsRUFBRSxNQUFNLEdBQ2hCLE9BQU8sQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDLENBOEJwQztBQXVERDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFzQixrQ0FBa0MsQ0FBQyxXQUFXLEVBQUUsWUFBWSxpQkFvQmpGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network_config.d.ts","sourceRoot":"","sources":["../../src/config/network_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAA0B,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAazG
|
|
1
|
+
{"version":3,"file":"network_config.d.ts","sourceRoot":"","sources":["../../src/config/network_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAA0B,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAazG;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,YAAY,EACzB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CA8BpC;AAuDD;;;;;;;;GAQG;AACH,wBAAsB,kCAAkC,CAAC,WAAW,EAAE,YAAY,iBAoBjF"}
|
|
@@ -12,15 +12,32 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
12
12
|
*
|
|
13
13
|
* @param networkName - The network name to fetch config for
|
|
14
14
|
* @param cacheDir - Optional cache directory for storing fetched config
|
|
15
|
-
* @returns Remote configuration for the specified network, or undefined if not found
|
|
15
|
+
* @returns Remote configuration for the specified network, or undefined if network not found in config
|
|
16
|
+
* @throws Error if both primary and fallback URLs fail to fetch
|
|
16
17
|
*/ export async function getNetworkConfig(networkName, cacheDir) {
|
|
17
18
|
// Try with the primary URL (env var or default)
|
|
18
19
|
const configLocation = process.env.NETWORK_CONFIG_LOCATION || DEFAULT_CONFIG_URL;
|
|
20
|
+
let primaryError;
|
|
21
|
+
let config;
|
|
19
22
|
// First try the primary config location
|
|
20
|
-
|
|
23
|
+
try {
|
|
24
|
+
config = await fetchNetworkConfigFromUrl(configLocation, networkName, cacheDir);
|
|
25
|
+
} catch (error) {
|
|
26
|
+
primaryError = error;
|
|
27
|
+
}
|
|
21
28
|
// If primary fails and we were using the default URL, try the fallback
|
|
22
29
|
if (!config && configLocation === DEFAULT_CONFIG_URL) {
|
|
23
|
-
|
|
30
|
+
try {
|
|
31
|
+
config = await fetchNetworkConfigFromUrl(FALLBACK_CONFIG_URL, networkName, cacheDir);
|
|
32
|
+
} catch {
|
|
33
|
+
// Both failed - throw the primary error
|
|
34
|
+
if (primaryError) {
|
|
35
|
+
throw primaryError;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
} else if (primaryError) {
|
|
39
|
+
// Primary failed and no fallback to try
|
|
40
|
+
throw primaryError;
|
|
24
41
|
}
|
|
25
42
|
return config;
|
|
26
43
|
}
|
|
@@ -29,7 +46,8 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
29
46
|
* @param configLocation - The URL or file path to fetch from
|
|
30
47
|
* @param networkName - The network name to fetch config for
|
|
31
48
|
* @param cacheDir - Optional cache directory for storing fetched config
|
|
32
|
-
* @returns Remote configuration for the specified network, or undefined if not found
|
|
49
|
+
* @returns Remote configuration for the specified network, or undefined if network not found in config, or undefined if URL invalid
|
|
50
|
+
* @throws Error if fetch/parse fails
|
|
33
51
|
*/ async function fetchNetworkConfigFromUrl(configLocation, networkName, cacheDir) {
|
|
34
52
|
let url;
|
|
35
53
|
try {
|
|
@@ -43,28 +61,24 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
43
61
|
if (!url) {
|
|
44
62
|
return undefined;
|
|
45
63
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
} else {
|
|
65
|
-
return undefined;
|
|
66
|
-
}
|
|
67
|
-
} catch {
|
|
64
|
+
let rawConfig;
|
|
65
|
+
if (url.protocol === 'http:' || url.protocol === 'https:') {
|
|
66
|
+
rawConfig = await cachedFetch(url.href, {
|
|
67
|
+
cacheDurationMs: NETWORK_CONFIG_CACHE_DURATION_MS,
|
|
68
|
+
cacheFile: cacheDir ? join(cacheDir, networkName, 'network_config.json') : undefined
|
|
69
|
+
});
|
|
70
|
+
} else if (url.protocol === 'file:') {
|
|
71
|
+
rawConfig = JSON.parse(await readFile(url.pathname, 'utf-8'));
|
|
72
|
+
} else {
|
|
73
|
+
throw new Error('Unsupported Aztec network config protocol: ' + url.href);
|
|
74
|
+
}
|
|
75
|
+
if (!rawConfig) {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
const networkConfigMap = NetworkConfigMapSchema.parse(rawConfig);
|
|
79
|
+
if (networkName in networkConfigMap) {
|
|
80
|
+
return networkConfigMap[networkName];
|
|
81
|
+
} else {
|
|
68
82
|
return undefined;
|
|
69
83
|
}
|
|
70
84
|
}
|
|
@@ -74,6 +88,8 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
74
88
|
* from the remote config, following the same pattern as enrichEnvironmentWithChainConfig().
|
|
75
89
|
*
|
|
76
90
|
* @param networkName - The network name to fetch remote config for
|
|
91
|
+
* @throws Error if network config fetch fails (network errors, parse errors, etc.)
|
|
92
|
+
* Does not throw if the network simply doesn't exist in the config - just returns without enriching
|
|
77
93
|
*/ export async function enrichEnvironmentWithNetworkConfig(networkName) {
|
|
78
94
|
if (networkName === 'local') {
|
|
79
95
|
return; // No remote config for local development
|
|
@@ -81,7 +97,7 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
81
97
|
const cacheDir = process.env.DATA_DIRECTORY ? join(process.env.DATA_DIRECTORY, 'cache') : undefined;
|
|
82
98
|
const networkConfig = await getNetworkConfig(networkName, cacheDir);
|
|
83
99
|
if (!networkConfig) {
|
|
84
|
-
|
|
100
|
+
return; // Network not found in config, continue without enriching
|
|
85
101
|
}
|
|
86
102
|
enrichVar('BOOTSTRAP_NODES', networkConfig.bootnodes.join(','));
|
|
87
103
|
enrichVar('L1_CHAIN_ID', String(networkConfig.l1ChainId));
|
package/dest/utils/inspect.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
1
2
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
3
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
3
4
|
import type { TxHash } from '@aztec/stdlib/tx';
|
|
4
|
-
export declare function inspectBlock(aztecNode: AztecNode, blockNumber:
|
|
5
|
+
export declare function inspectBlock(aztecNode: AztecNode, blockNumber: BlockNumber, log: LogFn, opts?: {
|
|
5
6
|
showTxs?: boolean;
|
|
6
7
|
}): Promise<void>;
|
|
7
8
|
export declare function inspectTx(aztecNode: AztecNode, txHash: TxHash, log: LogFn, opts?: {
|
|
8
9
|
includeBlockInfo?: boolean;
|
|
9
10
|
}): Promise<void>;
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2luc3BlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHdCQUFzQixZQUFZLENBQ2hDLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLEdBQUcsRUFBRSxLQUFLLEVBQ1YsSUFBSSxHQUFFO0lBQUUsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFBO0NBQU8saUJBMEJqQztBQUVELHdCQUFzQixTQUFTLENBQzdCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsR0FBRyxFQUFFLEtBQUssRUFDVixJQUFJLEdBQUU7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQTtDQUFPLGlCQW1FMUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,iBA0BjC;AAED,wBAAsB,SAAS,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,iBAmE1C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/cli",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.d3ec352c",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./contracts": "./dest/cmds/contracts/index.js",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"tsconfig": "./tsconfig.json"
|
|
25
25
|
},
|
|
26
26
|
"scripts": {
|
|
27
|
-
"build": "yarn clean &&
|
|
28
|
-
"build:dev": "
|
|
27
|
+
"build": "yarn clean && ../scripts/tsc.sh",
|
|
28
|
+
"build:dev": "../scripts/tsc.sh --watch",
|
|
29
29
|
"clean": "rm -rf ./dest .tsbuildinfo",
|
|
30
30
|
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}"
|
|
31
31
|
},
|
|
@@ -71,21 +71,21 @@
|
|
|
71
71
|
]
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"@aztec/accounts": "0.0.1-commit.
|
|
75
|
-
"@aztec/archiver": "0.0.1-commit.
|
|
76
|
-
"@aztec/aztec.js": "0.0.1-commit.
|
|
77
|
-
"@aztec/constants": "0.0.1-commit.
|
|
78
|
-
"@aztec/entrypoints": "0.0.1-commit.
|
|
79
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
80
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
81
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
82
|
-
"@aztec/node-keystore": "0.0.1-commit.
|
|
83
|
-
"@aztec/node-lib": "0.0.1-commit.
|
|
84
|
-
"@aztec/p2p": "0.0.1-commit.
|
|
85
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
86
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
87
|
-
"@aztec/test-wallet": "0.0.1-commit.
|
|
88
|
-
"@aztec/world-state": "0.0.1-commit.
|
|
74
|
+
"@aztec/accounts": "0.0.1-commit.d3ec352c",
|
|
75
|
+
"@aztec/archiver": "0.0.1-commit.d3ec352c",
|
|
76
|
+
"@aztec/aztec.js": "0.0.1-commit.d3ec352c",
|
|
77
|
+
"@aztec/constants": "0.0.1-commit.d3ec352c",
|
|
78
|
+
"@aztec/entrypoints": "0.0.1-commit.d3ec352c",
|
|
79
|
+
"@aztec/ethereum": "0.0.1-commit.d3ec352c",
|
|
80
|
+
"@aztec/foundation": "0.0.1-commit.d3ec352c",
|
|
81
|
+
"@aztec/l1-artifacts": "0.0.1-commit.d3ec352c",
|
|
82
|
+
"@aztec/node-keystore": "0.0.1-commit.d3ec352c",
|
|
83
|
+
"@aztec/node-lib": "0.0.1-commit.d3ec352c",
|
|
84
|
+
"@aztec/p2p": "0.0.1-commit.d3ec352c",
|
|
85
|
+
"@aztec/protocol-contracts": "0.0.1-commit.d3ec352c",
|
|
86
|
+
"@aztec/stdlib": "0.0.1-commit.d3ec352c",
|
|
87
|
+
"@aztec/test-wallet": "0.0.1-commit.d3ec352c",
|
|
88
|
+
"@aztec/world-state": "0.0.1-commit.d3ec352c",
|
|
89
89
|
"@ethersproject/wallet": "^5.8.0",
|
|
90
90
|
"@iarna/toml": "^2.2.5",
|
|
91
91
|
"@libp2p/peer-id-factory": "^3.0.4",
|
|
@@ -99,9 +99,9 @@
|
|
|
99
99
|
"viem": "npm:@aztec/viem@2.38.2"
|
|
100
100
|
},
|
|
101
101
|
"devDependencies": {
|
|
102
|
-
"@aztec/aztec-node": "0.0.1-commit.
|
|
103
|
-
"@aztec/kv-store": "0.0.1-commit.
|
|
104
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
102
|
+
"@aztec/aztec-node": "0.0.1-commit.d3ec352c",
|
|
103
|
+
"@aztec/kv-store": "0.0.1-commit.d3ec352c",
|
|
104
|
+
"@aztec/telemetry-client": "0.0.1-commit.d3ec352c",
|
|
105
105
|
"@jest/globals": "^30.0.0",
|
|
106
106
|
"@types/jest": "^30.0.0",
|
|
107
107
|
"@types/lodash.chunk": "^4.2.9",
|
|
@@ -118,15 +118,15 @@
|
|
|
118
118
|
"typescript": "^5.3.3"
|
|
119
119
|
},
|
|
120
120
|
"peerDependencies": {
|
|
121
|
-
"@aztec/accounts": "0.0.1-commit.
|
|
122
|
-
"@aztec/bb-prover": "0.0.1-commit.
|
|
123
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
124
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
125
|
-
"@aztec/noir-contracts.js": "0.0.1-commit.
|
|
126
|
-
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.
|
|
127
|
-
"@aztec/noir-test-contracts.js": "0.0.1-commit.
|
|
128
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
129
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
121
|
+
"@aztec/accounts": "0.0.1-commit.d3ec352c",
|
|
122
|
+
"@aztec/bb-prover": "0.0.1-commit.d3ec352c",
|
|
123
|
+
"@aztec/ethereum": "0.0.1-commit.d3ec352c",
|
|
124
|
+
"@aztec/l1-artifacts": "0.0.1-commit.d3ec352c",
|
|
125
|
+
"@aztec/noir-contracts.js": "0.0.1-commit.d3ec352c",
|
|
126
|
+
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.d3ec352c",
|
|
127
|
+
"@aztec/noir-test-contracts.js": "0.0.1-commit.d3ec352c",
|
|
128
|
+
"@aztec/protocol-contracts": "0.0.1-commit.d3ec352c",
|
|
129
|
+
"@aztec/stdlib": "0.0.1-commit.d3ec352c"
|
|
130
130
|
},
|
|
131
131
|
"files": [
|
|
132
132
|
"dest",
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { createAztecNodeClient } from '@aztec/aztec.js/node';
|
|
2
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
2
3
|
import type { LogFn } from '@aztec/foundation/log';
|
|
3
4
|
|
|
4
5
|
import { inspectBlock } from '../../utils/inspect.js';
|
|
5
6
|
|
|
6
7
|
export async function getBlock(nodeUrl: string, maybeBlockNumber: number | undefined, log: LogFn) {
|
|
7
8
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
8
|
-
const blockNumber = maybeBlockNumber
|
|
9
|
+
const blockNumber: BlockNumber = maybeBlockNumber ? BlockNumber(maybeBlockNumber) : await aztecNode.getBlockNumber();
|
|
9
10
|
await inspectBlock(aztecNode, blockNumber, log, { showTxs: true });
|
|
10
11
|
}
|
|
@@ -2,13 +2,14 @@ import type { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
|
2
2
|
import type { LogFilter, LogId } from '@aztec/aztec.js/log';
|
|
3
3
|
import { createAztecNodeClient } from '@aztec/aztec.js/node';
|
|
4
4
|
import type { TxHash } from '@aztec/aztec.js/tx';
|
|
5
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
5
6
|
import type { LogFn } from '@aztec/foundation/log';
|
|
6
7
|
import { sleep } from '@aztec/foundation/sleep';
|
|
7
8
|
|
|
8
9
|
export async function getLogs(
|
|
9
10
|
txHash: TxHash,
|
|
10
|
-
fromBlock:
|
|
11
|
-
toBlock:
|
|
11
|
+
fromBlock: BlockNumber,
|
|
12
|
+
toBlock: BlockNumber,
|
|
12
13
|
afterLog: LogId,
|
|
13
14
|
contractAddress: AztecAddress,
|
|
14
15
|
nodeUrl: string,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createAztecNodeClient } from '@aztec/aztec.js/node';
|
|
2
2
|
import { RollupCheatCodes } from '@aztec/ethereum/test';
|
|
3
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
3
4
|
import type { LogFn } from '@aztec/foundation/log';
|
|
4
5
|
import { DateProvider } from '@aztec/foundation/timer';
|
|
5
6
|
|
|
@@ -11,7 +12,9 @@ export async function assumeProvenThrough(
|
|
|
11
12
|
) {
|
|
12
13
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
13
14
|
const rollupAddress = await aztecNode.getNodeInfo().then(i => i.l1ContractAddresses.rollupAddress);
|
|
14
|
-
const blockNumber = blockNumberOrLatest
|
|
15
|
+
const blockNumber: BlockNumber = blockNumberOrLatest
|
|
16
|
+
? BlockNumber(blockNumberOrLatest)
|
|
17
|
+
: await aztecNode.getBlockNumber();
|
|
15
18
|
|
|
16
19
|
const rollupCheatCodes = RollupCheatCodes.create(l1RpcUrls, { rollupAddress }, new DateProvider());
|
|
17
20
|
|
|
@@ -17,7 +17,8 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
|
|
|
17
17
|
*
|
|
18
18
|
* @param networkName - The network name to fetch config for
|
|
19
19
|
* @param cacheDir - Optional cache directory for storing fetched config
|
|
20
|
-
* @returns Remote configuration for the specified network, or undefined if not found
|
|
20
|
+
* @returns Remote configuration for the specified network, or undefined if network not found in config
|
|
21
|
+
* @throws Error if both primary and fallback URLs fail to fetch
|
|
21
22
|
*/
|
|
22
23
|
export async function getNetworkConfig(
|
|
23
24
|
networkName: NetworkNames,
|
|
@@ -26,12 +27,29 @@ export async function getNetworkConfig(
|
|
|
26
27
|
// Try with the primary URL (env var or default)
|
|
27
28
|
const configLocation = process.env.NETWORK_CONFIG_LOCATION || DEFAULT_CONFIG_URL;
|
|
28
29
|
|
|
30
|
+
let primaryError: Error | undefined;
|
|
31
|
+
let config: NetworkConfig | undefined;
|
|
32
|
+
|
|
29
33
|
// First try the primary config location
|
|
30
|
-
|
|
34
|
+
try {
|
|
35
|
+
config = await fetchNetworkConfigFromUrl(configLocation, networkName, cacheDir);
|
|
36
|
+
} catch (error) {
|
|
37
|
+
primaryError = error as Error;
|
|
38
|
+
}
|
|
31
39
|
|
|
32
40
|
// If primary fails and we were using the default URL, try the fallback
|
|
33
41
|
if (!config && configLocation === DEFAULT_CONFIG_URL) {
|
|
34
|
-
|
|
42
|
+
try {
|
|
43
|
+
config = await fetchNetworkConfigFromUrl(FALLBACK_CONFIG_URL, networkName, cacheDir);
|
|
44
|
+
} catch {
|
|
45
|
+
// Both failed - throw the primary error
|
|
46
|
+
if (primaryError) {
|
|
47
|
+
throw primaryError;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
} else if (primaryError) {
|
|
51
|
+
// Primary failed and no fallback to try
|
|
52
|
+
throw primaryError;
|
|
35
53
|
}
|
|
36
54
|
|
|
37
55
|
return config;
|
|
@@ -42,7 +60,8 @@ export async function getNetworkConfig(
|
|
|
42
60
|
* @param configLocation - The URL or file path to fetch from
|
|
43
61
|
* @param networkName - The network name to fetch config for
|
|
44
62
|
* @param cacheDir - Optional cache directory for storing fetched config
|
|
45
|
-
* @returns Remote configuration for the specified network, or undefined if not found
|
|
63
|
+
* @returns Remote configuration for the specified network, or undefined if network not found in config, or undefined if URL invalid
|
|
64
|
+
* @throws Error if fetch/parse fails
|
|
46
65
|
*/
|
|
47
66
|
async function fetchNetworkConfigFromUrl(
|
|
48
67
|
configLocation: string,
|
|
@@ -64,31 +83,27 @@ async function fetchNetworkConfigFromUrl(
|
|
|
64
83
|
return undefined;
|
|
65
84
|
}
|
|
66
85
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
86
|
+
let rawConfig: any;
|
|
87
|
+
|
|
88
|
+
if (url.protocol === 'http:' || url.protocol === 'https:') {
|
|
89
|
+
rawConfig = await cachedFetch(url.href, {
|
|
90
|
+
cacheDurationMs: NETWORK_CONFIG_CACHE_DURATION_MS,
|
|
91
|
+
cacheFile: cacheDir ? join(cacheDir, networkName, 'network_config.json') : undefined,
|
|
92
|
+
});
|
|
93
|
+
} else if (url.protocol === 'file:') {
|
|
94
|
+
rawConfig = JSON.parse(await readFile(url.pathname, 'utf-8'));
|
|
95
|
+
} else {
|
|
96
|
+
throw new Error('Unsupported Aztec network config protocol: ' + url.href);
|
|
97
|
+
}
|
|
80
98
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
99
|
+
if (!rawConfig) {
|
|
100
|
+
return undefined;
|
|
101
|
+
}
|
|
84
102
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
return undefined;
|
|
90
|
-
}
|
|
91
|
-
} catch {
|
|
103
|
+
const networkConfigMap = NetworkConfigMapSchema.parse(rawConfig);
|
|
104
|
+
if (networkName in networkConfigMap) {
|
|
105
|
+
return networkConfigMap[networkName];
|
|
106
|
+
} else {
|
|
92
107
|
return undefined;
|
|
93
108
|
}
|
|
94
109
|
}
|
|
@@ -99,6 +114,8 @@ async function fetchNetworkConfigFromUrl(
|
|
|
99
114
|
* from the remote config, following the same pattern as enrichEnvironmentWithChainConfig().
|
|
100
115
|
*
|
|
101
116
|
* @param networkName - The network name to fetch remote config for
|
|
117
|
+
* @throws Error if network config fetch fails (network errors, parse errors, etc.)
|
|
118
|
+
* Does not throw if the network simply doesn't exist in the config - just returns without enriching
|
|
102
119
|
*/
|
|
103
120
|
export async function enrichEnvironmentWithNetworkConfig(networkName: NetworkNames) {
|
|
104
121
|
if (networkName === 'local') {
|
|
@@ -109,7 +126,7 @@ export async function enrichEnvironmentWithNetworkConfig(networkName: NetworkNam
|
|
|
109
126
|
const networkConfig = await getNetworkConfig(networkName, cacheDir);
|
|
110
127
|
|
|
111
128
|
if (!networkConfig) {
|
|
112
|
-
|
|
129
|
+
return; // Network not found in config, continue without enriching
|
|
113
130
|
}
|
|
114
131
|
|
|
115
132
|
enrichVar('BOOTSTRAP_NODES', networkConfig.bootnodes.join(','));
|
package/src/utils/inspect.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
1
2
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
3
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
3
4
|
import type { TxHash } from '@aztec/stdlib/tx';
|
|
4
5
|
|
|
5
6
|
export async function inspectBlock(
|
|
6
7
|
aztecNode: AztecNode,
|
|
7
|
-
blockNumber:
|
|
8
|
+
blockNumber: BlockNumber,
|
|
8
9
|
log: LogFn,
|
|
9
10
|
opts: { showTxs?: boolean } = {},
|
|
10
11
|
) {
|