@aztec/end-to-end 0.0.1-commit.a072138 → 0.0.1-commit.a4600f49

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 (344) hide show
  1. package/README.md +217 -14
  2. package/dest/automine/automine_test_context.d.ts +85 -0
  3. package/dest/automine/automine_test_context.d.ts.map +1 -0
  4. package/dest/automine/automine_test_context.js +98 -0
  5. package/dest/automine/contracts/fixtures/storage_proof_fetcher.d.ts +2 -0
  6. package/dest/automine/contracts/fixtures/storage_proof_fetcher.d.ts.map +1 -0
  7. package/dest/automine/contracts/fixtures/storage_proof_fetcher.js +184 -0
  8. package/dest/automine/contracts/fixtures/storage_proof_fixture.d.ts +18 -0
  9. package/dest/automine/contracts/fixtures/storage_proof_fixture.d.ts.map +1 -0
  10. package/dest/automine/contracts/fixtures/storage_proof_fixture.js +120 -0
  11. package/dest/automine/delivery/onchain_delivery_harness.d.ts +17 -0
  12. package/dest/automine/delivery/onchain_delivery_harness.d.ts.map +1 -0
  13. package/dest/automine/delivery/onchain_delivery_harness.js +123 -0
  14. package/dest/automine/token/blacklist_token_contract_test.d.ts +49 -0
  15. package/dest/automine/token/blacklist_token_contract_test.d.ts.map +1 -0
  16. package/dest/{e2e_blacklist_token_contract → automine/token}/blacklist_token_contract_test.js +45 -48
  17. package/dest/automine/token/token_contract_test.d.ts +40 -0
  18. package/dest/automine/token/token_contract_test.d.ts.map +1 -0
  19. package/dest/{e2e_token_contract → automine/token}/token_contract_test.js +43 -48
  20. package/dest/automine/token/token_test_helpers.d.ts +73 -0
  21. package/dest/automine/token/token_test_helpers.d.ts.map +1 -0
  22. package/dest/automine/token/token_test_helpers.js +97 -0
  23. package/dest/bench/client_flows/benchmark.d.ts +15 -1
  24. package/dest/bench/client_flows/benchmark.d.ts.map +1 -1
  25. package/dest/bench/client_flows/benchmark.js +19 -0
  26. package/dest/bench/client_flows/client_flows_benchmark.d.ts +6 -6
  27. package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
  28. package/dest/bench/client_flows/client_flows_benchmark.js +63 -54
  29. package/dest/bench/client_flows/config.d.ts +2 -2
  30. package/dest/bench/client_flows/config.d.ts.map +1 -1
  31. package/dest/bench/client_flows/config.js +18 -0
  32. package/dest/bench/client_flows/data_extractor.js +1 -0
  33. package/dest/bench/utils.d.ts +3 -3
  34. package/dest/bench/utils.d.ts.map +1 -1
  35. package/dest/bench/utils.js +102 -8
  36. package/dest/composed/ha/ha_full_setup.d.ts +77 -0
  37. package/dest/composed/ha/ha_full_setup.d.ts.map +1 -0
  38. package/dest/composed/ha/ha_full_setup.js +383 -0
  39. package/dest/composed/web3signer/multi_validator_keystore_utils.d.ts +12 -0
  40. package/dest/composed/web3signer/multi_validator_keystore_utils.d.ts.map +1 -0
  41. package/dest/fixtures/authwit_proxy.d.ts +15 -0
  42. package/dest/fixtures/authwit_proxy.d.ts.map +1 -0
  43. package/dest/fixtures/authwit_proxy.js +34 -0
  44. package/dest/fixtures/e2e_prover_test.d.ts +18 -14
  45. package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
  46. package/dest/fixtures/e2e_prover_test.js +82 -74
  47. package/dest/fixtures/elu_monitor.d.ts +21 -0
  48. package/dest/fixtures/elu_monitor.d.ts.map +1 -0
  49. package/dest/fixtures/elu_monitor.js +102 -0
  50. package/dest/fixtures/fixtures.d.ts +82 -1
  51. package/dest/fixtures/fixtures.d.ts.map +1 -1
  52. package/dest/fixtures/fixtures.js +84 -0
  53. package/dest/fixtures/get_bb_config.d.ts +1 -1
  54. package/dest/fixtures/get_bb_config.d.ts.map +1 -1
  55. package/dest/fixtures/get_bb_config.js +5 -5
  56. package/dest/fixtures/ha_setup.d.ts +71 -0
  57. package/dest/fixtures/ha_setup.d.ts.map +1 -0
  58. package/dest/fixtures/ha_setup.js +119 -0
  59. package/dest/fixtures/index.d.ts +3 -1
  60. package/dest/fixtures/index.d.ts.map +1 -1
  61. package/dest/fixtures/index.js +2 -0
  62. package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts +25 -0
  63. package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts.map +1 -0
  64. package/dest/fixtures/schnorr_hardcoded_account_contract.js +37 -0
  65. package/dest/fixtures/setup.d.ts +111 -60
  66. package/dest/fixtures/setup.d.ts.map +1 -1
  67. package/dest/fixtures/setup.js +320 -327
  68. package/dest/fixtures/setup_p2p_test.d.ts +22 -10
  69. package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
  70. package/dest/fixtures/setup_p2p_test.js +26 -20
  71. package/dest/fixtures/timing.d.ts +42 -0
  72. package/dest/fixtures/timing.d.ts.map +1 -0
  73. package/dest/fixtures/timing.js +72 -0
  74. package/dest/fixtures/token_utils.d.ts +22 -4
  75. package/dest/fixtures/token_utils.d.ts.map +1 -1
  76. package/dest/fixtures/token_utils.js +26 -8
  77. package/dest/fixtures/utils.d.ts +2 -2
  78. package/dest/fixtures/utils.d.ts.map +1 -1
  79. package/dest/fixtures/utils.js +1 -1
  80. package/dest/fixtures/wait_helpers.d.ts +135 -0
  81. package/dest/fixtures/wait_helpers.d.ts.map +1 -0
  82. package/dest/fixtures/wait_helpers.js +154 -0
  83. package/dest/forward-compatibility/wallet_rpc_client.d.ts +7 -0
  84. package/dest/forward-compatibility/wallet_rpc_client.d.ts.map +1 -0
  85. package/dest/forward-compatibility/wallet_rpc_client.js +15 -0
  86. package/dest/forward-compatibility/wallet_service.d.ts +3 -0
  87. package/dest/forward-compatibility/wallet_service.d.ts.map +1 -0
  88. package/dest/forward-compatibility/wallet_service.js +109 -0
  89. package/dest/install_legacy_contracts.d.cts +10 -0
  90. package/dest/install_legacy_contracts.d.cts.map +1 -0
  91. package/dest/legacy-jest-resolver.d.cts +3 -0
  92. package/dest/legacy-jest-resolver.d.cts.map +1 -0
  93. package/dest/multi-node/block-production/setup.d.ts +97 -0
  94. package/dest/multi-node/block-production/setup.d.ts.map +1 -0
  95. package/dest/multi-node/block-production/setup.js +158 -0
  96. package/dest/multi-node/governance/setup.d.ts +67 -0
  97. package/dest/multi-node/governance/setup.d.ts.map +1 -0
  98. package/dest/multi-node/governance/setup.js +126 -0
  99. package/dest/multi-node/multi_node_test_context.d.ts +212 -0
  100. package/dest/multi-node/multi_node_test_context.d.ts.map +1 -0
  101. package/dest/multi-node/multi_node_test_context.js +347 -0
  102. package/dest/multi-node/slashing/inactivity_setup.d.ts +27 -0
  103. package/dest/multi-node/slashing/inactivity_setup.d.ts.map +1 -0
  104. package/dest/multi-node/slashing/inactivity_setup.js +111 -0
  105. package/dest/multi-node/slashing/setup.d.ts +167 -0
  106. package/dest/multi-node/slashing/setup.d.ts.map +1 -0
  107. package/dest/multi-node/slashing/setup.js +275 -0
  108. package/dest/{e2e_p2p → p2p}/p2p_network.d.ts +22 -12
  109. package/dest/p2p/p2p_network.d.ts.map +1 -0
  110. package/dest/{e2e_p2p → p2p}/p2p_network.js +97 -37
  111. package/dest/p2p/reqresp/utils.d.ts +19 -0
  112. package/dest/p2p/reqresp/utils.d.ts.map +1 -0
  113. package/dest/{e2e_p2p → p2p}/reqresp/utils.js +67 -27
  114. package/dest/p2p/shared.d.ts +72 -0
  115. package/dest/p2p/shared.d.ts.map +1 -0
  116. package/dest/p2p/shared.js +212 -0
  117. package/dest/shared/cross_chain_test_harness.d.ts +6 -4
  118. package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
  119. package/dest/shared/cross_chain_test_harness.js +36 -31
  120. package/dest/shared/gas_portal_test_harness.d.ts +8 -5
  121. package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
  122. package/dest/shared/gas_portal_test_harness.js +26 -14
  123. package/dest/shared/index.d.ts +2 -1
  124. package/dest/shared/index.d.ts.map +1 -1
  125. package/dest/shared/index.js +1 -0
  126. package/dest/shared/jest_setup.js +41 -1
  127. package/dest/shared/mock_state_view.d.ts +86 -0
  128. package/dest/shared/mock_state_view.d.ts.map +1 -0
  129. package/dest/shared/mock_state_view.js +186 -0
  130. package/dest/shared/submit-transactions.d.ts +2 -2
  131. package/dest/shared/submit-transactions.d.ts.map +1 -1
  132. package/dest/shared/submit-transactions.js +12 -5
  133. package/dest/shared/timing_env.d.js +5 -0
  134. package/dest/shared/timing_env.js +365 -0
  135. package/dest/shared/uniswap_l1_l2.d.ts +1 -1
  136. package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
  137. package/dest/shared/uniswap_l1_l2.js +56 -44
  138. package/dest/shared/wait_for_l1_to_l2_message.d.ts +13 -0
  139. package/dest/shared/wait_for_l1_to_l2_message.d.ts.map +1 -0
  140. package/dest/shared/wait_for_l1_to_l2_message.js +10 -0
  141. package/dest/simulators/lending_simulator.d.ts +10 -3
  142. package/dest/simulators/lending_simulator.d.ts.map +1 -1
  143. package/dest/simulators/lending_simulator.js +27 -15
  144. package/dest/simulators/token_simulator.d.ts +1 -1
  145. package/dest/simulators/token_simulator.d.ts.map +1 -1
  146. package/dest/simulators/token_simulator.js +3 -24
  147. package/dest/single-node/cross-chain/cross_chain_messaging_test.d.ts +75 -0
  148. package/dest/single-node/cross-chain/cross_chain_messaging_test.d.ts.map +1 -0
  149. package/dest/single-node/cross-chain/cross_chain_messaging_test.js +209 -0
  150. package/dest/single-node/cross-chain/message_test_helpers.d.ts +38 -0
  151. package/dest/single-node/cross-chain/message_test_helpers.d.ts.map +1 -0
  152. package/dest/single-node/cross-chain/message_test_helpers.js +70 -0
  153. package/dest/{e2e_fees → single-node/fees}/bridging_race.notest.d.ts +1 -1
  154. package/dest/single-node/fees/bridging_race.notest.d.ts.map +1 -0
  155. package/dest/{e2e_fees → single-node/fees}/bridging_race.notest.js +17 -4
  156. package/dest/single-node/fees/fees_test.d.ts +93 -0
  157. package/dest/single-node/fees/fees_test.d.ts.map +1 -0
  158. package/dest/{e2e_fees → single-node/fees}/fees_test.js +94 -68
  159. package/dest/single-node/l1-reorgs/setup.d.ts +42 -0
  160. package/dest/single-node/l1-reorgs/setup.d.ts.map +1 -0
  161. package/dest/single-node/l1-reorgs/setup.js +57 -0
  162. package/dest/single-node/partial-proofs/setup.d.ts +5 -0
  163. package/dest/single-node/partial-proofs/setup.d.ts.map +1 -0
  164. package/dest/single-node/partial-proofs/setup.js +5 -0
  165. package/dest/single-node/proving/setup.d.ts +5 -0
  166. package/dest/single-node/proving/setup.d.ts.map +1 -0
  167. package/dest/single-node/proving/setup.js +5 -0
  168. package/dest/single-node/recovery/setup.d.ts +5 -0
  169. package/dest/single-node/recovery/setup.d.ts.map +1 -0
  170. package/dest/single-node/recovery/setup.js +5 -0
  171. package/dest/single-node/setup.d.ts +49 -0
  172. package/dest/single-node/setup.d.ts.map +1 -0
  173. package/dest/single-node/setup.js +56 -0
  174. package/dest/single-node/single_node_test_context.d.ts +360 -0
  175. package/dest/single-node/single_node_test_context.d.ts.map +1 -0
  176. package/dest/single-node/single_node_test_context.js +833 -0
  177. package/dest/spartan/setup_test_wallets.d.ts +12 -3
  178. package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
  179. package/dest/spartan/setup_test_wallets.js +118 -41
  180. package/dest/spartan/tx_metrics.d.ts +27 -4
  181. package/dest/spartan/tx_metrics.d.ts.map +1 -1
  182. package/dest/spartan/tx_metrics.js +106 -21
  183. package/dest/spartan/utils/bot.d.ts +3 -2
  184. package/dest/spartan/utils/bot.d.ts.map +1 -1
  185. package/dest/spartan/utils/bot.js +2 -1
  186. package/dest/spartan/utils/config.d.ts +11 -28
  187. package/dest/spartan/utils/config.d.ts.map +1 -1
  188. package/dest/spartan/utils/config.js +4 -1
  189. package/dest/spartan/utils/index.d.ts +5 -3
  190. package/dest/spartan/utils/index.d.ts.map +1 -1
  191. package/dest/spartan/utils/index.js +5 -1
  192. package/dest/spartan/utils/k8s.d.ts +3 -1
  193. package/dest/spartan/utils/k8s.d.ts.map +1 -1
  194. package/dest/spartan/utils/k8s.js +6 -0
  195. package/dest/spartan/utils/nodes.d.ts +4 -5
  196. package/dest/spartan/utils/nodes.d.ts.map +1 -1
  197. package/dest/spartan/utils/nodes.js +11 -11
  198. package/dest/spartan/utils/pod_logs.d.ts +25 -0
  199. package/dest/spartan/utils/pod_logs.d.ts.map +1 -0
  200. package/dest/spartan/utils/pod_logs.js +74 -0
  201. package/dest/spartan/utils/scripts.d.ts +18 -4
  202. package/dest/spartan/utils/scripts.d.ts.map +1 -1
  203. package/dest/spartan/utils/scripts.js +19 -4
  204. package/dest/test-wallet/test_wallet.d.ts +105 -0
  205. package/dest/test-wallet/test_wallet.d.ts.map +1 -0
  206. package/dest/test-wallet/test_wallet.js +323 -0
  207. package/dest/test-wallet/utils.d.ts +76 -0
  208. package/dest/test-wallet/utils.d.ts.map +1 -0
  209. package/dest/test-wallet/utils.js +126 -0
  210. package/dest/test-wallet/wallet_worker_script.d.ts +2 -0
  211. package/dest/test-wallet/wallet_worker_script.d.ts.map +1 -0
  212. package/dest/test-wallet/wallet_worker_script.js +56 -0
  213. package/dest/test-wallet/worker_wallet.d.ts +53 -0
  214. package/dest/test-wallet/worker_wallet.d.ts.map +1 -0
  215. package/dest/test-wallet/worker_wallet.js +155 -0
  216. package/dest/test-wallet/worker_wallet_schema.d.ts +4 -0
  217. package/dest/test-wallet/worker_wallet_schema.d.ts.map +1 -0
  218. package/dest/test-wallet/worker_wallet_schema.js +22 -0
  219. package/package.json +53 -46
  220. package/src/automine/README.md +60 -0
  221. package/src/automine/automine_test_context.ts +153 -0
  222. package/src/automine/contracts/fixtures/storage_proof.json +915 -0
  223. package/src/automine/contracts/fixtures/storage_proof_fetcher.ts +190 -0
  224. package/src/automine/contracts/fixtures/storage_proof_fixture.ts +173 -0
  225. package/src/automine/delivery/onchain_delivery_harness.ts +177 -0
  226. package/src/{e2e_blacklist_token_contract → automine/token}/blacklist_token_contract_test.ts +51 -61
  227. package/src/{e2e_token_contract → automine/token}/token_contract_test.ts +50 -56
  228. package/src/automine/token/token_test_helpers.ts +138 -0
  229. package/src/bench/client_flows/benchmark.ts +21 -0
  230. package/src/bench/client_flows/client_flows_benchmark.ts +104 -70
  231. package/src/bench/client_flows/config.ts +9 -1
  232. package/src/bench/client_flows/data_extractor.ts +1 -0
  233. package/src/bench/utils.ts +117 -8
  234. package/src/composed/ha/ha_full_setup.ts +466 -0
  235. package/src/fixtures/authwit_proxy.ts +54 -0
  236. package/src/fixtures/dumps/epoch_proof_result.json +1 -1
  237. package/src/fixtures/e2e_prover_test.ts +94 -95
  238. package/src/fixtures/elu_monitor.ts +126 -0
  239. package/src/fixtures/fixtures.ts +108 -0
  240. package/src/fixtures/get_bb_config.ts +7 -6
  241. package/src/fixtures/ha_setup.ts +192 -0
  242. package/src/fixtures/index.ts +2 -0
  243. package/src/fixtures/schnorr_hardcoded_account_contract.ts +49 -0
  244. package/src/fixtures/setup.ts +412 -442
  245. package/src/fixtures/setup_p2p_test.ts +39 -34
  246. package/src/fixtures/timing.ts +97 -0
  247. package/src/fixtures/token_utils.ts +42 -7
  248. package/src/fixtures/utils.ts +2 -3
  249. package/src/fixtures/wait_helpers.ts +333 -0
  250. package/src/forward-compatibility/wallet_rpc_client.ts +14 -0
  251. package/src/forward-compatibility/wallet_service.ts +106 -0
  252. package/src/guides/up_quick_start.sh +7 -4
  253. package/src/infra/README.md +12 -0
  254. package/src/install_legacy_contracts.cjs +75 -0
  255. package/src/legacy-jest-resolver.cjs +112 -0
  256. package/src/multi-node/README.md +95 -0
  257. package/src/multi-node/block-production/setup.ts +272 -0
  258. package/src/multi-node/governance/setup.ts +172 -0
  259. package/src/multi-node/multi_node_test_context.ts +447 -0
  260. package/src/multi-node/slashing/inactivity_setup.ts +139 -0
  261. package/src/multi-node/slashing/setup.ts +433 -0
  262. package/src/p2p/README.md +78 -0
  263. package/src/{e2e_p2p → p2p}/p2p_network.ts +121 -52
  264. package/src/{e2e_p2p → p2p}/reqresp/utils.ts +86 -30
  265. package/src/p2p/shared.ts +329 -0
  266. package/src/shared/cross_chain_test_harness.ts +42 -17
  267. package/src/shared/gas_portal_test_harness.ts +33 -15
  268. package/src/shared/index.ts +1 -0
  269. package/src/shared/jest_setup.ts +51 -1
  270. package/src/shared/mock_state_view.ts +188 -0
  271. package/src/shared/submit-transactions.ts +15 -6
  272. package/src/shared/timing_env.d.mts +39 -0
  273. package/src/shared/timing_env.mjs +363 -0
  274. package/src/shared/uniswap_l1_l2.ts +98 -56
  275. package/src/shared/wait_for_l1_to_l2_message.ts +23 -0
  276. package/src/simulators/lending_simulator.ts +33 -15
  277. package/src/simulators/token_simulator.ts +6 -30
  278. package/src/single-node/README.md +60 -0
  279. package/src/single-node/cross-chain/cross_chain_messaging_test.ts +302 -0
  280. package/src/single-node/cross-chain/message_test_helpers.ts +125 -0
  281. package/src/{e2e_fees → single-node/fees}/bridging_race.notest.ts +19 -5
  282. package/src/{e2e_fees → single-node/fees}/fees_test.ts +118 -89
  283. package/src/single-node/l1-reorgs/setup.ts +93 -0
  284. package/src/single-node/partial-proofs/setup.ts +8 -0
  285. package/src/single-node/proving/setup.ts +15 -0
  286. package/src/single-node/recovery/setup.ts +8 -0
  287. package/src/single-node/setup.ts +63 -0
  288. package/src/single-node/single_node_test_context.ts +1041 -0
  289. package/src/spartan/setup_test_wallets.ts +156 -36
  290. package/src/spartan/tx_metrics.ts +108 -24
  291. package/src/spartan/utils/bot.ts +4 -1
  292. package/src/spartan/utils/config.ts +3 -0
  293. package/src/spartan/utils/index.ts +8 -1
  294. package/src/spartan/utils/k8s.ts +8 -0
  295. package/src/spartan/utils/nodes.ts +17 -12
  296. package/src/spartan/utils/pod_logs.ts +99 -0
  297. package/src/spartan/utils/scripts.ts +43 -7
  298. package/src/test-wallet/test_wallet.ts +429 -0
  299. package/src/test-wallet/utils.ts +205 -0
  300. package/src/test-wallet/wallet_worker_script.ts +66 -0
  301. package/src/test-wallet/worker_wallet.ts +214 -0
  302. package/src/test-wallet/worker_wallet_schema.ts +14 -0
  303. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +0 -53
  304. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +0 -1
  305. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +0 -47
  306. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +0 -1
  307. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +0 -128
  308. package/dest/e2e_deploy_contract/deploy_test.d.ts +0 -37
  309. package/dest/e2e_deploy_contract/deploy_test.d.ts.map +0 -1
  310. package/dest/e2e_deploy_contract/deploy_test.js +0 -50
  311. package/dest/e2e_epochs/epochs_test.d.ts +0 -100
  312. package/dest/e2e_epochs/epochs_test.d.ts.map +0 -1
  313. package/dest/e2e_epochs/epochs_test.js +0 -361
  314. package/dest/e2e_fees/bridging_race.notest.d.ts.map +0 -1
  315. package/dest/e2e_fees/fees_test.d.ts +0 -88
  316. package/dest/e2e_fees/fees_test.d.ts.map +0 -1
  317. package/dest/e2e_l1_publisher/write_json.d.ts +0 -11
  318. package/dest/e2e_l1_publisher/write_json.d.ts.map +0 -1
  319. package/dest/e2e_l1_publisher/write_json.js +0 -56
  320. package/dest/e2e_multi_validator/utils.d.ts +0 -12
  321. package/dest/e2e_multi_validator/utils.d.ts.map +0 -1
  322. package/dest/e2e_nested_contract/nested_contract_test.d.ts +0 -26
  323. package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +0 -1
  324. package/dest/e2e_nested_contract/nested_contract_test.js +0 -56
  325. package/dest/e2e_p2p/inactivity_slash_test.d.ts +0 -31
  326. package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +0 -1
  327. package/dest/e2e_p2p/inactivity_slash_test.js +0 -136
  328. package/dest/e2e_p2p/p2p_network.d.ts.map +0 -1
  329. package/dest/e2e_p2p/reqresp/utils.d.ts +0 -22
  330. package/dest/e2e_p2p/reqresp/utils.d.ts.map +0 -1
  331. package/dest/e2e_p2p/shared.d.ts +0 -46
  332. package/dest/e2e_p2p/shared.d.ts.map +0 -1
  333. package/dest/e2e_p2p/shared.js +0 -177
  334. package/dest/e2e_token_contract/token_contract_test.d.ts +0 -42
  335. package/dest/e2e_token_contract/token_contract_test.d.ts.map +0 -1
  336. package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +0 -194
  337. package/src/e2e_deploy_contract/deploy_test.ts +0 -85
  338. package/src/e2e_epochs/epochs_test.ts +0 -477
  339. package/src/e2e_l1_publisher/write_json.ts +0 -77
  340. package/src/e2e_nested_contract/nested_contract_test.ts +0 -73
  341. package/src/e2e_p2p/inactivity_slash_test.ts +0 -179
  342. package/src/e2e_p2p/shared.ts +0 -288
  343. /package/dest/{e2e_multi_validator/utils.js → composed/web3signer/multi_validator_keystore_utils.js} +0 -0
  344. /package/src/{e2e_multi_validator/utils.ts → composed/web3signer/multi_validator_keystore_utils.ts} +0 -0
