@aztec/cli 0.0.0-test.1 → 0.0.1-commit.5476d83
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 +2 -428
- package/dest/cmds/aztec_node/block_number.d.ts +3 -0
- package/dest/cmds/aztec_node/block_number.d.ts.map +1 -0
- package/dest/cmds/aztec_node/block_number.js +10 -0
- package/dest/cmds/aztec_node/get_block.d.ts +3 -0
- package/dest/cmds/aztec_node/get_block.d.ts.map +1 -0
- package/dest/cmds/aztec_node/get_block.js +9 -0
- package/dest/cmds/aztec_node/get_current_base_fee.d.ts +3 -0
- package/dest/cmds/aztec_node/get_current_base_fee.d.ts.map +1 -0
- package/dest/cmds/aztec_node/get_current_base_fee.js +7 -0
- package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts +5 -0
- package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts.map +1 -0
- package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.js +12 -0
- package/dest/cmds/aztec_node/get_logs.d.ts +6 -0
- package/dest/cmds/aztec_node/get_logs.d.ts.map +1 -0
- package/dest/cmds/{pxe → aztec_node}/get_logs.js +4 -4
- package/dest/cmds/aztec_node/get_node_info.d.ts +3 -0
- package/dest/cmds/aztec_node/get_node_info.d.ts.map +1 -0
- package/dest/cmds/{pxe → aztec_node}/get_node_info.js +14 -15
- package/dest/cmds/aztec_node/index.d.ts +4 -0
- package/dest/cmds/aztec_node/index.d.ts.map +1 -0
- package/dest/cmds/aztec_node/index.js +28 -0
- 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 +12 -14
- package/dest/cmds/contracts/parse_parameter_struct.d.ts +1 -1
- package/dest/cmds/infrastructure/index.d.ts +3 -3
- package/dest/cmds/infrastructure/index.d.ts.map +1 -1
- package/dest/cmds/infrastructure/index.js +8 -9
- package/dest/cmds/infrastructure/sequencers.d.ts +5 -5
- package/dest/cmds/infrastructure/sequencers.d.ts.map +1 -1
- package/dest/cmds/infrastructure/sequencers.js +29 -16
- package/dest/cmds/infrastructure/setup_l2_contract.d.ts +2 -2
- package/dest/cmds/infrastructure/setup_l2_contract.d.ts.map +1 -1
- package/dest/cmds/infrastructure/setup_l2_contract.js +11 -24
- package/dest/cmds/l1/advance_epoch.d.ts +2 -2
- package/dest/cmds/l1/advance_epoch.d.ts.map +1 -1
- package/dest/cmds/l1/advance_epoch.js +8 -6
- package/dest/cmds/l1/assume_proven_through.d.ts +2 -2
- package/dest/cmds/l1/assume_proven_through.d.ts.map +1 -1
- package/dest/cmds/l1/assume_proven_through.js +9 -8
- package/dest/cmds/l1/bridge_erc20.d.ts +3 -3
- package/dest/cmds/l1/bridge_erc20.d.ts.map +1 -1
- package/dest/cmds/l1/bridge_erc20.js +5 -5
- package/dest/cmds/l1/create_l1_account.d.ts +1 -1
- package/dest/cmds/l1/deploy_l1_contracts.d.ts +3 -3
- package/dest/cmds/l1/deploy_l1_contracts.d.ts.map +1 -1
- package/dest/cmds/l1/deploy_l1_contracts.js +23 -6
- package/dest/cmds/l1/deploy_new_rollup.d.ts +3 -2
- package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
- package/dest/cmds/l1/deploy_new_rollup.js +17 -8
- package/dest/cmds/l1/get_l1_addresses.d.ts +2 -2
- package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
- package/dest/cmds/l1/get_l1_balance.d.ts +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 +17 -17
- package/dest/cmds/l1/index.d.ts +2 -1
- package/dest/cmds/l1/index.d.ts.map +1 -1
- package/dest/cmds/l1/index.js +33 -43
- 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 +28 -28
- package/dest/cmds/l1/trigger_seed_snapshot.d.ts +6 -0
- package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -0
- package/dest/cmds/l1/trigger_seed_snapshot.js +19 -0
- package/dest/cmds/l1/update_l1_validators.d.ts +21 -6
- package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
- package/dest/cmds/l1/update_l1_validators.js +159 -103
- 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 +2 -2
- package/dest/cmds/misc/generate_bootnode_enr.d.ts.map +1 -1
- package/dest/cmds/misc/generate_bootnode_enr.js +2 -2
- package/dest/cmds/misc/generate_p2p_private_key.d.ts +1 -1
- package/dest/cmds/misc/generate_secret_and_hash.d.ts +2 -2
- package/dest/cmds/misc/generate_secret_and_hash.d.ts.map +1 -1
- package/dest/cmds/misc/generate_secret_and_hash.js +3 -3
- package/dest/cmds/misc/generate_secret_key.d.ts +2 -2
- package/dest/cmds/misc/generate_secret_key.d.ts.map +1 -1
- package/dest/cmds/misc/generate_secret_key.js +1 -1
- package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts +3 -0
- package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts.map +1 -0
- package/dest/cmds/misc/get_canonical_sponsored_fpc_address.js +4 -0
- package/dest/cmds/misc/index.d.ts +1 -1
- package/dest/cmds/misc/index.d.ts.map +1 -1
- package/dest/cmds/misc/index.js +7 -3
- package/dest/cmds/misc/update/common.d.ts +1 -1
- package/dest/cmds/misc/update/github.d.ts +1 -2
- package/dest/cmds/misc/update/github.d.ts.map +1 -1
- package/dest/cmds/misc/update/github.js +0 -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/misc/update.d.ts.map +1 -1
- package/dest/cmds/misc/update.js +2 -3
- 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 +131 -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 +273 -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 +207 -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 +18 -0
- package/dest/config/cached_fetch.d.ts.map +1 -0
- package/dest/config/cached_fetch.js +54 -0
- package/dest/config/chain_l2_config.d.ts +40 -0
- package/dest/config/chain_l2_config.d.ts.map +1 -0
- package/dest/config/chain_l2_config.js +505 -0
- package/dest/config/enrich_env.d.ts +4 -0
- package/dest/config/enrich_env.d.ts.map +1 -0
- package/dest/config/enrich_env.js +12 -0
- package/dest/config/get_l1_config.d.ts +8 -0
- package/dest/config/get_l1_config.d.ts.map +1 -0
- package/dest/config/get_l1_config.js +22 -0
- package/dest/config/index.d.ts +5 -0
- package/dest/config/index.d.ts.map +1 -0
- package/dest/config/index.js +4 -0
- package/dest/config/network_config.d.ts +22 -0
- package/dest/config/network_config.d.ts.map +1 -0
- package/dest/config/network_config.js +109 -0
- package/dest/utils/aztec.d.ts +13 -18
- package/dest/utils/aztec.d.ts.map +1 -1
- package/dest/utils/aztec.js +54 -49
- package/dest/utils/commands.d.ts +19 -11
- package/dest/utils/commands.d.ts.map +1 -1
- package/dest/utils/commands.js +40 -14
- package/dest/utils/encoding.d.ts +1 -1
- package/dest/utils/encoding.js +1 -1
- package/dest/utils/github.d.ts +1 -2
- package/dest/utils/github.d.ts.map +1 -1
- package/dest/utils/github.js +0 -1
- package/dest/utils/index.d.ts +2 -1
- package/dest/utils/index.d.ts.map +1 -1
- package/dest/utils/index.js +1 -0
- package/dest/utils/inspect.d.ts +4 -11
- package/dest/utils/inspect.d.ts.map +1 -1
- package/dest/utils/inspect.js +19 -109
- package/dest/utils/setup_contracts.d.ts +3 -0
- package/dest/utils/setup_contracts.d.ts.map +1 -0
- package/dest/utils/setup_contracts.js +16 -0
- package/package.json +52 -36
- package/public_include_metric_prefixes.json +1 -0
- package/src/cmds/aztec_node/block_number.ts +9 -0
- package/src/cmds/aztec_node/get_block.ts +10 -0
- package/src/cmds/aztec_node/get_current_base_fee.ts +9 -0
- package/src/cmds/aztec_node/get_l1_to_l2_message_witness.ts +27 -0
- package/src/cmds/{pxe → aztec_node}/get_logs.ts +8 -7
- package/src/cmds/{pxe → aztec_node}/get_node_info.ts +15 -23
- package/src/cmds/aztec_node/index.ts +87 -0
- package/src/cmds/contracts/inspect_contract.ts +19 -16
- package/src/cmds/infrastructure/index.ts +8 -10
- package/src/cmds/infrastructure/sequencers.ts +36 -19
- package/src/cmds/infrastructure/setup_l2_contract.ts +13 -25
- package/src/cmds/l1/advance_epoch.ts +7 -5
- package/src/cmds/l1/assume_proven_through.ts +8 -7
- package/src/cmds/l1/bridge_erc20.ts +7 -4
- package/src/cmds/l1/deploy_l1_contracts.ts +32 -7
- package/src/cmds/l1/deploy_new_rollup.ts +23 -9
- package/src/cmds/l1/get_l1_addresses.ts +1 -1
- package/src/cmds/l1/governance_utils.ts +18 -17
- package/src/cmds/l1/index.ts +74 -101
- package/src/cmds/l1/prover_stats.ts +36 -29
- package/src/cmds/l1/trigger_seed_snapshot.ts +31 -0
- package/src/cmds/l1/update_l1_validators.ts +194 -94
- package/src/cmds/misc/generate_bootnode_enr.ts +3 -2
- package/src/cmds/misc/generate_secret_and_hash.ts +3 -3
- package/src/cmds/misc/generate_secret_key.ts +1 -1
- package/src/cmds/misc/get_canonical_sponsored_fpc_address.ts +7 -0
- package/src/cmds/misc/index.ts +13 -4
- package/src/cmds/misc/update/github.ts +0 -1
- package/src/cmds/misc/update/npm.ts +1 -1
- package/src/cmds/misc/update.ts +1 -7
- 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 +206 -0
- package/src/cmds/validator_keys/shared.ts +325 -0
- package/src/cmds/validator_keys/staker.ts +300 -0
- package/src/cmds/validator_keys/utils.ts +80 -0
- package/src/config/cached_fetch.ts +67 -0
- package/src/config/chain_l2_config.ts +668 -0
- package/src/config/enrich_env.ts +15 -0
- package/src/config/get_l1_config.ts +28 -0
- package/src/config/index.ts +4 -0
- package/src/config/network_config.ts +140 -0
- package/src/utils/aztec.ts +78 -65
- package/src/utils/commands.ts +54 -18
- package/src/utils/encoding.ts +1 -1
- package/src/utils/github.ts +0 -1
- package/src/utils/index.ts +1 -0
- package/src/utils/inspect.ts +23 -123
- package/src/utils/setup_contracts.ts +19 -0
- package/dest/cmds/devnet/bootstrap_network.d.ts +0 -3
- package/dest/cmds/devnet/bootstrap_network.d.ts.map +0 -1
- package/dest/cmds/devnet/bootstrap_network.js +0 -196
- package/dest/cmds/devnet/faucet.d.ts +0 -4
- package/dest/cmds/devnet/faucet.d.ts.map +0 -1
- package/dest/cmds/devnet/faucet.js +0 -26
- package/dest/cmds/devnet/index.d.ts +0 -4
- package/dest/cmds/devnet/index.d.ts.map +0 -1
- package/dest/cmds/devnet/index.js +0 -14
- package/dest/cmds/l1/deploy_l1_verifier.d.ts +0 -5
- package/dest/cmds/l1/deploy_l1_verifier.d.ts.map +0 -1
- package/dest/cmds/l1/deploy_l1_verifier.js +0 -54
- package/dest/cmds/misc/setup_contracts.d.ts +0 -7
- package/dest/cmds/misc/setup_contracts.d.ts.map +0 -1
- package/dest/cmds/misc/setup_contracts.js +0 -27
- package/dest/cmds/pxe/add_contract.d.ts +0 -5
- package/dest/cmds/pxe/add_contract.d.ts.map +0 -1
- package/dest/cmds/pxe/add_contract.js +0 -29
- package/dest/cmds/pxe/block_number.d.ts +0 -3
- package/dest/cmds/pxe/block_number.d.ts.map +0 -1
- package/dest/cmds/pxe/block_number.js +0 -10
- package/dest/cmds/pxe/get_account.d.ts +0 -4
- package/dest/cmds/pxe/get_account.d.ts.map +0 -1
- package/dest/cmds/pxe/get_account.js +0 -10
- package/dest/cmds/pxe/get_accounts.d.ts +0 -3
- package/dest/cmds/pxe/get_accounts.d.ts.map +0 -1
- package/dest/cmds/pxe/get_accounts.js +0 -25
- package/dest/cmds/pxe/get_block.d.ts +0 -3
- package/dest/cmds/pxe/get_block.d.ts.map +0 -1
- package/dest/cmds/pxe/get_block.js +0 -9
- package/dest/cmds/pxe/get_contract_data.d.ts +0 -4
- package/dest/cmds/pxe/get_contract_data.d.ts.map +0 -1
- package/dest/cmds/pxe/get_contract_data.js +0 -31
- package/dest/cmds/pxe/get_current_base_fee.d.ts +0 -3
- package/dest/cmds/pxe/get_current_base_fee.d.ts.map +0 -1
- package/dest/cmds/pxe/get_current_base_fee.js +0 -7
- package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts +0 -4
- package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts.map +0 -1
- package/dest/cmds/pxe/get_l1_to_l2_message_witness.js +0 -11
- package/dest/cmds/pxe/get_logs.d.ts +0 -4
- package/dest/cmds/pxe/get_logs.d.ts.map +0 -1
- package/dest/cmds/pxe/get_node_info.d.ts +0 -3
- package/dest/cmds/pxe/get_node_info.d.ts.map +0 -1
- package/dest/cmds/pxe/get_pxe_info.d.ts +0 -3
- package/dest/cmds/pxe/get_pxe_info.d.ts.map +0 -1
- package/dest/cmds/pxe/get_pxe_info.js +0 -11
- package/dest/cmds/pxe/index.d.ts +0 -4
- package/dest/cmds/pxe/index.d.ts.map +0 -1
- package/dest/cmds/pxe/index.js +0 -55
- package/src/cmds/devnet/bootstrap_network.ts +0 -318
- package/src/cmds/devnet/faucet.ts +0 -33
- package/src/cmds/devnet/index.ts +0 -60
- package/src/cmds/l1/deploy_l1_verifier.ts +0 -105
- package/src/cmds/misc/setup_contracts.ts +0 -40
- package/src/cmds/pxe/add_contract.ts +0 -41
- package/src/cmds/pxe/block_number.ts +0 -9
- package/src/cmds/pxe/get_account.ts +0 -16
- package/src/cmds/pxe/get_accounts.ts +0 -35
- package/src/cmds/pxe/get_block.ts +0 -10
- package/src/cmds/pxe/get_contract_data.ts +0 -51
- package/src/cmds/pxe/get_current_base_fee.ts +0 -9
- package/src/cmds/pxe/get_l1_to_l2_message_witness.ts +0 -25
- package/src/cmds/pxe/get_pxe_info.ts +0 -13
- package/src/cmds/pxe/index.ts +0 -170
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { GSEContract, RollupContract, createEthereumChain, createExtendedL1Client, createL1TxUtilsFromViemWallet, getL1ContractsConfigEnvVars, getPublicClient, isAnvilTestChain } from '@aztec/ethereum';
|
|
2
|
+
import { EthCheatCodes } from '@aztec/ethereum/test';
|
|
3
|
+
import { DateProvider } from '@aztec/foundation/timer';
|
|
4
|
+
import { RollupAbi, StakingAssetHandlerAbi } from '@aztec/l1-artifacts';
|
|
5
|
+
import { ZkPassportProofParams } from '@aztec/stdlib/zkpassport';
|
|
6
|
+
import { encodeFunctionData, formatEther, getContract } from 'viem';
|
|
4
7
|
import { generatePrivateKey, mnemonicToAccount, privateKeyToAccount } from 'viem/accounts';
|
|
8
|
+
import { addLeadingHex } from '../../utils/aztec.js';
|
|
5
9
|
export function generateL1Account() {
|
|
6
10
|
const privateKey = generatePrivateKey();
|
|
7
11
|
const account = privateKeyToAccount(privateKey);
|
|
@@ -11,106 +15,171 @@ export function generateL1Account() {
|
|
|
11
15
|
address: account.address
|
|
12
16
|
};
|
|
13
17
|
}
|
|
14
|
-
export async function addL1Validator({ rpcUrls, chainId, privateKey, mnemonic,
|
|
15
|
-
const config = getL1ContractsConfigEnvVars();
|
|
18
|
+
export async function addL1Validator({ rpcUrls, chainId, privateKey, mnemonic, attesterAddress, stakingAssetHandlerAddress, merkleProof, proofParams, blsSecretKey, log, debugLogger }) {
|
|
16
19
|
const dualLog = makeDualLog(log, debugLogger);
|
|
17
|
-
const
|
|
18
|
-
const
|
|
20
|
+
const account = getAccount(privateKey, mnemonic);
|
|
21
|
+
const chain = createEthereumChain(rpcUrls, chainId);
|
|
22
|
+
const l1Client = createExtendedL1Client(rpcUrls, account, chain.chainInfo);
|
|
23
|
+
const stakingAssetHandler = getContract({
|
|
24
|
+
address: stakingAssetHandlerAddress.toString(),
|
|
25
|
+
abi: StakingAssetHandlerAbi,
|
|
26
|
+
client: l1Client
|
|
27
|
+
});
|
|
28
|
+
const rollupAddress = await stakingAssetHandler.read.getRollup();
|
|
29
|
+
dualLog(`Adding validator ${attesterAddress} to rollup ${rollupAddress.toString()}`);
|
|
19
30
|
const rollup = getContract({
|
|
20
|
-
address: rollupAddress
|
|
31
|
+
address: rollupAddress,
|
|
21
32
|
abi: RollupAbi,
|
|
22
|
-
client:
|
|
23
|
-
});
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
dualLog(`Transaction hash: ${txHash}`);
|
|
52
|
-
await publicClient.waitForTransactionReceipt({
|
|
53
|
-
hash: txHash
|
|
33
|
+
client: l1Client
|
|
34
|
+
});
|
|
35
|
+
const gseAddress = await rollup.read.getGSE();
|
|
36
|
+
const gse = new GSEContract(l1Client, gseAddress);
|
|
37
|
+
const registrationTuple = await gse.makeRegistrationTuple(blsSecretKey);
|
|
38
|
+
const l1TxUtils = createL1TxUtilsFromViemWallet(l1Client, {
|
|
39
|
+
logger: debugLogger
|
|
40
|
+
});
|
|
41
|
+
const proofParamsObj = ZkPassportProofParams.fromBuffer(proofParams);
|
|
42
|
+
const merkleProofArray = merkleProof.map((proof)=>addLeadingHex(proof));
|
|
43
|
+
const { receipt } = await l1TxUtils.sendAndMonitorTransaction({
|
|
44
|
+
to: stakingAssetHandlerAddress.toString(),
|
|
45
|
+
data: encodeFunctionData({
|
|
46
|
+
abi: StakingAssetHandlerAbi,
|
|
47
|
+
functionName: 'addValidator',
|
|
48
|
+
args: [
|
|
49
|
+
attesterAddress.toString(),
|
|
50
|
+
merkleProofArray,
|
|
51
|
+
proofParamsObj.toViem(),
|
|
52
|
+
registrationTuple.publicKeyInG1,
|
|
53
|
+
registrationTuple.publicKeyInG2,
|
|
54
|
+
registrationTuple.proofOfPossession
|
|
55
|
+
]
|
|
56
|
+
}),
|
|
57
|
+
abi: StakingAssetHandlerAbi
|
|
58
|
+
});
|
|
59
|
+
dualLog(`Transaction hash: ${receipt.transactionHash}`);
|
|
60
|
+
await l1Client.waitForTransactionReceipt({
|
|
61
|
+
hash: receipt.transactionHash
|
|
54
62
|
});
|
|
55
63
|
if (isAnvilTestChain(chainId)) {
|
|
56
64
|
dualLog(`Funding validator on L1`);
|
|
57
|
-
const cheatCodes = new EthCheatCodes(rpcUrls, debugLogger);
|
|
58
|
-
await cheatCodes.setBalance(
|
|
65
|
+
const cheatCodes = new EthCheatCodes(rpcUrls, new DateProvider(), debugLogger);
|
|
66
|
+
await cheatCodes.setBalance(attesterAddress, 10n ** 20n);
|
|
59
67
|
} else {
|
|
60
|
-
const balance = await
|
|
61
|
-
address:
|
|
68
|
+
const balance = await l1Client.getBalance({
|
|
69
|
+
address: attesterAddress.toString()
|
|
62
70
|
});
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
dualLog(`WARNING: Validator has no balance. Remember to fund it!`);
|
|
71
|
+
dualLog(`Validator balance: ${formatEther(balance)} ETH`);
|
|
72
|
+
if (balance === 0n) {
|
|
73
|
+
dualLog(`WARNING: Proposer has no balance. Remember to fund it!`);
|
|
67
74
|
}
|
|
68
75
|
}
|
|
69
76
|
}
|
|
70
|
-
export async function
|
|
77
|
+
export async function addL1ValidatorViaRollup({ rpcUrls, chainId, privateKey, mnemonic, attesterAddress, withdrawerAddress, blsSecretKey, moveWithLatestRollup, rollupAddress, log, debugLogger }) {
|
|
71
78
|
const dualLog = makeDualLog(log, debugLogger);
|
|
72
|
-
const
|
|
73
|
-
const
|
|
79
|
+
const account = getAccount(privateKey, mnemonic);
|
|
80
|
+
const chain = createEthereumChain(rpcUrls, chainId);
|
|
81
|
+
const l1Client = createExtendedL1Client(rpcUrls, account, chain.chainInfo);
|
|
82
|
+
dualLog(`Adding validator ${attesterAddress} to rollup ${rollupAddress.toString()} via direct deposit`);
|
|
83
|
+
if (!withdrawerAddress) {
|
|
84
|
+
throw new Error(`Withdrawer address required`);
|
|
85
|
+
}
|
|
74
86
|
const rollup = getContract({
|
|
75
87
|
address: rollupAddress.toString(),
|
|
76
88
|
abi: RollupAbi,
|
|
77
|
-
client:
|
|
89
|
+
client: l1Client
|
|
90
|
+
});
|
|
91
|
+
const gseAddress = await rollup.read.getGSE();
|
|
92
|
+
const gse = new GSEContract(l1Client, gseAddress);
|
|
93
|
+
const registrationTuple = await gse.makeRegistrationTuple(blsSecretKey);
|
|
94
|
+
const l1TxUtils = createL1TxUtilsFromViemWallet(l1Client, {
|
|
95
|
+
logger: debugLogger
|
|
96
|
+
});
|
|
97
|
+
const { receipt } = await l1TxUtils.sendAndMonitorTransaction({
|
|
98
|
+
to: rollupAddress.toString(),
|
|
99
|
+
data: encodeFunctionData({
|
|
100
|
+
abi: RollupAbi,
|
|
101
|
+
functionName: 'deposit',
|
|
102
|
+
args: [
|
|
103
|
+
attesterAddress.toString(),
|
|
104
|
+
withdrawerAddress.toString(),
|
|
105
|
+
registrationTuple.publicKeyInG1,
|
|
106
|
+
registrationTuple.publicKeyInG2,
|
|
107
|
+
registrationTuple.proofOfPossession,
|
|
108
|
+
moveWithLatestRollup
|
|
109
|
+
]
|
|
110
|
+
}),
|
|
111
|
+
abi: StakingAssetHandlerAbi
|
|
112
|
+
});
|
|
113
|
+
dualLog(`Transaction hash: ${receipt.transactionHash}`);
|
|
114
|
+
await l1Client.waitForTransactionReceipt({
|
|
115
|
+
hash: receipt.transactionHash
|
|
116
|
+
});
|
|
117
|
+
if (isAnvilTestChain(chainId)) {
|
|
118
|
+
dualLog(`Funding validator on L1`);
|
|
119
|
+
const cheatCodes = new EthCheatCodes(rpcUrls, new DateProvider(), debugLogger);
|
|
120
|
+
await cheatCodes.setBalance(attesterAddress, 10n ** 20n);
|
|
121
|
+
} else {
|
|
122
|
+
const balance = await l1Client.getBalance({
|
|
123
|
+
address: attesterAddress.toString()
|
|
124
|
+
});
|
|
125
|
+
dualLog(`Validator balance: ${formatEther(balance)} ETH`);
|
|
126
|
+
if (balance === 0n) {
|
|
127
|
+
dualLog(`WARNING: Proposer has no balance. Remember to fund it!`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
export async function removeL1Validator({ rpcUrls, chainId, privateKey, mnemonic, validatorAddress, rollupAddress, log, debugLogger }) {
|
|
132
|
+
const dualLog = makeDualLog(log, debugLogger);
|
|
133
|
+
const account = getAccount(privateKey, mnemonic);
|
|
134
|
+
const chain = createEthereumChain(rpcUrls, chainId);
|
|
135
|
+
const l1Client = createExtendedL1Client(rpcUrls, account, chain.chainInfo);
|
|
136
|
+
const l1TxUtils = createL1TxUtilsFromViemWallet(l1Client, {
|
|
137
|
+
logger: debugLogger
|
|
78
138
|
});
|
|
79
139
|
dualLog(`Removing validator ${validatorAddress.toString()} from rollup ${rollupAddress.toString()}`);
|
|
80
|
-
const
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
140
|
+
const { receipt } = await l1TxUtils.sendAndMonitorTransaction({
|
|
141
|
+
to: rollupAddress.toString(),
|
|
142
|
+
data: encodeFunctionData({
|
|
143
|
+
abi: RollupAbi,
|
|
144
|
+
functionName: 'initiateWithdraw',
|
|
145
|
+
args: [
|
|
146
|
+
validatorAddress.toString(),
|
|
147
|
+
validatorAddress.toString()
|
|
148
|
+
]
|
|
149
|
+
})
|
|
87
150
|
});
|
|
151
|
+
dualLog(`Transaction hash: ${receipt.transactionHash}`);
|
|
88
152
|
}
|
|
89
153
|
export async function pruneRollup({ rpcUrls, chainId, privateKey, mnemonic, rollupAddress, log, debugLogger }) {
|
|
90
154
|
const dualLog = makeDualLog(log, debugLogger);
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
client: walletClient
|
|
155
|
+
const account = getAccount(privateKey, mnemonic);
|
|
156
|
+
const chain = createEthereumChain(rpcUrls, chainId);
|
|
157
|
+
const l1Client = createExtendedL1Client(rpcUrls, account, chain.chainInfo);
|
|
158
|
+
const l1TxUtils = createL1TxUtilsFromViemWallet(l1Client, {
|
|
159
|
+
logger: debugLogger
|
|
97
160
|
});
|
|
98
161
|
dualLog(`Trying prune`);
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
162
|
+
const { receipt } = await l1TxUtils.sendAndMonitorTransaction({
|
|
163
|
+
to: rollupAddress.toString(),
|
|
164
|
+
data: encodeFunctionData({
|
|
165
|
+
abi: RollupAbi,
|
|
166
|
+
functionName: 'prune'
|
|
167
|
+
})
|
|
103
168
|
});
|
|
169
|
+
dualLog(`Transaction hash: ${receipt.transactionHash}`);
|
|
104
170
|
}
|
|
105
171
|
export async function fastForwardEpochs({ rpcUrls, chainId, rollupAddress, numEpochs, log, debugLogger }) {
|
|
106
172
|
const dualLog = makeDualLog(log, debugLogger);
|
|
107
|
-
const publicClient = getPublicClient(
|
|
173
|
+
const publicClient = getPublicClient({
|
|
174
|
+
l1RpcUrls: rpcUrls,
|
|
175
|
+
l1ChainId: chainId
|
|
176
|
+
});
|
|
108
177
|
const rollup = getContract({
|
|
109
178
|
address: rollupAddress.toString(),
|
|
110
179
|
abi: RollupAbi,
|
|
111
180
|
client: publicClient
|
|
112
181
|
});
|
|
113
|
-
const cheatCodes = new EthCheatCodes(rpcUrls, debugLogger);
|
|
182
|
+
const cheatCodes = new EthCheatCodes(rpcUrls, new DateProvider(), debugLogger);
|
|
114
183
|
const currentSlot = await rollup.read.getCurrentSlot();
|
|
115
184
|
const l2SlotsInEpoch = await rollup.read.getEpochDuration();
|
|
116
185
|
const timestamp = await rollup.read.getTimestampForSlot([
|
|
@@ -118,7 +187,9 @@ export async function fastForwardEpochs({ rpcUrls, chainId, rollupAddress, numEp
|
|
|
118
187
|
]);
|
|
119
188
|
dualLog(`Fast forwarding ${numEpochs} epochs to ${timestamp}`);
|
|
120
189
|
try {
|
|
121
|
-
await cheatCodes.warp(Number(timestamp)
|
|
190
|
+
await cheatCodes.warp(Number(timestamp), {
|
|
191
|
+
resetBlockInterval: true
|
|
192
|
+
});
|
|
122
193
|
dualLog(`Fast forwarded ${numEpochs} epochs to ${timestamp}`);
|
|
123
194
|
} catch (error) {
|
|
124
195
|
if (error instanceof Error && error.message.includes("is lower than or equal to previous block's timestamp")) {
|
|
@@ -131,32 +202,29 @@ export async function fastForwardEpochs({ rpcUrls, chainId, rollupAddress, numEp
|
|
|
131
202
|
}
|
|
132
203
|
export async function debugRollup({ rpcUrls, chainId, rollupAddress, log }) {
|
|
133
204
|
const config = getL1ContractsConfigEnvVars();
|
|
134
|
-
const publicClient = getPublicClient(
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
abi: RollupAbi,
|
|
138
|
-
client: publicClient
|
|
205
|
+
const publicClient = getPublicClient({
|
|
206
|
+
l1RpcUrls: rpcUrls,
|
|
207
|
+
l1ChainId: chainId
|
|
139
208
|
});
|
|
140
|
-
const
|
|
209
|
+
const rollup = new RollupContract(publicClient, rollupAddress);
|
|
210
|
+
const pendingNum = await rollup.getCheckpointNumber();
|
|
141
211
|
log(`Pending block num: ${pendingNum}`);
|
|
142
|
-
const provenNum = await rollup.
|
|
212
|
+
const provenNum = await rollup.getProvenCheckpointNumber();
|
|
143
213
|
log(`Proven block num: ${provenNum}`);
|
|
144
|
-
const validators = await rollup.
|
|
214
|
+
const validators = await rollup.getAttesters();
|
|
145
215
|
log(`Validators: ${validators.map((v)=>v.toString()).join(', ')}`);
|
|
146
|
-
const committee = await rollup.
|
|
147
|
-
log(`Committee: ${committee
|
|
148
|
-
const archive = await rollup.
|
|
216
|
+
const committee = await rollup.getCurrentEpochCommittee();
|
|
217
|
+
log(`Committee: ${committee?.map((v)=>v.toString()).join(', ')}`);
|
|
218
|
+
const archive = await rollup.archive();
|
|
149
219
|
log(`Archive: ${archive}`);
|
|
150
|
-
const epochNum = await rollup.
|
|
220
|
+
const epochNum = await rollup.getCurrentEpochNumber();
|
|
151
221
|
log(`Current epoch: ${epochNum}`);
|
|
152
|
-
const slot = await rollup.
|
|
222
|
+
const slot = await rollup.getSlotNumber();
|
|
153
223
|
log(`Current slot: ${slot}`);
|
|
154
|
-
const proposerDuringPrevL1Block = await rollup.
|
|
224
|
+
const proposerDuringPrevL1Block = await rollup.getCurrentProposer();
|
|
155
225
|
log(`Proposer during previous L1 block: ${proposerDuringPrevL1Block}`);
|
|
156
226
|
const nextBlockTS = BigInt((await publicClient.getBlock()).timestamp + BigInt(config.ethereumSlotDuration));
|
|
157
|
-
const proposer = await rollup.
|
|
158
|
-
nextBlockTS
|
|
159
|
-
]);
|
|
227
|
+
const proposer = await rollup.getProposerAt(nextBlockTS);
|
|
160
228
|
log(`Proposer NOW: ${proposer.toString()}`);
|
|
161
229
|
}
|
|
162
230
|
function makeDualLog(log, debugLogger) {
|
|
@@ -165,22 +233,10 @@ function makeDualLog(log, debugLogger) {
|
|
|
165
233
|
debugLogger.info(msg);
|
|
166
234
|
};
|
|
167
235
|
}
|
|
168
|
-
function
|
|
169
|
-
const chain = createEthereumChain(rpcUrls, chainId);
|
|
170
|
-
return createPublicClient({
|
|
171
|
-
chain: chain.chainInfo,
|
|
172
|
-
transport: fallback(rpcUrls.map((url)=>http(url)))
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
function getWalletClient(rpcUrls, chainId, privateKey, mnemonic) {
|
|
236
|
+
function getAccount(privateKey, mnemonic) {
|
|
176
237
|
if (!privateKey && !mnemonic) {
|
|
177
238
|
throw new Error('Either privateKey or mnemonic must be provided to create a wallet client');
|
|
178
239
|
}
|
|
179
|
-
const chain = createEthereumChain(rpcUrls, chainId);
|
|
180
240
|
const account = !privateKey ? mnemonicToAccount(mnemonic) : privateKeyToAccount(`${privateKey.startsWith('0x') ? '' : '0x'}${privateKey}`);
|
|
181
|
-
return
|
|
182
|
-
account,
|
|
183
|
-
chain: chain.chainInfo,
|
|
184
|
-
transport: fallback(rpcUrls.map((url)=>http(url)))
|
|
185
|
-
});
|
|
241
|
+
return account;
|
|
186
242
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function computeSelector(functionSignature: string, log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZV9zZWxlY3Rvci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NtZHMvbWlzYy9jb21wdXRlX3NlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR25ELHdCQUFzQixlQUFlLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLGlCQUcxRSJ9
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function exampleContracts(log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhhbXBsZV9jb250cmFjdHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL21pc2MvZXhhbXBsZV9jb250cmFjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJbkQsd0JBQXNCLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxLQUFLLGlCQU9oRCJ9
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
|
-
export declare function generateEncodedBootnodeENR(privateKey: string,
|
|
3
|
-
//# sourceMappingURL=
|
|
2
|
+
export declare function generateEncodedBootnodeENR(privateKey: string, p2pIp: string, p2pPort: number, l1ChainId: number, log: LogFn): Promise<void>;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVfYm9vdG5vZGVfZW5yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9taXNjL2dlbmVyYXRlX2Jvb3Rub2RlX2Vuci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUduRCx3QkFBc0IsMEJBQTBCLENBQzlDLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLEtBQUssRUFBRSxNQUFNLEVBQ2IsT0FBTyxFQUFFLE1BQU0sRUFDZixTQUFTLEVBQUUsTUFBTSxFQUNqQixHQUFHLEVBQUUsS0FBSyxpQkFJWCJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate_bootnode_enr.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_bootnode_enr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,
|
|
1
|
+
{"version":3,"file":"generate_bootnode_enr.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_bootnode_enr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,KAAK,iBAIX"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createBootnodeENRandPeerId } from '@aztec/p2p/enr';
|
|
2
|
-
export async function generateEncodedBootnodeENR(privateKey,
|
|
3
|
-
const { enr } = await createBootnodeENRandPeerId(privateKey,
|
|
2
|
+
export async function generateEncodedBootnodeENR(privateKey, p2pIp, p2pPort, l1ChainId, log) {
|
|
3
|
+
const { enr } = await createBootnodeENRandPeerId(privateKey, p2pIp, p2pPort, l1ChainId);
|
|
4
4
|
log(`ENR: ${enr.encodeTxt()}`);
|
|
5
5
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function generateP2PPrivateKey(log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVfcDJwX3ByaXZhdGVfa2V5LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9taXNjL2dlbmVyYXRlX3AycF9wcml2YXRlX2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUluRCx3QkFBc0IscUJBQXFCLENBQUMsR0FBRyxFQUFFLEtBQUssaUJBS3JEIn0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
|
-
export declare function generateSecretAndHash(log: LogFn): void
|
|
3
|
-
//# sourceMappingURL=
|
|
2
|
+
export declare function generateSecretAndHash(log: LogFn): Promise<void>;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVfc2VjcmV0X2FuZF9oYXNoLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9taXNjL2dlbmVyYXRlX3NlY3JldF9hbmRfaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCx3QkFBc0IscUJBQXFCLENBQUMsR0FBRyxFQUFFLEtBQUssaUJBVXJEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate_secret_and_hash.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_secret_and_hash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,
|
|
1
|
+
{"version":3,"file":"generate_secret_and_hash.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_secret_and_hash.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,KAAK,iBAUrD"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { computeSecretHash } from '@aztec/aztec.js';
|
|
1
|
+
import { computeSecretHash } from '@aztec/aztec.js/crypto';
|
|
2
2
|
import { Fr } from '@aztec/foundation/fields';
|
|
3
|
-
export function generateSecretAndHash(log) {
|
|
3
|
+
export async function generateSecretAndHash(log) {
|
|
4
4
|
const secret = Fr.random();
|
|
5
5
|
// We hash this the same way that aztec nr hash does.
|
|
6
|
-
const secretHash = computeSecretHash(secret);
|
|
6
|
+
const secretHash = await computeSecretHash(secret);
|
|
7
7
|
log(`
|
|
8
8
|
Secret: ${secret}
|
|
9
9
|
Secret hash: ${secretHash}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Fr } from '@aztec/aztec.js';
|
|
1
|
+
import { Fr } from '@aztec/aztec.js/fields';
|
|
2
2
|
export declare function generateSecretKey(): {
|
|
3
3
|
secretKey: Fr;
|
|
4
4
|
};
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVfc2VjcmV0X2tleS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NtZHMvbWlzYy9nZW5lcmF0ZV9zZWNyZXRfa2V5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU1Qyx3QkFBZ0IsaUJBQWlCOztFQUVoQyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate_secret_key.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_secret_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"generate_secret_key.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/generate_secret_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAE5C,wBAAgB,iBAAiB;;EAEhC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LogFn } from '@aztec/foundation/log';
|
|
2
|
+
export declare function getCanonicalSponsoredFPCAddress(log: LogFn): Promise<void>;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X2Nhbm9uaWNhbF9zcG9uc29yZWRfZnBjX2FkZHJlc3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL21pc2MvZ2V0X2Nhbm9uaWNhbF9zcG9uc29yZWRfZnBjX2FkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJbkQsd0JBQXNCLCtCQUErQixDQUFDLEdBQUcsRUFBRSxLQUFLLGlCQUUvRCJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get_canonical_sponsored_fpc_address.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/get_canonical_sponsored_fpc_address.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,KAAK,iBAE/D"}
|
|
@@ -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=
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL21pc2MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHbkQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBSXpDLHdCQUFnQixjQUFjLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxXQTZGMUQifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,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/misc/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,WA6F1D"}
|
package/dest/cmds/misc/index.js
CHANGED
|
@@ -16,9 +16,9 @@ export function injectCommands(program, log) {
|
|
|
16
16
|
const { generateP2PPrivateKey } = await import('./generate_p2p_private_key.js');
|
|
17
17
|
await generateP2PPrivateKey(log);
|
|
18
18
|
});
|
|
19
|
-
program.command('generate-bootnode-enr').summary('Generates the encoded ENR record for a bootnode.').description('Generates the encoded ENR record for a bootnode.').argument('<privateKey>', 'The peer id private key of the bootnode').argument('<
|
|
19
|
+
program.command('generate-bootnode-enr').summary('Generates the encoded ENR record for a bootnode.').description('Generates the encoded ENR record for a bootnode.').argument('<privateKey>', 'The peer id private key of the bootnode').argument('<p2pIp>', 'The bootnode P2P IP address').argument('<p2pPort>', 'The bootnode P2P port').addOption(l1ChainIdOption).action(async (privateKey, p2pIp, p2pPort, options)=>{
|
|
20
20
|
const { generateEncodedBootnodeENR } = await import('./generate_bootnode_enr.js');
|
|
21
|
-
await generateEncodedBootnodeENR(privateKey,
|
|
21
|
+
await generateEncodedBootnodeENR(privateKey, p2pIp, p2pPort, options.l1ChainId, log);
|
|
22
22
|
});
|
|
23
23
|
program.command('decode-enr').summary('Decodes an ENR record').description('Decodes and ENR record').argument('<enr>', 'The encoded ENR string').action(async (enr)=>{
|
|
24
24
|
await printENR(enr, log);
|
|
@@ -33,7 +33,11 @@ export function injectCommands(program, log) {
|
|
|
33
33
|
});
|
|
34
34
|
program.command('generate-secret-and-hash').description('Generates an arbitrary secret (Fr), and its hash (using aztec-nr defaults)').action(async ()=>{
|
|
35
35
|
const { generateSecretAndHash } = await import('./generate_secret_and_hash.js');
|
|
36
|
-
generateSecretAndHash(log);
|
|
36
|
+
await generateSecretAndHash(log);
|
|
37
|
+
});
|
|
38
|
+
program.command('get-canonical-sponsored-fpc-address').description('Gets the canonical SponsoredFPC address for this any testnet running on the same version as this CLI').action(async ()=>{
|
|
39
|
+
const { getCanonicalSponsoredFPCAddress } = await import('./get_canonical_sponsored_fpc_address.js');
|
|
40
|
+
await getCanonicalSponsoredFPCAddress(log);
|
|
37
41
|
});
|
|
38
42
|
program.command('update').description('Updates Nodejs and Noir dependencies').argument('[projectPath]', 'Path to the project directory', process.cwd()).option('--contract [paths...]', 'Paths to contracts to update dependencies', []).option('--aztec-version <semver>', 'The version to update Aztec packages to. Defaults to latest', 'latest').action(async (projectPath, options)=>{
|
|
39
43
|
const { updateProject } = await import('./update.js');
|
|
@@ -14,4 +14,4 @@ export type DependencyChanges = {
|
|
|
14
14
|
to: string;
|
|
15
15
|
}>;
|
|
16
16
|
};
|
|
17
|
-
//# sourceMappingURL=
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY21kcy9taXNjL3VwZGF0ZS9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE1BQU0saUJBQWlCLEdBQUc7SUFDOUIsNkJBQTZCO0lBQzdCLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYiwrQkFBK0I7SUFDL0IsWUFBWSxFQUFFLEtBQUssQ0FBQztRQUNsQiwyQ0FBMkM7UUFDM0MsSUFBSSxFQUFFLE1BQU0sQ0FBQztRQUNiLHlDQUF5QztRQUN6QyxJQUFJLEVBQUUsTUFBTSxDQUFDO1FBQ2IsdURBQXVEO1FBQ3ZELEVBQUUsRUFBRSxNQUFNLENBQUM7S0FDWixDQUFDLENBQUM7Q0FDSixDQUFDIn0=
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
export declare const GITHUB_OWNER = "AztecProtocol";
|
|
2
2
|
export declare const GITHUB_REPO = "aztec-packages";
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=github.d.ts.map
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY21kcy9taXNjL3VwZGF0ZS9naXRodWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZUFBTyxNQUFNLFlBQVksa0JBQWtCLENBQUM7QUFDNUMsZUFBTyxNQUFNLFdBQVcsbUJBQW1CLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../../src/cmds/misc/update/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC
|
|
1
|
+
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../../src/cmds/misc/update/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC"}
|
|
@@ -7,4 +7,4 @@ import type { DependencyChanges } from './common.js';
|
|
|
7
7
|
* @param log - Logging function
|
|
8
8
|
*/
|
|
9
9
|
export declare function updateAztecNr(contractPath: string, tag: string, log: LogFn): Promise<DependencyChanges>;
|
|
10
|
-
//# sourceMappingURL=
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9pci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NtZHMvbWlzYy91cGRhdGUvbm9pci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU9uRCxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUdyRDs7Ozs7R0FLRztBQUNILHdCQUFzQixhQUFhLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBd0M3RyJ9
|
|
@@ -31,4 +31,4 @@ export declare function updateAztecDeps(projectPath: string, aztecVersion: SemVe
|
|
|
31
31
|
* @param projectPath - Path to Nodejs project
|
|
32
32
|
*/
|
|
33
33
|
export declare function updateLockfile(projectPath: string, log: LogFn): void;
|
|
34
|
-
//# sourceMappingURL=
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY21kcy9taXNjL3VwZGF0ZS9ucG0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFNbkQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFTLE1BQU0sUUFBUSxDQUFDO0FBRTVDLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBWXJEOzs7O0dBSUc7QUFDSCx3QkFBc0IsZUFBZSxDQUFDLFdBQVcsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDO0lBQ2xFLG1CQUFtQjtJQUNuQixZQUFZLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLHNCQUFzQjtJQUN0QixlQUFlLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0NBQzFDLENBQUMsQ0FLRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQXNCLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsT0FBTyxTQUFXLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQWMvRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQXNCLGVBQWUsQ0FDbkMsV0FBVyxFQUFFLE1BQU0sRUFDbkIsWUFBWSxFQUFFLE1BQU0sRUFDcEIsR0FBRyxFQUFFLEtBQUssR0FDVCxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0F1RDVCO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLGNBQWMsQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEdBQUcsSUFBSSxDQXVCcEUifQ==
|
|
@@ -6,7 +6,7 @@ import { parse } from 'semver';
|
|
|
6
6
|
import { atomicUpdateFile } from './utils.js';
|
|
7
7
|
const deprecatedNpmPackages = new Set([
|
|
8
8
|
'@aztec/cli',
|
|
9
|
-
'@aztec/aztec-
|
|
9
|
+
'@aztec/aztec-local-network'
|
|
10
10
|
]);
|
|
11
11
|
const npmDeprecationMessage = `
|
|
12
12
|
The following packages have been deprecated and will no longer be updated on the npm registry:
|
|
@@ -11,4 +11,4 @@ export declare function atomicUpdateFile(filePath: string, contents: string): Pr
|
|
|
11
11
|
* @returns The Nargo.toml contents as a string
|
|
12
12
|
*/
|
|
13
13
|
export declare function prettyPrintNargoToml(config: NoirPackageConfig): string;
|
|
14
|
-
//# sourceMappingURL=
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbWRzL21pc2MvdXBkYXRlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFNaEU7Ozs7R0FJRztBQUNILHdCQUFzQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQXFCeEU7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxpQkFBaUIsR0FBRyxNQUFNLENBVXRFIn0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LogFn } from '@aztec/foundation/log';
|
|
2
2
|
export declare function updateProject(projectPath: string, contracts: string[], aztecVersion: string, log: LogFn): Promise<void>;
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy9taXNjL3VwZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVluRCx3QkFBc0IsYUFBYSxDQUNqQyxXQUFXLEVBQUUsTUFBTSxFQUNuQixTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQ25CLFlBQVksRUFBRSxNQUFNLEVBQ3BCLEdBQUcsRUFBRSxLQUFLLEdBQ1QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQTJDZiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAYnD,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
|
package/dest/cmds/misc/update.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import { relative, resolve } from 'path';
|
|
2
2
|
import { parse } from 'semver';
|
|
3
|
-
import { GITHUB_TAG_PREFIX } from './update/github.js';
|
|
4
3
|
import { updateAztecNr } from './update/noir.js';
|
|
5
4
|
import { getNewestVersion, updateAztecDeps, updateLockfile } from './update/npm.js';
|
|
6
5
|
const AZTECJS_PACKAGE = '@aztec/aztec.js';
|
|
@@ -26,7 +25,7 @@ export async function updateProject(projectPath, contracts, aztecVersion, log) {
|
|
|
26
25
|
}
|
|
27
26
|
for (const contract of contracts){
|
|
28
27
|
try {
|
|
29
|
-
projectDependencyChanges.push(await updateAztecNr(resolve(process.cwd(), projectPath, contract),
|
|
28
|
+
projectDependencyChanges.push(await updateAztecNr(resolve(process.cwd(), projectPath, contract), `v${targetAztecVersion.version}`, log));
|
|
30
29
|
} catch (err) {
|
|
31
30
|
if (err instanceof Error && 'code' in err && err.code === 'ENOENT') {
|
|
32
31
|
log(`No Nargo.toml found in ${relative(process.cwd(), contract)}. Skipping...`);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LogFn } from '@aztec/foundation/log';
|
|
2
|
+
import type { NewValidatorKeystoreOptions } from './new.js';
|
|
3
|
+
export type AddValidatorKeysOptions = NewValidatorKeystoreOptions;
|
|
4
|
+
export declare function addValidatorKeys(existing: string, options: AddValidatorKeysOptions, log: LogFn): Promise<void>;
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY21kcy92YWxpZGF0b3Jfa2V5cy9hZGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFRbkQsT0FBTyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFXNUQsTUFBTSxNQUFNLHVCQUF1QixHQUFHLDJCQUEyQixDQUFDO0FBRWxFLHdCQUFzQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxHQUFHLEVBQUUsS0FBSyxpQkFvR3BHIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cmds/validator_keys/add.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAQnD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAW5D,MAAM,MAAM,uBAAuB,GAAG,2BAA2B,CAAC;AAElE,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,EAAE,GAAG,EAAE,KAAK,iBAoGpG"}
|