@aztec/cli 0.0.0-test.0 → 0.0.1-commit.0208eb9

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 (289) hide show
  1. package/README.md +2 -428
  2. package/dest/cmds/aztec_node/block_number.d.ts +3 -0
  3. package/dest/cmds/aztec_node/block_number.d.ts.map +1 -0
  4. package/dest/cmds/aztec_node/block_number.js +10 -0
  5. package/dest/cmds/aztec_node/get_block.d.ts +3 -0
  6. package/dest/cmds/aztec_node/get_block.d.ts.map +1 -0
  7. package/dest/cmds/aztec_node/get_block.js +10 -0
  8. package/dest/cmds/aztec_node/get_current_min_fee.d.ts +3 -0
  9. package/dest/cmds/aztec_node/get_current_min_fee.d.ts.map +1 -0
  10. package/dest/cmds/aztec_node/get_current_min_fee.js +7 -0
  11. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts +5 -0
  12. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.d.ts.map +1 -0
  13. package/dest/cmds/aztec_node/get_l1_to_l2_message_witness.js +12 -0
  14. package/dest/cmds/aztec_node/get_logs.d.ts +7 -0
  15. package/dest/cmds/aztec_node/get_logs.d.ts.map +1 -0
  16. package/dest/cmds/{pxe → aztec_node}/get_logs.js +4 -4
  17. package/dest/cmds/aztec_node/get_node_info.d.ts +3 -0
  18. package/dest/cmds/aztec_node/get_node_info.d.ts.map +1 -0
  19. package/dest/cmds/{pxe → aztec_node}/get_node_info.js +14 -15
  20. package/dest/cmds/aztec_node/index.d.ts +4 -0
  21. package/dest/cmds/aztec_node/index.d.ts.map +1 -0
  22. package/dest/cmds/aztec_node/index.js +28 -0
  23. package/dest/cmds/contracts/index.d.ts +1 -1
  24. package/dest/cmds/contracts/inspect_contract.d.ts +1 -1
  25. package/dest/cmds/contracts/inspect_contract.d.ts.map +1 -1
  26. package/dest/cmds/contracts/inspect_contract.js +13 -15
  27. package/dest/cmds/contracts/parse_parameter_struct.d.ts +1 -1
  28. package/dest/cmds/infrastructure/index.d.ts +3 -3
  29. package/dest/cmds/infrastructure/index.d.ts.map +1 -1
  30. package/dest/cmds/infrastructure/index.js +8 -10
  31. package/dest/cmds/infrastructure/sequencers.d.ts +5 -6
  32. package/dest/cmds/infrastructure/sequencers.d.ts.map +1 -1
  33. package/dest/cmds/infrastructure/sequencers.js +38 -18
  34. package/dest/cmds/infrastructure/setup_l2_contract.d.ts +2 -2
  35. package/dest/cmds/infrastructure/setup_l2_contract.d.ts.map +1 -1
  36. package/dest/cmds/infrastructure/setup_l2_contract.js +11 -24
  37. package/dest/cmds/l1/advance_epoch.d.ts +2 -2
  38. package/dest/cmds/l1/advance_epoch.d.ts.map +1 -1
  39. package/dest/cmds/l1/advance_epoch.js +8 -6
  40. package/dest/cmds/l1/assume_proven_through.d.ts +3 -2
  41. package/dest/cmds/l1/assume_proven_through.d.ts.map +1 -1
  42. package/dest/cmds/l1/assume_proven_through.js +10 -10
  43. package/dest/cmds/l1/bridge_erc20.d.ts +3 -3
  44. package/dest/cmds/l1/bridge_erc20.d.ts.map +1 -1
  45. package/dest/cmds/l1/bridge_erc20.js +6 -5
  46. package/dest/cmds/l1/compute_genesis_values.d.ts +4 -0
  47. package/dest/cmds/l1/compute_genesis_values.d.ts.map +1 -0
  48. package/dest/cmds/l1/compute_genesis_values.js +17 -0
  49. package/dest/cmds/l1/create_l1_account.d.ts +1 -1
  50. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts +4 -0
  51. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts.map +1 -0
  52. package/dest/cmds/l1/deploy_l1_contracts_cmd.js +81 -0
  53. package/dest/cmds/l1/deploy_new_rollup.d.ts +4 -3
  54. package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
  55. package/dest/cmds/l1/deploy_new_rollup.js +18 -9
  56. package/dest/cmds/l1/get_l1_addresses.d.ts +2 -2
  57. package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
  58. package/dest/cmds/l1/get_l1_addresses.js +5 -2
  59. package/dest/cmds/l1/get_l1_balance.d.ts +1 -1
  60. package/dest/cmds/l1/get_l1_balance.js +4 -2
  61. package/dest/cmds/l1/governance_utils.d.ts +5 -5
  62. package/dest/cmds/l1/governance_utils.d.ts.map +1 -1
  63. package/dest/cmds/l1/governance_utils.js +19 -17
  64. package/dest/cmds/l1/index.d.ts +1 -1
  65. package/dest/cmds/l1/index.d.ts.map +1 -1
  66. package/dest/cmds/l1/index.js +41 -44
  67. package/dest/cmds/l1/prover_stats.d.ts +1 -1
  68. package/dest/cmds/l1/prover_stats.d.ts.map +1 -1
  69. package/dest/cmds/l1/prover_stats.js +32 -30
  70. package/dest/cmds/l1/trigger_seed_snapshot.d.ts +6 -0
  71. package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -0
  72. package/dest/cmds/l1/trigger_seed_snapshot.js +20 -0
  73. package/dest/cmds/l1/update_l1_validators.d.ts +21 -6
  74. package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
  75. package/dest/cmds/l1/update_l1_validators.js +198 -103
  76. package/dest/cmds/misc/compute_selector.d.ts +1 -1
  77. package/dest/cmds/misc/example_contracts.d.ts +1 -1
  78. package/dest/cmds/misc/generate_bootnode_enr.d.ts +2 -2
  79. package/dest/cmds/misc/generate_bootnode_enr.d.ts.map +1 -1
  80. package/dest/cmds/misc/generate_bootnode_enr.js +2 -2
  81. package/dest/cmds/misc/generate_p2p_private_key.d.ts +1 -1
  82. package/dest/cmds/misc/generate_secret_and_hash.d.ts +2 -2
  83. package/dest/cmds/misc/generate_secret_and_hash.d.ts.map +1 -1
  84. package/dest/cmds/misc/generate_secret_and_hash.js +4 -4
  85. package/dest/cmds/misc/generate_secret_key.d.ts +2 -2
  86. package/dest/cmds/misc/generate_secret_key.d.ts.map +1 -1
  87. package/dest/cmds/misc/generate_secret_key.js +1 -1
  88. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts +3 -0
  89. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts.map +1 -0
  90. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.js +4 -0
  91. package/dest/cmds/misc/index.d.ts +1 -1
  92. package/dest/cmds/misc/index.d.ts.map +1 -1
  93. package/dest/cmds/misc/index.js +8 -4
  94. package/dest/cmds/misc/update/common.d.ts +1 -1
  95. package/dest/cmds/misc/update/github.d.ts +1 -2
  96. package/dest/cmds/misc/update/github.d.ts.map +1 -1
  97. package/dest/cmds/misc/update/github.js +0 -1
  98. package/dest/cmds/misc/update/noir.d.ts +1 -1
  99. package/dest/cmds/misc/update/npm.d.ts +1 -1
  100. package/dest/cmds/misc/update/npm.js +1 -1
  101. package/dest/cmds/misc/update/utils.d.ts +1 -1
  102. package/dest/cmds/misc/update.d.ts +1 -1
  103. package/dest/cmds/misc/update.d.ts.map +1 -1
  104. package/dest/cmds/misc/update.js +2 -3
  105. package/dest/cmds/validator_keys/add.d.ts +5 -0
  106. package/dest/cmds/validator_keys/add.d.ts.map +1 -0
  107. package/dest/cmds/validator_keys/add.js +83 -0
  108. package/dest/cmds/validator_keys/generate_bls_keypair.d.ts +12 -0
  109. package/dest/cmds/validator_keys/generate_bls_keypair.d.ts.map +1 -0
  110. package/dest/cmds/validator_keys/generate_bls_keypair.js +27 -0
  111. package/dest/cmds/validator_keys/index.d.ts +4 -0
  112. package/dest/cmds/validator_keys/index.d.ts.map +1 -0
  113. package/dest/cmds/validator_keys/index.js +32 -0
  114. package/dest/cmds/validator_keys/new.d.ts +29 -0
  115. package/dest/cmds/validator_keys/new.d.ts.map +1 -0
  116. package/dest/cmds/validator_keys/new.js +134 -0
  117. package/dest/cmds/validator_keys/shared.d.ts +68 -0
  118. package/dest/cmds/validator_keys/shared.d.ts.map +1 -0
  119. package/dest/cmds/validator_keys/shared.js +274 -0
  120. package/dest/cmds/validator_keys/staker.d.ts +38 -0
  121. package/dest/cmds/validator_keys/staker.d.ts.map +1 -0
  122. package/dest/cmds/validator_keys/staker.js +210 -0
  123. package/dest/cmds/validator_keys/utils.d.ts +25 -0
  124. package/dest/cmds/validator_keys/utils.d.ts.map +1 -0
  125. package/dest/cmds/validator_keys/utils.js +52 -0
  126. package/dest/config/cached_fetch.d.ts +18 -0
  127. package/dest/config/cached_fetch.d.ts.map +1 -0
  128. package/dest/config/cached_fetch.js +54 -0
  129. package/dest/config/chain_l2_config.d.ts +14 -0
  130. package/dest/config/chain_l2_config.d.ts.map +1 -0
  131. package/dest/config/chain_l2_config.js +45 -0
  132. package/dest/config/enrich_env.d.ts +4 -0
  133. package/dest/config/enrich_env.d.ts.map +1 -0
  134. package/dest/config/enrich_env.js +12 -0
  135. package/dest/config/generated/networks.d.ts +205 -0
  136. package/dest/config/generated/networks.d.ts.map +1 -0
  137. package/dest/config/generated/networks.js +206 -0
  138. package/dest/config/get_l1_config.d.ts +9 -0
  139. package/dest/config/get_l1_config.d.ts.map +1 -0
  140. package/dest/config/get_l1_config.js +24 -0
  141. package/dest/config/index.d.ts +5 -0
  142. package/dest/config/index.d.ts.map +1 -0
  143. package/dest/config/index.js +4 -0
  144. package/dest/config/network_config.d.ts +22 -0
  145. package/dest/config/network_config.d.ts.map +1 -0
  146. package/dest/config/network_config.js +115 -0
  147. package/dest/utils/aztec.d.ts +15 -26
  148. package/dest/utils/aztec.d.ts.map +1 -1
  149. package/dest/utils/aztec.js +56 -72
  150. package/dest/utils/commands.d.ts +22 -13
  151. package/dest/utils/commands.d.ts.map +1 -1
  152. package/dest/utils/commands.js +43 -16
  153. package/dest/utils/encoding.d.ts +1 -1
  154. package/dest/utils/encoding.js +2 -2
  155. package/dest/utils/github.d.ts +1 -2
  156. package/dest/utils/github.d.ts.map +1 -1
  157. package/dest/utils/github.js +0 -1
  158. package/dest/utils/index.d.ts +2 -1
  159. package/dest/utils/index.d.ts.map +1 -1
  160. package/dest/utils/index.js +1 -0
  161. package/dest/utils/inspect.d.ts +5 -11
  162. package/dest/utils/inspect.d.ts.map +1 -1
  163. package/dest/utils/inspect.js +23 -110
  164. package/dest/utils/setup_contracts.d.ts +3 -0
  165. package/dest/utils/setup_contracts.d.ts.map +1 -0
  166. package/dest/utils/setup_contracts.js +16 -0
  167. package/package.json +61 -37
  168. package/public_include_metric_prefixes.json +1 -0
  169. package/src/cmds/aztec_node/block_number.ts +9 -0
  170. package/src/cmds/aztec_node/get_block.ts +11 -0
  171. package/src/cmds/aztec_node/get_current_min_fee.ts +9 -0
  172. package/src/cmds/aztec_node/get_l1_to_l2_message_witness.ts +27 -0
  173. package/src/cmds/{pxe → aztec_node}/get_logs.ts +11 -9
  174. package/src/cmds/{pxe → aztec_node}/get_node_info.ts +15 -23
  175. package/src/cmds/aztec_node/index.ts +87 -0
  176. package/src/cmds/contracts/inspect_contract.ts +20 -17
  177. package/src/cmds/infrastructure/index.ts +8 -11
  178. package/src/cmds/infrastructure/sequencers.ts +41 -22
  179. package/src/cmds/infrastructure/setup_l2_contract.ts +13 -25
  180. package/src/cmds/l1/advance_epoch.ts +7 -5
  181. package/src/cmds/l1/assume_proven_through.ts +11 -10
  182. package/src/cmds/l1/bridge_erc20.ts +8 -4
  183. package/src/cmds/l1/compute_genesis_values.ts +29 -0
  184. package/src/cmds/l1/deploy_l1_contracts_cmd.ts +107 -0
  185. package/src/cmds/l1/deploy_new_rollup.ts +24 -15
  186. package/src/cmds/l1/get_l1_addresses.ts +5 -3
  187. package/src/cmds/l1/get_l1_balance.ts +2 -2
  188. package/src/cmds/l1/governance_utils.ts +20 -24
  189. package/src/cmds/l1/index.ts +87 -113
  190. package/src/cmds/l1/prover_stats.ts +42 -31
  191. package/src/cmds/l1/trigger_seed_snapshot.ts +32 -0
  192. package/src/cmds/l1/update_l1_validators.ts +218 -97
  193. package/src/cmds/misc/generate_bootnode_enr.ts +3 -2
  194. package/src/cmds/misc/generate_secret_and_hash.ts +4 -4
  195. package/src/cmds/misc/generate_secret_key.ts +1 -1
  196. package/src/cmds/misc/get_canonical_sponsored_fpc_address.ts +7 -0
  197. package/src/cmds/misc/index.ts +14 -5
  198. package/src/cmds/misc/update/github.ts +0 -1
  199. package/src/cmds/misc/update/npm.ts +1 -1
  200. package/src/cmds/misc/update.ts +1 -7
  201. package/src/cmds/validator_keys/add.ts +123 -0
  202. package/src/cmds/validator_keys/generate_bls_keypair.ts +34 -0
  203. package/src/cmds/validator_keys/index.ts +142 -0
  204. package/src/cmds/validator_keys/new.ts +207 -0
  205. package/src/cmds/validator_keys/shared.ts +326 -0
  206. package/src/cmds/validator_keys/staker.ts +301 -0
  207. package/src/cmds/validator_keys/utils.ts +81 -0
  208. package/src/config/cached_fetch.ts +67 -0
  209. package/src/config/chain_l2_config.ts +57 -0
  210. package/src/config/enrich_env.ts +15 -0
  211. package/src/config/generated/networks.ts +210 -0
  212. package/src/config/get_l1_config.ts +31 -0
  213. package/src/config/index.ts +4 -0
  214. package/src/config/network_config.ts +147 -0
  215. package/src/utils/aztec.ts +74 -120
  216. package/src/utils/commands.ts +57 -20
  217. package/src/utils/encoding.ts +2 -2
  218. package/src/utils/github.ts +0 -1
  219. package/src/utils/index.ts +1 -0
  220. package/src/utils/inspect.ts +28 -124
  221. package/src/utils/setup_contracts.ts +19 -0
  222. package/dest/cmds/devnet/bootstrap_network.d.ts +0 -3
  223. package/dest/cmds/devnet/bootstrap_network.d.ts.map +0 -1
  224. package/dest/cmds/devnet/bootstrap_network.js +0 -196
  225. package/dest/cmds/devnet/faucet.d.ts +0 -4
  226. package/dest/cmds/devnet/faucet.d.ts.map +0 -1
  227. package/dest/cmds/devnet/faucet.js +0 -26
  228. package/dest/cmds/devnet/index.d.ts +0 -4
  229. package/dest/cmds/devnet/index.d.ts.map +0 -1
  230. package/dest/cmds/devnet/index.js +0 -14
  231. package/dest/cmds/l1/deploy_l1_contracts.d.ts +0 -4
  232. package/dest/cmds/l1/deploy_l1_contracts.d.ts.map +0 -1
  233. package/dest/cmds/l1/deploy_l1_contracts.js +0 -29
  234. package/dest/cmds/l1/deploy_l1_verifier.d.ts +0 -5
  235. package/dest/cmds/l1/deploy_l1_verifier.d.ts.map +0 -1
  236. package/dest/cmds/l1/deploy_l1_verifier.js +0 -54
  237. package/dest/cmds/misc/setup_contracts.d.ts +0 -7
  238. package/dest/cmds/misc/setup_contracts.d.ts.map +0 -1
  239. package/dest/cmds/misc/setup_contracts.js +0 -27
  240. package/dest/cmds/pxe/add_contract.d.ts +0 -5
  241. package/dest/cmds/pxe/add_contract.d.ts.map +0 -1
  242. package/dest/cmds/pxe/add_contract.js +0 -29
  243. package/dest/cmds/pxe/block_number.d.ts +0 -3
  244. package/dest/cmds/pxe/block_number.d.ts.map +0 -1
  245. package/dest/cmds/pxe/block_number.js +0 -10
  246. package/dest/cmds/pxe/get_account.d.ts +0 -4
  247. package/dest/cmds/pxe/get_account.d.ts.map +0 -1
  248. package/dest/cmds/pxe/get_account.js +0 -10
  249. package/dest/cmds/pxe/get_accounts.d.ts +0 -3
  250. package/dest/cmds/pxe/get_accounts.d.ts.map +0 -1
  251. package/dest/cmds/pxe/get_accounts.js +0 -25
  252. package/dest/cmds/pxe/get_block.d.ts +0 -3
  253. package/dest/cmds/pxe/get_block.d.ts.map +0 -1
  254. package/dest/cmds/pxe/get_block.js +0 -9
  255. package/dest/cmds/pxe/get_contract_data.d.ts +0 -4
  256. package/dest/cmds/pxe/get_contract_data.d.ts.map +0 -1
  257. package/dest/cmds/pxe/get_contract_data.js +0 -31
  258. package/dest/cmds/pxe/get_current_base_fee.d.ts +0 -3
  259. package/dest/cmds/pxe/get_current_base_fee.d.ts.map +0 -1
  260. package/dest/cmds/pxe/get_current_base_fee.js +0 -7
  261. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts +0 -4
  262. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts.map +0 -1
  263. package/dest/cmds/pxe/get_l1_to_l2_message_witness.js +0 -11
  264. package/dest/cmds/pxe/get_logs.d.ts +0 -4
  265. package/dest/cmds/pxe/get_logs.d.ts.map +0 -1
  266. package/dest/cmds/pxe/get_node_info.d.ts +0 -3
  267. package/dest/cmds/pxe/get_node_info.d.ts.map +0 -1
  268. package/dest/cmds/pxe/get_pxe_info.d.ts +0 -3
  269. package/dest/cmds/pxe/get_pxe_info.d.ts.map +0 -1
  270. package/dest/cmds/pxe/get_pxe_info.js +0 -11
  271. package/dest/cmds/pxe/index.d.ts +0 -4
  272. package/dest/cmds/pxe/index.d.ts.map +0 -1
  273. package/dest/cmds/pxe/index.js +0 -55
  274. package/src/cmds/devnet/bootstrap_network.ts +0 -318
  275. package/src/cmds/devnet/faucet.ts +0 -33
  276. package/src/cmds/devnet/index.ts +0 -60
  277. package/src/cmds/l1/deploy_l1_contracts.ts +0 -65
  278. package/src/cmds/l1/deploy_l1_verifier.ts +0 -105
  279. package/src/cmds/misc/setup_contracts.ts +0 -40
  280. package/src/cmds/pxe/add_contract.ts +0 -41
  281. package/src/cmds/pxe/block_number.ts +0 -9
  282. package/src/cmds/pxe/get_account.ts +0 -16
  283. package/src/cmds/pxe/get_accounts.ts +0 -35
  284. package/src/cmds/pxe/get_block.ts +0 -10
  285. package/src/cmds/pxe/get_contract_data.ts +0 -51
  286. package/src/cmds/pxe/get_current_base_fee.ts +0 -9
  287. package/src/cmds/pxe/get_l1_to_l2_message_witness.ts +0 -25
  288. package/src/cmds/pxe/get_pxe_info.ts +0 -13
  289. package/src/cmds/pxe/index.ts +0 -170
