@aztec/cli 0.0.0-test.1 → 0.0.1-commit.023c3e5

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 (285) 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/create_l1_account.d.ts +1 -1
  47. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts +4 -0
  48. package/dest/cmds/l1/deploy_l1_contracts_cmd.d.ts.map +1 -0
  49. package/dest/cmds/l1/deploy_l1_contracts_cmd.js +81 -0
  50. package/dest/cmds/l1/deploy_new_rollup.d.ts +4 -3
  51. package/dest/cmds/l1/deploy_new_rollup.d.ts.map +1 -1
  52. package/dest/cmds/l1/deploy_new_rollup.js +18 -9
  53. package/dest/cmds/l1/get_l1_addresses.d.ts +2 -2
  54. package/dest/cmds/l1/get_l1_addresses.d.ts.map +1 -1
  55. package/dest/cmds/l1/get_l1_addresses.js +5 -2
  56. package/dest/cmds/l1/get_l1_balance.d.ts +1 -1
  57. package/dest/cmds/l1/get_l1_balance.js +4 -2
  58. package/dest/cmds/l1/governance_utils.d.ts +5 -5
  59. package/dest/cmds/l1/governance_utils.d.ts.map +1 -1
  60. package/dest/cmds/l1/governance_utils.js +19 -17
  61. package/dest/cmds/l1/index.d.ts +1 -1
  62. package/dest/cmds/l1/index.d.ts.map +1 -1
  63. package/dest/cmds/l1/index.js +37 -44
  64. package/dest/cmds/l1/prover_stats.d.ts +1 -1
  65. package/dest/cmds/l1/prover_stats.d.ts.map +1 -1
  66. package/dest/cmds/l1/prover_stats.js +32 -30
  67. package/dest/cmds/l1/trigger_seed_snapshot.d.ts +6 -0
  68. package/dest/cmds/l1/trigger_seed_snapshot.d.ts.map +1 -0
  69. package/dest/cmds/l1/trigger_seed_snapshot.js +20 -0
  70. package/dest/cmds/l1/update_l1_validators.d.ts +21 -6
  71. package/dest/cmds/l1/update_l1_validators.d.ts.map +1 -1
  72. package/dest/cmds/l1/update_l1_validators.js +198 -103
  73. package/dest/cmds/misc/compute_selector.d.ts +1 -1
  74. package/dest/cmds/misc/example_contracts.d.ts +1 -1
  75. package/dest/cmds/misc/generate_bootnode_enr.d.ts +2 -2
  76. package/dest/cmds/misc/generate_bootnode_enr.d.ts.map +1 -1
  77. package/dest/cmds/misc/generate_bootnode_enr.js +2 -2
  78. package/dest/cmds/misc/generate_p2p_private_key.d.ts +1 -1
  79. package/dest/cmds/misc/generate_secret_and_hash.d.ts +2 -2
  80. package/dest/cmds/misc/generate_secret_and_hash.d.ts.map +1 -1
  81. package/dest/cmds/misc/generate_secret_and_hash.js +4 -4
  82. package/dest/cmds/misc/generate_secret_key.d.ts +2 -2
  83. package/dest/cmds/misc/generate_secret_key.d.ts.map +1 -1
  84. package/dest/cmds/misc/generate_secret_key.js +1 -1
  85. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts +3 -0
  86. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.d.ts.map +1 -0
  87. package/dest/cmds/misc/get_canonical_sponsored_fpc_address.js +4 -0
  88. package/dest/cmds/misc/index.d.ts +1 -1
  89. package/dest/cmds/misc/index.d.ts.map +1 -1
  90. package/dest/cmds/misc/index.js +8 -4
  91. package/dest/cmds/misc/update/common.d.ts +1 -1
  92. package/dest/cmds/misc/update/github.d.ts +1 -2
  93. package/dest/cmds/misc/update/github.d.ts.map +1 -1
  94. package/dest/cmds/misc/update/github.js +0 -1
  95. package/dest/cmds/misc/update/noir.d.ts +1 -1
  96. package/dest/cmds/misc/update/npm.d.ts +1 -1
  97. package/dest/cmds/misc/update/npm.js +1 -1
  98. package/dest/cmds/misc/update/utils.d.ts +1 -1
  99. package/dest/cmds/misc/update.d.ts +1 -1
  100. package/dest/cmds/misc/update.d.ts.map +1 -1
  101. package/dest/cmds/misc/update.js +2 -3
  102. package/dest/cmds/validator_keys/add.d.ts +5 -0
  103. package/dest/cmds/validator_keys/add.d.ts.map +1 -0
  104. package/dest/cmds/validator_keys/add.js +83 -0
  105. package/dest/cmds/validator_keys/generate_bls_keypair.d.ts +12 -0
  106. package/dest/cmds/validator_keys/generate_bls_keypair.d.ts.map +1 -0
  107. package/dest/cmds/validator_keys/generate_bls_keypair.js +27 -0
  108. package/dest/cmds/validator_keys/index.d.ts +4 -0
  109. package/dest/cmds/validator_keys/index.d.ts.map +1 -0
  110. package/dest/cmds/validator_keys/index.js +32 -0
  111. package/dest/cmds/validator_keys/new.d.ts +29 -0
  112. package/dest/cmds/validator_keys/new.d.ts.map +1 -0
  113. package/dest/cmds/validator_keys/new.js +134 -0
  114. package/dest/cmds/validator_keys/shared.d.ts +68 -0
  115. package/dest/cmds/validator_keys/shared.d.ts.map +1 -0
  116. package/dest/cmds/validator_keys/shared.js +274 -0
  117. package/dest/cmds/validator_keys/staker.d.ts +38 -0
  118. package/dest/cmds/validator_keys/staker.d.ts.map +1 -0
  119. package/dest/cmds/validator_keys/staker.js +210 -0
  120. package/dest/cmds/validator_keys/utils.d.ts +25 -0
  121. package/dest/cmds/validator_keys/utils.d.ts.map +1 -0
  122. package/dest/cmds/validator_keys/utils.js +52 -0
  123. package/dest/config/cached_fetch.d.ts +18 -0
  124. package/dest/config/cached_fetch.d.ts.map +1 -0
  125. package/dest/config/cached_fetch.js +54 -0
  126. package/dest/config/chain_l2_config.d.ts +14 -0
  127. package/dest/config/chain_l2_config.d.ts.map +1 -0
  128. package/dest/config/chain_l2_config.js +45 -0
  129. package/dest/config/enrich_env.d.ts +4 -0
  130. package/dest/config/enrich_env.d.ts.map +1 -0
  131. package/dest/config/enrich_env.js +12 -0
  132. package/dest/config/generated/networks.d.ts +205 -0
  133. package/dest/config/generated/networks.d.ts.map +1 -0
  134. package/dest/config/generated/networks.js +206 -0
  135. package/dest/config/get_l1_config.d.ts +9 -0
  136. package/dest/config/get_l1_config.d.ts.map +1 -0
  137. package/dest/config/get_l1_config.js +24 -0
  138. package/dest/config/index.d.ts +5 -0
  139. package/dest/config/index.d.ts.map +1 -0
  140. package/dest/config/index.js +4 -0
  141. package/dest/config/network_config.d.ts +22 -0
  142. package/dest/config/network_config.d.ts.map +1 -0
  143. package/dest/config/network_config.js +115 -0
  144. package/dest/utils/aztec.d.ts +15 -26
  145. package/dest/utils/aztec.d.ts.map +1 -1
  146. package/dest/utils/aztec.js +56 -72
  147. package/dest/utils/commands.d.ts +22 -13
  148. package/dest/utils/commands.d.ts.map +1 -1
  149. package/dest/utils/commands.js +43 -16
  150. package/dest/utils/encoding.d.ts +1 -1
  151. package/dest/utils/encoding.js +2 -2
  152. package/dest/utils/github.d.ts +1 -2
  153. package/dest/utils/github.d.ts.map +1 -1
  154. package/dest/utils/github.js +0 -1
  155. package/dest/utils/index.d.ts +2 -1
  156. package/dest/utils/index.d.ts.map +1 -1
  157. package/dest/utils/index.js +1 -0
  158. package/dest/utils/inspect.d.ts +5 -11
  159. package/dest/utils/inspect.d.ts.map +1 -1
  160. package/dest/utils/inspect.js +23 -110
  161. package/dest/utils/setup_contracts.d.ts +3 -0
  162. package/dest/utils/setup_contracts.d.ts.map +1 -0
  163. package/dest/utils/setup_contracts.js +16 -0
  164. package/package.json +61 -37
  165. package/public_include_metric_prefixes.json +1 -0
  166. package/src/cmds/aztec_node/block_number.ts +9 -0
  167. package/src/cmds/aztec_node/get_block.ts +11 -0
  168. package/src/cmds/aztec_node/get_current_min_fee.ts +9 -0
  169. package/src/cmds/aztec_node/get_l1_to_l2_message_witness.ts +27 -0
  170. package/src/cmds/{pxe → aztec_node}/get_logs.ts +11 -9
  171. package/src/cmds/{pxe → aztec_node}/get_node_info.ts +15 -23
  172. package/src/cmds/aztec_node/index.ts +87 -0
  173. package/src/cmds/contracts/inspect_contract.ts +20 -17
  174. package/src/cmds/infrastructure/index.ts +8 -11
  175. package/src/cmds/infrastructure/sequencers.ts +41 -22
  176. package/src/cmds/infrastructure/setup_l2_contract.ts +13 -25
  177. package/src/cmds/l1/advance_epoch.ts +7 -5
  178. package/src/cmds/l1/assume_proven_through.ts +11 -10
  179. package/src/cmds/l1/bridge_erc20.ts +8 -4
  180. package/src/cmds/l1/deploy_l1_contracts_cmd.ts +107 -0
  181. package/src/cmds/l1/deploy_new_rollup.ts +24 -15
  182. package/src/cmds/l1/get_l1_addresses.ts +5 -3
  183. package/src/cmds/l1/get_l1_balance.ts +2 -2
  184. package/src/cmds/l1/governance_utils.ts +20 -24
  185. package/src/cmds/l1/index.ts +77 -113
  186. package/src/cmds/l1/prover_stats.ts +42 -31
  187. package/src/cmds/l1/trigger_seed_snapshot.ts +32 -0
  188. package/src/cmds/l1/update_l1_validators.ts +218 -97
  189. package/src/cmds/misc/generate_bootnode_enr.ts +3 -2
  190. package/src/cmds/misc/generate_secret_and_hash.ts +4 -4
  191. package/src/cmds/misc/generate_secret_key.ts +1 -1
  192. package/src/cmds/misc/get_canonical_sponsored_fpc_address.ts +7 -0
  193. package/src/cmds/misc/index.ts +14 -5
  194. package/src/cmds/misc/update/github.ts +0 -1
  195. package/src/cmds/misc/update/npm.ts +1 -1
  196. package/src/cmds/misc/update.ts +1 -7
  197. package/src/cmds/validator_keys/add.ts +123 -0
  198. package/src/cmds/validator_keys/generate_bls_keypair.ts +34 -0
  199. package/src/cmds/validator_keys/index.ts +142 -0
  200. package/src/cmds/validator_keys/new.ts +207 -0
  201. package/src/cmds/validator_keys/shared.ts +326 -0
  202. package/src/cmds/validator_keys/staker.ts +301 -0
  203. package/src/cmds/validator_keys/utils.ts +81 -0
  204. package/src/config/cached_fetch.ts +67 -0
  205. package/src/config/chain_l2_config.ts +57 -0
  206. package/src/config/enrich_env.ts +15 -0
  207. package/src/config/generated/networks.ts +210 -0
  208. package/src/config/get_l1_config.ts +31 -0
  209. package/src/config/index.ts +4 -0
  210. package/src/config/network_config.ts +147 -0
  211. package/src/utils/aztec.ts +74 -120
  212. package/src/utils/commands.ts +57 -20
  213. package/src/utils/encoding.ts +2 -2
  214. package/src/utils/github.ts +0 -1
  215. package/src/utils/index.ts +1 -0
  216. package/src/utils/inspect.ts +28 -124
  217. package/src/utils/setup_contracts.ts +19 -0
  218. package/dest/cmds/devnet/bootstrap_network.d.ts +0 -3
  219. package/dest/cmds/devnet/bootstrap_network.d.ts.map +0 -1
  220. package/dest/cmds/devnet/bootstrap_network.js +0 -196
  221. package/dest/cmds/devnet/faucet.d.ts +0 -4
  222. package/dest/cmds/devnet/faucet.d.ts.map +0 -1
  223. package/dest/cmds/devnet/faucet.js +0 -26
  224. package/dest/cmds/devnet/index.d.ts +0 -4
  225. package/dest/cmds/devnet/index.d.ts.map +0 -1
  226. package/dest/cmds/devnet/index.js +0 -14
  227. package/dest/cmds/l1/deploy_l1_contracts.d.ts +0 -4
  228. package/dest/cmds/l1/deploy_l1_contracts.d.ts.map +0 -1
  229. package/dest/cmds/l1/deploy_l1_contracts.js +0 -29
  230. package/dest/cmds/l1/deploy_l1_verifier.d.ts +0 -5
  231. package/dest/cmds/l1/deploy_l1_verifier.d.ts.map +0 -1
  232. package/dest/cmds/l1/deploy_l1_verifier.js +0 -54
  233. package/dest/cmds/misc/setup_contracts.d.ts +0 -7
  234. package/dest/cmds/misc/setup_contracts.d.ts.map +0 -1
  235. package/dest/cmds/misc/setup_contracts.js +0 -27
  236. package/dest/cmds/pxe/add_contract.d.ts +0 -5
  237. package/dest/cmds/pxe/add_contract.d.ts.map +0 -1
  238. package/dest/cmds/pxe/add_contract.js +0 -29
  239. package/dest/cmds/pxe/block_number.d.ts +0 -3
  240. package/dest/cmds/pxe/block_number.d.ts.map +0 -1
  241. package/dest/cmds/pxe/block_number.js +0 -10
  242. package/dest/cmds/pxe/get_account.d.ts +0 -4
  243. package/dest/cmds/pxe/get_account.d.ts.map +0 -1
  244. package/dest/cmds/pxe/get_account.js +0 -10
  245. package/dest/cmds/pxe/get_accounts.d.ts +0 -3
  246. package/dest/cmds/pxe/get_accounts.d.ts.map +0 -1
  247. package/dest/cmds/pxe/get_accounts.js +0 -25
  248. package/dest/cmds/pxe/get_block.d.ts +0 -3
  249. package/dest/cmds/pxe/get_block.d.ts.map +0 -1
  250. package/dest/cmds/pxe/get_block.js +0 -9
  251. package/dest/cmds/pxe/get_contract_data.d.ts +0 -4
  252. package/dest/cmds/pxe/get_contract_data.d.ts.map +0 -1
  253. package/dest/cmds/pxe/get_contract_data.js +0 -31
  254. package/dest/cmds/pxe/get_current_base_fee.d.ts +0 -3
  255. package/dest/cmds/pxe/get_current_base_fee.d.ts.map +0 -1
  256. package/dest/cmds/pxe/get_current_base_fee.js +0 -7
  257. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts +0 -4
  258. package/dest/cmds/pxe/get_l1_to_l2_message_witness.d.ts.map +0 -1
  259. package/dest/cmds/pxe/get_l1_to_l2_message_witness.js +0 -11
  260. package/dest/cmds/pxe/get_logs.d.ts +0 -4
  261. package/dest/cmds/pxe/get_logs.d.ts.map +0 -1
  262. package/dest/cmds/pxe/get_node_info.d.ts +0 -3
  263. package/dest/cmds/pxe/get_node_info.d.ts.map +0 -1
  264. package/dest/cmds/pxe/get_pxe_info.d.ts +0 -3
  265. package/dest/cmds/pxe/get_pxe_info.d.ts.map +0 -1
  266. package/dest/cmds/pxe/get_pxe_info.js +0 -11
  267. package/dest/cmds/pxe/index.d.ts +0 -4
  268. package/dest/cmds/pxe/index.d.ts.map +0 -1
  269. package/dest/cmds/pxe/index.js +0 -55
  270. package/src/cmds/devnet/bootstrap_network.ts +0 -318
  271. package/src/cmds/devnet/faucet.ts +0 -33
  272. package/src/cmds/devnet/index.ts +0 -60
  273. package/src/cmds/l1/deploy_l1_contracts.ts +0 -65
  274. package/src/cmds/l1/deploy_l1_verifier.ts +0 -105
  275. package/src/cmds/misc/setup_contracts.ts +0 -40
  276. package/src/cmds/pxe/add_contract.ts +0 -41
  277. package/src/cmds/pxe/block_number.ts +0 -9
  278. package/src/cmds/pxe/get_account.ts +0 -16
  279. package/src/cmds/pxe/get_accounts.ts +0 -35
  280. package/src/cmds/pxe/get_block.ts +0 -10
  281. package/src/cmds/pxe/get_contract_data.ts +0 -51
  282. package/src/cmds/pxe/get_current_base_fee.ts +0 -9
  283. package/src/cmds/pxe/get_l1_to_l2_message_witness.ts +0 -25
  284. package/src/cmds/pxe/get_pxe_info.ts +0 -13
  285. package/src/cmds/pxe/index.ts +0 -170
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrap_network.d.ts","sourceRoot":"","sources":["../../../src/cmds/devnet/bootstrap_network.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAiB3D,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,KAAK,MAAM,EAAE,GAAG,SAAS,EACvC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,KAAK,EACV,QAAQ,EAAE,MAAM,iBA4EjB"}
@@ -1,196 +0,0 @@
1
- import { getDeployedTestAccountsWallets } from '@aztec/accounts/testing';
2
- import { BatchCall, Fr, L1FeeJuicePortalManager, createCompatibleClient, retryUntil } from '@aztec/aztec.js';
3
- import { FEE_FUNDING_FOR_TESTER_ACCOUNT } from '@aztec/constants';
4
- import { createEthereumChain, createL1Clients, deployL1Contract } from '@aztec/ethereum';
5
- import { getContract } from 'viem';
6
- import { mnemonicToAccount, privateKeyToAccount } from 'viem/accounts';
7
- const waitOpts = {
8
- timeout: 120,
9
- provenTimeout: 4800,
10
- interval: 1
11
- };
12
- export async function bootstrapNetwork(pxeUrl, l1Urls, l1ChainId, l1PrivateKey, l1Mnemonic, addressIndex, json, log, debugLog) {
13
- const pxe = await createCompatibleClient(pxeUrl, debugLog);
14
- const [wallet] = await getDeployedTestAccountsWallets(pxe);
15
- const l1Clients = createL1Clients(l1Urls, l1PrivateKey ? privateKeyToAccount(l1PrivateKey) : // Note that this account needs to be funded on L1 !
16
- mnemonicToAccount(l1Mnemonic, {
17
- addressIndex
18
- }), createEthereumChain(l1Urls, +l1ChainId).chainInfo);
19
- const { erc20Address, portalAddress } = await deployERC20(l1Clients);
20
- const { token, bridge } = await deployToken(wallet, portalAddress);
21
- await initPortal(pxe, l1Clients, erc20Address, portalAddress, bridge.address);
22
- const fpcAdmin = wallet.getAddress();
23
- const fpc = await deployFPC(wallet, token.address, fpcAdmin);
24
- const counter = await deployCounter(wallet);
25
- await fundFPC(counter.address, wallet, l1Clients, fpc.address, debugLog);
26
- if (json) {
27
- log(JSON.stringify({
28
- devCoinL1: erc20Address.toString(),
29
- devCoinPortalL1: portalAddress.toString(),
30
- devCoin: {
31
- address: token.address.toString(),
32
- initHash: token.initHash.toString(),
33
- salt: token.salt.toString()
34
- },
35
- devCoinBridge: {
36
- address: bridge.address.toString(),
37
- initHash: bridge.initHash.toString(),
38
- salt: bridge.salt.toString()
39
- },
40
- devCoinFpc: {
41
- address: fpc.address.toString(),
42
- initHash: fpc.initHash.toString(),
43
- salt: fpc.salt.toString()
44
- },
45
- counter: {
46
- address: counter.address.toString(),
47
- initHash: counter.initHash.toString(),
48
- salt: counter.salt.toString()
49
- }
50
- }, null, 2));
51
- } else {
52
- log(`DevCoin L1: ${erc20Address}`);
53
- log(`DevCoin L1 Portal: ${portalAddress}`);
54
- log(`DevCoin L2: ${token.address}`);
55
- log(`DevCoin L2 init hash: ${token.initHash}`);
56
- log(`DevCoin L2 salt: ${token.salt}`);
57
- log(`DevCoin L2 Bridge: ${bridge.address}`);
58
- log(`DevCoin L2 Bridge init hash: ${bridge.initHash}`);
59
- log(`DevCoin L2 Bridge salt: ${bridge.salt}`);
60
- log(`DevCoin FPC: ${fpc.address}`);
61
- log(`DevCoin FPC init hash: ${fpc.initHash}`);
62
- log(`DevCoin FPC salt: ${fpc.salt}`);
63
- log(`Counter: ${counter.address}`);
64
- log(`Counter init hash: ${counter.initHash}`);
65
- log(`Counter salt: ${counter.salt}`);
66
- }
67
- }
68
- /**
69
- * Step 1. Deploy the L1 contracts, but don't initialize
70
- */ async function deployERC20({ walletClient, publicClient }) {
71
- const { TestERC20Abi, TestERC20Bytecode, TokenPortalAbi, TokenPortalBytecode } = await import('@aztec/l1-artifacts');
72
- const erc20 = {
73
- contractAbi: TestERC20Abi,
74
- contractBytecode: TestERC20Bytecode
75
- };
76
- const portal = {
77
- contractAbi: TokenPortalAbi,
78
- contractBytecode: TokenPortalBytecode
79
- };
80
- const { address: erc20Address } = await deployL1Contract(walletClient, publicClient, erc20.contractAbi, erc20.contractBytecode, [
81
- 'DevCoin',
82
- 'DEV',
83
- walletClient.account.address
84
- ]);
85
- const { address: portalAddress } = await deployL1Contract(walletClient, publicClient, portal.contractAbi, portal.contractBytecode);
86
- return {
87
- erc20Address,
88
- portalAddress
89
- };
90
- }
91
- /**
92
- * Step 2. Deploy the L2 contracts
93
- */ async function deployToken(wallet, l1Portal) {
94
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
95
- // @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
96
- const { TokenContract } = await import('@aztec/noir-contracts.js/Token');
97
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
98
- // @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
99
- const { TokenBridgeContract } = await import('@aztec/noir-contracts.js/TokenBridge');
100
- const devCoin = await TokenContract.deploy(wallet, wallet.getAddress(), 'DevCoin', 'DEV', 18).send({
101
- universalDeploy: true
102
- }).deployed(waitOpts);
103
- const bridge = await TokenBridgeContract.deploy(wallet, devCoin.address, l1Portal).send({
104
- universalDeploy: true
105
- }).deployed(waitOpts);
106
- await new BatchCall(wallet, [
107
- await devCoin.methods.set_minter(bridge.address, true).request(),
108
- await devCoin.methods.set_admin(bridge.address).request()
109
- ]).send().wait(waitOpts);
110
- return {
111
- token: {
112
- address: devCoin.address,
113
- initHash: devCoin.instance.initializationHash,
114
- salt: devCoin.instance.salt
115
- },
116
- bridge: {
117
- address: bridge.address,
118
- initHash: bridge.instance.initializationHash,
119
- salt: bridge.instance.salt
120
- }
121
- };
122
- }
123
- /**
124
- * Step 3. Initialize DevCoin's L1 portal
125
- */ async function initPortal(pxe, { walletClient, publicClient }, erc20, portal, bridge) {
126
- const { TokenPortalAbi } = await import('@aztec/l1-artifacts');
127
- const { l1ContractAddresses: { registryAddress } } = await pxe.getNodeInfo();
128
- const contract = getContract({
129
- abi: TokenPortalAbi,
130
- address: portal.toString(),
131
- client: walletClient
132
- });
133
- const hash = await contract.write.initialize([
134
- registryAddress.toString(),
135
- erc20.toString(),
136
- bridge.toString()
137
- ]);
138
- await publicClient.waitForTransactionReceipt({
139
- hash
140
- });
141
- }
142
- async function deployFPC(wallet, tokenAddress, admin) {
143
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
144
- // @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
145
- const { FPCContract } = await import('@aztec/noir-contracts.js/FPC');
146
- const fpc = await FPCContract.deploy(wallet, tokenAddress, admin).send({
147
- universalDeploy: true
148
- }).deployed(waitOpts);
149
- const info = {
150
- address: fpc.address,
151
- initHash: fpc.instance.initializationHash,
152
- salt: fpc.instance.salt
153
- };
154
- return info;
155
- }
156
- async function deployCounter(wallet) {
157
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
158
- // @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
159
- const { CounterContract } = await import('@aztec/noir-contracts.js/Counter');
160
- const counter = await CounterContract.deploy(wallet, 1, wallet.getAddress()).send({
161
- universalDeploy: true
162
- }).deployed(waitOpts);
163
- const info = {
164
- address: counter.address,
165
- initHash: counter.instance.initializationHash,
166
- salt: counter.instance.salt
167
- };
168
- return info;
169
- }
170
- // NOTE: Disabling for now in order to get devnet running
171
- async function fundFPC(counterAddress, wallet, l1Clients, fpcAddress, debugLog) {
172
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
173
- // @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
174
- const { FeeJuiceContract } = await import('@aztec/noir-contracts.js/FeeJuice');
175
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
176
- // @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
177
- const { CounterContract } = await import('@aztec/noir-contracts.js/Counter');
178
- const { protocolContractAddresses: { feeJuice } } = await wallet.getPXEInfo();
179
- const feeJuiceContract = await FeeJuiceContract.at(feeJuice, wallet);
180
- const feeJuicePortal = await L1FeeJuicePortalManager.new(wallet, l1Clients.publicClient, l1Clients.walletClient, debugLog);
181
- const amount = FEE_FUNDING_FOR_TESTER_ACCOUNT;
182
- const { claimAmount, claimSecret, messageLeafIndex, messageHash } = await feeJuicePortal.bridgeTokensPublic(fpcAddress, amount, true);
183
- await retryUntil(async ()=>await wallet.isL1ToL2MessageSynced(Fr.fromHexString(messageHash)), 'message sync', 600, 1);
184
- const counter = await CounterContract.at(counterAddress, wallet);
185
- debugLog.info('Incrementing Counter');
186
- // TODO (alexg) remove this once sequencer builds blocks continuously
187
- // advance the chain
188
- await counter.methods.increment(wallet.getAddress(), wallet.getAddress()).send().wait(waitOpts);
189
- await counter.methods.increment(wallet.getAddress(), wallet.getAddress()).send().wait(waitOpts);
190
- debugLog.info('Claiming FPC');
191
- await feeJuiceContract.methods.claim(fpcAddress, claimAmount, claimSecret, messageLeafIndex).send().wait({
192
- ...waitOpts,
193
- proven: true
194
- });
195
- debugLog.info('Finished claiming FPC');
196
- }
@@ -1,4 +0,0 @@
1
- import type { EthAddress } from '@aztec/foundation/eth-address';
2
- import type { LogFn } from '@aztec/foundation/log';
3
- export declare function dripFaucet(faucetUrl: string, asset: string, account: EthAddress, json: boolean, log: LogFn): Promise<void>;
4
- //# sourceMappingURL=faucet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"faucet.d.ts","sourceRoot":"","sources":["../../../src/cmds/devnet/faucet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,KAAK,GACT,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -1,26 +0,0 @@
1
- import { prettyPrintJSON } from '../../utils/commands.js';
2
- export async function dripFaucet(faucetUrl, asset, account, json, log) {
3
- const url = new URL(`/drip/${account.toString()}`, faucetUrl);
4
- url.searchParams.set('asset', asset);
5
- const res = await fetch(url);
6
- if (res.status === 200) {
7
- if (json) {
8
- log(prettyPrintJSON({
9
- ok: true
10
- }));
11
- } else {
12
- log(`Dripped ${asset} for ${account.toString()}`);
13
- }
14
- } else {
15
- if (json) {
16
- log(prettyPrintJSON({
17
- ok: false
18
- }));
19
- } else if (res.status === 429) {
20
- log(`Rate limited when dripping ${asset} for ${account.toString()}`);
21
- } else {
22
- log(`Failed to drip ${asset} for ${account.toString()}`);
23
- }
24
- process.exit(1);
25
- }
26
- }
@@ -1,4 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- import type { Command } from 'commander';
3
- export declare function injectCommands(program: Command, log: LogFn, debugLogger: Logger): Command;
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmds/devnet/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,WAqD/E"}
@@ -1,14 +0,0 @@
1
- import { ETHEREUM_HOSTS, l1ChainIdOption, parseEthereumAddress, pxeOption } from '../../utils/commands.js';
2
- export function injectCommands(program, log, debugLogger) {
3
- program.command('bootstrap-network').description('Bootstrap a new network').addOption(pxeOption).addOption(l1ChainIdOption).requiredOption('--l1-rpc-urls <string>', 'List of Ethereum host URLs. Chain identifiers localhost and testnet can be used (comma separated)', (arg)=>arg.split(','), [
4
- ETHEREUM_HOSTS
5
- ]).option('--l1-private-key <string>', 'The private key to use for deployment', process.env.PRIVATE_KEY).option('-m, --mnemonic <string>', 'The mnemonic to use in deployment', 'test test test test test test test test test test test junk').option('-ai, --address-index <number>', 'The address index to use when calculating an address', (arg)=>BigInt(arg), 0n).option('--json', 'Output the result as JSON').action(async (options)=>{
6
- const { bootstrapNetwork } = await import('./bootstrap_network.js');
7
- await bootstrapNetwork(options[pxeOption.attributeName()], options.l1RpcUrls, options[l1ChainIdOption.attributeName()], options.l1PrivateKey, options.mnemonic, options.addressIndex, options.json, log, debugLogger);
8
- });
9
- program.command('drip-faucet').description('Drip the faucet').requiredOption('-u, --faucet-url <string>', 'Url of the faucet', 'http://localhost:8082').requiredOption('-t, --token <string>', 'The asset to drip', 'eth').requiredOption('-a, --address <string>', 'The Ethereum address to drip to', parseEthereumAddress).option('--json', 'Output the result as JSON').action(async (options)=>{
10
- const { dripFaucet } = await import('./faucet.js');
11
- await dripFaucet(options.faucetUrl, options.token, options.address, options.json, log);
12
- });
13
- return program;
14
- }
@@ -1,4 +0,0 @@
1
- import type { EthAddress } from '@aztec/foundation/eth-address';
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, acceleratedTestDeployments: boolean, json: boolean, initialValidators: EthAddress[], log: LogFn, debugLogger: Logger): Promise<void>;
4
- //# sourceMappingURL=deploy_l1_contracts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy_l1_contracts.d.ts","sourceRoot":"","sources":["../../../src/cmds/l1/deploy_l1_contracts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAK3D,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,0BAA0B,EAAE,OAAO,EACnC,IAAI,EAAE,OAAO,EACb,iBAAiB,EAAE,UAAU,EAAE,EAC/B,GAAG,EAAE,KAAK,EACV,WAAW,EAAE,MAAM,iBA4CpB"}
@@ -1,29 +0,0 @@
1
- import { getInitialTestAccounts } from '@aztec/accounts/testing';
2
- import { getL1ContractsConfigEnvVars } from '@aztec/ethereum';
3
- import { getGenesisValues } from '@aztec/world-state/testing';
4
- import { deployAztecContracts } from '../../utils/aztec.js';
5
- export async function deployL1Contracts(rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, testAccounts, acceleratedTestDeployments, json, initialValidators, log, debugLogger) {
6
- const config = getL1ContractsConfigEnvVars();
7
- const initialFundedAccounts = testAccounts ? await getInitialTestAccounts() : [];
8
- const { genesisBlockHash, genesisArchiveRoot } = await getGenesisValues(initialFundedAccounts.map((a)=>a.address));
9
- const { l1ContractAddresses } = await deployAztecContracts(rpcUrls, chainId, privateKey, mnemonic, mnemonicIndex, salt, initialValidators, genesisArchiveRoot, genesisBlockHash, acceleratedTestDeployments, config, debugLogger);
10
- if (json) {
11
- log(JSON.stringify(Object.fromEntries(Object.entries(l1ContractAddresses).map(([k, v])=>[
12
- k,
13
- v.toString()
14
- ])), null, 2));
15
- } else {
16
- log(`Rollup Address: ${l1ContractAddresses.rollupAddress.toString()}`);
17
- log(`Registry Address: ${l1ContractAddresses.registryAddress.toString()}`);
18
- log(`L1 -> L2 Inbox Address: ${l1ContractAddresses.inboxAddress.toString()}`);
19
- log(`L2 -> L1 Outbox Address: ${l1ContractAddresses.outboxAddress.toString()}`);
20
- log(`Fee Juice Address: ${l1ContractAddresses.feeJuiceAddress.toString()}`);
21
- log(`Staking Asset Address: ${l1ContractAddresses.stakingAssetAddress.toString()}`);
22
- log(`Fee Juice Portal Address: ${l1ContractAddresses.feeJuicePortalAddress.toString()}`);
23
- log(`CoinIssuer Address: ${l1ContractAddresses.coinIssuerAddress.toString()}`);
24
- log(`RewardDistributor Address: ${l1ContractAddresses.rewardDistributorAddress.toString()}`);
25
- log(`GovernanceProposer Address: ${l1ContractAddresses.governanceProposerAddress.toString()}`);
26
- log(`Governance Address: ${l1ContractAddresses.governanceAddress.toString()}`);
27
- log(`SlashFactory Address: ${l1ContractAddresses.slashFactoryAddress?.toString()}`);
28
- }
29
- }
@@ -1,5 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- import { type Hex } from 'viem';
3
- export declare function deployUltraHonkVerifier(rollupAddress: Hex | undefined, ethRpcUrls: string[], l1ChainId: string, privateKey: string | undefined, mnemonic: string, pxeRpcUrl: string, bbBinaryPath: string, bbWorkingDirectory: string, log: LogFn, debugLogger: Logger): Promise<void>;
4
- export declare function deployMockVerifier(rollupAddress: Hex | undefined, ethRpcUrls: string[], l1ChainId: string, privateKey: string | undefined, mnemonic: string, pxeRpcUrl: string, log: LogFn, debugLogger: Logger): Promise<void>;
5
- //# sourceMappingURL=deploy_l1_verifier.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy_l1_verifier.d.ts","sourceRoot":"","sources":["../../../src/cmds/l1/deploy_l1_verifier.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAI3D,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,MAAM,CAAC;AAE7C,wBAAsB,uBAAuB,CAC3C,aAAa,EAAE,GAAG,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,kBAAkB,EAAE,MAAM,EAC1B,GAAG,EAAE,KAAK,EACV,WAAW,EAAE,MAAM,iBAyCpB;AAED,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,GAAG,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,KAAK,EACV,WAAW,EAAE,MAAM,iBAmCpB"}
@@ -1,54 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- import { createEthereumChain, createL1Clients, deployL1Contract } from '@aztec/ethereum';
3
- import { HonkVerifierAbi, HonkVerifierBytecode } from '@aztec/l1-artifacts';
4
- import { InvalidOptionArgumentError } from 'commander';
5
- import { getContract } from 'viem';
6
- export async function deployUltraHonkVerifier(rollupAddress, ethRpcUrls, l1ChainId, privateKey, mnemonic, pxeRpcUrl, bbBinaryPath, bbWorkingDirectory, log, debugLogger) {
7
- if (!bbBinaryPath || !bbWorkingDirectory) {
8
- throw new InvalidOptionArgumentError('Missing path to bb binary and working directory');
9
- }
10
- const { publicClient, walletClient } = createL1Clients(ethRpcUrls, privateKey ?? mnemonic, createEthereumChain(ethRpcUrls, l1ChainId).chainInfo);
11
- if (!rollupAddress && pxeRpcUrl) {
12
- const pxe = await createCompatibleClient(pxeRpcUrl, debugLogger);
13
- const { l1ContractAddresses } = await pxe.getNodeInfo();
14
- rollupAddress = l1ContractAddresses.rollupAddress.toString();
15
- }
16
- if (!rollupAddress) {
17
- throw new InvalidOptionArgumentError('Missing rollup address');
18
- }
19
- const { RollupAbi } = await import('@aztec/l1-artifacts');
20
- const rollup = getContract({
21
- abi: RollupAbi,
22
- address: rollupAddress,
23
- client: walletClient
24
- });
25
- const { address: verifierAddress } = await deployL1Contract(walletClient, publicClient, HonkVerifierAbi, HonkVerifierBytecode);
26
- log(`Deployed honk verifier at ${verifierAddress}`);
27
- await rollup.write.setEpochVerifier([
28
- verifierAddress.toString()
29
- ]);
30
- log(`Rollup accepts only real proofs now`);
31
- }
32
- export async function deployMockVerifier(rollupAddress, ethRpcUrls, l1ChainId, privateKey, mnemonic, pxeRpcUrl, log, debugLogger) {
33
- const { publicClient, walletClient } = createL1Clients(ethRpcUrls, privateKey ?? mnemonic, createEthereumChain(ethRpcUrls, l1ChainId).chainInfo);
34
- const { MockVerifierAbi, MockVerifierBytecode, RollupAbi } = await import('@aztec/l1-artifacts');
35
- const { address: mockVerifierAddress } = await deployL1Contract(walletClient, publicClient, MockVerifierAbi, MockVerifierBytecode);
36
- log(`Deployed MockVerifier at ${mockVerifierAddress.toString()}`);
37
- if (!rollupAddress && pxeRpcUrl) {
38
- const pxe = await createCompatibleClient(pxeRpcUrl, debugLogger);
39
- const { l1ContractAddresses } = await pxe.getNodeInfo();
40
- rollupAddress = l1ContractAddresses.rollupAddress.toString();
41
- }
42
- if (!rollupAddress) {
43
- throw new InvalidOptionArgumentError('Missing rollup address');
44
- }
45
- const rollup = getContract({
46
- abi: RollupAbi,
47
- address: rollupAddress,
48
- client: walletClient
49
- });
50
- await rollup.write.setEpochVerifier([
51
- mockVerifierAddress.toString()
52
- ]);
53
- log(`Rollup accepts only fake proofs now`);
54
- }
@@ -1,7 +0,0 @@
1
- import { type EthAddress, type Wallet } from '@aztec/aztec.js';
2
- import type { LogFn } from '@aztec/foundation/log';
3
- /**
4
- * Deploys the contract to pay for gas on L2.
5
- */
6
- export declare function setupCanonicalL2FeeJuice(deployer: Wallet, feeJuicePortalAddress: EthAddress, waitOpts: import("@aztec/aztec.js").WaitOpts | undefined, log: LogFn): Promise<void>;
7
- //# sourceMappingURL=setup_contracts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup_contracts.d.ts","sourceRoot":"","sources":["../../../src/cmds/misc/setup_contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,UAAU,EAAyB,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEvG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,qBAAqB,EAAE,UAAU,EACjC,QAAQ,gDAAkB,EAC1B,GAAG,EAAE,KAAK,iBA0BX"}
@@ -1,27 +0,0 @@
1
- import { DefaultWaitOpts, FeeJuicePaymentMethod } from '@aztec/aztec.js';
2
- import { FEE_JUICE_INITIAL_MINT } from '@aztec/constants';
3
- import { ProtocolContractAddress } from '@aztec/protocol-contracts';
4
- import { Gas } from '@aztec/stdlib/gas';
5
- /**
6
- * Deploys the contract to pay for gas on L2.
7
- */ export async function setupCanonicalL2FeeJuice(deployer, feeJuicePortalAddress, waitOpts = DefaultWaitOpts, log) {
8
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
9
- // @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
10
- const { FeeJuiceContract } = await import('@aztec/noir-contracts.js/FeeJuice');
11
- const feeJuiceContract = await FeeJuiceContract.at(ProtocolContractAddress.FeeJuice, deployer);
12
- const portalAddress = await deployer.getPublicStorageAt(feeJuiceContract.address, feeJuiceContract.artifact.storageLayout.portal_address.slot);
13
- if (portalAddress.isZero()) {
14
- log('setupCanonicalL2FeeJuice: Calling initialize on fee juice contract...');
15
- const paymentMethod = new FeeJuicePaymentMethod(ProtocolContractAddress.FeeJuice);
16
- await feeJuiceContract.methods.initialize(feeJuicePortalAddress, FEE_JUICE_INITIAL_MINT).send({
17
- fee: {
18
- paymentMethod,
19
- gasSettings: {
20
- teardownGasLimits: Gas.empty()
21
- }
22
- }
23
- }).wait(waitOpts);
24
- } else {
25
- log('setupCanonicalL2FeeJuice: Fee juice contract already initialized. Fee Juice Portal address: ' + portalAddress.toString());
26
- }
27
- }
@@ -1,5 +0,0 @@
1
- import { AztecAddress, type Fr } from '@aztec/aztec.js';
2
- import type { LogFn, Logger } from '@aztec/foundation/log';
3
- import { PublicKeys } from '@aztec/stdlib/keys';
4
- export declare function addContract(rpcUrl: string, contractArtifactPath: string, address: AztecAddress, initializationHash: Fr, salt: Fr, publicKeys: PublicKeys, deployer: AztecAddress | undefined, debugLogger: Logger, log: LogFn): Promise<void>;
5
- //# sourceMappingURL=add_contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"add_contract.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/add_contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAoC,KAAK,EAAE,EAAgC,MAAM,iBAAiB,CAAC;AAExH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIhD,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,MAAM,EAC5B,OAAO,EAAE,YAAY,EACrB,kBAAkB,EAAE,EAAE,EACtB,IAAI,EAAE,EAAE,EACR,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,YAAY,GAAG,SAAS,EAClC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,iBAuBX"}
@@ -1,29 +0,0 @@
1
- import { AztecAddress, getContractClassFromArtifact } from '@aztec/aztec.js';
2
- import { createCompatibleClient } from '@aztec/aztec.js';
3
- import { computeContractAddressFromInstance } from '@aztec/stdlib/contract';
4
- import { PublicKeys } from '@aztec/stdlib/keys';
5
- import { getContractArtifact } from '../../utils/aztec.js';
6
- export async function addContract(rpcUrl, contractArtifactPath, address, initializationHash, salt, publicKeys, deployer, debugLogger, log) {
7
- const artifact = await getContractArtifact(contractArtifactPath, log);
8
- const contractClass = await getContractClassFromArtifact(artifact);
9
- const instance = {
10
- version: 1,
11
- salt,
12
- initializationHash,
13
- currentContractClassId: contractClass.id,
14
- originalContractClassId: contractClass.id,
15
- publicKeys: publicKeys ?? PublicKeys.default(),
16
- address,
17
- deployer: deployer ?? AztecAddress.ZERO
18
- };
19
- const computed = await computeContractAddressFromInstance(instance);
20
- if (!computed.equals(address)) {
21
- throw new Error(`Contract address ${address.toString()} does not match computed address ${computed.toString()}`);
22
- }
23
- const client = await createCompatibleClient(rpcUrl, debugLogger);
24
- await client.registerContract({
25
- artifact,
26
- instance
27
- });
28
- log(`\nContract added to PXE at ${address.toString()} with class ${instance.currentContractClassId.toString()}\n`);
29
- }
@@ -1,3 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- export declare function blockNumber(rpcUrl: string, debugLogger: Logger, log: LogFn): Promise<void>;
3
- //# sourceMappingURL=block_number.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"block_number.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/block_number.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAKhF"}
@@ -1,10 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- export async function blockNumber(rpcUrl, debugLogger, log) {
3
- const client = await createCompatibleClient(rpcUrl, debugLogger);
4
- const [latestNum, provenNum] = await Promise.all([
5
- client.getBlockNumber(),
6
- client.getProvenBlockNumber()
7
- ]);
8
- log(`Latest block: ${latestNum}`);
9
- log(`Proven block: ${provenNum}`);
10
- }
@@ -1,4 +0,0 @@
1
- import type { AztecAddress } from '@aztec/aztec.js';
2
- import type { LogFn, Logger } from '@aztec/foundation/log';
3
- export declare function getAccount(aztecAddress: AztecAddress, rpcUrl: string, debugLogger: Logger, log: LogFn): Promise<void>;
4
- //# sourceMappingURL=get_account.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_account.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,UAAU,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAW3G"}
@@ -1,10 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- export async function getAccount(aztecAddress, rpcUrl, debugLogger, log) {
3
- const client = await createCompatibleClient(rpcUrl, debugLogger);
4
- const account = (await client.getRegisteredAccounts()).find((completeAddress)=>completeAddress.address.equals(aztecAddress));
5
- if (!account) {
6
- log(`Unknown account ${aztecAddress.toString()}`);
7
- } else {
8
- log(account.toReadableString());
9
- }
10
- }
@@ -1,3 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- export declare function getAccounts(rpcUrl: string, json: boolean, debugLogger: Logger, log: LogFn, logJson: (output: any) => void): Promise<void>;
3
- //# sourceMappingURL=get_accounts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_accounts.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_accounts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,iBA0B/B"}
@@ -1,25 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- export async function getAccounts(rpcUrl, json, debugLogger, log, logJson) {
3
- const client = await createCompatibleClient(rpcUrl, debugLogger);
4
- const accounts = await client.getRegisteredAccounts();
5
- if (!accounts.length) {
6
- if (json) {
7
- logJson([]);
8
- } else {
9
- log('No accounts found.');
10
- }
11
- return;
12
- }
13
- if (json) {
14
- logJson(accounts.map((a)=>({
15
- address: a.address.toString(),
16
- publicKeys: a.publicKeys.toString(),
17
- partialAddress: a.partialAddress.toString()
18
- })));
19
- } else {
20
- log(`Accounts found: \n`);
21
- for (const account of accounts){
22
- log(account.toReadableString());
23
- }
24
- }
25
- }
@@ -1,3 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- export declare function getBlock(rpcUrl: string, maybeBlockNumber: number | undefined, debugLogger: Logger, log: LogFn): Promise<void>;
3
- //# sourceMappingURL=get_block.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_block.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_block.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAI3D,wBAAsB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAInH"}
@@ -1,9 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- import { inspectBlock } from '../../utils/inspect.js';
3
- export async function getBlock(rpcUrl, maybeBlockNumber, debugLogger, log) {
4
- const client = await createCompatibleClient(rpcUrl, debugLogger);
5
- const blockNumber = maybeBlockNumber ?? await client.getBlockNumber();
6
- await inspectBlock(client, blockNumber, log, {
7
- showTxs: true
8
- });
9
- }
@@ -1,4 +0,0 @@
1
- import type { AztecAddress } from '@aztec/aztec.js';
2
- import type { LogFn, Logger } from '@aztec/foundation/log';
3
- export declare function getContractData(rpcUrl: string, contractAddress: AztecAddress, includeBytecode: boolean, debugLogger: Logger, log: LogFn): Promise<void>;
4
- //# sourceMappingURL=get_contract_data.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_contract_data.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_contract_data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,YAAY,EAC7B,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,iBAyCX"}
@@ -1,31 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- export async function getContractData(rpcUrl, contractAddress, includeBytecode, debugLogger, log) {
3
- const client = await createCompatibleClient(rpcUrl, debugLogger);
4
- const { contractInstance: instance, isContractInitialized: isInitialized, isContractPubliclyDeployed: isPubliclyDeployed } = await client.getContractMetadata(contractAddress);
5
- const contractClass = includeBytecode && instance && (await client.getContractClassMetadata(instance?.currentContractClassId)).contractClass;
6
- const isPrivatelyDeployed = !!instance;
7
- const initStr = isInitialized ? 'initialized' : 'not initialized';
8
- const addrStr = contractAddress.toString();
9
- if (isPubliclyDeployed && isPrivatelyDeployed) {
10
- log(`Contract is ${initStr} and publicly deployed at ${addrStr}`);
11
- } else if (isPrivatelyDeployed) {
12
- log(`Contract is ${initStr} and registered in the local pxe at ${addrStr} but not publicly deployed`);
13
- } else if (isPubliclyDeployed) {
14
- log(`Contract is ${initStr} and publicly deployed at ${addrStr} but not registered in the local pxe`);
15
- } else if (isInitialized) {
16
- log(`Contract is initialized but not publicly deployed nor registered in the local pxe at ${addrStr}`);
17
- } else {
18
- log(`No contract found at ${addrStr}`);
19
- }
20
- if (instance) {
21
- log(``);
22
- Object.entries(instance).forEach(([key, value])=>{
23
- const capitalized = key.charAt(0).toUpperCase() + key.slice(1);
24
- log(`${capitalized}: ${value.toString()}`);
25
- });
26
- if (contractClass) {
27
- log(`\nBytecode: ${contractClass.packedBytecode.toString('base64')}`);
28
- }
29
- log('');
30
- }
31
- }
@@ -1,3 +0,0 @@
1
- import type { LogFn, Logger } from '@aztec/foundation/log';
2
- export declare function getCurrentBaseFee(rpcUrl: string, debugLogger: Logger, log: LogFn): Promise<void>;
3
- //# sourceMappingURL=get_current_base_fee.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_current_base_fee.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_current_base_fee.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAItF"}
@@ -1,7 +0,0 @@
1
- import { createCompatibleClient } from '@aztec/aztec.js';
2
- import { jsonStringify } from '@aztec/foundation/json-rpc';
3
- export async function getCurrentBaseFee(rpcUrl, debugLogger, log) {
4
- const client = await createCompatibleClient(rpcUrl, debugLogger);
5
- const fees = await client.getCurrentBaseFees();
6
- log(`Current fees: ${jsonStringify(fees)}`);
7
- }
@@ -1,4 +0,0 @@
1
- import { type AztecAddress, type Fr } from '@aztec/aztec.js';
2
- import type { LogFn, Logger } from '@aztec/foundation/log';
3
- export declare function getL1ToL2MessageWitness(rpcUrl: string, contractAddress: AztecAddress, messageHash: Fr, secret: Fr, debugLogger: Logger, log: LogFn): Promise<void>;
4
- //# sourceMappingURL=get_l1_to_l2_message_witness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get_l1_to_l2_message_witness.d.ts","sourceRoot":"","sources":["../../../src/cmds/pxe/get_l1_to_l2_message_witness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,EAAE,EAA0B,MAAM,iBAAiB,CAAC;AACrF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE3D,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,EACV,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,iBAeX"}