@aztec/cli 0.0.1-commit.fce3e4f → 0.0.1-commit.fffb133c

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.
Files changed (126) hide show
  1. package/dest/cmds/aztec_node/get_block.d.ts +1 -1
  2. package/dest/cmds/aztec_node/get_block.d.ts.map +1 -1
  3. package/dest/cmds/aztec_node/get_block.js +2 -1
  4. package/dest/cmds/aztec_node/get_current_min_fee.d.ts +3 -0
  5. package/dest/cmds/aztec_node/get_current_min_fee.d.ts.map +1 -0
  6. package/dest/cmds/aztec_node/{get_current_base_fee.js → get_current_min_fee.js} +2 -2
  7. package/dest/cmds/aztec_node/get_logs.d.ts +3 -2
  8. package/dest/cmds/aztec_node/get_logs.d.ts.map +1 -1
  9. package/dest/cmds/aztec_node/index.js +3 -3
  10. package/dest/cmds/contracts/inspect_contract.js +1 -1
  11. package/dest/cmds/infrastructure/index.d.ts +1 -1
  12. package/dest/cmds/infrastructure/index.d.ts.map +1 -1
  13. package/dest/cmds/infrastructure/index.js +0 -1
  14. package/dest/cmds/infrastructure/sequencers.d.ts +1 -2
  15. package/dest/cmds/infrastructure/sequencers.d.ts.map +1 -1
  16. package/dest/cmds/infrastructure/sequencers.js +11 -4
  17. package/dest/cmds/infrastructure/setup_l2_contract.js +1 -1
  18. package/dest/cmds/l1/assume_proven_through.d.ts +3 -2
  19. package/dest/cmds/l1/assume_proven_through.d.ts.map +1 -1
  20. package/dest/cmds/l1/assume_proven_through.js +3 -4
  21. package/dest/cmds/l1/bridge_erc20.d.ts +1 -1
  22. package/dest/cmds/l1/bridge_erc20.d.ts.map +1 -1
  23. package/dest/cmds/l1/bridge_erc20.js +2 -1
  24. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts +4 -0
  25. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts.map +1 -0
  26. package/dest/cmds/l1/{deploy_l1_contracts.js → deploy_l1_contracts_cmd.js} +39 -4
  27. package/dest/cmds/l1/deploy_new_rollup.d.ts +4 -4
  28. package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
  29. package/dest/cmds/l1/deploy_new_rollup.js +3 -3
  30. package/dest/cmds/l1/get_l1_addresses.d.ts +1 -1
  31. package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
  32. package/dest/cmds/l1/get_l1_addresses.js +5 -2
  33. package/dest/cmds/l1/get_l1_balance.js +4 -2
  34. package/dest/cmds/l1/governance_utils.d.ts +1 -1
  35. package/dest/cmds/l1/governance_utils.d.ts.map +1 -1
  36. package/dest/cmds/l1/governance_utils.js +3 -1
  37. package/dest/cmds/l1/index.d.ts +1 -2
  38. package/dest/cmds/l1/index.d.ts.map +1 -1
  39. package/dest/cmds/l1/index.js +13 -10
  40. package/dest/cmds/l1/prover_stats.d.ts +1 -1
  41. package/dest/cmds/l1/prover_stats.d.ts.map +1 -1
  42. package/dest/cmds/l1/prover_stats.js +4 -2
  43. package/dest/cmds/l1/trigger_seed_snapshot.d.ts +1 -1
  44. package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -1
  45. package/dest/cmds/l1/trigger_seed_snapshot.js +2 -1
  46. package/dest/cmds/l1/update_l1_validators.d.ts +3 -3
  47. package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
  48. package/dest/cmds/l1/update_l1_validators.js +52 -13
  49. package/dest/cmds/misc/generate_secret_and_hash.js +1 -1
  50. package/dest/cmds/misc/index.d.ts +1 -1
  51. package/dest/cmds/misc/index.d.ts.map +1 -1
  52. package/dest/cmds/misc/index.js +1 -1
  53. package/dest/cmds/validator_keys/generate_bls_keypair.js +1 -1
  54. package/dest/cmds/validator_keys/new.d.ts +1 -1
  55. package/dest/cmds/validator_keys/new.d.ts.map +1 -1
  56. package/dest/cmds/validator_keys/new.js +5 -2
  57. package/dest/cmds/validator_keys/shared.d.ts +1 -1
  58. package/dest/cmds/validator_keys/shared.d.ts.map +1 -1
  59. package/dest/cmds/validator_keys/shared.js +2 -1
  60. package/dest/cmds/validator_keys/staker.d.ts +2 -2
  61. package/dest/cmds/validator_keys/staker.d.ts.map +1 -1
  62. package/dest/cmds/validator_keys/staker.js +7 -4
  63. package/dest/cmds/validator_keys/utils.d.ts +1 -1
  64. package/dest/cmds/validator_keys/utils.d.ts.map +1 -1
  65. package/dest/cmds/validator_keys/utils.js +1 -1
  66. package/dest/config/chain_l2_config.d.ts +12 -38
  67. package/dest/config/chain_l2_config.d.ts.map +1 -1
  68. package/dest/config/chain_l2_config.js +33 -493
  69. package/dest/config/generated/networks.d.ts +205 -0
  70. package/dest/config/generated/networks.d.ts.map +1 -0
  71. package/dest/config/generated/networks.js +206 -0
  72. package/dest/config/get_l1_config.d.ts +3 -2
  73. package/dest/config/get_l1_config.d.ts.map +1 -1
  74. package/dest/config/get_l1_config.js +3 -1
  75. package/dest/config/network_config.d.ts +6 -3
  76. package/dest/config/network_config.d.ts.map +1 -1
  77. package/dest/config/network_config.js +50 -28
  78. package/dest/utils/aztec.d.ts +7 -13
  79. package/dest/utils/aztec.d.ts.map +1 -1
  80. package/dest/utils/aztec.js +19 -40
  81. package/dest/utils/commands.d.ts +7 -6
  82. package/dest/utils/commands.d.ts.map +1 -1
  83. package/dest/utils/commands.js +6 -5
  84. package/dest/utils/encoding.js +1 -1
  85. package/dest/utils/inspect.d.ts +3 -2
  86. package/dest/utils/inspect.d.ts.map +1 -1
  87. package/dest/utils/inspect.js +4 -1
  88. package/package.json +41 -33
  89. package/src/cmds/aztec_node/get_block.ts +2 -1
  90. package/src/cmds/aztec_node/{get_current_base_fee.ts → get_current_min_fee.ts} +2 -2
  91. package/src/cmds/aztec_node/get_logs.ts +3 -2
  92. package/src/cmds/aztec_node/index.ts +3 -3
  93. package/src/cmds/contracts/inspect_contract.ts +1 -1
  94. package/src/cmds/infrastructure/index.ts +0 -1
  95. package/src/cmds/infrastructure/sequencers.ts +7 -5
  96. package/src/cmds/infrastructure/setup_l2_contract.ts +1 -1
  97. package/src/cmds/l1/assume_proven_through.ts +4 -4
  98. package/src/cmds/l1/bridge_erc20.ts +2 -1
  99. package/src/cmds/l1/{deploy_l1_contracts.ts → deploy_l1_contracts_cmd.ts} +39 -22
  100. package/src/cmds/l1/deploy_new_rollup.ts +4 -9
  101. package/src/cmds/l1/get_l1_addresses.ts +4 -2
  102. package/src/cmds/l1/get_l1_balance.ts +2 -2
  103. package/src/cmds/l1/governance_utils.ts +3 -8
  104. package/src/cmds/l1/index.ts +12 -21
  105. package/src/cmds/l1/prover_stats.ts +6 -2
  106. package/src/cmds/l1/trigger_seed_snapshot.ts +2 -1
  107. package/src/cmds/l1/update_l1_validators.ts +46 -25
  108. package/src/cmds/misc/generate_secret_and_hash.ts +1 -1
  109. package/src/cmds/misc/index.ts +1 -1
  110. package/src/cmds/validator_keys/generate_bls_keypair.ts +1 -1
  111. package/src/cmds/validator_keys/new.ts +3 -2
  112. package/src/cmds/validator_keys/shared.ts +2 -1
  113. package/src/cmds/validator_keys/staker.ts +5 -4
  114. package/src/cmds/validator_keys/utils.ts +2 -1
  115. package/src/config/chain_l2_config.ts +33 -644
  116. package/src/config/generated/networks.ts +210 -0
  117. package/src/config/get_l1_config.ts +4 -1
  118. package/src/config/network_config.ts +53 -29
  119. package/src/utils/aztec.ts +24 -83
  120. package/src/utils/commands.ts +6 -5
  121. package/src/utils/encoding.ts +1 -1
  122. package/src/utils/inspect.ts +6 -2
  123. package/dest/cmds/aztec_node/get_current_base_fee.d.ts +0 -3
  124. package/dest/cmds/aztec_node/get_current_base_fee.d.ts.map +0 -1
  125. package/dest/cmds/l1/deploy_l1_contracts.d.ts +0 -4
  126. package/dest/cmds/l1/deploy_l1_contracts.d.ts.map +0 -1