@@ -1,10 +1,10 @@
1
- import { FunctionSelector } from '@aztec/aztec.js/abi';
2
- import { AztecAddress } from '@aztec/aztec.js/addresses';
3
- import { EthAddress } from '@aztec/aztec.js/eth_address';
4
- import { Fr } from '@aztec/aztec.js/fields';
5
- import { LogId } from '@aztec/aztec.js/log_id';
6
- import { TxHash } from '@aztec/aztec.js/tx_hash';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
3
+ import { FunctionSelector } from '@aztec/stdlib/abi/function-selector';
4
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
7
5
  import { PublicKeys } from '@aztec/stdlib/keys';
6
+ import { LogId } from '@aztec/stdlib/logs/log-id';
7
+ import { TxHash } from '@aztec/stdlib/tx/tx-hash';
8
8
  import { CommanderError, InvalidArgumentError, Option } from 'commander';
9
9
  import { lookup } from 'dns/promises';
10
10
  import { rename, writeFile } from 'fs/promises';
@@ -13,13 +13,13 @@ import { rename, writeFile } from 'fs/promises';
13
13
  * localhost as being host.docker.internal.
14
14
  */ export const getLocalhost = ()=>lookup('host.docker.internal').then(()=>'host.docker.internal').catch(()=>'localhost');