@@ -1,100 +0,0 @@
1
- import { type AztecNodeConfig, AztecNodeService } from '@aztec/aztec-node';
2
- import { Fr } from '@aztec/aztec.js/fields';
3
- import type { Logger } from '@aztec/aztec.js/log';
4
- import type { Wallet } from '@aztec/aztec.js/wallet';
5
- import { EpochCache } from '@aztec/epoch-cache';
6
- import { RollupContract } from '@aztec/ethereum/contracts';
7
- import { ChainMonitor, type Delayer } from '@aztec/ethereum/test';
8
- import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
9
- import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
10
- import { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
11
- import { TestContract } from '@aztec/noir-test-contracts.js/Test';
12
- import { ProverNode, type ProverNodeConfig } from '@aztec/prover-node';
13
- import type { PXEConfig } from '@aztec/pxe/config';
14
- import { type SequencerClient, type SequencerEvents } from '@aztec/sequencer-client';
15
- import { type BlockParameter, EthAddress } from '@aztec/stdlib/block';
16
- import { type L1RollupConstants } from '@aztec/stdlib/epoch-helpers';
17
- import { type EndToEndContext, type SetupOptions } from '../fixtures/utils.js';
18
- export declare const WORLD_STATE_BLOCK_HISTORY = 2;
19
- export declare const WORLD_STATE_BLOCK_CHECK_INTERVAL = 50;
20
- export declare const ARCHIVER_POLL_INTERVAL = 50;
21
- export declare const DEFAULT_L1_BLOCK_TIME: number;
22
- export type EpochsTestOpts = Partial<SetupOptions> & {
23
- numberOfAccounts?: number;
24
- pxeOpts?: Partial<PXEConfig>;
25
- aztecSlotDurationInL1Slots?: number;
26
- };
27
- export type TrackedSequencerEvent = {
28
- [K in keyof SequencerEvents]: Parameters<SequencerEvents[K]>[0] & {
29
- type: K;
30
- sequencerIndex: number;
31
- validator: EthAddress;
32
- };
33
- }[keyof SequencerEvents];
34
- /**
35
- * Tests building of epochs using fast block times and short epochs.
36
- * Spawns an aztec node and a prover node with fake proofs.
37
- * Sequencer is allowed to build empty blocks.
38
- */
39
- export declare class EpochsTestContext {
40
- context: EndToEndContext;
41
- l1Client: ExtendedViemWalletClient;
42
- rollup: RollupContract;
43
- constants: L1RollupConstants;
44
- logger: Logger;
45
- monitor: ChainMonitor;
46
- epochCache: EpochCache;
47
- proverDelayer: Delayer;
48
- sequencerDelayer: Delayer;
49
- proverNodes: ProverNode[];
50
- nodes: AztecNodeService[];
51
- epochDuration: number;
52
- L1_BLOCK_TIME_IN_S: number;
53
- L2_SLOT_DURATION_IN_S: number;
54
- static setup(opts?: EpochsTestOpts): Promise<EpochsTestContext>;
55
- static getSlotDurations(opts?: EpochsTestOpts): {
56
- l1PublishingTime: number;
57
- ethereumSlotDuration: number;
58
- aztecSlotDuration: number;
59
- aztecEpochDuration: number;
60
- aztecProofSubmissionEpochs: number;
61
- };
62
- setup(opts?: EpochsTestOpts): Promise<void>;
63
- teardown(): Promise<void>;
64
- createProverNode(opts?: {
65
- dontStart?: boolean;
66
- } & Partial<ProverNodeConfig>): Promise<ProverNode>;
67
- createNonValidatorNode(opts?: Partial<AztecNodeConfig>): Promise<AztecNodeService>;
68
- createValidatorNode(privateKeys: `0x${string}`[], opts?: Partial<AztecNodeConfig> & {
69
- txDelayerMaxInclusionTimeIntoSlot?: number;
70
- dontStartSequencer?: boolean;
71
- }): Promise<AztecNodeService>;
72
- private createNode;
73
- private getNextPrivateKey;
74
- /** Waits until the epoch begins (ie until the immediately previous L1 block is mined). */
75
- waitUntilEpochStarts(epoch: number): Promise<bigint>;
76
- /** Waits until the given checkpoint number is mined. */
77
- waitUntilCheckpointNumber(target: CheckpointNumber, timeout?: number): Promise<void>;
78
- /** Waits until the given checkpoint number is marked as proven. */
79
- waitUntilProvenCheckpointNumber(target: CheckpointNumber, timeout?: number): Promise<CheckpointNumber>;
80
- /** Waits until the last slot of the proof submission window for a given epoch. */
81
- waitUntilLastSlotOfProofSubmissionWindow(epochNumber: number | bigint): Promise<void>;
82
- /** Waits for the aztec node to sync to the target block number. */
83
- waitForNodeToSync(blockNumber: BlockNumber, type: 'proven' | 'finalized' | 'historic'): Promise<void>;
84
- /** Registers the SpamContract on the given wallet. */
85
- registerSpamContract(wallet: Wallet, salt?: Fr): Promise<SpamContract>;
86
- /** Registers the TestContract on the given wallet. */
87
- registerTestContract(wallet: Wallet, salt?: Fr): Promise<TestContract>;
88
- /** Creates an L1 client using a fresh account with funds from anvil, with a tx delayer already set up. */
89
- createL1Client(): Promise<{
90
- client: ExtendedViemWalletClient;
91
- delayer: Delayer;
92
- }>;
93
- /** Verifies whether the given block number is found on the aztec node. */
94
- verifyHistoricBlock(blockNumber: BlockParameter, expectedSuccess: boolean): Promise<void>;
95
- watchSequencerEvents(sequencers: SequencerClient[], getMetadata?: (i: number) => Record<string, any>): {
96
- failEvents: TrackedSequencerEvent[];
97
- stateChanges: TrackedSequencerEvent[];
98
- };
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2hzX3Rlc3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lMmVfZXBvY2hzL2Vwb2Noc190ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzNFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1QyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQWtCLEtBQUssT0FBTyxFQUFxQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3JILE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBZSxNQUFNLGlDQUFpQyxDQUFDO0FBTTdGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFbEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLGdCQUFnQixFQUF1QixNQUFNLG9CQUFvQixDQUFDO0FBRTVGLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFDTCxLQUFLLGVBQWUsRUFDcEIsS0FBSyxlQUFlLEVBR3JCLE1BQU0seUJBQXlCLENBQUM7QUFFakMsT0FBTyxFQUFFLEtBQUssY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RF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
@@ -1 +0,0 @@
1
- {"version":3,"file":"epochs_test.d.ts","sourceRoot":"","sources":["../../src/e2e_epochs/epochs_test.ts"],"names":[],"mappings":"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"}
@@ -1,361 +0,0 @@
1
- import { AztecNodeService } from '@aztec/aztec-node';
2
- import { getTimestampRangeForEpoch } from '@aztec/aztec.js/block';
3
- import { getContractInstanceFromInstantiationParams } from '@aztec/aztec.js/contracts';
4
- import { Fr } from '@aztec/aztec.js/fields';
5
- import { MerkleTreeId } from '@aztec/aztec.js/trees';
6
- import { EpochCache } from '@aztec/epoch-cache';
7
- import { createExtendedL1Client } from '@aztec/ethereum/client';
8
- import { DefaultL1ContractsConfig } from '@aztec/ethereum/config';
9
- import { RollupContract } from '@aztec/ethereum/contracts';
10
- import { ChainMonitor, DelayedTxUtils, waitUntilL1Timestamp, withDelayer } from '@aztec/ethereum/test';
11
- import { EpochNumber } from '@aztec/foundation/branded-types';
12
- import { SecretValue } from '@aztec/foundation/config';
13
- import { randomBytes } from '@aztec/foundation/crypto/random';
14
- import { withLoggerBindings } from '@aztec/foundation/log/server';
15
- import { retryUntil } from '@aztec/foundation/retry';
16
- import { sleep } from '@aztec/foundation/sleep';
17
- import { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
18
- import { TestContract } from '@aztec/noir-test-contracts.js/Test';
19
- import { getMockPubSubP2PServiceFactory } from '@aztec/p2p/test-helpers';
20
- import { SequencerState } from '@aztec/sequencer-client';
21
- import { EthAddress } from '@aztec/stdlib/block';
22
- import { getProofSubmissionDeadlineTimestamp } from '@aztec/stdlib/epoch-helpers';
23
- import { tryStop } from '@aztec/stdlib/interfaces/server';
24
- import { join } from 'path';
25
- import { privateKeyToAccount } from 'viem/accounts';
26
- import { createAndSyncProverNode, getPrivateKeyFromIndex, setup } from '../fixtures/utils.js';
27
- export const WORLD_STATE_BLOCK_HISTORY = 2;
28
- export const WORLD_STATE_BLOCK_CHECK_INTERVAL = 50;
29
- export const ARCHIVER_POLL_INTERVAL = 50;
30
- export const DEFAULT_L1_BLOCK_TIME = process.env.CI ? 12 : 8;
31
- /**
32
- * Tests building of epochs using fast block times and short epochs.
33
- * Spawns an aztec node and a prover node with fake proofs.
34
- * Sequencer is allowed to build empty blocks.
35
- */ export class EpochsTestContext {
36
- context;
37
- l1Client;
38
- rollup;
39
- constants;
40
- logger;
41
- monitor;
42
- epochCache;
43
- proverDelayer;
44
- sequencerDelayer;
45
- proverNodes = [];
46
- nodes = [];
47
- epochDuration;
48
- L1_BLOCK_TIME_IN_S;
49
- L2_SLOT_DURATION_IN_S;
50
- static async setup(opts = {}) {
51
- const test = new EpochsTestContext();
52
- await test.setup(opts);
53
- return test;
54
- }
55
- static getSlotDurations(opts = {}) {
56
- const envEthereumSlotDuration = process.env.L1_BLOCK_TIME ? parseInt(process.env.L1_BLOCK_TIME) : DEFAULT_L1_BLOCK_TIME;
57
- const ethereumSlotDuration = opts.ethereumSlotDuration ?? envEthereumSlotDuration;
58
- const aztecSlotDuration = opts.aztecSlotDuration ?? (opts.aztecSlotDurationInL1Slots ?? 2) * ethereumSlotDuration;
59
- const aztecEpochDuration = opts.aztecEpochDuration ?? 6;
60
- const aztecProofSubmissionEpochs = opts.aztecProofSubmissionEpochs ?? 1;
61
- const l1PublishingTime = opts.l1PublishingTime ?? 1;
62
- return {
63
- l1PublishingTime,
64
- ethereumSlotDuration,
65
- aztecSlotDuration,
66
- aztecEpochDuration,
67
- aztecProofSubmissionEpochs
68
- };
69
- }
70
- async setup(opts = {}) {
71
- const { ethereumSlotDuration, aztecSlotDuration, aztecEpochDuration, aztecProofSubmissionEpochs, l1PublishingTime } = EpochsTestContext.getSlotDurations(opts);
72
- this.L1_BLOCK_TIME_IN_S = ethereumSlotDuration;
73
- this.L2_SLOT_DURATION_IN_S = aztecSlotDuration;
74
- // Set up system without any account nor protocol contracts
75
- // and with faster block times and shorter epochs.
76
- const context = await setup(opts.numberOfAccounts ?? 0, {
77
- automineL1Setup: true,
78
- checkIntervalMs: 50,
79
- archiverPollingIntervalMS: ARCHIVER_POLL_INTERVAL,
80
- worldStateBlockCheckIntervalMS: WORLD_STATE_BLOCK_CHECK_INTERVAL,
81
- aztecEpochDuration,
82
- aztecSlotDuration,
83
- ethereumSlotDuration,
84
- aztecProofSubmissionEpochs,
85
- aztecTargetCommitteeSize: opts.initialValidators?.length ?? 0,
86
- minTxsPerBlock: 0,
87
- realProofs: false,
88
- startProverNode: true,
89
- proverTestDelayMs: opts.proverTestDelayMs ?? 0,
90
- // We use numeric incremental prover ids for simplicity, but we can switch to
91
- // using the prover's eth address if the proverId is used for something in the rollup contract
92
- // Use numeric EthAddress for deterministic prover id
93
- proverId: EthAddress.fromNumber(1),
94
- worldStateBlockHistory: WORLD_STATE_BLOCK_HISTORY,
95
- exitDelaySeconds: DefaultL1ContractsConfig.exitDelaySeconds,
96
- slasherFlavor: 'none',
97
- l1PublishingTime,
98
- ...opts
99
- }, // Use checkpointed chain tip for PXE by default to avoid issues with blocks being dropped due to pruned anchor blocks.
100
- // Can be overridden via opts.pxeOpts.
101
- {
102
- syncChainTip: 'checkpointed',
103
- ...opts.pxeOpts
104
- });
105
- this.context = context;
106
- this.proverNodes = context.proverNode ? [
107
- context.proverNode
108
- ] : [];
109
- this.nodes = context.aztecNode ? [
110
- context.aztecNode
111
- ] : [];
112
- this.logger = context.logger;
113
- this.l1Client = context.deployL1ContractsValues.l1Client;
114
- this.rollup = RollupContract.getFromConfig(context.config);
115
- this.epochCache = await EpochCache.create(this.rollup, context.config, {
116
- dateProvider: context.dateProvider
117
- });
118
- // Loop that tracks L1 and L2 block numbers and logs whenever there's a new one.
119
- this.monitor = new ChainMonitor(this.rollup, context.dateProvider, this.logger).start();
120
- // This is hideous.
121
- // We ought to have a definite reference to the l1TxUtils that we're using in both places, provided by the test context.
122
- this.proverDelayer = context.proverNode ? context.proverNode.publisher.l1TxUtils.delayer : undefined;
123
- this.sequencerDelayer = context.sequencer ? context.sequencer.sequencer.publisher.l1TxUtils.delayer : undefined;
124
- if (context.proverNode && !this.proverDelayer || context.sequencer && !this.sequencerDelayer) {
125
- throw new Error(`Could not find prover or sequencer delayer`);
126
- }
127
- // Constants used for time calculation
128
- this.epochDuration = aztecEpochDuration;
129
- this.constants = {
130
- epochDuration: aztecEpochDuration,
131
- slotDuration: aztecSlotDuration,
132
- l1StartBlock: await this.rollup.getL1StartBlock(),
133
- l1GenesisTime: await this.rollup.getL1GenesisTime(),
134
- ethereumSlotDuration,
135
- proofSubmissionEpochs: Number(await this.rollup.getProofSubmissionEpochs())
136
- };
137
- this.logger.info(`L2 genesis at L1 block ${this.constants.l1StartBlock} (timestamp ${this.constants.l1GenesisTime})`);
138
- }
139
- async teardown() {
140
- await this.monitor.stop();
141
- await Promise.all(this.proverNodes.map((node)=>tryStop(node, this.logger)));
142
- await Promise.all(this.nodes.map((node)=>tryStop(node, this.logger)));
143
- await this.context.teardown();
144
- }
145
- async createProverNode(opts = {}) {
146
- this.logger.warn('Creating and syncing a simulated prover node...');
147
- const proverNodePrivateKey = this.getNextPrivateKey();
148
- const proverIndex = this.proverNodes.length + 1;
149
- const proverNode = await withLoggerBindings({
150
- actor: `prover-${proverIndex}`
151
- }, ()=>createAndSyncProverNode(proverNodePrivateKey, {
152
- ...this.context.config
153
- }, {
154
- dataDirectory: join(this.context.config.dataDirectory, randomBytes(8).toString('hex')),
155
- proverId: EthAddress.fromNumber(proverIndex),
156
- dontStart: opts.dontStart,
157
- ...opts
158
- }, this.context.aztecNode, this.context.prefilledPublicData ?? [], {
159
- dateProvider: this.context.dateProvider
160
- }));
161
- this.proverNodes.push(proverNode);
162
- return proverNode;
163
- }
164
- createNonValidatorNode(opts = {}) {
165
- this.logger.warn('Creating and syncing a node without a validator...');
166
- return this.createNode({
167
- ...opts,
168
- disableValidator: true
169
- });
170
- }
171
- createValidatorNode(privateKeys, opts = {}) {
172
- this.logger.warn('Creating and syncing a validator node...');
173
- return this.createNode({
174
- ...opts,
175
- disableValidator: false,
176
- validatorPrivateKeys: new SecretValue(privateKeys)
177
- });
178
- }
179
- async createNode(opts = {}) {
180
- const nodeIndex = this.nodes.length + 1;
181
- const actorPrefix = opts.disableValidator ? 'node' : 'validator';
182
- const { mockGossipSubNetwork } = this.context;
183
- const resolvedConfig = {
184
- ...this.context.config,
185
- ...opts
186
- };
187
- const p2pEnabled = resolvedConfig.p2pEnabled || mockGossipSubNetwork !== undefined;
188
- const p2pIp = resolvedConfig.p2pIp ?? (p2pEnabled ? '127.0.0.1' : undefined);
189
- const node = await withLoggerBindings({
190
- actor: `${actorPrefix}-${nodeIndex}`
191
- }, ()=>AztecNodeService.createAndSync({
192
- ...resolvedConfig,
193
- dataDirectory: join(this.context.config.dataDirectory, randomBytes(8).toString('hex')),
194
- validatorPrivateKeys: opts.validatorPrivateKeys ?? new SecretValue([]),
195
- p2pEnabled,
196
- p2pIp
197
- }, {
198
- dateProvider: this.context.dateProvider,
199
- p2pClientDeps: {
200
- p2pServiceFactory: mockGossipSubNetwork ? getMockPubSubP2PServiceFactory(mockGossipSubNetwork) : undefined
201
- }
202
- }, {
203
- prefilledPublicData: this.context.prefilledPublicData,
204
- ...opts
205
- }));
206
- // REFACTOR: We're getting too much into the internals of the sequencer here.
207
- // We should have a single method for constructing an aztec node that returns a TestAztecNodeService
208
- // which directly exposes the delayer and sets any test config.
209
- if (opts.txDelayerMaxInclusionTimeIntoSlot !== undefined) {
210
- this.logger.info(`Setting tx delayer max inclusion time into slot to ${opts.txDelayerMaxInclusionTimeIntoSlot} seconds`);
211
- // Here we reach into the sequencer and hook in a tx delayer. The problem is that the sequencer's l1 utils only uses a public client, not a wallet.
212
- // The delayer needs a wallet (a client that can sign), so we have to create one here.
213
- const l1Client = createExtendedL1Client(resolvedConfig.l1RpcUrls, resolvedConfig.publisherPrivateKeys[0].getValue());
214
- const sequencer = node.getSequencer();
215
- const publisher = sequencer.sequencer.publisher;
216
- const delayed = DelayedTxUtils.fromL1TxUtils(publisher.l1TxUtils, this.L1_BLOCK_TIME_IN_S, l1Client);
217
- delayed.delayer.setMaxInclusionTimeIntoSlot(opts.txDelayerMaxInclusionTimeIntoSlot);
218
- publisher.l1TxUtils = delayed;
219
- }
220
- this.nodes.push(node);
221
- return node;
222
- }
223
- getNextPrivateKey() {
224
- const key = getPrivateKeyFromIndex(this.nodes.length + this.proverNodes.length + 1);
225
- return `0x${key.toString('hex')}`;
226
- }
227
- /** Waits until the epoch begins (ie until the immediately previous L1 block is mined). */ async waitUntilEpochStarts(epoch) {
228
- const [start] = getTimestampRangeForEpoch(EpochNumber(epoch), this.constants);
229
- this.logger.info(`Waiting until L1 timestamp ${start} is reached as the start of epoch ${epoch}`);
230
- await waitUntilL1Timestamp(this.l1Client, start - BigInt(this.L1_BLOCK_TIME_IN_S), undefined, 30 * this.epochDuration);
231
- return start;
232
- }
233
- /** Waits until the given checkpoint number is mined. */ async waitUntilCheckpointNumber(target, timeout = 120) {
234
- await retryUntil(()=>Promise.resolve(target <= this.monitor.checkpointNumber), `Wait until checkpoint ${target}`, timeout, 0.1);
235
- }
236
- /** Waits until the given checkpoint number is marked as proven. */ async waitUntilProvenCheckpointNumber(target, timeout = 120) {
237
- await retryUntil(()=>Promise.resolve(target <= this.monitor.provenCheckpointNumber), `Wait proven checkpoint ${target}`, timeout, 0.1);
238
- return this.monitor.provenCheckpointNumber;
239
- }
240
- /** Waits until the last slot of the proof submission window for a given epoch. */ async waitUntilLastSlotOfProofSubmissionWindow(epochNumber) {
241
- const deadline = getProofSubmissionDeadlineTimestamp(EpochNumber.fromBigInt(BigInt(epochNumber)), this.constants);
242
- const oneSlotBefore = deadline - BigInt(this.constants.slotDuration);
243
- const date = new Date(Number(oneSlotBefore) * 1000);
244
- this.logger.info(`Waiting until last slot of submission window for epoch ${epochNumber} at ${date}`, {
245
- oneSlotBefore
246
- });
247
- await waitUntilL1Timestamp(this.l1Client, oneSlotBefore);
248
- }
249
- /** Waits for the aztec node to sync to the target block number. */ async waitForNodeToSync(blockNumber, type) {
250
- const waitTime = ARCHIVER_POLL_INTERVAL + WORLD_STATE_BLOCK_CHECK_INTERVAL;
251
- let synched = false;
252
- while(!synched){
253
- await sleep(waitTime);
254
- const [syncState, tips] = await Promise.all([
255
- this.context.aztecNode.getWorldStateSyncStatus(),
256
- await this.context.aztecNode.getL2Tips()
257
- ]);
258
- this.logger.info(`Wait for node synch ${blockNumber} ${type}`, {
259
- blockNumber,
260
- type,
261
- syncState,
262
- tips
263
- });
264
- if (type === 'proven') {
265
- synched = tips.proven.block.number >= blockNumber && syncState.latestBlockNumber >= blockNumber;
266
- } else if (type === 'finalized') {
267
- synched = syncState.finalizedBlockNumber >= blockNumber;
268
- } else {
269
- synched = syncState.oldestHistoricBlockNumber >= blockNumber;
270
- }
271
- }
272
- }
273
- /** Registers the SpamContract on the given wallet. */ async registerSpamContract(wallet, salt = Fr.ZERO) {
274
- const instance = await getContractInstanceFromInstantiationParams(SpamContract.artifact, {
275
- constructorArgs: [],
276
- constructorArtifact: undefined,
277
- salt,
278
- publicKeys: undefined,
279
- deployer: undefined
280
- });
281
- await wallet.registerContract(instance, SpamContract.artifact);
282
- return SpamContract.at(instance.address, wallet);
283
- }
284
- /** Registers the TestContract on the given wallet. */ async registerTestContract(wallet, salt = Fr.ZERO) {
285
- const instance = await getContractInstanceFromInstantiationParams(TestContract.artifact, {
286
- constructorArgs: [],
287
- constructorArtifact: undefined,
288
- salt,
289
- publicKeys: undefined,
290
- deployer: undefined
291
- });
292
- await wallet.registerContract(instance, TestContract.artifact);
293
- return TestContract.at(instance.address, wallet);
294
- }
295
- /** Creates an L1 client using a fresh account with funds from anvil, with a tx delayer already set up. */ async createL1Client() {
296
- const { client, delayer } = withDelayer(createExtendedL1Client([
297
- ...this.l1Client.chain.rpcUrls.default.http
298
- ], privateKeyToAccount(this.getNextPrivateKey()), this.l1Client.chain), this.context.dateProvider, {
299
- ethereumSlotDuration: this.L1_BLOCK_TIME_IN_S
300
- });
301
- expect(await client.getBalance({
302
- address: client.account.address
303
- })).toBeGreaterThan(0n);
304
- return {
305
- client,
306
- delayer
307
- };
308
- }
309
- /** Verifies whether the given block number is found on the aztec node. */ async verifyHistoricBlock(blockNumber, expectedSuccess) {
310
- // We use `findLeavesIndexes` here, but could use any function that queries the world-state
311
- // at a particular block, so we know whether that historic block is available or has been
312
- // pruned. Note that `getBlock` would not work here, since it only hits the archiver.
313
- const result = await this.context.aztecNode.findLeavesIndexes(blockNumber, MerkleTreeId.NULLIFIER_TREE, [
314
- Fr.ZERO
315
- ]).then((_)=>true).catch((_)=>false);
316
- expect(result).toBe(expectedSuccess);
317
- }
318
- watchSequencerEvents(sequencers, getMetadata = ()=>({})) {
319
- const stateChanges = [];
320
- const failEvents = [];
321
- // Note we do not include the 'block-tx-count-check-failed' event here, since it is fine if we dont build
322
- // due to lack of txs available.
323
- const failEventsKeys = [
324
- 'block-build-failed',
325
- 'checkpoint-publish-failed',
326
- 'proposer-rollup-check-failed'
327
- ];
328
- const makeEvent = (i, eventName, args)=>({
329
- ...args,
330
- type: eventName,
331
- sequencerIndex: i + 2,
332
- ...getMetadata(i)
333
- });
334
- sequencers.forEach((sequencer, i)=>{
335
- const sequencerIndex = i + 2;
336
- sequencer.getSequencer().on('state-changed', (args)=>{
337
- const noisyStates = [
338
- SequencerState.IDLE,
339
- SequencerState.PROPOSER_CHECK,
340
- SequencerState.SYNCHRONIZING
341
- ];
342
- if (!noisyStates.includes(args.newState)) {
343
- const evt = makeEvent(i, 'state-changed', args);
344
- stateChanges.push(evt);
345
- this.logger.verbose(`Sequencer ${sequencerIndex} transitioned from state ${args.oldState} to state ${args.newState}`, evt);
346
- }
347
- });
348
- failEventsKeys.forEach((eventName)=>{
349
- sequencer.getSequencer().on(eventName, (args)=>{
350
- const evt = makeEvent(i, eventName, args);
351
- failEvents.push(evt);
352
- this.logger.error(`Failed event ${eventName} from sequencer ${sequencerIndex}`, undefined, evt);
353
- });
354
- });
355
- });
356
- return {
357
- failEvents,
358
- stateChanges
359
- };
360
- }
361
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"bridging_race.notest.d.ts","sourceRoot":"","sources":["../../src/e2e_fees/bridging_race.notest.ts"],"names":[],"mappings":""}
@@ -1,88 +0,0 @@
1
- import type { AztecAddress } from '@aztec/aztec.js/addresses';
2
- import { type Logger } from '@aztec/aztec.js/log';
3
- import type { AztecNode } from '@aztec/aztec.js/node';
4
- import { CheatCodes } from '@aztec/aztec/testing';
5
- import { RollupContract } from '@aztec/ethereum/contracts';
6
- import type { DeployAztecL1ContractsArgs } from '@aztec/ethereum/deploy-aztec-l1-contracts';
7
- import { ChainMonitor } from '@aztec/ethereum/test';
8
- import { BlockNumber } from '@aztec/foundation/branded-types';
9
- import { EthAddress } from '@aztec/foundation/eth-address';
10
- import { AppSubscriptionContract } from '@aztec/noir-contracts.js/AppSubscription';
11
- import { FPCContract } from '@aztec/noir-contracts.js/FPC';
12
- import { FeeJuiceContract } from '@aztec/noir-contracts.js/FeeJuice';
13
- import { SponsoredFPCContract } from '@aztec/noir-contracts.js/SponsoredFPC';
14
- import { TokenContract as BananaCoin } from '@aztec/noir-contracts.js/Token';
15
- import { CounterContract } from '@aztec/noir-test-contracts.js/Counter';
16
- import { GasSettings } from '@aztec/stdlib/gas';
17
- import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
18
- import { TestWallet } from '@aztec/test-wallet/server';
19
- import { type EndToEndContext, type SetupOptions } from '../fixtures/setup.js';
20
- import { type BalancesFn } from '../fixtures/utils.js';
21
- import { type GasBridgingTestHarness } from '../shared/gas_portal_test_harness.js';
22
- /**
23
- * Test fixture for testing fees. Provides the following setup steps:
24
- * InitialAccounts: Initializes 3 Schnorr account contracts.
25
- * PublicDeployAccounts: Deploys the accounts publicly.
26
- * DeployFeeJuice: Deploys the Fee Juice contract.
27
- * FPCSetup: Deploys BananaCoin and FPC contracts, and bridges gas from L1.
28
- * SponsoredFPCSetup: Deploys Sponsored FPC contract, and bridges gas from L1.
29
- * FundAlice: Mints private and public bananas to Alice.
30
- * SetupSubscription: Deploys a counter contract and a subscription contract, and mints Fee Juice to the subscription contract.
31
- */
32
- export declare class FeesTest {
33
- private numberOfAccounts;
34
- private setupOptions;
35
- private accounts;
36
- context: EndToEndContext;
37
- logger: Logger;
38
- aztecNode: AztecNode;
39
- aztecNodeAdmin: AztecNodeAdmin;
40
- cheatCodes: CheatCodes;
41
- wallet: TestWallet;
42
- aliceAddress: AztecAddress;
43
- bobAddress: AztecAddress;
44
- sequencerAddress: AztecAddress;
45
- coinbase: EthAddress;
46
- fpcAdmin: AztecAddress;
47
- gasSettings: GasSettings;
48
- rollupContract: RollupContract;
49
- feeJuiceContract: FeeJuiceContract;
50
- bananaCoin: BananaCoin;
51
- bananaFPC: FPCContract;
52
- sponsoredFPC: SponsoredFPCContract;
53
- counterContract: CounterContract;
54
- subscriptionContract: AppSubscriptionContract;
55
- feeJuiceBridgeTestHarness: GasBridgingTestHarness;
56
- chainMonitor: ChainMonitor;
57
- getCoinbaseBalance: () => Promise<bigint>;
58
- getCoinbaseSequencerRewards: () => Promise<bigint>;
59
- getGasBalanceFn: BalancesFn;
60
- getBananaPublicBalanceFn: BalancesFn;
61
- getBananaPrivateBalanceFn: BalancesFn;
62
- getProverFee: (blockNumber: BlockNumber) => Promise<bigint>;
63
- readonly ALICE_INITIAL_BANANAS: bigint;
64
- readonly SUBSCRIPTION_AMOUNT: bigint;
65
- readonly APP_SPONSORED_TX_GAS_LIMIT: bigint;
66
- constructor(testName: string, numberOfAccounts?: number, setupOptions?: Partial<SetupOptions & DeployAztecL1ContractsArgs>);
67
- setup(): Promise<this>;
68
- teardown(): Promise<void>;
69
- setIsMarkingAsProven(b: boolean): void;
70
- catchUpProvenChain(): Promise<void>;
71
- getBlockRewards(): Promise<{
72
- sequencerBlockRewards: bigint;
73
- proverBlockRewards: bigint;
74
- }>;
75
- mintAndBridgeFeeJuice(minter: AztecAddress, recipient: AztecAddress): Promise<void>;
76
- /** Alice mints bananaCoin tokens privately to the target address and redeems them. */
77
- mintPrivateBananas(amount: bigint, address: AztecAddress): Promise<void>;
78
- applyBaseSetup(): Promise<void>;
79
- applyInitialAccounts(): Promise<void>;
80
- applyPublicDeployAccounts(): Promise<void>;
81
- applySetupFeeJuice(): Promise<void>;
82
- applyDeployBananaToken(): Promise<void>;
83
- applyFPCSetup(): Promise<void>;
84
- applySponsoredFPCSetup(): Promise<void>;
85
- applyFundAliceWithBananas(): Promise<void>;
86
- applyFundAliceWithPrivateBananas(): Promise<void>;
87
- }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlc190ZXN0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZTJlX2ZlZXMvZmVlc190ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxhQUFhLElBQUksVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBR3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0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
@@ -1 +0,0 @@
1
- {"version":3,"file":"fees_test.d.ts","sourceRoot":"","sources":["../../src/e2e_fees/fees_test.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { AztecAddress } from '@aztec/aztec.js/addresses';
2
- import { Fr } from '@aztec/aztec.js/fields';
3
- import { BatchedBlob, Blob } from '@aztec/blob-lib';
4
- import { L2Block } from '@aztec/stdlib/block';
5
- import { CheckpointHeader } from '@aztec/stdlib/rollup';
6
- /**
7
- * Creates a json object that can be used to test the solidity contract.
8
- * The json object must be put into
9
- */
10
- export declare function writeJson(fileName: string, checkpointHeader: CheckpointHeader, block: L2Block, l1ToL2Content: Fr[], blobs: Blob[], batchedBlob: BatchedBlob, recipientAddress: AztecAddress, deployerAddress: `0x${string}`): Promise<void>;
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGVfanNvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2UyZV9sMV9wdWJsaXNoZXIvd3JpdGVfanNvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUE2RCxNQUFNLGlCQUFpQixDQUFDO0FBRS9HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU14RDs7O0dBR0c7QUFDSCx3QkFBc0IsU0FBUyxDQUM3QixRQUFRLEVBQUUsTUFBTSxFQUNoQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsS0FBSyxFQUFFLE9BQU8sRUFDZCxhQUFhLEVBQUUsRUFBRSxFQUFFLEVBQ25CLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFDYixXQUFXLEVBQUUsV0FBVyxFQUN4QixnQkFBZ0IsRUFBRSxZQUFZLEVBQzlCLGVBQWUsRUFBRSxLQUFLLE1BQU0sRUFBRSxHQUM3QixPQUFPLENBQUMsSUFBSSxDQUFDLENBb0RmIn0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"write_json.d.ts","sourceRoot":"","sources":["../../src/e2e_l1_publisher/write_json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,IAAI,EAA6D,MAAM,iBAAiB,CAAC;AAE/G,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAMxD;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,EAAE,EAAE,EACnB,KAAK,EAAE,IAAI,EAAE,EACb,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,YAAY,EAC9B,eAAe,EAAE,KAAK,MAAM,EAAE,GAC7B,OAAO,CAAC,IAAI,CAAC,CAoDf"}