@aztec/end-to-end 0.0.0-test.1 → 0.0.1-fake-ceab37513c

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 (156) hide show
  1. package/dest/bench/client_flows/benchmark.d.ts +60 -0
  2. package/dest/bench/client_flows/benchmark.d.ts.map +1 -0
  3. package/dest/bench/client_flows/benchmark.js +261 -0
  4. package/dest/bench/client_flows/client_flows_benchmark.d.ts +69 -0
  5. package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -0
  6. package/dest/bench/client_flows/client_flows_benchmark.js +315 -0
  7. package/dest/bench/client_flows/config.d.ts +14 -0
  8. package/dest/bench/client_flows/config.d.ts.map +1 -0
  9. package/dest/bench/client_flows/config.js +106 -0
  10. package/dest/bench/client_flows/data_extractor.d.ts +2 -0
  11. package/dest/bench/client_flows/data_extractor.d.ts.map +1 -0
  12. package/dest/bench/client_flows/data_extractor.js +99 -0
  13. package/dest/bench/utils.d.ts +10 -27
  14. package/dest/bench/utils.d.ts.map +1 -1
  15. package/dest/bench/utils.js +27 -43
  16. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +15 -7
  17. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
  18. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +66 -38
  19. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +10 -18
  20. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
  21. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +34 -53
  22. package/dest/e2e_deploy_contract/deploy_test.d.ts +4 -2
  23. package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
  24. package/dest/e2e_deploy_contract/deploy_test.js +9 -6
  25. package/dest/e2e_epochs/epochs_test.d.ts +56 -17
  26. package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
  27. package/dest/e2e_epochs/epochs_test.js +222 -42
  28. package/dest/e2e_fees/bridging_race.notest.d.ts +2 -0
  29. package/dest/e2e_fees/bridging_race.notest.d.ts.map +1 -0
  30. package/dest/e2e_fees/bridging_race.notest.js +60 -0
  31. package/dest/e2e_fees/fees_test.d.ts +16 -5
  32. package/dest/e2e_fees/fees_test.d.ts.map +1 -1
  33. package/dest/e2e_fees/fees_test.js +87 -88
  34. package/dest/e2e_l1_publisher/write_json.d.ts +8 -0
  35. package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -0
  36. package/dest/e2e_l1_publisher/write_json.js +57 -0
  37. package/dest/e2e_multi_validator/utils.d.ts +12 -0
  38. package/dest/e2e_multi_validator/utils.d.ts.map +1 -0
  39. package/dest/e2e_multi_validator/utils.js +214 -0
  40. package/dest/e2e_nested_contract/nested_contract_test.d.ts +5 -5
  41. package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
  42. package/dest/e2e_nested_contract/nested_contract_test.js +19 -14
  43. package/dest/e2e_p2p/inactivity_slash_test.d.ts +31 -0
  44. package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -0
  45. package/dest/e2e_p2p/inactivity_slash_test.js +132 -0
  46. package/dest/e2e_p2p/p2p_network.d.ts +56 -21
  47. package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
  48. package/dest/e2e_p2p/p2p_network.js +154 -125
  49. package/dest/e2e_p2p/shared.d.ts +41 -3
  50. package/dest/e2e_p2p/shared.d.ts.map +1 -1
  51. package/dest/e2e_p2p/shared.js +146 -6
  52. package/dest/e2e_token_contract/token_contract_test.d.ts +10 -5
  53. package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
  54. package/dest/e2e_token_contract/token_contract_test.js +51 -24
  55. package/dest/{e2e_prover → fixtures}/e2e_prover_test.d.ts +7 -4
  56. package/dest/fixtures/e2e_prover_test.d.ts.map +1 -0
  57. package/dest/{e2e_prover → fixtures}/e2e_prover_test.js +67 -62
  58. package/dest/fixtures/fixtures.d.ts +5 -6
  59. package/dest/fixtures/fixtures.d.ts.map +1 -1
  60. package/dest/fixtures/fixtures.js +4 -3
  61. package/dest/fixtures/get_acvm_config.d.ts.map +1 -1
  62. package/dest/fixtures/get_acvm_config.js +2 -14
  63. package/dest/fixtures/get_bb_config.d.ts.map +1 -1
  64. package/dest/fixtures/get_bb_config.js +8 -15
  65. package/dest/fixtures/l1_to_l2_messaging.d.ts +8 -5
  66. package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
  67. package/dest/fixtures/l1_to_l2_messaging.js +44 -18
  68. package/dest/fixtures/setup_l1_contracts.d.ts +3 -3
  69. package/dest/fixtures/setup_l1_contracts.d.ts.map +1 -1
  70. package/dest/fixtures/setup_l1_contracts.js +3 -3
  71. package/dest/fixtures/setup_p2p_test.d.ts +14 -6
  72. package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
  73. package/dest/fixtures/setup_p2p_test.js +73 -21
  74. package/dest/fixtures/snapshot_manager.d.ts +8 -3
  75. package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
  76. package/dest/fixtures/snapshot_manager.js +120 -104
  77. package/dest/fixtures/token_utils.d.ts +4 -3
  78. package/dest/fixtures/token_utils.d.ts.map +1 -1
  79. package/dest/fixtures/token_utils.js +24 -7
  80. package/dest/fixtures/utils.d.ts +65 -22
  81. package/dest/fixtures/utils.d.ts.map +1 -1
  82. package/dest/fixtures/utils.js +439 -318
  83. package/dest/fixtures/web3signer.d.ts +5 -0
  84. package/dest/fixtures/web3signer.d.ts.map +1 -0
  85. package/dest/fixtures/web3signer.js +42 -0
  86. package/dest/shared/cross_chain_test_harness.d.ts +28 -18
  87. package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
  88. package/dest/shared/cross_chain_test_harness.js +97 -41
  89. package/dest/shared/gas_portal_test_harness.d.ts +23 -18
  90. package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
  91. package/dest/shared/gas_portal_test_harness.js +43 -25
  92. package/dest/shared/submit-transactions.d.ts.map +1 -1
  93. package/dest/shared/uniswap_l1_l2.d.ts +5 -6
  94. package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
  95. package/dest/shared/uniswap_l1_l2.js +136 -90
  96. package/dest/simulators/lending_simulator.d.ts +5 -6
  97. package/dest/simulators/lending_simulator.d.ts.map +1 -1
  98. package/dest/simulators/lending_simulator.js +11 -15
  99. package/dest/simulators/token_simulator.d.ts +2 -1
  100. package/dest/simulators/token_simulator.d.ts.map +1 -1
  101. package/dest/simulators/token_simulator.js +16 -13
  102. package/dest/spartan/setup_test_wallets.d.ts +8 -1
  103. package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
  104. package/dest/spartan/setup_test_wallets.js +108 -22
  105. package/dest/spartan/utils.d.ts +60 -307
  106. package/dest/spartan/utils.d.ts.map +1 -1
  107. package/dest/spartan/utils.js +200 -115
  108. package/package.json +60 -56
  109. package/src/bench/client_flows/benchmark.ts +341 -0
  110. package/src/bench/client_flows/client_flows_benchmark.ts +422 -0
  111. package/src/bench/client_flows/config.ts +61 -0
  112. package/src/bench/client_flows/data_extractor.ts +111 -0
  113. package/src/bench/utils.ts +26 -52
  114. package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +60 -40
  115. package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +47 -75
  116. package/src/e2e_deploy_contract/deploy_test.ts +11 -8
  117. package/src/e2e_epochs/epochs_test.ts +276 -54
  118. package/src/e2e_fees/bridging_race.notest.ts +75 -0
  119. package/src/e2e_fees/fees_test.ts +121 -108
  120. package/src/e2e_l1_publisher/write_json.ts +74 -0
  121. package/src/e2e_multi_validator/utils.ts +258 -0
  122. package/src/e2e_nested_contract/nested_contract_test.ts +22 -14
  123. package/src/e2e_p2p/inactivity_slash_test.ts +174 -0
  124. package/src/e2e_p2p/p2p_network.ts +212 -144
  125. package/src/e2e_p2p/shared.ts +234 -14
  126. package/src/e2e_token_contract/token_contract_test.ts +42 -38
  127. package/src/fixtures/dumps/epoch_proof_result.json +1 -1
  128. package/src/{e2e_prover → fixtures}/e2e_prover_test.ts +62 -69
  129. package/src/fixtures/fixtures.ts +4 -3
  130. package/src/fixtures/get_acvm_config.ts +2 -10
  131. package/src/fixtures/get_bb_config.ts +15 -11
  132. package/src/fixtures/l1_to_l2_messaging.ts +53 -23
  133. package/src/fixtures/setup_l1_contracts.ts +5 -6
  134. package/src/fixtures/setup_p2p_test.ts +112 -30
  135. package/src/fixtures/snapshot_manager.ts +150 -102
  136. package/src/fixtures/token_utils.ts +33 -8
  137. package/src/fixtures/utils.ts +530 -352
  138. package/src/fixtures/web3signer.ts +46 -0
  139. package/src/guides/up_quick_start.sh +4 -4
  140. package/src/shared/cross_chain_test_harness.ts +92 -52
  141. package/src/shared/gas_portal_test_harness.ts +47 -31
  142. package/src/shared/uniswap_l1_l2.ts +127 -124
  143. package/src/simulators/lending_simulator.ts +11 -15
  144. package/src/simulators/token_simulator.ts +17 -12
  145. package/src/spartan/DEVELOP.md +116 -0
  146. package/src/spartan/setup_test_wallets.ts +144 -29
  147. package/src/spartan/utils.ts +194 -116
  148. package/dest/e2e_prover/e2e_prover_test.d.ts.map +0 -1
  149. package/dest/sample-dapp/connect.js +0 -12
  150. package/dest/sample-dapp/contracts.js +0 -10
  151. package/dest/sample-dapp/deploy.js +0 -35
  152. package/dest/sample-dapp/index.js +0 -98
  153. package/src/sample-dapp/connect.mjs +0 -16
  154. package/src/sample-dapp/contracts.mjs +0 -14
  155. package/src/sample-dapp/deploy.mjs +0 -40
  156. package/src/sample-dapp/index.mjs +0 -128