15
15
  export const LOCALHOST = await getLocalhost();
16
- export const { ETHEREUM_HOSTS = `http://${LOCALHOST}:8545`, PRIVATE_KEY, API_KEY, CLI_VERSION } = process.env;
16
+ export const { ETHEREUM_HOSTS = `http://${LOCALHOST}:8545`, PRIVATE_KEY, MNEMONIC, API_KEY, CLI_VERSION } = process.env;
17
17
  export function addOptions(program, options) {
18
18
  options.forEach((option)=>program.addOption(option));
19
19
  return program;
20
20
  }
21
- export const makePxeOption = (mandatory)=>new Option('-u, --rpc-url <string>', 'URL of the PXE').env('PXE_URL').default(`http://${LOCALHOST}:8080`).conflicts('remote-pxe').makeOptionMandatory(mandatory);
22
- export const pxeOption = makePxeOption(true);
21
+ export const makeNodeOption = (mandatory)=>new Option('-n, --node-url <string>', 'URL of the Aztec node').env('AZTEC_NODE_URL').default(`http://${LOCALHOST}:8080`).makeOptionMandatory(mandatory);
22
+ export const nodeOption = makeNodeOption(true);
23
23
  export const l1ChainIdOption = new Option('-c, --l1-chain-id <number>', 'Chain ID of the ethereum host').env('L1_CHAIN_ID').default(31337).argParser((value)=>{
24
24
  const parsedValue = Number(value);
25
25
  if (isNaN(parsedValue)) {
@@ -74,6 +74,27 @@ export const logJson = (log)=>(obj)=>log(JSON.stringify(obj, null, 2));
74
74
  }
75
75
  return from;
76
76
  }
77
+ /**
78
+ * Parses and validates a hex string. Removes leading 0x if present, checks for hex validity,
79
+ * and enforces an optional minimum length.
80
+ * @param hex - The hex string to validate.
81
+ * @param minLen - Optional minimum length (in hex characters, after stripping '0x').
82
+ * @returns The normalized hex string (without leading 0x).
83
+ * @throws InvalidArgumentError if the string is not valid hex or does not meet the minimum length.
84
+ */ // minLen is now interpreted as the minimum number of bytes (2 hex characters per byte)
85
+ export function parseHex(hex, minLen) {
86
+ const normalized = hex.startsWith('0x') ? hex.slice(2) : hex;
87
+ if (!/^[0-9a-fA-F]*$/.test(normalized)) {
88
+ throw new InvalidArgumentError('Invalid hex string');
89
+ }
90
+ if (minLen !== undefined) {
91
+ const minHexLen = minLen * 2;
92
+ if (normalized.length < minHexLen) {
93
+ throw new InvalidArgumentError(`Hex string is too short (length ${normalized.length}), minimum byte length is ${minLen} (hex chars: ${minHexLen})`);
94
+ }
95
+ }
96
+ return `0x${normalized}`;
97
+ }
77
98
  /**
78
99
  * Removes the leading 0x from a hex string. If no leading 0x is found the string is returned unchanged.
79
100
  * @param hex - A hex string
@@ -118,7 +139,7 @@ export function parseBigint(bigint) {
118
139
  try {
119
140
  return AztecAddress.fromString(address);
120
141
  } catch {
121
- throw new InvalidArgumentError(`Invalid address: ${address}`);
142
+ throw new InvalidArgumentError(`Invalid Aztec address: ${address}`);
122
143
  }
123
144
  }
124
145
  /**
@@ -130,7 +151,7 @@ export function parseBigint(bigint) {
130
151
  try {
131
152
  return EthAddress.fromString(address);
132
153
  } catch {
133
- throw new InvalidArgumentError(`Invalid address: ${address}`);
154
+ throw new InvalidArgumentError(`Invalid Ethereumaddress: ${address}`);
134
155
  }
135
156
  }
136
157
  /**
@@ -176,7 +197,7 @@ export function parseBigint(bigint) {
176
197
  * @param value - The string to parse into an integer.
177
198
  * @returns The parsed integer, or undefined if the input string is falsy.
178
199
  * @throws If the input is not a valid integer.
179
- */ export function parseOptionalInteger(value) {
200
+ */ export function parseOptionalInteger(value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {
180
201
  if (!value) {
181
202
  return undefined;
182
203
  }
@@ -184,6 +205,12 @@ export function parseBigint(bigint) {
184
205
  if (!Number.isInteger(parsed)) {
185
206
  throw new InvalidArgumentError('Invalid integer.');
186
207
  }
208
+ if (parsed < min) {
209
+ throw new InvalidArgumentError(`Value must be greater than ${min}.`);
210
+ }
211
+ if (parsed > max) {
212
+ throw new InvalidArgumentError(`Value must be less than ${max}.`);
213
+ }
187
214
  return parsed;
188
215
  }
189
216
  /**
@@ -221,7 +248,7 @@ export function parseBigint(bigint) {
221
248
  }
222
249
  try {
223
250
  return PublicKeys.fromString(publicKey);
224
- } catch (err) {
251
+ } catch {
225
252
  throw new InvalidArgumentError(`Invalid public key: ${publicKey}`);
226
253
  }
227
254
  }
@@ -233,7 +260,7 @@ export function parseBigint(bigint) {
233
260
  */ export function parsePartialAddress(address) {
234
261
  try {
235
262
  return Fr.fromHexString(address);
236
- } catch (err) {
263
+ } catch {
237
264
  throw new InvalidArgumentError(`Invalid partial address: ${address}`);
238
265
  }
239
266
  }
@@ -245,7 +272,7 @@ export function parseBigint(bigint) {
245
272
  */ export function parseSecretKey(secretKey) {
246
273
  try {
247
274
  return Fr.fromHexString(secretKey);
248
- } catch (err) {
275
+ } catch {
249
276
  throw new InvalidArgumentError(`Invalid encryption secret key: ${secretKey}`);
250
277
  }
251
278
  }
@@ -275,7 +302,7 @@ export function parseBigint(bigint) {
275
302
  return new Fr(BigInt(field.replace(/n$/, '')));
276
303
  }
277
304
  return new Fr(BigInt(field));
278
- } catch (err) {
305
+ } catch {
279
306
  throw new InvalidArgumentError(`Invalid field: ${field}`);
280
307
  }
281
308
  }
@@ -12,4 +12,4 @@ export declare function parseStructString(str: string, abiType: StructType): any
12
12
  * @returns The encoded array.
13
13
  */
14
14
  export declare function encodeArgs(args: any[], params: ABIParameter[]): any[];
15
- //# sourceMappingURL=encoding.d.ts.map
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9lbmNvZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQVcsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFM0U7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxPQWNqRTtBQTRFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLFVBQVUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQVk3RCJ9
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  /**
3
3
  * Parses a hex string into an ABI struct type.
4
4
  * @param str - The encoded hex string.
@@ -29,7 +29,7 @@ import { Fr } from '@aztec/foundation/fields';
29
29
  let res;
30
30
  try {
31
31
  res = BigInt(arg);
32
- } catch (err) {
32
+ } catch {
33
33
  throw new Error(`Invalid value passed for ${name}. Could not parse ${arg} as a${kind === 'integer' ? 'n' : ''} ${kind}.`);
34
34
  }
35
35
  return res;
@@ -1,4 +1,3 @@
1
1
  export declare const GITHUB_OWNER = "AztecProtocol";
2
2
  export declare const GITHUB_REPO = "aztec-packages";
3
- export declare const GITHUB_TAG_PREFIX = "aztec-packages";
4
- //# sourceMappingURL=github.d.ts.map
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZ2l0aHViLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQU8sTUFBTSxZQUFZLGtCQUFrQixDQUFDO0FBQzVDLGVBQU8sTUFBTSxXQUFXLG1CQUFtQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC;AAC5C,eAAO,MAAM,iBAAiB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C,eAAO,MAAM,WAAW,mBAAmB,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export const GITHUB_OWNER = 'AztecProtocol';
2
2
  export const GITHUB_REPO = 'aztec-packages';
3
- export const GITHUB_TAG_PREFIX = 'aztec-packages';
@@ -2,4 +2,5 @@ export * from './commands.js';
2
2
  export * from './aztec.js';
3
3
  export * from './encoding.js';
4
4
  export * from './github.js';
5
- //# sourceMappingURL=index.d.ts.map
5
+ export * from './setup_contracts.js';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHNCQUFzQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC"}
@@ -2,3 +2,4 @@ export * from './commands.js';
2
2
  export * from './aztec.js';
3
3
  export * from './encoding.js';
4
4
  export * from './github.js';
5
+ export * from './setup_contracts.js';
@@ -1,17 +1,11 @@
1
- import type { ContractArtifact, Fr } from '@aztec/aztec.js';
1
+ import { BlockNumber } from '@aztec/foundation/branded-types';
2
2
  import type { LogFn } from '@aztec/foundation/log';
3
- import type { PXE } from '@aztec/stdlib/interfaces/client';
3
+ import type { AztecNode } from '@aztec/stdlib/interfaces/client';
4
4
  import type { TxHash } from '@aztec/stdlib/tx';
5
- export declare function inspectBlock(pxe: PXE, blockNumber: number, log: LogFn, opts?: {
5
+ export declare function inspectBlock(aztecNode: AztecNode, blockNumber: BlockNumber, log: LogFn, opts?: {
6
6
  showTxs?: boolean;
7
7
  }): Promise<void>;
8
- export declare function inspectTx(pxe: PXE, txHash: TxHash, log: LogFn, opts?: {
8
+ export declare function inspectTx(aztecNode: AztecNode, txHash: TxHash, log: LogFn, opts?: {
9
9
  includeBlockInfo?: boolean;
10
- artifactMap?: ArtifactMap;
11
10
  }): Promise<void>;
12
- type ArtifactMap = Record<string, ContractArtifactWithClassId>;
13
- type ContractArtifactWithClassId = ContractArtifact & {
14
- classId: Fr;
15
- };
16
- export {};
17
- //# sourceMappingURL=inspect.d.ts.map
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2luc3BlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHdCQUFzQixZQUFZLENBQ2hDLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLEdBQUcsRUFBRSxLQUFLLEVBQ1YsSUFBSSxHQUFFO0lBQUUsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFBO0NBQU8saUJBMEJqQztBQUVELHdCQUFzQixTQUFTLENBQzdCLFNBQVMsRUFBRSxTQUFTLEVBQ3BCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsR0FBRyxFQUFFLEtBQUssRUFDVixJQUFJLEdBQUU7SUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQTtDQUFPLGlCQXNFMUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,gBAAgB,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,iBA0B7G;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,WAAW,CAAA;CAAO,iBAmGrE;AAyCD,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAC/D,KAAK,2BAA2B,GAAG,gBAAgB,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/utils/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,iBA0BjC;AAED,wBAAsB,SAAS,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,iBAsE1C"}
@@ -1,8 +1,5 @@
1
- import { ProtocolContractAddress } from '@aztec/protocol-contracts';
2
- import { siloNullifier } from '@aztec/stdlib/hash';
3
- import { NoteStatus } from '@aztec/stdlib/note';
4
- export async function inspectBlock(pxe, blockNumber, log, opts = {}) {
5
- const block = await pxe.getBlock(blockNumber);
1
+ export async function inspectBlock(aztecNode, blockNumber, log, opts = {}) {
2
+ const block = await aztecNode.getBlock(blockNumber);
6
3
  if (!block) {
7
4
  log(`No block found for block number ${blockNumber}`);
8
5
  return;
@@ -11,35 +8,32 @@ export async function inspectBlock(pxe, blockNumber, log, opts = {}) {
11
8
  log(`Block ${blockNumber} (${blockHash.toString()})`);
12
9
  log(` Total fees: ${block.header.totalFees.toBigInt()}`);
13
10
  log(` Total mana used: ${block.header.totalManaUsed.toBigInt()}`);
14
- log(` Fee per gas unit: DA=${block.header.globalVariables.gasFees.feePerDaGas.toBigInt()} L2=${block.header.globalVariables.gasFees.feePerL2Gas.toBigInt()}`);
11
+ log(` Fee per gas unit: DA=${block.header.globalVariables.gasFees.feePerDaGas} L2=${block.header.globalVariables.gasFees.feePerL2Gas}`);
15
12
  log(` Coinbase: ${block.header.globalVariables.coinbase}`);
16
13
  log(` Fee recipient: ${block.header.globalVariables.feeRecipient}`);
17
- log(` Timestamp: ${new Date(block.header.globalVariables.timestamp.toNumber() * 500)}`);
14
+ log(` Timestamp: ${new Date(Number(block.header.globalVariables.timestamp) * 500)}`);
18
15
  if (opts.showTxs) {
19
16
  log(``);
20
- const artifactMap = await getKnownArtifacts(pxe);
21
17
  for (const txHash of block.body.txEffects.map((tx)=>tx.txHash)){
22
- await inspectTx(pxe, txHash, log, {
23
- includeBlockInfo: false,
24
- artifactMap
18
+ await inspectTx(aztecNode, txHash, log, {
19
+ includeBlockInfo: false
25
20
  });
26
21
  }
27
22
  } else {
28
23
  log(` Transactions: ${block.body.txEffects.length}`);
29
24
  }
30
25
  }
31
- export async function inspectTx(pxe, txHash, log, opts = {}) {
32
- const [receipt, effectsInBlock, getNotes] = await Promise.all([
33
- pxe.getTxReceipt(txHash),
34
- pxe.getTxEffect(txHash),
35
- pxe.getNotes({
36
- txHash,
37
- status: NoteStatus.ACTIVE_OR_NULLIFIED
38
- })
26
+ export async function inspectTx(aztecNode, txHash, log, opts = {}) {
27
+ const [receipt, effectsInBlock] = await Promise.all([
28
+ aztecNode.getTxReceipt(txHash),
29
+ aztecNode.getTxEffect(txHash)
39
30
  ]);
40
31
  // Base tx data
41
32
  log(`Tx ${txHash.toString()}`);
42
- log(` Status: ${receipt.status} ${effectsInBlock ? `(${effectsInBlock.data.revertCode.getDescription()})` : ''}`);
33
+ log(` Status: ${receipt.status}`);
34
+ if (receipt.executionResult) {
35
+ log(` Execution result: ${receipt.executionResult}`);
36
+ }
43
37
  if (receipt.error) {
44
38
  log(` Error: ${receipt.error}`);
45
39
  }
@@ -47,7 +41,6 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
47
41
  return;
48
42
  }
49
43
  const effects = effectsInBlock.data;
50
- const artifactMap = opts?.artifactMap ?? await getKnownArtifacts(pxe);
51
44
  if (opts.includeBlockInfo) {
52
45
  log(` Block: ${receipt.blockNumber} (${receipt.blockHash?.toString()})`);
53
46
  }
@@ -74,39 +67,17 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
74
67
  const notes = effects.noteHashes;
75
68
  if (notes.length > 0) {
76
69
  log(' Created notes:');
77
- log(` Total: ${notes.length}. Found: ${getNotes.length}.`);
78
- if (getNotes.length) {
79
- log(' Found notes:');
80
- for (const note of getNotes){
81
- inspectNote(note, artifactMap, log);
82
- }
70
+ log(` Total: ${notes.length}`);
71
+ for (const note of notes){
72
+ log(` Note hash: ${note.toShortString()}`);
83
73
  }
84
74
  }
85
- // Nullifiers
86
- const nullifierCount = effects.nullifiers.length;
87
- const { deployNullifiers, initNullifiers, classNullifiers } = await getKnownNullifiers(pxe, artifactMap);
88
- if (nullifierCount > 0) {
89
- log(' Nullifiers:');
90
- for (const nullifier of effects.nullifiers){
91
- const [note] = await pxe.getNotes({
92
- siloedNullifier: nullifier
93
- });
94
- const deployed = deployNullifiers[nullifier.toString()];
95
- const initialized = initNullifiers[nullifier.toString()];
96
- const registered = classNullifiers[nullifier.toString()];
97
- if (nullifier.toBuffer().equals(txHash.toBuffer())) {
98
- log(` Transaction hash nullifier ${nullifier.toShortString()}`);
99
- } else if (note) {
100
- inspectNote(note, artifactMap, log, `Nullifier ${nullifier.toShortString()} for note`);
101
- } else if (deployed) {
102
- log(` Contract ${toFriendlyAddress(deployed, artifactMap)} deployed via nullifier ${nullifier.toShortString()}`);
103
- } else if (initialized) {
104
- log(` Contract ${toFriendlyAddress(initialized, artifactMap)} initialized via nullifier ${nullifier.toShortString()}`);
105
- } else if (registered) {
106
- log(` Class ${registered} registered via nullifier ${nullifier.toShortString()}`);
107
- } else {
108
- log(` Unknown nullifier ${nullifier.toString()}`);
109
- }
75
+ // Created nullifiers
76
+ const nullifiers = effects.nullifiers;
77
+ if (nullifiers.length > 0) {
78
+ log(' Created nullifiers:');
79
+ for (const nullifier of nullifiers){
80
+ log(` Nullifier: ${nullifier.toShortString()}`);
110
81
  }
111
82
  }
112
83
  // L2 to L1 messages
@@ -117,61 +88,3 @@ export async function inspectTx(pxe, txHash, log, opts = {}) {
117
88
  }
118
89
  }
119
90
  }
120
- function inspectNote(note, artifactMap, log, text = 'Note') {
121
- const artifact = artifactMap[note.contractAddress.toString()];
122
- const contract = artifact?.name ?? note.contractAddress.toString();
123
- const type = artifact?.notes[note.noteTypeId.toString()]?.typ ?? note.noteTypeId.toField().toShortString();
124
- log(` ${text} type ${type} at ${contract}`);
125
- log(` Owner: ${toFriendlyAddress(note.owner, artifactMap)}`);
126
- for (const field of note.note.items){
127
- log(` ${field.toString()}`);
128
- }
129
- }
130
- function toFriendlyAddress(address, artifactMap) {
131
- const artifact = artifactMap[address.toString()];
132
- if (!artifact) {
133
- return address.toString();
134
- }
135
- return `${artifact.name}<${address.toString()}>`;
136
- }
137
- async function getKnownNullifiers(pxe, artifactMap) {
138
- const knownContracts = await pxe.getContracts();
139
- const deployerAddress = ProtocolContractAddress.ContractInstanceDeployer;
140
- const registererAddress = ProtocolContractAddress.ContractClassRegisterer;
141
- const initNullifiers = {};
142
- const deployNullifiers = {};
143
- const classNullifiers = {};
144
- for (const contract of knownContracts){
145
- initNullifiers[siloNullifier(contract, contract.toField()).toString()] = contract;
146
- deployNullifiers[siloNullifier(deployerAddress, contract.toField()).toString()] = contract;
147
- }
148
- for (const artifact of Object.values(artifactMap)){
149
- classNullifiers[siloNullifier(registererAddress, artifact.classId).toString()] = `${artifact.name}Class<${artifact.classId}>`;
150
- }
151
- return {
152
- initNullifiers,
153
- deployNullifiers,
154
- classNullifiers
155
- };
156
- }
157
- async function getKnownArtifacts(pxe) {
158
- const knownContractAddresses = await pxe.getContracts();
159
- const knownContracts = (await Promise.all(knownContractAddresses.map((contractAddress)=>pxe.getContractMetadata(contractAddress)))).map((contractMetadata)=>contractMetadata.contractInstance);
160
- const classIds = [
161
- ...new Set(knownContracts.map((contract)=>contract?.currentContractClassId))
162
- ];
163
- const knownArtifacts = (await Promise.all(classIds.map((classId)=>classId ? pxe.getContractClassMetadata(classId) : undefined))).map((contractClassMetadata)=>contractClassMetadata ? {
164
- ...contractClassMetadata.artifact,
165
- classId: contractClassMetadata.contractClass?.id
166
- } : undefined);
167
- const map = {};
168
- for (const instance of knownContracts){
169
- if (instance) {
170
- const artifact = knownArtifacts.find((a)=>a?.classId?.equals(instance.currentContractClassId));
171
- if (artifact) {
172
- map[instance.address.toString()] = artifact;
173
- }
174
- }
175
- }
176
- return map;
177
- }
@@ -0,0 +1,3 @@
1
+ import type { AztecAddress } from '@aztec/aztec.js/addresses';
2
+ export declare function getSponsoredFPCAddress(): Promise<AztecAddress>;
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBfY29udHJhY3RzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvc2V0dXBfY29udHJhY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBWTlELHdCQUFzQixzQkFBc0IsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLENBTXBFIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup_contracts.d.ts","sourceRoot":"","sources":["../../src/utils/setup_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAY9D,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,YAAY,CAAC,CAMpE"}
@@ -0,0 +1,16 @@
1
+ import { getContractInstanceFromInstantiationParams } from '@aztec/aztec.js/contracts';
2
+ import { Fr } from '@aztec/aztec.js/fields';
3
+ import { SPONSORED_FPC_SALT } from '@aztec/constants';
4
+ async function getSponsoredFPCContract() {
5
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
+ // @ts-ignore - Importing noir-contracts.js even in devDeps results in a circular dependency error. Need to ignore because this line doesn't cause an error in a dev environment
7
+ const { SponsoredFPCContract } = await import('@aztec/noir-contracts.js/SponsoredFPC');
8
+ return SponsoredFPCContract;
9
+ }
10
+ export async function getSponsoredFPCAddress() {
11
+ const SponsoredFPCContract = await getSponsoredFPCContract();
12
+ const sponsoredFPCInstance = await getContractInstanceFromInstantiationParams(SponsoredFPCContract.artifact, {
13
+ salt: new Fr(SPONSORED_FPC_SALT)
14
+ });
15
+ return sponsoredFPCInstance.address;
16
+ }
package/package.json CHANGED
@@ -1,18 +1,23 @@
1
1
  {
2
2
  "name": "@aztec/cli",
3
- "version": "0.0.0-test.0",
3
+ "version": "0.0.1-commit.0208eb9",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./contracts": "./dest/cmds/contracts/index.js",
7
7
  "./devnet": "./dest/cmds/devnet/index.js",
8
8
  "./infrastructure": "./dest/cmds/infrastructure/index.js",
9
9
  "./l1": "./dest/cmds/l1/index.js",
10
- "./pxe": "./dest/cmds/pxe/index.js",
10
+ "./l1/validators": "./dest/cmds/l1/update_l1_validators.js",
11
+ "./aztec_node": "./dest/cmds/aztec_node/index.js",
11
12
  "./cli-utils": "./dest/utils/index.js",
12
13
  "./misc": "./dest/cmds/misc/index.js",
14
+ "./validator_keys": "./dest/cmds/validator_keys/index.js",
13
15
  "./setup-contracts": "./dest/cmds/misc/setup_contracts.js",
14
16
  "./utils": "./dest/utils/index.js",
15
- "./inspect": "./dest/utils/inspect.js"
17
+ "./inspect": "./dest/utils/inspect.js",
18
+ "./config": "./dest/config/index.js",
19
+ "./config/chain": "./dest/config/chain_l2_config.js",
20
+ "./config/network": "./dest/config/network_config.js"
16
21
  },
17
22
  "typedocOptions": {
18
23
  "entryPoints": [
@@ -22,15 +27,16 @@
22
27
  "tsconfig": "./tsconfig.json"
23
28
  },
24
29
  "scripts": {
25
- "build": "yarn clean && tsc -b",
26
- "build:dev": "tsc -b --watch",
30
+ "build": "yarn clean && ../scripts/tsc.sh",
31
+ "build:dev": "../scripts/tsc.sh --watch",
27
32
  "clean": "rm -rf ./dest .tsbuildinfo",
28
- "formatting": "run -T prettier --check ./src && run -T eslint ./src",
29
- "formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
33
+ "copy-generated": "mkdir -p dest/config/generated/networks && cp src/config/generated/networks/*.json dest/config/generated/networks/",
34
+ "generate": "./scripts/generate.sh",
30
35
  "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}"
31
36
  },
32
37
  "inherits": [
33
- "../package.common.json"
38
+ "../package.common.json",
39
+ "./package.local.json"
34
40
  ],
35
41
  "jest": {
36
42
  "preset": "ts-jest/presets/default-esm",
@@ -64,62 +70,80 @@
64
70
  "testTimeout": 120000,
65
71
  "setupFiles": [
66
72
  "../../foundation/src/jest/setup.mjs"
73
+ ],
74
+ "testEnvironment": "../../foundation/src/jest/env.mjs",
75
+ "setupFilesAfterEnv": [
76
+ "../../foundation/src/jest/setupAfterEnv.mjs"
67
77
  ]
68
78
  },
69
79
  "dependencies": {
70
- "@aztec/archiver": "0.0.0-test.0",
71
- "@aztec/aztec.js": "0.0.0-test.0",
72
- "@aztec/constants": "0.0.0-test.0",
73
- "@aztec/foundation": "0.0.0-test.0",
74
- "@aztec/l1-artifacts": "0.0.0-test.0",
75
- "@aztec/p2p": "0.0.0-test.0",
76
- "@aztec/stdlib": "0.0.0-test.0",
77
- "@aztec/world-state": "0.0.0-test.0",
80
+ "@aztec/accounts": "0.0.1-commit.0208eb9",
81
+ "@aztec/archiver": "0.0.1-commit.0208eb9",
82
+ "@aztec/aztec.js": "0.0.1-commit.0208eb9",
83
+ "@aztec/constants": "0.0.1-commit.0208eb9",
84
+ "@aztec/entrypoints": "0.0.1-commit.0208eb9",
85
+ "@aztec/ethereum": "0.0.1-commit.0208eb9",
86
+ "@aztec/foundation": "0.0.1-commit.0208eb9",
87
+ "@aztec/l1-artifacts": "0.0.1-commit.0208eb9",
88
+ "@aztec/node-keystore": "0.0.1-commit.0208eb9",
89
+ "@aztec/node-lib": "0.0.1-commit.0208eb9",
90
+ "@aztec/p2p": "0.0.1-commit.0208eb9",
91
+ "@aztec/protocol-contracts": "0.0.1-commit.0208eb9",
92
+ "@aztec/sequencer-client": "0.0.1-commit.0208eb9",
93
+ "@aztec/slasher": "0.0.1-commit.0208eb9",
94
+ "@aztec/stdlib": "0.0.1-commit.0208eb9",
95
+ "@aztec/test-wallet": "0.0.1-commit.0208eb9",
96
+ "@aztec/world-state": "0.0.1-commit.0208eb9",
97
+ "@ethersproject/wallet": "^5.8.0",
78
98
  "@iarna/toml": "^2.2.5",
79
99
  "@libp2p/peer-id-factory": "^3.0.4",
100
+ "@scure/bip39": "^2.0.1",
80
101
  "commander": "^12.1.0",
81
102
  "lodash.chunk": "^4.2.0",
82
103
  "lodash.groupby": "^4.6.0",
83
104
  "semver": "^7.5.4",
84
105
  "source-map-support": "^0.5.21",
85
106
  "tslib": "^2.4.0",
86
- "viem": "2.22.8"
107
+ "viem": "npm:@aztec/viem@2.38.2"
87
108
  },
88
109
  "devDependencies": {
89
- "@aztec/accounts": "0.0.0-test.0",
90
- "@aztec/ethereum": "0.0.0-test.0",
91
- "@aztec/protocol-contracts": "0.0.0-test.0",
92
- "@jest/globals": "^29.5.0",
93
- "@types/jest": "^29.5.0",
110
+ "@aztec/aztec-node": "0.0.1-commit.0208eb9",
111
+ "@aztec/kv-store": "0.0.1-commit.0208eb9",
112
+ "@aztec/telemetry-client": "0.0.1-commit.0208eb9",
113
+ "@jest/globals": "^30.0.0",
114
+ "@types/jest": "^30.0.0",
94
115
  "@types/lodash.chunk": "^4.2.9",
95
116
  "@types/lodash.groupby": "^4.6.9",
96
117
  "@types/lodash.startcase": "^4.4.7",
97
- "@types/node": "^18.7.23",
118
+ "@types/node": "^22.15.17",
98
119
  "@types/semver": "^7.5.2",
99
120
  "@types/source-map-support": "^0.5.10",
100
- "jest": "^29.5.0",
101
- "jest-mock-extended": "^3.0.5",
102
- "ts-jest": "^29.1.0",
121
+ "@typescript/native-preview": "7.0.0-dev.20260113.1",
122
+ "jest": "^30.0.0",
123
+ "jest-mock-extended": "^4.0.0",
124
+ "ts-jest": "^29.4.0",
103
125
  "ts-node": "^10.9.1",
104
- "typescript": "^5.0.4"
126
+ "typescript": "^5.3.3"
105
127
  },
106
128
  "peerDependencies": {
107
- "@aztec/accounts": "0.0.0-test.0",
108
- "@aztec/bb-prover": "0.0.0-test.0",
109
- "@aztec/ethereum": "0.0.0-test.0",
110
- "@aztec/l1-artifacts": "0.0.0-test.0",
111
- "@aztec/noir-contracts.js": "0.0.0-test.0",
112
- "@aztec/noir-protocol-circuits-types": "0.0.0-test.0",
113
- "@aztec/protocol-contracts": "0.0.0-test.0",
114
- "@aztec/stdlib": "0.0.0-test.0"
129
+ "@aztec/accounts": "0.0.1-commit.0208eb9",
130
+ "@aztec/bb-prover": "0.0.1-commit.0208eb9",
131
+ "@aztec/ethereum": "0.0.1-commit.0208eb9",
132
+ "@aztec/l1-artifacts": "0.0.1-commit.0208eb9",
133
+ "@aztec/noir-contracts.js": "0.0.1-commit.0208eb9",
134
+ "@aztec/noir-protocol-circuits-types": "0.0.1-commit.0208eb9",
135
+ "@aztec/noir-test-contracts.js": "0.0.1-commit.0208eb9",
136
+ "@aztec/protocol-contracts": "0.0.1-commit.0208eb9",
137
+ "@aztec/stdlib": "0.0.1-commit.0208eb9"
115
138
  },
116
139
  "files": [
117
140
  "dest",
118
141
  "src",
119
- "!*.test.*"
142
+ "!*.test.*",
143
+ "public_include_metric_prefixes.json"
120
144
  ],
121
145
  "types": "./dest/index.d.ts",
122
146
  "engines": {
123
- "node": ">=18"
147
+ "node": ">=20.10"
124
148
  }
125
149
  }
@@ -0,0 +1 @@
1
+ ["aztec.validator", "aztec.tx_collector", "aztec.mempool", "aztec.p2p.gossip.agg_", "aztec.ivc_verifier.agg_"]
@@ -0,0 +1,9 @@
1
+ import { createAztecNodeClient } from '@aztec/aztec.js/node';
2
+ import type { LogFn } from '@aztec/foundation/log';
3
+
4
+ export async function blockNumber(nodeUrl: string, log: LogFn) {
5
+ const aztecNode = createAztecNodeClient(nodeUrl);
6
+ const [latestNum, provenNum] = await Promise.all([aztecNode.getBlockNumber(), aztecNode.getProvenBlockNumber()]);
7
+ log(`Latest block: ${latestNum}`);
8
+ log(`Proven block: ${provenNum}`);
9
+ }
@@ -0,0 +1,11 @@
1
+ import { createAztecNodeClient } from '@aztec/aztec.js/node';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
3
+ import type { LogFn } from '@aztec/foundation/log';
4
+
5
+ import { inspectBlock } from '../../utils/inspect.js';
6
+
7
+ export async function getBlock(nodeUrl: string, maybeBlockNumber: number | undefined, log: LogFn) {
8
+ const aztecNode = createAztecNodeClient(nodeUrl);
9
+ const blockNumber: BlockNumber = maybeBlockNumber ? BlockNumber(maybeBlockNumber) : await aztecNode.getBlockNumber();
10
+ await inspectBlock(aztecNode, blockNumber, log, { showTxs: true });
11
+ }
@@ -0,0 +1,9 @@
1
+ import { createAztecNodeClient } from '@aztec/aztec.js/node';
2
+ import { jsonStringify } from '@aztec/foundation/json-rpc';
3
+ import type { LogFn, Logger } from '@aztec/foundation/log';
4
+
5
+ export async function getCurrentMinFee(nodeUrl: string, debugLogger: Logger, log: LogFn) {
6
+ const node = createAztecNodeClient(nodeUrl);
7
+ const fees = await node.getCurrentMinFees();
8
+ log(`Current fees: ${jsonStringify(fees)}`);
9
+ }