@@ -0,0 +1,210 @@
1
+ // Auto-generated from spartan/environments/network-defaults.yml
2
+ // Do not edit manually - run yarn generate to regenerate
3
+
4
+ export const devnetConfig = {
5
+ ETHEREUM_SLOT_DURATION: 12,
6
+ AZTEC_SLOT_DURATION: 36,
7
+ AZTEC_TARGET_COMMITTEE_SIZE: 48,
8
+ AZTEC_ACTIVATION_THRESHOLD: 100000000000000000000,
9
+ AZTEC_EJECTION_THRESHOLD: 50000000000000000000,
10
+ AZTEC_LOCAL_EJECTION_THRESHOLD: 98000000000000000000,
11
+ AZTEC_EXIT_DELAY_SECONDS: 172800,
12
+ AZTEC_INBOX_LAG: 1,
13
+ AZTEC_PROOF_SUBMISSION_EPOCHS: 1,
14
+ AZTEC_MANA_TARGET: 100000000,
15
+ AZTEC_PROVING_COST_PER_MANA: 100,
16
+ AZTEC_INITIAL_ETH_PER_FEE_ASSET: 10000000,
17
+ AZTEC_SLASHER_FLAVOR: 'tally',
18
+ AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: 4,
19
+ AZTEC_SLASHING_LIFETIME_IN_ROUNDS: 5,
20
+ AZTEC_SLASHING_OFFSET_IN_ROUNDS: 2,
21
+ AZTEC_SLASHING_VETOER: '0x0000000000000000000000000000000000000000',
22
+ AZTEC_SLASHING_DISABLE_DURATION: 432000,
23
+ AZTEC_SLASH_AMOUNT_SMALL: 10000000000000000000,
24
+ AZTEC_SLASH_AMOUNT_MEDIUM: 20000000000000000000,
25
+ AZTEC_SLASH_AMOUNT_LARGE: 50000000000000000000,
26
+ AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE: 300,
27
+ SLASH_MIN_PENALTY_PERCENTAGE: 0.5,
28
+ SLASH_MAX_PENALTY_PERCENTAGE: 2,
29
+ SLASH_OFFENSE_EXPIRATION_ROUNDS: 4,
30
+ SLASH_MAX_PAYLOAD_SIZE: 50,
31
+ SLASH_EXECUTE_ROUNDS_LOOK_BACK: 4,
32
+ P2P_ENABLED: true,
33
+ BOOTSTRAP_NODES: '',
34
+ SEQ_MIN_TX_PER_BLOCK: 0,
35
+ SEQ_BUILD_CHECKPOINT_IF_EMPTY: true,
36
+ DATA_STORE_MAP_SIZE_KB: 134217728,
37
+ ARCHIVER_STORE_MAP_SIZE_KB: 1073741824,
38
+ NOTE_HASH_TREE_MAP_SIZE_KB: 1073741824,
39
+ NULLIFIER_TREE_MAP_SIZE_KB: 1073741824,
40
+ PUBLIC_DATA_TREE_MAP_SIZE_KB: 1073741824,
41
+ PUBLIC_OTEL_INCLUDE_METRICS: 'aztec.validator,aztec.tx_collector,aztec.mempool,aztec.p2p.gossip.agg_,aztec.ivc_verifier.agg_',
42
+ SENTINEL_ENABLED: true,
43
+ AZTEC_EPOCH_DURATION: 8,
44
+ AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: 1,
45
+ AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: 1,
46
+ AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS: 1,
47
+ L1_CHAIN_ID: 11155111,
48
+ TEST_ACCOUNTS: true,
49
+ SPONSORED_FPC: true,
50
+ TRANSACTIONS_DISABLED: false,
51
+ SEQ_MAX_TX_PER_BLOCK: 32,
52
+ PROVER_REAL_PROOFS: false,
53
+ PXE_PROVER_ENABLED: false,
54
+ SYNC_SNAPSHOTS_URLS: '',
55
+ SKIP_ARCHIVER_INITIAL_SYNC: false,
56
+ BLOB_ALLOW_EMPTY_SOURCES: false,
57
+ P2P_MAX_PENDING_TX_COUNT: 1000,
58
+ P2P_TX_POOL_DELETE_TXS_AFTER_REORG: false,
59
+ AUTO_UPDATE: 'none',
60
+ AUTO_UPDATE_URL: '',
61
+ PUBLIC_OTEL_OPT_OUT: true,
62
+ PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: '',
63
+ PUBLIC_OTEL_COLLECT_FROM: '',
64
+ SLASH_PRUNE_PENALTY: 10000000000000000000,
65
+ SLASH_DATA_WITHHOLDING_PENALTY: 10000000000000000000,
66
+ SLASH_INACTIVITY_TARGET_PERCENTAGE: 0.9,
67
+ SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD: 1,
68
+ SLASH_INACTIVITY_PENALTY: 10000000000000000000,
69
+ SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY: 10000000000000000000,
70
+ SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY: 10000000000000000000,
71
+ SLASH_UNKNOWN_PENALTY: 10000000000000000000,
72
+ SLASH_INVALID_BLOCK_PENALTY: 10000000000000000000,
73
+ SLASH_GRACE_PERIOD_L2_SLOTS: 0,
74
+ } as const;
75
+
76
+ export const testnetConfig = {
77
+ ETHEREUM_SLOT_DURATION: 12,
78
+ AZTEC_EPOCH_DURATION: 32,
79
+ AZTEC_TARGET_COMMITTEE_SIZE: 48,
80
+ AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: 2,
81
+ AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: 2,
82
+ AZTEC_EXIT_DELAY_SECONDS: 172800,
83
+ AZTEC_INBOX_LAG: 1,
84
+ AZTEC_PROOF_SUBMISSION_EPOCHS: 1,
85
+ AZTEC_PROVING_COST_PER_MANA: 100,
86
+ AZTEC_INITIAL_ETH_PER_FEE_ASSET: 10000000,
87
+ AZTEC_SLASHER_FLAVOR: 'tally',
88
+ AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: 4,
89
+ AZTEC_SLASHING_LIFETIME_IN_ROUNDS: 5,
90
+ AZTEC_SLASHING_OFFSET_IN_ROUNDS: 2,
91
+ AZTEC_SLASHING_DISABLE_DURATION: 432000,
92
+ AZTEC_SLASH_AMOUNT_SMALL: 10000000000000000000,
93
+ AZTEC_SLASH_AMOUNT_MEDIUM: 20000000000000000000,
94
+ AZTEC_SLASH_AMOUNT_LARGE: 50000000000000000000,
95
+ SLASH_MIN_PENALTY_PERCENTAGE: 0.5,
96
+ SLASH_MAX_PENALTY_PERCENTAGE: 2,
97
+ SLASH_OFFENSE_EXPIRATION_ROUNDS: 4,
98
+ SLASH_MAX_PAYLOAD_SIZE: 50,
99
+ SLASH_EXECUTE_ROUNDS_LOOK_BACK: 4,
100
+ P2P_ENABLED: true,
101
+ BOOTSTRAP_NODES: '',
102
+ SEQ_MIN_TX_PER_BLOCK: 0,
103
+ SEQ_BUILD_CHECKPOINT_IF_EMPTY: true,
104
+ DATA_STORE_MAP_SIZE_KB: 134217728,
105
+ ARCHIVER_STORE_MAP_SIZE_KB: 1073741824,
106
+ NOTE_HASH_TREE_MAP_SIZE_KB: 1073741824,
107
+ NULLIFIER_TREE_MAP_SIZE_KB: 1073741824,
108
+ PUBLIC_DATA_TREE_MAP_SIZE_KB: 1073741824,
109
+ PUBLIC_OTEL_INCLUDE_METRICS: 'aztec.validator,aztec.tx_collector,aztec.mempool,aztec.p2p.gossip.agg_,aztec.ivc_verifier.agg_',
110
+ SENTINEL_ENABLED: true,
111
+ AZTEC_SLOT_DURATION: 72,
112
+ AZTEC_ACTIVATION_THRESHOLD: 2E+23,
113
+ AZTEC_EJECTION_THRESHOLD: 1E+23,
114
+ AZTEC_LOCAL_EJECTION_THRESHOLD: 1.99E+23,
115
+ AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS: 2,
116
+ AZTEC_SLASHING_VETOER: '0xdfe19Da6a717b7088621d8bBB66be59F2d78e924',
117
+ AZTEC_SLASHING_QUORUM: 33,
118
+ AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE: 100,
119
+ AZTEC_GOVERNANCE_PROPOSER_QUORUM: 60,
120
+ AZTEC_MANA_TARGET: 150000000,
121
+ L1_CHAIN_ID: 11155111,
122
+ TEST_ACCOUNTS: false,
123
+ SPONSORED_FPC: true,
124
+ TRANSACTIONS_DISABLED: false,
125
+ SEQ_MAX_TX_PER_BLOCK: 8,
126
+ PROVER_REAL_PROOFS: true,
127
+ P2P_TX_POOL_DELETE_TXS_AFTER_REORG: true,
128
+ SLASH_PRUNE_PENALTY: 10000000000000000000,
129
+ SLASH_DATA_WITHHOLDING_PENALTY: 10000000000000000000,
130
+ SLASH_INACTIVITY_TARGET_PERCENTAGE: 0.9,
131
+ SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD: 1,
132
+ SLASH_INACTIVITY_PENALTY: 10000000000000000000,
133
+ SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY: 10000000000000000000,
134
+ SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY: 10000000000000000000,
135
+ SLASH_UNKNOWN_PENALTY: 10000000000000000000,
136
+ SLASH_INVALID_BLOCK_PENALTY: 10000000000000000000,
137
+ SLASH_GRACE_PERIOD_L2_SLOTS: 64,
138
+ } as const;
139
+
140
+ export const mainnetConfig = {
141
+ ETHEREUM_SLOT_DURATION: 12,
142
+ AZTEC_EPOCH_DURATION: 32,
143
+ AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET: 2,
144
+ AZTEC_LAG_IN_EPOCHS_FOR_RANDAO: 2,
145
+ AZTEC_INBOX_LAG: 1,
146
+ AZTEC_PROOF_SUBMISSION_EPOCHS: 1,
147
+ AZTEC_INITIAL_ETH_PER_FEE_ASSET: 10000000,
148
+ AZTEC_SLASHER_FLAVOR: 'tally',
149
+ AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS: 4,
150
+ AZTEC_SLASHING_OFFSET_IN_ROUNDS: 2,
151
+ SLASH_MIN_PENALTY_PERCENTAGE: 0.5,
152
+ SLASH_MAX_PENALTY_PERCENTAGE: 2,
153
+ SLASH_OFFENSE_EXPIRATION_ROUNDS: 4,
154
+ SLASH_MAX_PAYLOAD_SIZE: 50,
155
+ SLASH_EXECUTE_ROUNDS_LOOK_BACK: 4,
156
+ P2P_ENABLED: true,
157
+ BOOTSTRAP_NODES: '',
158
+ SEQ_MIN_TX_PER_BLOCK: 0,
159
+ SEQ_BUILD_CHECKPOINT_IF_EMPTY: true,
160
+ DATA_STORE_MAP_SIZE_KB: 134217728,
161
+ ARCHIVER_STORE_MAP_SIZE_KB: 1073741824,
162
+ NOTE_HASH_TREE_MAP_SIZE_KB: 1073741824,
163
+ NULLIFIER_TREE_MAP_SIZE_KB: 1073741824,
164
+ PUBLIC_DATA_TREE_MAP_SIZE_KB: 1073741824,
165
+ PUBLIC_OTEL_INCLUDE_METRICS: 'aztec.validator,aztec.tx_collector,aztec.mempool,aztec.p2p.gossip.agg_,aztec.ivc_verifier.agg_',
166
+ SENTINEL_ENABLED: true,
167
+ AZTEC_SLOT_DURATION: 72,
168
+ AZTEC_TARGET_COMMITTEE_SIZE: 24,
169
+ AZTEC_ACTIVATION_THRESHOLD: 2E+23,
170
+ AZTEC_EJECTION_THRESHOLD: 1E+23,
171
+ AZTEC_LOCAL_EJECTION_THRESHOLD: 1.96E+23,
172
+ AZTEC_SLASH_AMOUNT_SMALL: 2E+21,
173
+ AZTEC_SLASH_AMOUNT_MEDIUM: 2E+21,
174
+ AZTEC_SLASH_AMOUNT_LARGE: 2E+21,
175
+ AZTEC_SLASHING_LIFETIME_IN_ROUNDS: 34,
176
+ AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS: 28,
177
+ AZTEC_SLASHING_VETOER: '0xBbB4aF368d02827945748b28CD4b2D42e4A37480',
178
+ AZTEC_SLASHING_QUORUM: 65,
179
+ AZTEC_GOVERNANCE_PROPOSER_QUORUM: 600,
180
+ AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE: 1000,
181
+ AZTEC_MANA_TARGET: 0,
182
+ AZTEC_PROVING_COST_PER_MANA: 0,
183
+ AZTEC_EXIT_DELAY_SECONDS: 345600,
184
+ AZTEC_SLASHING_DISABLE_DURATION: 259200,
185
+ L1_CHAIN_ID: 1,
186
+ TEST_ACCOUNTS: false,
187
+ SPONSORED_FPC: false,
188
+ TRANSACTIONS_DISABLED: true,
189
+ SEQ_MAX_TX_PER_BLOCK: 0,
190
+ PROVER_REAL_PROOFS: true,
191
+ SYNC_SNAPSHOTS_URLS: 'https://aztec-labs-snapshots.com/mainnet/',
192
+ BLOB_ALLOW_EMPTY_SOURCES: true,
193
+ P2P_MAX_PENDING_TX_COUNT: 0,
194
+ P2P_TX_POOL_DELETE_TXS_AFTER_REORG: true,
195
+ AUTO_UPDATE: 'notify',
196
+ AUTO_UPDATE_URL: 'https://storage.googleapis.com/aztec-mainnet/auto-update/mainnet.json',
197
+ PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: 'https://telemetry.alpha-testnet.aztec-labs.com/v1/metrics',
198
+ PUBLIC_OTEL_COLLECT_FROM: 'sequencer',
199
+ SLASH_PRUNE_PENALTY: 0,
200
+ SLASH_DATA_WITHHOLDING_PENALTY: 0,
201
+ SLASH_INACTIVITY_TARGET_PERCENTAGE: 0.8,
202
+ SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD: 2,
203
+ SLASH_INACTIVITY_PENALTY: 2E+21,
204
+ SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY: 2E+21,
205
+ SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY: 2E+21,
206
+ SLASH_UNKNOWN_PENALTY: 2E+21,
207
+ SLASH_INVALID_BLOCK_PENALTY: 2E+21,
208
+ SLASH_GRACE_PERIOD_L2_SLOTS: 1200,
209
+ } as const;
210
+
@@ -1,4 +1,7 @@
1
- import { type L1ContractAddresses, RegistryContract, getL1ContractsConfig, getPublicClient } from '@aztec/ethereum';
1
+ import { getPublicClient } from '@aztec/ethereum/client';
2
+ import { RegistryContract } from '@aztec/ethereum/contracts';
3
+ import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
4
+ import { getL1ContractsConfig } from '@aztec/ethereum/queries';
2
5
  import { EthAddress } from '@aztec/foundation/eth-address';