@@ -1,307 +1,37 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- import type { RollupCheatCodes } from '@aztec/aztec.js/ethereum';
1
+ import type { RollupCheatCodes } from '@aztec/aztec/testing';
2
+ import type { L1ContractAddresses, ViemPublicClient } from '@aztec/ethereum';
3
3
  import type { Logger } from '@aztec/foundation/log';
4
- import type { SequencerConfig } from '@aztec/sequencer-client';
4
+ import { type AztecNodeAdmin, type AztecNodeAdminConfig } from '@aztec/stdlib/interfaces/client';
5
5
  import { ChildProcess } from 'child_process';
6
6
  import { z } from 'zod';
7
- import { type AlertConfig } from '../quality_of_service/alert_checker.js';
8
- declare const k8sLocalConfigSchema: z.ZodObject<{
9
- ETHEREUM_SLOT_DURATION: z.ZodNumber;
10
- AZTEC_SLOT_DURATION: z.ZodNumber;
11
- AZTEC_EPOCH_DURATION: z.ZodNumber;
12
- AZTEC_PROOF_SUBMISSION_WINDOW: z.ZodNumber;
13
- INSTANCE_NAME: z.ZodString;
14
- NAMESPACE: z.ZodString;
15
- CONTAINER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
16
- CONTAINER_SEQUENCER_PORT: z.ZodDefault<z.ZodNumber>;
17
- CONTAINER_PROVER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
18
- CONTAINER_PXE_PORT: z.ZodDefault<z.ZodNumber>;
19
- CONTAINER_ETHEREUM_PORT: z.ZodDefault<z.ZodNumber>;
20
- CONTAINER_METRICS_PORT: z.ZodDefault<z.ZodNumber>;
21
- GRAFANA_PASSWORD: z.ZodOptional<z.ZodString>;
22
- METRICS_API_PATH: z.ZodDefault<z.ZodString>;
23
- SPARTAN_DIR: z.ZodString;
24
- ETHEREUM_HOSTS: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
25
- L1_ACCOUNT_MNEMONIC: z.ZodDefault<z.ZodString>;
26
- SEPOLIA_RUN: z.ZodDefault<z.ZodString>;
27
- K8S: z.ZodLiteral<"local">;
7
+ declare const testConfigSchema: z.ZodObject<{
8
+ NAMESPACE: z.ZodDefault<z.ZodString>;
9
+ REAL_VERIFIER: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodEffects<z.ZodEffects<z.ZodNumber, 0 | 1, number>, boolean, number>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, boolean, string>]>>>;
10
+ CREATE_ETH_DEVNET: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodEffects<z.ZodEffects<z.ZodNumber, 0 | 1, number>, boolean, number>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, boolean, string>]>>>;
11
+ L1_RPC_URLS_JSON: z.ZodOptional<z.ZodString>;
28
12
  }, "strip", z.ZodTypeAny, {
29
- ETHEREUM_SLOT_DURATION: number;
30
- AZTEC_SLOT_DURATION: number;
31
- AZTEC_EPOCH_DURATION: number;
32
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
33
- INSTANCE_NAME: string;
34
13
  NAMESPACE: string;
35
- CONTAINER_NODE_PORT: number;
36
- CONTAINER_SEQUENCER_PORT: number;
37
- CONTAINER_PROVER_NODE_PORT: number;
38
- CONTAINER_PXE_PORT: number;
39
- CONTAINER_ETHEREUM_PORT: number;
40
- CONTAINER_METRICS_PORT: number;
41
- METRICS_API_PATH: string;
42
- SPARTAN_DIR: string;
43
- L1_ACCOUNT_MNEMONIC: string;
44
- SEPOLIA_RUN: string;
45
- K8S: "local";
46
- ETHEREUM_HOSTS?: string | undefined;
47
- GRAFANA_PASSWORD?: string | undefined;
14
+ REAL_VERIFIER: boolean;
15
+ CREATE_ETH_DEVNET: boolean;
16
+ L1_RPC_URLS_JSON?: string | undefined;
48
17
  }, {
49
- ETHEREUM_SLOT_DURATION: number;
50
- AZTEC_SLOT_DURATION: number;
51
- AZTEC_EPOCH_DURATION: number;
52
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
53
- INSTANCE_NAME: string;
54
- NAMESPACE: string;
55
- SPARTAN_DIR: string;
56
- K8S: "local";
57
- ETHEREUM_HOSTS?: string | undefined;
58
- CONTAINER_NODE_PORT?: number | undefined;
59
- CONTAINER_SEQUENCER_PORT?: number | undefined;
60
- CONTAINER_PROVER_NODE_PORT?: number | undefined;
61
- CONTAINER_PXE_PORT?: number | undefined;
62
- CONTAINER_ETHEREUM_PORT?: number | undefined;
63
- CONTAINER_METRICS_PORT?: number | undefined;
64
- GRAFANA_PASSWORD?: string | undefined;
65
- METRICS_API_PATH?: string | undefined;
66
- L1_ACCOUNT_MNEMONIC?: string | undefined;
67
- SEPOLIA_RUN?: string | undefined;
68
- }>;
69
- declare const k8sGCloudConfigSchema: z.ZodObject<z.objectUtil.extendShape<{
70
- ETHEREUM_SLOT_DURATION: z.ZodNumber;
71
- AZTEC_SLOT_DURATION: z.ZodNumber;
72
- AZTEC_EPOCH_DURATION: z.ZodNumber;
73
- AZTEC_PROOF_SUBMISSION_WINDOW: z.ZodNumber;
74
- INSTANCE_NAME: z.ZodString;
75
- NAMESPACE: z.ZodString;
76
- CONTAINER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
77
- CONTAINER_SEQUENCER_PORT: z.ZodDefault<z.ZodNumber>;
78
- CONTAINER_PROVER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
79
- CONTAINER_PXE_PORT: z.ZodDefault<z.ZodNumber>;
80
- CONTAINER_ETHEREUM_PORT: z.ZodDefault<z.ZodNumber>;
81
- CONTAINER_METRICS_PORT: z.ZodDefault<z.ZodNumber>;
82
- GRAFANA_PASSWORD: z.ZodOptional<z.ZodString>;
83
- METRICS_API_PATH: z.ZodDefault<z.ZodString>;
84
- SPARTAN_DIR: z.ZodString;
85
- ETHEREUM_HOSTS: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
86
- L1_ACCOUNT_MNEMONIC: z.ZodDefault<z.ZodString>;
87
- SEPOLIA_RUN: z.ZodDefault<z.ZodString>;
88
- K8S: z.ZodLiteral<"local">;
89
- }, {
90
- K8S: z.ZodLiteral<"gcloud">;
91
- CLUSTER_NAME: z.ZodString;
92
- REGION: z.ZodString;
93
- }>, "strip", z.ZodTypeAny, {
94
- ETHEREUM_SLOT_DURATION: number;
95
- AZTEC_SLOT_DURATION: number;
96
- AZTEC_EPOCH_DURATION: number;
97
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
98
- INSTANCE_NAME: string;
99
- NAMESPACE: string;
100
- CONTAINER_NODE_PORT: number;
101
- CONTAINER_SEQUENCER_PORT: number;
102
- CONTAINER_PROVER_NODE_PORT: number;
103
- CONTAINER_PXE_PORT: number;
104
- CONTAINER_ETHEREUM_PORT: number;
105
- CONTAINER_METRICS_PORT: number;
106
- METRICS_API_PATH: string;
107
- SPARTAN_DIR: string;
108
- L1_ACCOUNT_MNEMONIC: string;
109
- SEPOLIA_RUN: string;
110
- K8S: "gcloud";
111
- CLUSTER_NAME: string;
112
- REGION: string;
113
- ETHEREUM_HOSTS?: string | undefined;
114
- GRAFANA_PASSWORD?: string | undefined;
115
- }, {
116
- ETHEREUM_SLOT_DURATION: number;
117
- AZTEC_SLOT_DURATION: number;
118
- AZTEC_EPOCH_DURATION: number;
119
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
120
- INSTANCE_NAME: string;
121
- NAMESPACE: string;
122
- SPARTAN_DIR: string;
123
- K8S: "gcloud";
124
- CLUSTER_NAME: string;
125
- REGION: string;
126
- ETHEREUM_HOSTS?: string | undefined;
127
- CONTAINER_NODE_PORT?: number | undefined;
128
- CONTAINER_SEQUENCER_PORT?: number | undefined;
129
- CONTAINER_PROVER_NODE_PORT?: number | undefined;
130
- CONTAINER_PXE_PORT?: number | undefined;
131
- CONTAINER_ETHEREUM_PORT?: number | undefined;
132
- CONTAINER_METRICS_PORT?: number | undefined;
133
- GRAFANA_PASSWORD?: string | undefined;
134
- METRICS_API_PATH?: string | undefined;
135
- L1_ACCOUNT_MNEMONIC?: string | undefined;
136
- SEPOLIA_RUN?: string | undefined;
18
+ NAMESPACE?: string | undefined;
19
+ REAL_VERIFIER?: string | number | boolean | undefined;
20
+ CREATE_ETH_DEVNET?: string | number | boolean | undefined;
21
+ L1_RPC_URLS_JSON?: string | undefined;
137
22
  }>;
