@aztec/cli 3.0.0-devnet.5 → 3.0.0-devnet.6-patch.1
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/README.md +1 -1
- package/dest/cmds/aztec_node/block_number.d.ts +1 -1
- 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_current_base_fee.d.ts +1 -1
- package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts +1 -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/aztec_node/get_node_info.d.ts +1 -1
- package/dest/cmds/aztec_node/index.d.ts +1 -1
- package/dest/cmds/contracts/index.d.ts +1 -1
- package/dest/cmds/contracts/inspect_contract.d.ts +1 -1
- package/dest/cmds/contracts/inspect_contract.d.ts.map +1 -1
- package/dest/cmds/contracts/inspect_contract.js +4 -10
- package/dest/cmds/contracts/parse_parameter_struct.d.ts +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/infrastructure/sequencers.js +3 -1
- package/dest/cmds/infrastructure/setup_l2_contract.d.ts +1 -1
- package/dest/cmds/l1/advance_epoch.d.ts +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/cmds/l1/bridge_erc20.d.ts +1 -1
- package/dest/cmds/l1/bridge_erc20.d.ts.map +1 -1
- package/dest/cmds/l1/bridge_erc20.js +2 -1
- package/dest/cmds/l1/create_l1_account.d.ts +1 -1
- package/dest/cmds/l1/deploy_l1_contracts.d.ts +1 -1
- package/dest/cmds/l1/deploy_l1_contracts.js +1 -1
- package/dest/cmds/l1/deploy_new_rollup.d.ts +2 -2
- package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
- package/dest/cmds/l1/deploy_new_rollup.js +1 -1
- package/dest/cmds/l1/get_l1_addresses.d.ts +1 -1
- package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
- package/dest/cmds/l1/get_l1_addresses.js +2 -1
- package/dest/cmds/l1/get_l1_balance.d.ts +1 -1
- package/dest/cmds/l1/get_l1_balance.js +1 -1
- package/dest/cmds/l1/governance_utils.d.ts +5 -5
- package/dest/cmds/l1/governance_utils.d.ts.map +1 -1
- package/dest/cmds/l1/governance_utils.js +3 -1
- package/dest/cmds/l1/index.d.ts +1 -1
- package/dest/cmds/l1/prover_stats.d.ts +1 -1
- package/dest/cmds/l1/prover_stats.d.ts.map +1 -1
- package/dest/cmds/l1/prover_stats.js +29 -29
- package/dest/cmds/l1/trigger_seed_snapshot.d.ts +2 -2
- package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -1
- package/dest/cmds/l1/trigger_seed_snapshot.js +2 -1
- package/dest/cmds/l1/update_l1_validators.d.ts +6 -6
- package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
- package/dest/cmds/l1/update_l1_validators.js +7 -3
- package/dest/cmds/misc/compute_selector.d.ts +1 -1
- package/dest/cmds/misc/example_contracts.d.ts +1 -1
- package/dest/cmds/misc/generate_bootnode_enr.d.ts +1 -1
- package/dest/cmds/misc/generate_p2p_private_key.d.ts +1 -1
- package/dest/cmds/misc/generate_secret_and_hash.d.ts +1 -1
- package/dest/cmds/misc/generate_secret_and_hash.js +1 -1
- package/dest/cmds/misc/generate_secret_key.d.ts +1 -1
- package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts +1 -1
- package/dest/cmds/misc/index.d.ts +1 -1
- package/dest/cmds/misc/update/common.d.ts +1 -1
- package/dest/cmds/misc/update/github.d.ts +1 -1
- package/dest/cmds/misc/update/noir.d.ts +1 -1
- package/dest/cmds/misc/update/npm.d.ts +1 -1
- package/dest/cmds/misc/update/npm.js +1 -1
- package/dest/cmds/misc/update/utils.d.ts +1 -1
- package/dest/cmds/misc/update.d.ts +1 -1
- package/dest/cmds/validator_keys/add.d.ts +5 -0
- package/dest/cmds/validator_keys/add.d.ts.map +1 -0
- package/dest/cmds/validator_keys/add.js +83 -0
- package/dest/cmds/validator_keys/generate_bls_keypair.d.ts +12 -0
- package/dest/cmds/validator_keys/generate_bls_keypair.d.ts.map +1 -0
- package/dest/cmds/validator_keys/generate_bls_keypair.js +27 -0
- package/dest/cmds/validator_keys/index.d.ts +4 -0
- package/dest/cmds/validator_keys/index.d.ts.map +1 -0
- package/dest/cmds/validator_keys/index.js +32 -0
- package/dest/cmds/validator_keys/new.d.ts +29 -0
- package/dest/cmds/validator_keys/new.d.ts.map +1 -0
- package/dest/cmds/validator_keys/new.js +132 -0
- package/dest/cmds/validator_keys/shared.d.ts +68 -0
- package/dest/cmds/validator_keys/shared.d.ts.map +1 -0
- package/dest/cmds/validator_keys/shared.js +274 -0
- package/dest/cmds/validator_keys/staker.d.ts +38 -0
- package/dest/cmds/validator_keys/staker.d.ts.map +1 -0
- package/dest/cmds/validator_keys/staker.js +208 -0
- package/dest/cmds/validator_keys/utils.d.ts +25 -0
- package/dest/cmds/validator_keys/utils.d.ts.map +1 -0
- package/dest/cmds/validator_keys/utils.js +52 -0
- package/dest/config/cached_fetch.d.ts +1 -1
- package/dest/config/chain_l2_config.d.ts +14 -10
- package/dest/config/chain_l2_config.d.ts.map +1 -1
- package/dest/config/chain_l2_config.js +128 -67
- package/dest/config/enrich_env.d.ts +1 -1
- package/dest/config/get_l1_config.d.ts +3 -2
- package/dest/config/get_l1_config.d.ts.map +1 -1
- package/dest/config/get_l1_config.js +3 -1
- package/dest/config/index.d.ts +1 -1
- package/dest/config/network_config.d.ts +6 -3
- package/dest/config/network_config.d.ts.map +1 -1
- package/dest/config/network_config.js +58 -28
- package/dest/utils/aztec.d.ts +5 -3
- package/dest/utils/aztec.d.ts.map +1 -1
- package/dest/utils/aztec.js +6 -3
- package/dest/utils/commands.d.ts +12 -3
- package/dest/utils/commands.d.ts.map +1 -1
- package/dest/utils/commands.js +30 -3
- package/dest/utils/encoding.d.ts +1 -1
- package/dest/utils/encoding.js +1 -1
- package/dest/utils/github.d.ts +1 -1
- package/dest/utils/index.d.ts +1 -1
- package/dest/utils/inspect.d.ts +3 -2
- package/dest/utils/inspect.d.ts.map +1 -1
- package/dest/utils/setup_contracts.d.ts +1 -1
- package/package.json +37 -28
- package/public_include_metric_prefixes.json +1 -0
- package/src/cmds/aztec_node/get_block.ts +2 -1
- package/src/cmds/aztec_node/get_logs.ts +3 -2
- package/src/cmds/contracts/inspect_contract.ts +4 -11
- package/src/cmds/infrastructure/index.ts +0 -1
- package/src/cmds/infrastructure/sequencers.ts +3 -2
- package/src/cmds/l1/assume_proven_through.ts +4 -1
- package/src/cmds/l1/bridge_erc20.ts +2 -1
- package/src/cmds/l1/deploy_l1_contracts.ts +1 -1
- package/src/cmds/l1/deploy_new_rollup.ts +2 -1
- package/src/cmds/l1/get_l1_addresses.ts +3 -1
- package/src/cmds/l1/get_l1_balance.ts +1 -1
- package/src/cmds/l1/governance_utils.ts +3 -8
- package/src/cmds/l1/prover_stats.ts +38 -30
- package/src/cmds/l1/trigger_seed_snapshot.ts +2 -1
- package/src/cmds/l1/update_l1_validators.ts +7 -12
- package/src/cmds/misc/generate_secret_and_hash.ts +1 -1
- package/src/cmds/misc/update/npm.ts +1 -1
- package/src/cmds/validator_keys/add.ts +123 -0
- package/src/cmds/validator_keys/generate_bls_keypair.ts +34 -0
- package/src/cmds/validator_keys/index.ts +142 -0
- package/src/cmds/validator_keys/new.ts +207 -0
- package/src/cmds/validator_keys/shared.ts +326 -0
- package/src/cmds/validator_keys/staker.ts +301 -0
- package/src/cmds/validator_keys/utils.ts +80 -0
- package/src/config/chain_l2_config.ts +176 -92
- package/src/config/get_l1_config.ts +4 -1
- package/src/config/network_config.ts +67 -29
- package/src/utils/aztec.ts +9 -9
- package/src/utils/commands.ts +41 -3
- package/src/utils/encoding.ts +1 -1
- package/src/utils/inspect.ts +2 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ethPrivateKeySchema } from '@aztec/node-keystore';
|
|
2
|
+
export const defaultBlsPath = 'm/12381/3600/0/0/0';
|
|
3
|
+
export function validateBlsPathOptions(options) {
|
|
4
|
+
if (options.blsPath && options.blsPath !== defaultBlsPath) {
|
|
5
|
+
if (options.count && options.count !== 1 || options.publisherCount && options.publisherCount > 0 || options.accountIndex && options.accountIndex !== 0 || options.addressIndex && options.addressIndex !== 0) {
|
|
6
|
+
throw new Error('--bls-path cannot be used with --count, --publisher-count, --account-index, or --address-index');
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export function validateStakerOutputOptions(options) {
|
|
11
|
+
if (!options.stakerOutput) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
// Required options for staker output
|
|
15
|
+
if (!options.gseAddress) {
|
|
16
|
+
throw new Error('--gse-address is required when using --staker-output');
|
|
17
|
+
}
|
|
18
|
+
if (!options.l1RpcUrls || options.l1RpcUrls.length === 0) {
|
|
19
|
+
throw new Error('--l1-rpc-urls is required when using --staker-output');
|
|
20
|
+
}
|
|
21
|
+
if (options.l1ChainId === undefined) {
|
|
22
|
+
throw new Error('--l1-chain-id is required when using --staker-output');
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export function validateRemoteSignerOptions(options) {
|
|
26
|
+
if (options.remoteSigner && !options.mnemonic) {
|
|
27
|
+
throw new Error('Using --remote-signer requires a deterministic key source. Provide --mnemonic to derive keys, or omit --remote-signer to write new private keys to keystore.');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export function validatePublisherOptions(options) {
|
|
31
|
+
if (options.publisherCount && options.publisherCount > 0 && options.publishers && options.publishers.length > 0) {
|
|
32
|
+
throw new Error('--publishers and --publisher-count cannot be used together');
|
|
33
|
+
}
|
|
34
|
+
if (options.publishers && options.publishers.length > 0) {
|
|
35
|
+
// Normalize each private key by adding 0x prefix if missing
|
|
36
|
+
const normalizedKeys = [];
|
|
37
|
+
for (const key of options.publishers){
|
|
38
|
+
let privateKey = key.trim();
|
|
39
|
+
if (!privateKey.startsWith('0x')) {
|
|
40
|
+
privateKey = '0x' + privateKey;
|
|
41
|
+
}
|
|
42
|
+
try {
|
|
43
|
+
ethPrivateKeySchema.parse(privateKey);
|
|
44
|
+
normalizedKeys.push(privateKey);
|
|
45
|
+
} catch (error) {
|
|
46
|
+
throw new Error(`Invalid publisher private key: ${error instanceof Error ? error.message : String(error)}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Update the options with the normalized keys
|
|
50
|
+
options.publishers = normalizedKeys;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -15,4 +15,4 @@ export interface CachedFetchOptions {
|
|
|
15
15
|
* @returns The fetched and parsed JSON data, or undefined if fetch fails and throwOnError is false
|
|
16
16
|
*/
|
|
17
17
|
export declare function cachedFetch<T = any>(url: string, options: CachedFetchOptions, fetch?: typeof globalThis.fetch, log?: import("@aztec/aztec.js/log").Logger): Promise<T | undefined>;
|
|
18
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkX2ZldGNoLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2NhY2hlZF9mZXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLFdBQVcsa0JBQWtCO0lBQ2pDLHFDQUFxQztJQUNyQyxlQUFlLEVBQUUsTUFBTSxDQUFDO0lBQ3hCLHFCQUFxQjtJQUNyQixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDcEI7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0IsV0FBVyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQ3ZDLEdBQUcsRUFBRSxNQUFNLEVBQ1gsT0FBTyxFQUFFLGtCQUFrQixFQUMzQixLQUFLLDBCQUFtQixFQUN4QixHQUFHLHVDQUErQixHQUNqQyxPQUFPLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQXVDeEIifQ==
|
|
@@ -1,24 +1,27 @@
|
|
|
1
|
-
import { type L1ContractsConfig } from '@aztec/ethereum';
|
|
1
|
+
import { type L1ContractsConfig } from '@aztec/ethereum/config';
|
|
2
|
+
import type { L1TxUtilsConfig } from '@aztec/ethereum/l1-tx-utils';
|
|
2
3
|
import type { NetworkNames } from '@aztec/foundation/config';
|
|
3
4
|
import type { SharedNodeConfig } from '@aztec/node-lib/config';
|
|
4
|
-
import type {
|
|
5
|
-
|
|
5
|
+
import type { P2PConfig } from '@aztec/p2p';
|
|
6
|
+
import type { SequencerConfig, SlasherConfig } from '@aztec/stdlib/interfaces/server';
|
|
7
|
+
export type L2ChainConfig = Omit<L1ContractsConfig, keyof L1TxUtilsConfig> & Omit<SlasherConfig, 'slashValidatorsNever' | 'slashValidatorsAlways' | 'slashOverridePayload' | 'slashSelfAllowed'> & Pick<P2PConfig, 'bootstrapNodes' | 'p2pEnabled' | 'txPoolDeleteTxsAfterReorg'> & Pick<SequencerConfig, 'minTxsPerBlock' | 'maxTxsPerBlock'> & {
|
|
6
8
|
l1ChainId: number;
|
|
7
9
|
testAccounts: boolean;
|
|
8
10
|
sponsoredFPC: boolean;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
seqMinTxsPerBlock: number;
|
|
12
|
-
seqMaxTxsPerBlock: number;
|
|
11
|
+
minTxsPerBlock: number;
|
|
12
|
+
maxTxsPerBlock: number;
|
|
13
13
|
realProofs: boolean;
|
|
14
14
|
snapshotsUrls: string[];
|
|
15
15
|
autoUpdate: SharedNodeConfig['autoUpdate'];
|
|
16
16
|
autoUpdateUrl?: string;
|
|
17
17
|
maxTxPoolSize: number;
|
|
18
|
+
publicMetricsOptOut: boolean;
|
|
18
19
|
publicIncludeMetrics?: string[];
|
|
19
20
|
publicMetricsCollectorUrl?: string;
|
|
20
21
|
publicMetricsCollectFrom?: string[];
|
|
21
|
-
|
|
22
|
+
skipArchiverInitialSync?: boolean;
|
|
23
|
+
blobAllowEmptySources?: boolean;
|
|
24
|
+
dataStoreMapSizeKb: number;
|
|
22
25
|
archiverStoreMapSizeKb: number;
|
|
23
26
|
noteHashTreeMapSizeKb: number;
|
|
24
27
|
nullifierTreeMapSizeKb: number;
|
|
@@ -33,5 +36,6 @@ export declare const testnetL2ChainConfig: L2ChainConfig;
|
|
|
33
36
|
export declare const mainnetL2ChainConfig: L2ChainConfig;
|
|
34
37
|
export declare const devnetL2ChainConfig: L2ChainConfig;
|
|
35
38
|
export declare function getL2ChainConfig(networkName: NetworkNames): L2ChainConfig | undefined;
|
|
36
|
-
export declare function
|
|
37
|
-
|
|
39
|
+
export declare function enrichEnvironmentWithChainName(networkName: NetworkNames): void;
|
|
40
|
+
export declare function enrichEnvironmentWithChainConfig(config: L2ChainConfig): void;
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW5fbDJfY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2NoYWluX2wyX2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRCLEtBQUssaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRixPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU3RCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QyxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFZdEYsTUFBTSxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUMsR0FDeEUsSUFBSSxDQUFDLGFBQWEsRUFBRSxzQkFBc0IsR0FBRyx1QkFBdUIsR0FBRyxzQkFBc0IsR0FBRyxrQkFBa0IsQ0FBQyxHQUNuSCxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixHQUFHLFlBQVksR0FBRywyQkFBMkIsQ0FBQyxHQUM5RSxJQUFJLENBQUMsZUFBZSxFQUFFLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLEdBQUc7SUFDM0QsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLFlBQVksRUFBRSxPQUFPLENBQUM7SUFDdEIsY0FBYyxFQUFFLE1BQU0sQ0FBQztJQUN2QixjQUFjLEVBQUUsTUFBTSxDQUFDO0lBQ3ZCLFVBQVUsRUFBRSxPQUFPLENBQUM7SUFDcEIsYUFBYSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3hCLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzQyxhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdkIsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixtQkFBbUIsRUFBRSxPQUFPLENBQUM7SUFDN0Isb0JBQW9CLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNoQyx5QkFBeUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNuQyx3QkFBd0IsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3BDLHVCQUF1QixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQ2xDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBSWhDLGtCQUFrQixFQUFFLE1BQU0sQ0FBQztJQUMzQixzQkFBc0IsRUFBRSxNQUFNLENBQUM7SUFDL0IscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0lBQzlCLHNCQUFzQixFQUFFLE1BQU0sQ0FBQztJQUMvQix1QkFBdUIsRUFBRSxNQUFNLENBQUM7SUFHaEMsZUFBZSxFQUFFLE9BQU8sQ0FBQztJQUN6QixtQkFBbUIsRUFBRSxPQUFPLENBQUM7Q0FDOUIsQ0FBQztBQStDSixlQUFPLE1BQU0sNEJBQTRCLEVBQUUsYUFtRjFDLENBQUM7QUFFRixlQUFPLE1BQU0sMEJBQTBCLEVBQUUsYUF1RHhDLENBQUM7QUFFRixlQUFPLE1BQU0sb0JBQW9CLEVBQUUsYUF1RGxDLENBQUM7QUFFRixlQUFPLE1BQU0sb0JBQW9CLEVBQUUsYUF5RmxDLENBQUM7QUFFRixlQUFPLE1BQU0sb0JBQW9CLEVBQUUsYUF3RmxDLENBQUM7QUFFRixlQUFPLE1BQU0sbUJBQW1CLEVBQUUsYUF1RGpDLENBQUM7QUFFRix3QkFBZ0IsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLFlBQVksR0FBRyxhQUFhLEdBQUcsU0FBUyxDQWdCckY7QUFNRCx3QkFBZ0IsOEJBQThCLENBQUMsV0FBVyxFQUFFLFlBQVksUUFhdkU7QUFFRCx3QkFBZ0IsZ0NBQWdDLENBQUMsTUFBTSxFQUFFLGFBQWEsUUFpR3JFIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain_l2_config.d.ts","sourceRoot":"","sources":["../../src/config/chain_l2_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"chain_l2_config.d.ts","sourceRoot":"","sources":["../../src/config/chain_l2_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAYtF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,eAAe,CAAC,GACxE,IAAI,CAAC,aAAa,EAAE,sBAAsB,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,kBAAkB,CAAC,GACnH,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,YAAY,GAAG,2BAA2B,CAAC,GAC9E,IAAI,CAAC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,CAAC,GAAG;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAIhC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,uBAAuB,EAAE,MAAM,CAAC;IAGhC,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AA+CJ,eAAO,MAAM,4BAA4B,EAAE,aAmF1C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,aAuDxC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAuDlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAyFlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAwFlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAuDjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,YAAY,GAAG,aAAa,GAAG,SAAS,CAgBrF;AAMD,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,YAAY,QAavE;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,aAAa,QAiGrE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DefaultL1ContractsConfig } from '@aztec/ethereum';
|
|
1
|
+
import { DefaultL1ContractsConfig } from '@aztec/ethereum/config';
|
|
2
2
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import publicIncludeMetrics from '../../public_include_metric_prefixes.json' with {
|
|
@@ -37,7 +37,7 @@ const DefaultSlashConfig = {
|
|
|
37
37
|
slashExecuteRoundsLookBack: 4
|
|
38
38
|
};
|
|
39
39
|
const DefaultNetworkDBMapSizeConfig = {
|
|
40
|
-
|
|
40
|
+
dataStoreMapSizeKb: defaultDBMapSizeKb,
|
|
41
41
|
archiverStoreMapSizeKb: tbMapSizeKb,
|
|
42
42
|
noteHashTreeMapSizeKb: tbMapSizeKb,
|
|
43
43
|
nullifierTreeMapSizeKb: tbMapSizeKb,
|
|
@@ -49,26 +49,30 @@ export const stagingIgnitionL2ChainConfig = {
|
|
|
49
49
|
sponsoredFPC: false,
|
|
50
50
|
disableTransactions: true,
|
|
51
51
|
p2pEnabled: true,
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
bootstrapNodes: [],
|
|
53
|
+
minTxsPerBlock: 0,
|
|
54
|
+
maxTxsPerBlock: 0,
|
|
55
55
|
realProofs: true,
|
|
56
56
|
snapshotsUrls: [
|
|
57
57
|
`${SNAPSHOTS_URL}/staging-ignition/`
|
|
58
58
|
],
|
|
59
59
|
autoUpdate: 'config-and-version',
|
|
60
60
|
autoUpdateUrl: 'https://storage.googleapis.com/aztec-testnet/auto-update/staging-ignition.json',
|
|
61
|
-
maxTxPoolSize:
|
|
61
|
+
maxTxPoolSize: 0,
|
|
62
|
+
publicMetricsOptOut: false,
|
|
62
63
|
publicIncludeMetrics,
|
|
63
64
|
publicMetricsCollectorUrl: 'https://telemetry.alpha-testnet.aztec-labs.com/v1/metrics',
|
|
64
65
|
publicMetricsCollectFrom: [
|
|
65
66
|
'sequencer'
|
|
66
67
|
],
|
|
68
|
+
txPoolDeleteTxsAfterReorg: false,
|
|
69
|
+
blobAllowEmptySources: true,
|
|
67
70
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
68
71
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
69
72
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
70
73
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
71
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
74
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
75
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
72
76
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
73
77
|
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
74
78
|
slashingRoundSizeInEpochs: 4,
|
|
@@ -89,7 +93,6 @@ export const stagingIgnitionL2ChainConfig = {
|
|
|
89
93
|
governanceProposerRoundSize: 300,
|
|
90
94
|
governanceProposerQuorum: 151,
|
|
91
95
|
// Node slashing config
|
|
92
|
-
// TODO TMNT-330
|
|
93
96
|
slashMinPenaltyPercentage: 0.5,
|
|
94
97
|
slashMaxPenaltyPercentage: 2.0,
|
|
95
98
|
slashInactivityTargetPercentage: 0.7,
|
|
@@ -115,27 +118,30 @@ export const stagingPublicL2ChainConfig = {
|
|
|
115
118
|
sponsoredFPC: true,
|
|
116
119
|
disableTransactions: false,
|
|
117
120
|
p2pEnabled: true,
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
+
bootstrapNodes: [],
|
|
122
|
+
minTxsPerBlock: 0,
|
|
123
|
+
maxTxsPerBlock: 20,
|
|
121
124
|
realProofs: true,
|
|
122
125
|
snapshotsUrls: [
|
|
123
126
|
`${SNAPSHOTS_URL}/staging-public/`
|
|
124
127
|
],
|
|
125
128
|
autoUpdate: 'config-and-version',
|
|
126
129
|
autoUpdateUrl: 'https://storage.googleapis.com/aztec-testnet/auto-update/staging-public.json',
|
|
130
|
+
publicMetricsOptOut: false,
|
|
127
131
|
publicIncludeMetrics,
|
|
128
132
|
publicMetricsCollectorUrl: 'https://telemetry.alpha-testnet.aztec-labs.com/v1/metrics',
|
|
129
133
|
publicMetricsCollectFrom: [
|
|
130
134
|
'sequencer'
|
|
131
135
|
],
|
|
132
136
|
maxTxPoolSize: 100_000_000,
|
|
137
|
+
txPoolDeleteTxsAfterReorg: true,
|
|
133
138
|
// Deployment stuff
|
|
134
139
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
135
140
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
136
141
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
137
142
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 48,
|
|
138
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
143
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
144
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
139
145
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
140
146
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
141
147
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -154,25 +160,28 @@ export const nextNetL2ChainConfig = {
|
|
|
154
160
|
sponsoredFPC: true,
|
|
155
161
|
p2pEnabled: true,
|
|
156
162
|
disableTransactions: false,
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
163
|
+
bootstrapNodes: [],
|
|
164
|
+
minTxsPerBlock: 0,
|
|
165
|
+
maxTxsPerBlock: 8,
|
|
160
166
|
realProofs: true,
|
|
161
167
|
snapshotsUrls: [],
|
|
162
168
|
autoUpdate: 'config-and-version',
|
|
163
169
|
autoUpdateUrl: '',
|
|
170
|
+
publicMetricsOptOut: true,
|
|
164
171
|
publicIncludeMetrics,
|
|
165
172
|
publicMetricsCollectorUrl: '',
|
|
166
173
|
publicMetricsCollectFrom: [
|
|
167
174
|
''
|
|
168
175
|
],
|
|
169
176
|
maxTxPoolSize: 100_000_000,
|
|
177
|
+
txPoolDeleteTxsAfterReorg: false,
|
|
170
178
|
// Deployment stuff
|
|
171
179
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
172
180
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
173
181
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
174
182
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 48,
|
|
175
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
183
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
184
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
176
185
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
177
186
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
178
187
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -191,9 +200,9 @@ export const testnetL2ChainConfig = {
|
|
|
191
200
|
sponsoredFPC: true,
|
|
192
201
|
p2pEnabled: true,
|
|
193
202
|
disableTransactions: true,
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
203
|
+
bootstrapNodes: [],
|
|
204
|
+
minTxsPerBlock: 0,
|
|
205
|
+
maxTxsPerBlock: 0,
|
|
197
206
|
realProofs: true,
|
|
198
207
|
snapshotsUrls: [
|
|
199
208
|
`${SNAPSHOTS_URL}/testnet/`
|
|
@@ -201,95 +210,128 @@ export const testnetL2ChainConfig = {
|
|
|
201
210
|
autoUpdate: 'config-and-version',
|
|
202
211
|
autoUpdateUrl: 'https://storage.googleapis.com/aztec-testnet/auto-update/testnet.json',
|
|
203
212
|
maxTxPoolSize: 100_000_000,
|
|
213
|
+
publicMetricsOptOut: false,
|
|
204
214
|
publicIncludeMetrics,
|
|
205
215
|
publicMetricsCollectorUrl: 'https://telemetry.alpha-testnet.aztec-labs.com/v1/metrics',
|
|
206
216
|
publicMetricsCollectFrom: [
|
|
207
217
|
'sequencer'
|
|
208
218
|
],
|
|
209
|
-
|
|
219
|
+
txPoolDeleteTxsAfterReorg: true,
|
|
220
|
+
skipArchiverInitialSync: true,
|
|
221
|
+
blobAllowEmptySources: true,
|
|
210
222
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
211
|
-
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration:
|
|
223
|
+
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
212
224
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
213
|
-
/** The target validator committee size. */ aztecTargetCommitteeSize:
|
|
214
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
225
|
+
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
226
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
227
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
215
228
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
|
|
220
|
-
|
|
229
|
+
// This is a diff from mainnet: we have 2-strikes you're out, rather than 3 on mainnet.
|
|
230
|
+
localEjectionThreshold: 198_000n * 10n ** 18n,
|
|
231
|
+
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
232
|
+
slashingRoundSizeInEpochs: 4,
|
|
233
|
+
slashingExecutionDelayInRounds: 28,
|
|
234
|
+
slashingLifetimeInRounds: 34,
|
|
235
|
+
slashingVetoer: EthAddress.fromString('0xBbB4aF368d02827945748b28CD4b2D42e4A37480'),
|
|
236
|
+
slashingOffsetInRounds: 2,
|
|
237
|
+
slashingDisableDuration: 259_200,
|
|
238
|
+
slasherFlavor: 'tally',
|
|
239
|
+
slashAmountSmall: 2_000n * 10n ** 18n,
|
|
240
|
+
slashAmountMedium: 2_000n * 10n ** 18n,
|
|
241
|
+
slashAmountLarge: 2_000n * 10n ** 18n,
|
|
221
242
|
/** The mana target for the rollup */ manaTarget: 0n,
|
|
222
|
-
/** The proving cost per mana */ provingCostPerMana:
|
|
223
|
-
|
|
224
|
-
|
|
243
|
+
/** The proving cost per mana */ provingCostPerMana: 0n,
|
|
244
|
+
exitDelaySeconds: 4 * 24 * 60 * 60,
|
|
245
|
+
activationThreshold: 200_000n * 10n ** 18n,
|
|
246
|
+
ejectionThreshold: 100_000n * 10n ** 18n,
|
|
247
|
+
governanceProposerRoundSize: 300,
|
|
248
|
+
governanceProposerQuorum: 151,
|
|
249
|
+
// Node slashing config
|
|
250
|
+
slashInactivityTargetPercentage: 0.8,
|
|
251
|
+
slashInactivityConsecutiveEpochThreshold: 2,
|
|
252
|
+
slashInactivityPenalty: 2_000n * 10n ** 18n,
|
|
225
253
|
slashPrunePenalty: 0n,
|
|
226
254
|
slashDataWithholdingPenalty: 0n,
|
|
255
|
+
slashProposeInvalidAttestationsPenalty: 2_000n * 10n ** 18n,
|
|
256
|
+
slashAttestDescendantOfInvalidPenalty: 2_000n * 10n ** 18n,
|
|
257
|
+
slashUnknownPenalty: 2_000n * 10n ** 18n,
|
|
258
|
+
slashBroadcastedInvalidBlockPenalty: 2_000n * 10n ** 18n,
|
|
259
|
+
slashGracePeriodL2Slots: 1_200,
|
|
260
|
+
slashOffenseExpirationRounds: 8,
|
|
261
|
+
slashMinPenaltyPercentage: 0.5,
|
|
262
|
+
slashMaxPenaltyPercentage: 2.0,
|
|
263
|
+
slashMaxPayloadSize: 50,
|
|
264
|
+
slashExecuteRoundsLookBack: 4,
|
|
265
|
+
sentinelEnabled: true,
|
|
227
266
|
...DefaultNetworkDBMapSizeConfig
|
|
228
267
|
};
|
|
229
268
|
export const mainnetL2ChainConfig = {
|
|
269
|
+
txPoolDeleteTxsAfterReorg: true,
|
|
270
|
+
disableTransactions: true,
|
|
230
271
|
l1ChainId: 1,
|
|
231
272
|
testAccounts: false,
|
|
232
273
|
sponsoredFPC: false,
|
|
233
274
|
p2pEnabled: true,
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
seqMaxTxsPerBlock: 0,
|
|
275
|
+
bootstrapNodes: [],
|
|
276
|
+
minTxsPerBlock: 0,
|
|
277
|
+
maxTxsPerBlock: 0,
|
|
238
278
|
realProofs: true,
|
|
239
279
|
snapshotsUrls: [
|
|
240
280
|
`${SNAPSHOTS_URL}/mainnet/`
|
|
241
281
|
],
|
|
242
282
|
autoUpdate: 'notify',
|
|
243
283
|
autoUpdateUrl: 'https://storage.googleapis.com/aztec-mainnet/auto-update/mainnet.json',
|
|
244
|
-
maxTxPoolSize:
|
|
284
|
+
maxTxPoolSize: 0,
|
|
285
|
+
publicMetricsOptOut: true,
|
|
245
286
|
publicIncludeMetrics,
|
|
246
287
|
publicMetricsCollectorUrl: 'https://telemetry.alpha-testnet.aztec-labs.com/v1/metrics',
|
|
247
288
|
publicMetricsCollectFrom: [
|
|
248
289
|
'sequencer'
|
|
249
290
|
],
|
|
291
|
+
blobAllowEmptySources: true,
|
|
250
292
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
251
293
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
252
294
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
253
295
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
296
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
297
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
254
298
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
255
|
-
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
256
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochs: 2,
|
|
257
299
|
localEjectionThreshold: 196_000n * 10n ** 18n,
|
|
258
|
-
|
|
300
|
+
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
259
301
|
slashingRoundSizeInEpochs: 4,
|
|
260
|
-
slashingLifetimeInRounds: 40,
|
|
261
302
|
slashingExecutionDelayInRounds: 28,
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
slashAmountLarge: 50_000n * 10n ** 18n,
|
|
303
|
+
slashingLifetimeInRounds: 34,
|
|
304
|
+
slashingVetoer: EthAddress.fromString('0xBbB4aF368d02827945748b28CD4b2D42e4A37480'),
|
|
265
305
|
slashingOffsetInRounds: 2,
|
|
306
|
+
slashingDisableDuration: 259_200,
|
|
266
307
|
slasherFlavor: 'tally',
|
|
267
|
-
|
|
308
|
+
slashAmountSmall: 2_000n * 10n ** 18n,
|
|
309
|
+
slashAmountMedium: 2_000n * 10n ** 18n,
|
|
310
|
+
slashAmountLarge: 2_000n * 10n ** 18n,
|
|
268
311
|
/** The mana target for the rollup */ manaTarget: 0n,
|
|
269
|
-
exitDelaySeconds: 5 * 24 * 60 * 60,
|
|
270
312
|
/** The proving cost per mana */ provingCostPerMana: 0n,
|
|
271
|
-
|
|
313
|
+
exitDelaySeconds: 4 * 24 * 60 * 60,
|
|
272
314
|
activationThreshold: 200_000n * 10n ** 18n,
|
|
273
|
-
|
|
274
|
-
|
|
315
|
+
ejectionThreshold: 100_000n * 10n ** 18n,
|
|
316
|
+
governanceProposerRoundSize: 1000,
|
|
317
|
+
governanceProposerQuorum: 600,
|
|
275
318
|
// Node slashing config
|
|
276
|
-
|
|
277
|
-
slashMinPenaltyPercentage: 0.5,
|
|
278
|
-
slashMaxPenaltyPercentage: 2.0,
|
|
279
|
-
slashInactivityTargetPercentage: 0.7,
|
|
319
|
+
slashInactivityTargetPercentage: 0.8,
|
|
280
320
|
slashInactivityConsecutiveEpochThreshold: 2,
|
|
281
321
|
slashInactivityPenalty: 2_000n * 10n ** 18n,
|
|
282
322
|
slashPrunePenalty: 0n,
|
|
283
323
|
slashDataWithholdingPenalty: 0n,
|
|
284
|
-
slashProposeInvalidAttestationsPenalty:
|
|
285
|
-
slashAttestDescendantOfInvalidPenalty:
|
|
324
|
+
slashProposeInvalidAttestationsPenalty: 2_000n * 10n ** 18n,
|
|
325
|
+
slashAttestDescendantOfInvalidPenalty: 2_000n * 10n ** 18n,
|
|
286
326
|
slashUnknownPenalty: 2_000n * 10n ** 18n,
|
|
287
|
-
slashBroadcastedInvalidBlockPenalty:
|
|
288
|
-
|
|
289
|
-
slashGracePeriodL2Slots: 32 * 4,
|
|
327
|
+
slashBroadcastedInvalidBlockPenalty: 2_000n * 10n ** 18n,
|
|
328
|
+
slashGracePeriodL2Slots: 1_200,
|
|
290
329
|
slashOffenseExpirationRounds: 8,
|
|
291
|
-
|
|
330
|
+
slashMinPenaltyPercentage: 0.5,
|
|
331
|
+
slashMaxPenaltyPercentage: 2.0,
|
|
332
|
+
slashMaxPayloadSize: 50,
|
|
292
333
|
slashExecuteRoundsLookBack: 4,
|
|
334
|
+
sentinelEnabled: true,
|
|
293
335
|
...DefaultNetworkDBMapSizeConfig
|
|
294
336
|
};
|
|
295
337
|
export const devnetL2ChainConfig = {
|
|
@@ -298,25 +340,28 @@ export const devnetL2ChainConfig = {
|
|
|
298
340
|
sponsoredFPC: true,
|
|
299
341
|
p2pEnabled: true,
|
|
300
342
|
disableTransactions: false,
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
343
|
+
bootstrapNodes: [],
|
|
344
|
+
minTxsPerBlock: 0,
|
|
345
|
+
maxTxsPerBlock: 8,
|
|
304
346
|
realProofs: false,
|
|
305
347
|
snapshotsUrls: [],
|
|
306
348
|
autoUpdate: 'config-and-version',
|
|
307
349
|
autoUpdateUrl: '',
|
|
350
|
+
publicMetricsOptOut: true,
|
|
308
351
|
publicIncludeMetrics,
|
|
309
352
|
publicMetricsCollectorUrl: '',
|
|
310
353
|
publicMetricsCollectFrom: [
|
|
311
354
|
''
|
|
312
355
|
],
|
|
313
356
|
maxTxPoolSize: 100_000_000,
|
|
357
|
+
txPoolDeleteTxsAfterReorg: true,
|
|
314
358
|
// Deployment stuff
|
|
315
359
|
/** How many seconds an L1 slot lasts. */ ethereumSlotDuration: 12,
|
|
316
360
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
317
361
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 8,
|
|
318
362
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 1,
|
|
319
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
363
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 1,
|
|
364
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 1,
|
|
320
365
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
321
366
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
322
367
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -361,7 +406,7 @@ export function getL2ChainConfig(networkName) {
|
|
|
361
406
|
function getDefaultDataDir(networkName) {
|
|
362
407
|
return path.join(process.env.HOME || '~', '.aztec', networkName, 'data');
|
|
363
408
|
}
|
|
364
|
-
export function
|
|
409
|
+
export function enrichEnvironmentWithChainName(networkName) {
|
|
365
410
|
if (networkName === 'local') {
|
|
366
411
|
return;
|
|
367
412
|
}
|
|
@@ -370,22 +415,32 @@ export function enrichEnvironmentWithChainConfig(networkName) {
|
|
|
370
415
|
if (!config) {
|
|
371
416
|
throw new Error(`Unknown network name: ${networkName}`);
|
|
372
417
|
}
|
|
373
|
-
|
|
418
|
+
enrichEnvironmentWithChainConfig(config);
|
|
419
|
+
}
|
|
420
|
+
export function enrichEnvironmentWithChainConfig(config) {
|
|
421
|
+
enrichVar('BOOTSTRAP_NODES', config.bootstrapNodes.join(','));
|
|
374
422
|
enrichVar('TEST_ACCOUNTS', config.testAccounts.toString());
|
|
375
423
|
enrichVar('SPONSORED_FPC', config.sponsoredFPC.toString());
|
|
376
424
|
enrichVar('P2P_ENABLED', config.p2pEnabled.toString());
|
|
377
425
|
enrichVar('L1_CHAIN_ID', config.l1ChainId.toString());
|
|
378
|
-
enrichVar('SEQ_MIN_TX_PER_BLOCK', config.
|
|
379
|
-
enrichVar('SEQ_MAX_TX_PER_BLOCK', config.
|
|
426
|
+
enrichVar('SEQ_MIN_TX_PER_BLOCK', config.minTxsPerBlock.toString());
|
|
427
|
+
enrichVar('SEQ_MAX_TX_PER_BLOCK', config.maxTxsPerBlock.toString());
|
|
380
428
|
enrichVar('PROVER_REAL_PROOFS', config.realProofs.toString());
|
|
381
429
|
enrichVar('PXE_PROVER_ENABLED', config.realProofs.toString());
|
|
382
430
|
enrichVar('SYNC_SNAPSHOTS_URLS', config.snapshotsUrls.join(','));
|
|
383
431
|
enrichVar('P2P_MAX_TX_POOL_SIZE', config.maxTxPoolSize.toString());
|
|
384
|
-
enrichVar('
|
|
432
|
+
enrichVar('P2P_TX_POOL_DELETE_TXS_AFTER_REORG', config.txPoolDeleteTxsAfterReorg.toString());
|
|
433
|
+
enrichVar('DATA_STORE_MAP_SIZE_KB', config.dataStoreMapSizeKb.toString());
|
|
385
434
|
enrichVar('ARCHIVER_STORE_MAP_SIZE_KB', config.archiverStoreMapSizeKb.toString());
|
|
386
435
|
enrichVar('NOTE_HASH_TREE_MAP_SIZE_KB', config.noteHashTreeMapSizeKb.toString());
|
|
387
436
|
enrichVar('NULLIFIER_TREE_MAP_SIZE_KB', config.nullifierTreeMapSizeKb.toString());
|
|
388
437
|
enrichVar('PUBLIC_DATA_TREE_MAP_SIZE_KB', config.publicDataTreeMapSizeKb.toString());
|
|
438
|
+
if (config.skipArchiverInitialSync !== undefined) {
|
|
439
|
+
enrichVar('SKIP_ARCHIVER_INITIAL_SYNC', config.skipArchiverInitialSync.toString());
|
|
440
|
+
}
|
|
441
|
+
if (config.blobAllowEmptySources !== undefined) {
|
|
442
|
+
enrichVar('BLOB_ALLOW_EMPTY_SOURCES', config.blobAllowEmptySources.toString());
|
|
443
|
+
}
|
|
389
444
|
if (config.autoUpdate) {
|
|
390
445
|
enrichVar('AUTO_UPDATE', config.autoUpdate?.toString());
|
|
391
446
|
}
|
|
@@ -401,11 +456,14 @@ export function enrichEnvironmentWithChainConfig(networkName) {
|
|
|
401
456
|
if (config.publicMetricsCollectFrom) {
|
|
402
457
|
enrichVar('PUBLIC_OTEL_COLLECT_FROM', config.publicMetricsCollectFrom.join(','));
|
|
403
458
|
}
|
|
459
|
+
enrichVar('PUBLIC_OTEL_OPT_OUT', config.publicMetricsOptOut.toString());
|
|
404
460
|
// Deployment stuff
|
|
405
461
|
enrichVar('ETHEREUM_SLOT_DURATION', config.ethereumSlotDuration.toString());
|
|
406
462
|
enrichVar('AZTEC_SLOT_DURATION', config.aztecSlotDuration.toString());
|
|
407
463
|
enrichVar('AZTEC_EPOCH_DURATION', config.aztecEpochDuration.toString());
|
|
408
464
|
enrichVar('AZTEC_TARGET_COMMITTEE_SIZE', config.aztecTargetCommitteeSize.toString());
|
|
465
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET', config.lagInEpochsForValidatorSet.toString());
|
|
466
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_RANDAO', config.lagInEpochsForRandao.toString());
|
|
409
467
|
enrichVar('AZTEC_PROOF_SUBMISSION_EPOCHS', config.aztecProofSubmissionEpochs.toString());
|
|
410
468
|
enrichVar('AZTEC_ACTIVATION_THRESHOLD', config.activationThreshold.toString());
|
|
411
469
|
enrichVar('AZTEC_EJECTION_THRESHOLD', config.ejectionThreshold.toString());
|
|
@@ -423,6 +481,7 @@ export function enrichEnvironmentWithChainConfig(networkName) {
|
|
|
423
481
|
enrichVar('AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS', config.slashingExecutionDelayInRounds.toString());
|
|
424
482
|
enrichVar('AZTEC_SLASHING_OFFSET_IN_ROUNDS', config.slashingOffsetInRounds.toString());
|
|
425
483
|
enrichVar('AZTEC_SLASHER_FLAVOR', config.slasherFlavor);
|
|
484
|
+
enrichVar('AZTEC_SLASHING_DISABLE_DURATION', config.slashingDisableDuration.toString());
|
|
426
485
|
enrichVar('AZTEC_EXIT_DELAY_SECONDS', config.exitDelaySeconds.toString());
|
|
427
486
|
enrichEthAddressVar('AZTEC_SLASHING_VETOER', config.slashingVetoer.toString());
|
|
428
487
|
// Slashing
|
|
@@ -439,6 +498,8 @@ export function enrichEnvironmentWithChainConfig(networkName) {
|
|
|
439
498
|
enrichVar('SLASH_INVALID_BLOCK_PENALTY', config.slashBroadcastedInvalidBlockPenalty.toString());
|
|
440
499
|
enrichVar('SLASH_OFFENSE_EXPIRATION_ROUNDS', config.slashOffenseExpirationRounds.toString());
|
|
441
500
|
enrichVar('SLASH_MAX_PAYLOAD_SIZE', config.slashMaxPayloadSize.toString());
|
|
501
|
+
enrichVar('SLASH_GRACE_PERIOD_L2_SLOTS', config.slashGracePeriodL2Slots.toString());
|
|
502
|
+
enrichVar('SLASH_EXECUTE_ROUNDS_LOOK_BACK', config.slashExecuteRoundsLookBack.toString());
|
|
442
503
|
enrichVar('SENTINEL_ENABLED', config.sentinelEnabled.toString());
|
|
443
504
|
enrichVar('TRANSACTIONS_DISABLED', config.disableTransactions.toString());
|
|
444
505
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { EnvVar } from '@aztec/foundation/config';
|
|
2
2
|
export declare function enrichVar(envVar: EnvVar, value: string | undefined): void;
|
|
3
3
|
export declare function enrichEthAddressVar(envVar: EnvVar, value: string): void;
|
|
4
|
-
//# sourceMappingURL=
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5yaWNoX2Vudi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9lbnJpY2hfZW52LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXZELHdCQUFnQixTQUFTLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLFNBQVMsUUFNbEU7QUFFRCx3QkFBZ0IsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUdoRSJ9
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
|
|
2
|
+
import { getL1ContractsConfig } from '@aztec/ethereum/queries';
|
|
2
3
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
4
|
export declare function getL1Config(registryAddress: EthAddress, l1RpcUrls: string[], l1ChainId: number, rollupVersion?: number | 'canonical'): Promise<{
|
|
4
5
|
addresses: L1ContractAddresses;
|
|
5
6
|
config: Awaited<ReturnType<typeof getL1ContractsConfig>>;
|
|
6
7
|
}>;
|
|
7
8
|
export declare function getL1RollupAddressFromEnv(l1RpcUrls: string[], l1ChainId: number): Promise<EthAddress>;
|
|
8
|
-
//# sourceMappingURL=
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X2wxX2NvbmZpZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9nZXRfbDFfY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTNELHdCQUFzQixXQUFXLENBQy9CLGVBQWUsRUFBRSxVQUFVLEVBQzNCLFNBQVMsRUFBRSxNQUFNLEVBQUUsRUFDbkIsU0FBUyxFQUFFLE1BQU0sRUFDakIsYUFBYSxHQUFFLE1BQU0sR0FBRyxXQUF5QixHQUNoRCxPQUFPLENBQUM7SUFBRSxTQUFTLEVBQUUsbUJBQW1CLENBQUM7SUFBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLG9CQUFvQixDQUFDLENBQUMsQ0FBQTtDQUFFLENBQUMsQ0FVdkc7QUFFRCx3QkFBc0IseUJBQXlCLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQU9yRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get_l1_config.d.ts","sourceRoot":"","sources":["../../src/config/get_l1_config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get_l1_config.d.ts","sourceRoot":"","sources":["../../src/config/get_l1_config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,wBAAsB,WAAW,CAC/B,eAAe,EAAE,UAAU,EAC3B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,aAAa,GAAE,MAAM,GAAG,WAAyB,GAChD,OAAO,CAAC;IAAE,SAAS,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAA;CAAE,CAAC,CAUvG;AAED,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,uBAOrF"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getPublicClient } from '@aztec/ethereum/client';
|
|
2
|
+
import { RegistryContract } from '@aztec/ethereum/contracts';
|
|
3
|
+
import { getL1ContractsConfig } from '@aztec/ethereum/queries';
|
|
2
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
5
|
export async function getL1Config(registryAddress, l1RpcUrls, l1ChainId, rollupVersion = 'canonical') {
|
|
4
6
|
const publicClient = getPublicClient({
|
package/dest/config/index.d.ts
CHANGED
|
@@ -2,4 +2,4 @@ export * from './cached_fetch.js';
|
|
|
2
2
|
export * from './chain_l2_config.js';
|
|
3
3
|
export * from './get_l1_config.js';
|
|
4
4
|
export * from './network_config.js';
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxxQkFBcUIsQ0FBQyJ9
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { type NetworkConfig, type NetworkNames } from '@aztec/foundation/config';
|
|
2
2
|
/**
|
|
3
3
|
* Fetches remote network configuration from GitHub with caching support.
|
|
4
|
-
* Uses the reusable cachedFetch utility.
|
|
4
|
+
* Uses the reusable cachedFetch utility. Falls back to metadata.aztec.network if the default URL fails.
|
|
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=
|
|
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;
|
|
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"}
|