3
6
 
4
7
  export async function getL1Config(
@@ -17,7 +17,8 @@ const NETWORK_CONFIG_CACHE_DURATION_MS = 60 * 60 * 1000; // 1 hour
17
17
  *
18
18
  * @param networkName - The network name to fetch config for
19
19
  * @param cacheDir - Optional cache directory for storing fetched config
20
- * @returns Remote configuration for the specified network, or undefined if not found/error
20
+ * @returns Remote configuration for the specified network, or undefined if network not found in config
21
+ * @throws Error if both primary and fallback URLs fail to fetch
21
22
  */
22
23
  export async function getNetworkConfig(
23
24
  networkName: NetworkNames,
@@ -26,12 +27,29 @@ export async function getNetworkConfig(
26
27
  // Try with the primary URL (env var or default)
27
28
  const configLocation = process.env.NETWORK_CONFIG_LOCATION || DEFAULT_CONFIG_URL;
28
29
 
30
+ let primaryError: Error | undefined;
31
+ let config: NetworkConfig | undefined;
32
+
29
33
  // First try the primary config location
30
- let config = await fetchNetworkConfigFromUrl(configLocation, networkName, cacheDir);
34
+ try {
35
+ config = await fetchNetworkConfigFromUrl(configLocation, networkName, cacheDir);
36
+ } catch (error) {
37
+ primaryError = error as Error;
38
+ }
31
39
 
32
40
  // If primary fails and we were using the default URL, try the fallback
33
41
  if (!config && configLocation === DEFAULT_CONFIG_URL) {
34
- config = await fetchNetworkConfigFromUrl(FALLBACK_CONFIG_URL, networkName, cacheDir);
42
+ try {
43
+ config = await fetchNetworkConfigFromUrl(FALLBACK_CONFIG_URL, networkName, cacheDir);
44
+ } catch {
45
+ // Both failed - throw the primary error
46
+ if (primaryError) {
47
+ throw primaryError;
48
+ }
49
+ }
50
+ } else if (primaryError) {
51
+ // Primary failed and no fallback to try
52
+ throw primaryError;
35
53
  }
36
54
 
37
55
  return config;
@@ -42,7 +60,8 @@ export async function getNetworkConfig(
42
60
  * @param configLocation - The URL or file path to fetch from
43
61
  * @param networkName - The network name to fetch config for
44
62
  * @param cacheDir - Optional cache directory for storing fetched config
45
- * @returns Remote configuration for the specified network, or undefined if not found/error
63
+ * @returns Remote configuration for the specified network, or undefined if network not found in config, or undefined if URL invalid
64
+ * @throws Error if fetch/parse fails
46
65
  */
47
66
  async function fetchNetworkConfigFromUrl(
48
67
  configLocation: string,
@@ -64,31 +83,27 @@ async function fetchNetworkConfigFromUrl(
64
83
  return undefined;
65
84
  }
66
85
 
67
- try {
68
- let rawConfig: any;
69
-
70
- if (url.protocol === 'http:' || url.protocol === 'https:') {
71
- rawConfig = await cachedFetch(url.href, {
72
- cacheDurationMs: NETWORK_CONFIG_CACHE_DURATION_MS,
73
- cacheFile: cacheDir ? join(cacheDir, networkName, 'network_config.json') : undefined,
74
- });
75
- } else if (url.protocol === 'file:') {
76
- rawConfig = JSON.parse(await readFile(url.pathname, 'utf-8'));
77
- } else {
78
- throw new Error('Unsupported Aztec network config protocol: ' + url.href);
79
- }
86
+ let rawConfig: any;
87
+
88
+ if (url.protocol === 'http:' || url.protocol === 'https:') {
89
+ rawConfig = await cachedFetch(url.href, {
90
+ cacheDurationMs: NETWORK_CONFIG_CACHE_DURATION_MS,
91
+ cacheFile: cacheDir ? join(cacheDir, networkName, 'network_config.json') : undefined,
92
+ });
93
+ } else if (url.protocol === 'file:') {
94
+ rawConfig = JSON.parse(await readFile(url.pathname, 'utf-8'));
95
+ } else {
96
+ throw new Error('Unsupported Aztec network config protocol: ' + url.href);
97
+ }
80
98
 
81
- if (!rawConfig) {
82
- return undefined;
83
- }
99
+ if (!rawConfig) {
100
+ return undefined;
101
+ }
84
102
 
85
- const networkConfigMap = NetworkConfigMapSchema.parse(rawConfig);
86
- if (networkName in networkConfigMap) {
87
- return networkConfigMap[networkName];
88
- } else {
89
- return undefined;
90
- }
91
- } catch {
103
+ const networkConfigMap = NetworkConfigMapSchema.parse(rawConfig);
104
+ if (networkName in networkConfigMap) {
105
+ return networkConfigMap[networkName];
106
+ } else {
92
107
  return undefined;
93
108
  }
94
109
  }
@@ -96,9 +111,11 @@ async function fetchNetworkConfigFromUrl(
96
111
  /**
97
112
  * Enriches environment variables with remote network configuration.
98
113
  * This function is called before node config initialization to set env vars
99
- * from the remote config, following the same pattern as enrichEnvironmentWithChainConfig().
114
+ * from the remote config.
100
115
  *
101
116
  * @param networkName - The network name to fetch remote config for
117
+ * @throws Error if network config fetch fails (network errors, parse errors, etc.)
118
+ * Does not throw if the network simply doesn't exist in the config - just returns without enriching
102
119
  */
103
120
  export async function enrichEnvironmentWithNetworkConfig(networkName: NetworkNames) {
104
121
  if (networkName === 'local') {
@@ -109,7 +126,7 @@ export async function enrichEnvironmentWithNetworkConfig(networkName: NetworkNam
109
126
  const networkConfig = await getNetworkConfig(networkName, cacheDir);
110
127
 
111
128
  if (!networkConfig) {
112
- throw new Error(`Failed to fetch network config for network: ${networkName}`);
129
+ return; // Network not found in config, continue without enriching
113
130
  }
114
131
 
115
132
  enrichVar('BOOTSTRAP_NODES', networkConfig.bootnodes.join(','));
@@ -120,4 +137,11 @@ export async function enrichEnvironmentWithNetworkConfig(networkName: NetworkNam
120
137
  if (networkConfig.feeAssetHandlerAddress) {
121
138
  enrichEthAddressVar('FEE_ASSET_HANDLER_CONTRACT_ADDRESS', networkConfig.feeAssetHandlerAddress.toString());
122
139
  }
140
+
141
+ if (networkConfig.blobFileStoreUrls?.length) {
142
+ enrichVar('BLOB_FILE_STORE_URLS', networkConfig.blobFileStoreUrls.join(','));
143
+ }
144
+ if (networkConfig.blockDurationMs !== undefined) {
145
+ enrichVar('SEQ_BLOCK_DURATION_MS', String(networkConfig.blockDurationMs));
146
+ }
123
147
  }
@@ -6,23 +6,23 @@ import {
6
6
  loadContractArtifact,
7
7
  } from '@aztec/aztec.js/abi';
8
8
  import { EthAddress } from '@aztec/aztec.js/addresses';
9
- import {
10
- type DeployL1ContractsReturnType,
11
- type L1ContractsConfig,
12
- type Operator,
13
- RollupContract,
14
- } from '@aztec/ethereum';
9
+ import type { L1ContractsConfig } from '@aztec/ethereum/config';
10
+ import { RollupContract } from '@aztec/ethereum/contracts';
11
+ import type { Operator } from '@aztec/ethereum/deploy-aztec-l1-contracts';
15
12
  import { SecretValue } from '@aztec/foundation/config';
16
- import { Fr } from '@aztec/foundation/fields';
17
- import type { LogFn, Logger } from '@aztec/foundation/log';
13
+ import { Fr } from '@aztec/foundation/curves/bn254';
14
+ import { type LogFn, createLogger } from '@aztec/foundation/log';
18
15
  import type { NoirPackageConfig } from '@aztec/foundation/noir';
19
16
  import { protocolContractsHash } from '@aztec/protocol-contracts';
20
17
 
21
18
  import TOML from '@iarna/toml';
22
19
  import { readFile } from 'fs/promises';
20
+ import type { HDAccount, Hex, PrivateKeyAccount } from 'viem';
23
21
 
24
22
  import { encodeArgs } from './encoding.js';
25
23
 
24
+ const logger = createLogger('cli:utils:aztec');
25
+
26
26
  /**
27
27
  * Helper to get an ABI function or throw error if it doesn't exist.
28
28
  * @param artifact - Contract's build artifact in JSON format.
@@ -37,89 +37,32 @@ export function getFunctionAbi(artifact: ContractArtifact, fnName: string): Func
37
37
  return fn;
38
38
  }
39
39
 
40
- /**
41
- * Function to execute the 'deployRollupContracts' command.
42
- * @param rpcUrls - The RPC URL of the ethereum node.
43
- * @param chainId - The chain ID of the L1 host.
44
- * @param privateKey - The private key to be used in contract deployment.
45
- * @param mnemonic - The mnemonic to be used in contract deployment.
46
- */
47
- export async function deployAztecContracts(
48
- rpcUrls: string[],
49
- chainId: number,
50
- privateKey: string | undefined,
51
- mnemonic: string,
52
- mnemonicIndex: number,
53
- salt: number | undefined,
54
- initialValidators: Operator[],
55
- genesisArchiveRoot: Fr,
56
- feeJuicePortalInitialBalance: bigint,
57
- acceleratedTestDeployments: boolean,
58
- config: L1ContractsConfig,
59
- existingToken: EthAddress | undefined,
60
- realVerifier: boolean,
61
- createVerificationJson: string | false,
62
- debugLogger: Logger,
63
- ): Promise<DeployL1ContractsReturnType> {
64
- const { createEthereumChain, deployL1Contracts } = await import('@aztec/ethereum');
65
- const { mnemonicToAccount, privateKeyToAccount } = await import('viem/accounts');
66
-
67
- const account = !privateKey
68
- ? mnemonicToAccount(mnemonic!, { addressIndex: mnemonicIndex })
69
- : privateKeyToAccount(addLeadingHex(privateKey));
70
- const chain = createEthereumChain(rpcUrls, chainId);
71
-
72
- const { getVKTreeRoot } = await import('@aztec/noir-protocol-circuits-types/vk-tree');
73
-
74
- const result = await deployL1Contracts(
75
- chain.rpcUrls,
76
- account,
77
- chain.chainInfo,
78
- debugLogger,
79
- {
80
- vkTreeRoot: getVKTreeRoot(),
81
- protocolContractsHash,
82
- genesisArchiveRoot,
83
- salt,
84
- initialValidators,
85
- acceleratedTestDeployments,
86
- feeJuicePortalInitialBalance,
87
- realVerifier,
88
- existingTokenAddress: existingToken,
89
- ...config,
90
- },
91
- config,
92
- createVerificationJson,
93
- );
94
-
95
- return result;
96
- }
97
-
98
40
  export async function deployNewRollupContracts(
99
41
  registryAddress: EthAddress,
100
42
  rpcUrls: string[],
101
- chainId: number,
102
43
  privateKey: string | undefined,
44
+ chainId: number,
103
45
  mnemonic: string,
104
46
  mnemonicIndex: number,
105
- salt: number | undefined,
106
47
  initialValidators: Operator[],
107
48
  genesisArchiveRoot: Fr,
108
49
  feeJuicePortalInitialBalance: bigint,
109
50
  config: L1ContractsConfig,
110
51
  realVerifier: boolean,
111
- createVerificationJson: string | false,
112
- logger: Logger,
113
52
  ): Promise<{ rollup: RollupContract; slashFactoryAddress: EthAddress }> {
114
- const { createEthereumChain, deployRollupForUpgrade, createExtendedL1Client } = await import('@aztec/ethereum');
53
+ const { deployRollupForUpgrade } = await import('@aztec/ethereum/deploy-aztec-l1-contracts');
115
54
  const { mnemonicToAccount, privateKeyToAccount } = await import('viem/accounts');
116
55
  const { getVKTreeRoot } = await import('@aztec/noir-protocol-circuits-types/vk-tree');
117
56
 
118
- const account = !privateKey
119
- ? mnemonicToAccount(mnemonic!, { addressIndex: mnemonicIndex })
120
- : privateKeyToAccount(addLeadingHex(privateKey));
121
- const chain = createEthereumChain(rpcUrls, chainId);
122
- const client = createExtendedL1Client(rpcUrls, account, chain.chainInfo, undefined, mnemonicIndex);
57
+ let account: HDAccount | PrivateKeyAccount;
58
+ if (privateKey) {
59
+ account = privateKeyToAccount(addLeadingHex(privateKey));
60
+ } else {
61
+ account = mnemonicToAccount(mnemonic!, { addressIndex: mnemonicIndex });
62
+ const privateKeyBuf = account.getHdKey().privateKey;
63
+ const privateKeyHex = Buffer.from(privateKeyBuf!).toString('hex');
64
+ privateKey = `0x${privateKeyHex}`;
65
+ }
123
66
 
124
67
  if (!initialValidators || initialValidators.length === 0) {
125
68
  // initialize the new rollup with Amin's validator address.
@@ -138,9 +81,11 @@ export async function deployNewRollupContracts(
138
81
  }
139
82
 
140
83
  const { rollup, slashFactoryAddress } = await deployRollupForUpgrade(
141
- client,
84
+ privateKey as Hex,
85
+ rpcUrls[0],
86
+ chainId,
87
+ registryAddress,
142
88
  {
143
- salt,
144
89
  vkTreeRoot: getVKTreeRoot(),
145
90
  protocolContractsHash,
146
91
  genesisArchiveRoot,
@@ -149,13 +94,9 @@ export async function deployNewRollupContracts(
149
94
  realVerifier,
150
95
  ...config,
151
96
  },
152
- registryAddress,
153
- logger,
154
- config,
155
- createVerificationJson,
156
97
  );
157
98
 
158
- return { rollup, slashFactoryAddress };
99
+ return { rollup, slashFactoryAddress: EthAddress.fromString(slashFactoryAddress!) };
159
100
  }
160
101
 
161
102
  /**
@@ -1,11 +1,12 @@
1
- import { FunctionSelector } from '@aztec/aztec.js/abi';
2
- import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
3
- import { Fr } from '@aztec/aztec.js/fields';
4
- import { LogId } from '@aztec/aztec.js/log';
5
- import { TxHash } from '@aztec/aztec.js/tx';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
6
3
  import type { LogFn } from '@aztec/foundation/log';
7
4
  import type { PXE } from '@aztec/pxe/server';
5
+ import { FunctionSelector } from '@aztec/stdlib/abi/function-selector';
6
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
8
7
  import { PublicKeys } from '@aztec/stdlib/keys';
8
+ import { LogId } from '@aztec/stdlib/logs/log-id';
9
+ import { TxHash } from '@aztec/stdlib/tx/tx-hash';
9
10
 
10
11
  import { type Command, CommanderError, InvalidArgumentError, Option } from 'commander';
11
12
  import { lookup } from 'dns/promises';
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import type { ABIParameter, AbiType, StructType } from '@aztec/stdlib/abi';
3
3
 
4
4
  /**
@@ -1,10 +1,11 @@
1
+ import { BlockNumber } from '@aztec/foundation/branded-types';
1
2
  import type { LogFn } from '@aztec/foundation/log';
2
3
  import type { AztecNode } from '@aztec/stdlib/interfaces/client';
3
4
  import type { TxHash } from '@aztec/stdlib/tx';
4
5
 
5
6
  export async function inspectBlock(
6
7
  aztecNode: AztecNode,
7
- blockNumber: number,
8
+ blockNumber: BlockNumber,
8
9
  log: LogFn,
9
10
  opts: { showTxs?: boolean } = {},
10
11
  ) {
@@ -43,7 +44,10 @@ export async function inspectTx(
43
44
  const [receipt, effectsInBlock] = await Promise.all([aztecNode.getTxReceipt(txHash), aztecNode.getTxEffect(txHash)]);
44
45
  // Base tx data
45
46
  log(`Tx ${txHash.toString()}`);
46
- log(` Status: ${receipt.status} ${effectsInBlock ? `(${effectsInBlock.data.revertCode.getDescription()})` : ''}`);
47
+ log(` Status: ${receipt.status}`);
48
+ if (receipt.executionResult) {
49
+ log(` Execution result: ${receipt.executionResult}`);
50
+ }
47
51
  if (receipt.error) {
48
52
  log(` Error: ${receipt.error}`);
49
53
  }
@@ -1,3 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- export declare function getCurrentBaseFee(nodeUrl: string, debugLogger: Logger, log: LogFn): Promise<void>;
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X2N1cnJlbnRfYmFzZV9mZWUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbWRzL2F6dGVjX25vZGUvZ2V0X2N1cnJlbnRfYmFzZV9mZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNELHdCQUFzQixpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssaUJBSXZGIn0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_current_base_fee.d.ts","sourceRoot":"","sources":["../../../src/cmds/aztec_node/get_current_base_fee.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAIvF"}
@@ -1,4 +0,0 @@
1
- import type { EthAddress } from '@aztec/aztec.js/addresses';
2
- import type { LogFn, Logger } from '@aztec/foundation/log';
3
- export declare function deployL1Contracts(rpcUrls: string[], chainId: number, privateKey: string | undefined, mnemonic: string, mnemonicIndex: number, salt: number | undefined, testAccounts: boolean, sponsoredFPC: boolean, acceleratedTestDeployments: boolean, json: boolean, createVerificationJson: string | false, initialValidators: EthAddress[], realVerifier: boolean, existingToken: EthAddress | undefined, log: LogFn, debugLogger: Logger): Promise<void>;
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2wxX2NvbnRyYWN0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NtZHMvbDEvZGVwbG95X2wxX2NvbnRyYWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUk1RCxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFNM0Qsd0JBQXNCLGlCQUFpQixDQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQ2pCLE9BQU8sRUFBRSxNQUFNLEVBQ2YsVUFBVSxFQUFFLE1BQU0sR0FBRyxTQUFTLEVBQzlCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGFBQWEsRUFBRSxNQUFNLEVBQ3JCLElBQUksRUFBRSxNQUFNLEdBQUcsU0FBUyxFQUN4QixZQUFZLEVBQUUsT0FBTyxFQUNyQixZQUFZLEVBQUUsT0FBTyxFQUNyQiwwQkFBMEIsRUFBRSxPQUFPLEVBQ25DLElBQUksRUFBRSxPQUFPLEVBQ2Isc0JBQXNCLEVBQUUsTUFBTSxHQUFHLEtBQUssRUFDdEMsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLEVBQy9CLFlBQVksRUFBRSxPQUFPLEVBQ3JCLGFBQWEsRUFBRSxVQUFVLEdBQUcsU0FBUyxFQUNyQyxHQUFHLEVBQUUsS0FBSyxFQUNWLFdBQVcsRUFBRSxNQUFNLGlCQThEcEIifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../../../src/cmds/l1/deploy_l1_contracts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAM3D,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,EACrB,0BAA0B,EAAE,OAAO,EACnC,IAAI,EAAE,OAAO,EACb,sBAAsB,EAAE,MAAM,GAAG,KAAK,EACtC,iBAAiB,EAAE,UAAU,EAAE,EAC/B,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,UAAU,GAAG,SAAS,EACrC,GAAG,EAAE,KAAK,EACV,WAAW,EAAE,MAAM,iBA8DpB"}