138
- declare const directConfigSchema: z.ZodObject<{
139
- PXE_URL: z.ZodString;
140
- NODE_URL: z.ZodString;
141
- ETHEREUM_HOSTS: z.ZodEffects<z.ZodString, string, string>;
142
- K8S: z.ZodLiteral<"false">;
143
- }, "strip", z.ZodTypeAny, {
144
- PXE_URL: string;
145
- ETHEREUM_HOSTS: string;
146
- K8S: "false";
147
- NODE_URL: string;
148
- }, {
149
- PXE_URL: string;
150
- ETHEREUM_HOSTS: string;
151
- K8S: "false";
152
- NODE_URL: string;
153
- }>;
154
- declare const envSchema: z.ZodDiscriminatedUnion<"K8S", [z.ZodObject<{
155
- ETHEREUM_SLOT_DURATION: z.ZodNumber;
156
- AZTEC_SLOT_DURATION: z.ZodNumber;
157
- AZTEC_EPOCH_DURATION: z.ZodNumber;
158
- AZTEC_PROOF_SUBMISSION_WINDOW: z.ZodNumber;
159
- INSTANCE_NAME: z.ZodString;
160
- NAMESPACE: z.ZodString;
161
- CONTAINER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
162
- CONTAINER_SEQUENCER_PORT: z.ZodDefault<z.ZodNumber>;
163
- CONTAINER_PROVER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
164
- CONTAINER_PXE_PORT: z.ZodDefault<z.ZodNumber>;
165
- CONTAINER_ETHEREUM_PORT: z.ZodDefault<z.ZodNumber>;
166
- CONTAINER_METRICS_PORT: z.ZodDefault<z.ZodNumber>;
167
- GRAFANA_PASSWORD: z.ZodOptional<z.ZodString>;
168
- METRICS_API_PATH: z.ZodDefault<z.ZodString>;
169
- SPARTAN_DIR: z.ZodString;
170
- ETHEREUM_HOSTS: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
171
- L1_ACCOUNT_MNEMONIC: z.ZodDefault<z.ZodString>;
172
- SEPOLIA_RUN: z.ZodDefault<z.ZodString>;
173
- K8S: z.ZodLiteral<"local">;
174
- }, "strip", z.ZodTypeAny, {
175
- ETHEREUM_SLOT_DURATION: number;
176
- AZTEC_SLOT_DURATION: number;
177
- AZTEC_EPOCH_DURATION: number;
178
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
179
- INSTANCE_NAME: string;
180
- NAMESPACE: string;
181
- CONTAINER_NODE_PORT: number;
182
- CONTAINER_SEQUENCER_PORT: number;
183
- CONTAINER_PROVER_NODE_PORT: number;
184
- CONTAINER_PXE_PORT: number;
185
- CONTAINER_ETHEREUM_PORT: number;
186
- CONTAINER_METRICS_PORT: number;
187
- METRICS_API_PATH: string;
188
- SPARTAN_DIR: string;
189
- L1_ACCOUNT_MNEMONIC: string;
190
- SEPOLIA_RUN: string;
191
- K8S: "local";
192
- ETHEREUM_HOSTS?: string | undefined;
193
- GRAFANA_PASSWORD?: string | undefined;
194
- }, {
195
- ETHEREUM_SLOT_DURATION: number;
196
- AZTEC_SLOT_DURATION: number;
197
- AZTEC_EPOCH_DURATION: number;
198
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
199
- INSTANCE_NAME: string;
200
- NAMESPACE: string;
201
- SPARTAN_DIR: string;
202
- K8S: "local";
203
- ETHEREUM_HOSTS?: string | undefined;
204
- CONTAINER_NODE_PORT?: number | undefined;
205
- CONTAINER_SEQUENCER_PORT?: number | undefined;
206
- CONTAINER_PROVER_NODE_PORT?: number | undefined;
207
- CONTAINER_PXE_PORT?: number | undefined;
208
- CONTAINER_ETHEREUM_PORT?: number | undefined;
209
- CONTAINER_METRICS_PORT?: number | undefined;
210
- GRAFANA_PASSWORD?: string | undefined;
211
- METRICS_API_PATH?: string | undefined;
212
- L1_ACCOUNT_MNEMONIC?: string | undefined;
213
- SEPOLIA_RUN?: string | undefined;
214
- }>, z.ZodObject<z.objectUtil.extendShape<{
215
- ETHEREUM_SLOT_DURATION: z.ZodNumber;
216
- AZTEC_SLOT_DURATION: z.ZodNumber;
217
- AZTEC_EPOCH_DURATION: z.ZodNumber;
218
- AZTEC_PROOF_SUBMISSION_WINDOW: z.ZodNumber;
219
- INSTANCE_NAME: z.ZodString;
220
- NAMESPACE: z.ZodString;
221
- CONTAINER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
222
- CONTAINER_SEQUENCER_PORT: z.ZodDefault<z.ZodNumber>;
223
- CONTAINER_PROVER_NODE_PORT: z.ZodDefault<z.ZodNumber>;
224
- CONTAINER_PXE_PORT: z.ZodDefault<z.ZodNumber>;
225
- CONTAINER_ETHEREUM_PORT: z.ZodDefault<z.ZodNumber>;
226
- CONTAINER_METRICS_PORT: z.ZodDefault<z.ZodNumber>;
227
- GRAFANA_PASSWORD: z.ZodOptional<z.ZodString>;
228
- METRICS_API_PATH: z.ZodDefault<z.ZodString>;
229
- SPARTAN_DIR: z.ZodString;
230
- ETHEREUM_HOSTS: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
231
- L1_ACCOUNT_MNEMONIC: z.ZodDefault<z.ZodString>;
232
- SEPOLIA_RUN: z.ZodDefault<z.ZodString>;
233
- K8S: z.ZodLiteral<"local">;
234
- }, {
235
- K8S: z.ZodLiteral<"gcloud">;
236
- CLUSTER_NAME: z.ZodString;
237
- REGION: z.ZodString;
238
- }>, "strip", z.ZodTypeAny, {
239
- ETHEREUM_SLOT_DURATION: number;
240
- AZTEC_SLOT_DURATION: number;
241
- AZTEC_EPOCH_DURATION: number;
242
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
243
- INSTANCE_NAME: string;
244
- NAMESPACE: string;
245
- CONTAINER_NODE_PORT: number;
246
- CONTAINER_SEQUENCER_PORT: number;
247
- CONTAINER_PROVER_NODE_PORT: number;
248
- CONTAINER_PXE_PORT: number;
249
- CONTAINER_ETHEREUM_PORT: number;
250
- CONTAINER_METRICS_PORT: number;
251
- METRICS_API_PATH: string;
252
- SPARTAN_DIR: string;
253
- L1_ACCOUNT_MNEMONIC: string;
254
- SEPOLIA_RUN: string;
255
- K8S: "gcloud";
256
- CLUSTER_NAME: string;
257
- REGION: string;
258
- ETHEREUM_HOSTS?: string | undefined;
259
- GRAFANA_PASSWORD?: string | undefined;
260
- }, {
261
- ETHEREUM_SLOT_DURATION: number;
262
- AZTEC_SLOT_DURATION: number;
263
- AZTEC_EPOCH_DURATION: number;
264
- AZTEC_PROOF_SUBMISSION_WINDOW: number;
265
- INSTANCE_NAME: string;
266
- NAMESPACE: string;
267
- SPARTAN_DIR: string;
268
- K8S: "gcloud";
269
- CLUSTER_NAME: string;
270
- REGION: string;
271
- ETHEREUM_HOSTS?: string | undefined;
272
- CONTAINER_NODE_PORT?: number | undefined;
273
- CONTAINER_SEQUENCER_PORT?: number | undefined;
274
- CONTAINER_PROVER_NODE_PORT?: number | undefined;
275
- CONTAINER_PXE_PORT?: number | undefined;
276
- CONTAINER_ETHEREUM_PORT?: number | undefined;
277
- CONTAINER_METRICS_PORT?: number | undefined;
278
- GRAFANA_PASSWORD?: string | undefined;
279
- METRICS_API_PATH?: string | undefined;
280
- L1_ACCOUNT_MNEMONIC?: string | undefined;
281
- SEPOLIA_RUN?: string | undefined;
282
- }>, z.ZodObject<{
283
- PXE_URL: z.ZodString;
284
- NODE_URL: z.ZodString;
285
- ETHEREUM_HOSTS: z.ZodEffects<z.ZodString, string, string>;
286
- K8S: z.ZodLiteral<"false">;
287
- }, "strip", z.ZodTypeAny, {
288
- PXE_URL: string;
289
- ETHEREUM_HOSTS: string;
290
- K8S: "false";
291
- NODE_URL: string;
292
- }, {
293
- PXE_URL: string;
294
- ETHEREUM_HOSTS: string;
295
- K8S: "false";
296
- NODE_URL: string;
297
- }>]>;
298
- export type K8sLocalConfig = z.infer<typeof k8sLocalConfigSchema>;
299
- export type K8sGCloudConfig = z.infer<typeof k8sGCloudConfigSchema>;
300
- export type DirectConfig = z.infer<typeof directConfigSchema>;
301
- export type EnvConfig = z.infer<typeof envSchema>;
302
- export declare function isK8sConfig(config: EnvConfig): config is K8sLocalConfig | K8sGCloudConfig;
303
- export declare function isGCloudConfig(config: EnvConfig): config is K8sGCloudConfig;
304
- export declare function setupEnvironment(env: unknown): EnvConfig;
23
+ export type TestConfig = z.infer<typeof testConfigSchema>;
24
+ export declare function setupEnvironment(env: unknown): TestConfig;
25
+ export declare function getAztecBin(): string;
26
+ /**
27
+ * Runs the Aztec binary
28
+ * @param args - The arguments to pass to the Aztec binary
29
+ * @param logger - The logger to use
30
+ * @param env - Optional environment variables to set for the process
31
+ * @returns The exit code of the Aztec binary
32
+ */
33
+ export declare function runAztecBin(args: string[], logger: Logger, env?: Record<string, string>): Promise<number>;
34
+ export declare function runProjectScript(script: string, args: string[], logger: Logger, env?: Record<string, string>): Promise<number>;
305
35
  export declare function startPortForward({ resource, namespace, containerPort, hostPort, }: {
306
36
  resource: string;
307
37
  namespace: string;
@@ -311,16 +41,26 @@ export declare function startPortForward({ resource, namespace, containerPort, h
311
41
  process: ChildProcess;
312
42
  port: number;
313
43
  }>;
44
+ export declare function startPortForwardForRPC(namespace: string): Promise<{
45
+ process: ChildProcess;
46
+ port: number;
47
+ }>;
48
+ export declare function startPortForwardForEthereum(namespace: string): Promise<{
49
+ process: ChildProcess;
50
+ port: number;
51
+ }>;
314
52
  export declare function deleteResourceByName({ resource, namespace, name, force, }: {
315
53
  resource: string;
316
54
  namespace: string;
317
55
  name: string;
318
56
  force?: boolean;
319
57
  }): Promise<string>;
320
- export declare function deleteResourceByLabel({ resource, namespace, label, }: {
58
+ export declare function deleteResourceByLabel({ resource, namespace, label, timeout, force, }: {
321
59
  resource: string;
322
60
  namespace: string;
323
61
  label: string;
62
+ timeout?: string;
63
+ force?: boolean;
324
64
  }): Promise<string>;
325
65
  export declare function waitForResourceByLabel({ resource, label, namespace, condition, timeout, }: {
326
66
  resource: string;
@@ -380,10 +120,11 @@ export declare function applyBootNodeFailure({ namespace, spartanDir, durationSe
380
120
  durationSeconds: number;
381
121
  logger: Logger;
382
122
  }): Promise<string>;
383
- export declare function applyValidatorKill({ namespace, spartanDir, logger, }: {
123
+ export declare function applyValidatorKill({ namespace, spartanDir, logger, values, }: {
384
124
  namespace: string;
385
125
  spartanDir: string;
386
126
  logger: Logger;
127
+ values?: Record<string, string | number>;
387
128
  }): Promise<string>;
388
129
  export declare function applyNetworkShaping({ valuesFile, namespace, spartanDir, logger, }: {
389
130
  valuesFile: string;
@@ -394,15 +135,23 @@ export declare function applyNetworkShaping({ valuesFile, namespace, spartanDir,
394
135
  export declare function awaitL2BlockNumber(rollupCheatCodes: RollupCheatCodes, blockNumber: bigint, timeoutSeconds: number, logger: Logger): Promise<void>;
395
136
  export declare function restartBot(namespace: string, logger: Logger): Promise<void>;
396
137
  export declare function enableValidatorDynamicBootNode(instanceName: string, namespace: string, spartanDir: string, logger: Logger): Promise<void>;
397
- export declare function runAlertCheck(config: EnvConfig, alerts: AlertConfig[], logger: Logger): Promise<void>;
398
- export declare function updateSequencerConfig(url: string, config: Partial<SequencerConfig>): Promise<void>;
399
138
  export declare function getSequencers(namespace: string): Promise<string[]>;
400
- export declare function updateK8sSequencersConfig(args: {
401
- containerPort: number;
402
- namespace: string;
403
- config: Partial<SequencerConfig>;
404
- }): Promise<void>;
405
- export declare function updateSequencersConfig(env: EnvConfig, config: Partial<SequencerConfig>): Promise<void>;
139
+ export declare function updateSequencersConfig(env: TestConfig, config: Partial<AztecNodeAdminConfig>): Promise<AztecNodeAdminConfig[]>;
140
+ export declare function getSequencersConfig(env: TestConfig): Promise<AztecNodeAdminConfig[]>;
141
+ export declare function withSequencersAdmin<T>(env: TestConfig, fn: (node: AztecNodeAdmin) => Promise<T>): Promise<T[]>;
142
+ /**
143
+ * Returns a public viem client to the eth execution node. If it was part of a local eth devnet,
144
+ * it first port-forwards the service and points to it. Otherwise, just uses the external RPC url.
145
+ */
146
+ export declare function getPublicViemClient(env: TestConfig,
147
+ /** If set, will push the new process into it */
148
+ processes?: ChildProcess[]): Promise<{
149
+ url: string;
150
+ client: ViemPublicClient;
151
+ process?: ChildProcess;
152
+ }>;
153
+ /** Queries an Aztec node for the L1 deployment addresses */
154
+ export declare function getL1DeploymentAddresses(env: TestConfig): Promise<L1ContractAddresses>;
406
155
  /**
407
156
  * Rolls the Aztec pods in the given namespace.
408
157
  * @param namespace - The namespace to roll the Aztec pods in.
@@ -411,5 +160,9 @@ export declare function updateSequencersConfig(env: EnvConfig, config: Partial<S
411
160
  * This is useful for testing, but you should be aware of the implications.
412
161
  */
413
162
  export declare function rollAztecPods(namespace: string): Promise<void>;
163
+ /**
164
+ * Returns the absolute path to the git repository root
165
+ */
166
+ export declare function getGitProjectRoot(): string;
414
167
  export {};
415
168
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spartan/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spartan/utils.ts"],"names":[],"mappings":"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"}