@aztec/end-to-end 4.0.0-nightly.20250907 → 4.0.0-nightly.20260108

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 (165) hide show
  1. package/dest/bench/client_flows/benchmark.d.ts +4 -3
  2. package/dest/bench/client_flows/benchmark.d.ts.map +1 -1
  3. package/dest/bench/client_flows/benchmark.js +2 -2
  4. package/dest/bench/client_flows/client_flows_benchmark.d.ts +26 -15
  5. package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
  6. package/dest/bench/client_flows/client_flows_benchmark.js +111 -90
  7. package/dest/bench/client_flows/config.d.ts +1 -1
  8. package/dest/bench/client_flows/data_extractor.d.ts +1 -1
  9. package/dest/bench/client_flows/data_extractor.js +10 -30
  10. package/dest/bench/utils.d.ts +3 -12
  11. package/dest/bench/utils.d.ts.map +1 -1
  12. package/dest/bench/utils.js +17 -37
  13. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +8 -8
  14. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
  15. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +42 -42
  16. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +13 -10
  17. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
  18. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +35 -35
  19. package/dest/e2e_deploy_contract/deploy_test.d.ts +12 -6
  20. package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
  21. package/dest/e2e_deploy_contract/deploy_test.js +9 -18
  22. package/dest/e2e_epochs/epochs_test.d.ts +20 -12
  23. package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
  24. package/dest/e2e_epochs/epochs_test.js +36 -27
  25. package/dest/e2e_fees/bridging_race.notest.d.ts +1 -1
  26. package/dest/e2e_fees/bridging_race.notest.js +14 -11
  27. package/dest/e2e_fees/fees_test.d.ts +13 -9
  28. package/dest/e2e_fees/fees_test.d.ts.map +1 -1
  29. package/dest/e2e_fees/fees_test.js +39 -40
  30. package/dest/e2e_l1_publisher/write_json.d.ts +4 -2
  31. package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -1
  32. package/dest/e2e_l1_publisher/write_json.js +9 -8
  33. package/dest/e2e_multi_validator/utils.d.ts +2 -2
  34. package/dest/e2e_multi_validator/utils.d.ts.map +1 -1
  35. package/dest/e2e_multi_validator/utils.js +4 -10
  36. package/dest/e2e_nested_contract/nested_contract_test.d.ts +7 -4
  37. package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
  38. package/dest/e2e_nested_contract/nested_contract_test.js +11 -12
  39. package/dest/e2e_p2p/inactivity_slash_test.d.ts +31 -0
  40. package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -0
  41. package/dest/e2e_p2p/inactivity_slash_test.js +136 -0
  42. package/dest/e2e_p2p/p2p_network.d.ts +238 -18
  43. package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
  44. package/dest/e2e_p2p/p2p_network.js +50 -25
  45. package/dest/e2e_p2p/shared.d.ts +16 -17
  46. package/dest/e2e_p2p/shared.d.ts.map +1 -1
  47. package/dest/e2e_p2p/shared.js +57 -56
  48. package/dest/e2e_token_contract/token_contract_test.d.ts +6 -5
  49. package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
  50. package/dest/e2e_token_contract/token_contract_test.js +14 -17
  51. package/dest/fixtures/e2e_prover_test.d.ts +13 -11
  52. package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
  53. package/dest/fixtures/e2e_prover_test.js +57 -66
  54. package/dest/fixtures/fixtures.d.ts +2 -3
  55. package/dest/fixtures/fixtures.d.ts.map +1 -1
  56. package/dest/fixtures/fixtures.js +2 -3
  57. package/dest/fixtures/get_acvm_config.d.ts +2 -2
  58. package/dest/fixtures/get_acvm_config.d.ts.map +1 -1
  59. package/dest/fixtures/get_acvm_config.js +1 -1
  60. package/dest/fixtures/get_bb_config.d.ts +2 -2
  61. package/dest/fixtures/get_bb_config.d.ts.map +1 -1
  62. package/dest/fixtures/get_bb_config.js +2 -2
  63. package/dest/fixtures/index.d.ts +1 -1
  64. package/dest/fixtures/l1_to_l2_messaging.d.ts +4 -3
  65. package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
  66. package/dest/fixtures/l1_to_l2_messaging.js +2 -2
  67. package/dest/fixtures/logging.d.ts +1 -1
  68. package/dest/fixtures/setup_p2p_test.d.ts +12 -11
  69. package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
  70. package/dest/fixtures/setup_p2p_test.js +50 -24
  71. package/dest/fixtures/snapshot_manager.d.ts +16 -15
  72. package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
  73. package/dest/fixtures/snapshot_manager.js +84 -88
  74. package/dest/fixtures/token_utils.d.ts +10 -5
  75. package/dest/fixtures/token_utils.d.ts.map +1 -1
  76. package/dest/fixtures/token_utils.js +17 -18
  77. package/dest/fixtures/utils.d.ts +44 -47
  78. package/dest/fixtures/utils.d.ts.map +1 -1
  79. package/dest/fixtures/utils.js +128 -185
  80. package/dest/fixtures/web3signer.d.ts +5 -0
  81. package/dest/fixtures/web3signer.d.ts.map +1 -0
  82. package/dest/fixtures/web3signer.js +53 -0
  83. package/dest/fixtures/with_telemetry_utils.d.ts +2 -2
  84. package/dest/fixtures/with_telemetry_utils.d.ts.map +1 -1
  85. package/dest/fixtures/with_telemetry_utils.js +2 -2
  86. package/dest/index.d.ts +1 -1
  87. package/dest/quality_of_service/alert_checker.d.ts +2 -2
  88. package/dest/quality_of_service/alert_checker.d.ts.map +1 -1
  89. package/dest/shared/cross_chain_test_harness.d.ts +20 -23
  90. package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
  91. package/dest/shared/cross_chain_test_harness.js +14 -16
  92. package/dest/shared/gas_portal_test_harness.d.ts +10 -17
  93. package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
  94. package/dest/shared/gas_portal_test_harness.js +11 -8
  95. package/dest/shared/index.d.ts +1 -1
  96. package/dest/shared/jest_setup.d.ts +1 -1
  97. package/dest/shared/jest_setup.js +1 -1
  98. package/dest/shared/submit-transactions.d.ts +6 -4
  99. package/dest/shared/submit-transactions.d.ts.map +1 -1
  100. package/dest/shared/submit-transactions.js +8 -7
  101. package/dest/shared/uniswap_l1_l2.d.ts +13 -9
  102. package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
  103. package/dest/shared/uniswap_l1_l2.js +44 -58
  104. package/dest/simulators/index.d.ts +1 -1
  105. package/dest/simulators/lending_simulator.d.ts +4 -7
  106. package/dest/simulators/lending_simulator.d.ts.map +1 -1
  107. package/dest/simulators/lending_simulator.js +8 -5
  108. package/dest/simulators/token_simulator.d.ts +4 -2
  109. package/dest/simulators/token_simulator.d.ts.map +1 -1
  110. package/dest/simulators/token_simulator.js +2 -2
  111. package/dest/spartan/setup_test_wallets.d.ts +22 -14
  112. package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
  113. package/dest/spartan/setup_test_wallets.js +144 -86
  114. package/dest/spartan/tx_metrics.d.ts +39 -0
  115. package/dest/spartan/tx_metrics.d.ts.map +1 -0
  116. package/dest/spartan/tx_metrics.js +95 -0
  117. package/dest/spartan/utils.d.ts +101 -16
  118. package/dest/spartan/utils.d.ts.map +1 -1
  119. package/dest/spartan/utils.js +414 -52
  120. package/package.json +43 -40
  121. package/src/bench/client_flows/benchmark.ts +8 -8
  122. package/src/bench/client_flows/client_flows_benchmark.ts +143 -115
  123. package/src/bench/client_flows/data_extractor.ts +9 -31
  124. package/src/bench/utils.ts +15 -39
  125. package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +46 -63
  126. package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +46 -55
  127. package/src/e2e_deploy_contract/deploy_test.ts +18 -36
  128. package/src/e2e_epochs/epochs_test.ts +59 -42
  129. package/src/e2e_fees/bridging_race.notest.ts +16 -11
  130. package/src/e2e_fees/fees_test.ts +48 -52
  131. package/src/e2e_l1_publisher/write_json.ts +12 -9
  132. package/src/e2e_multi_validator/utils.ts +5 -11
  133. package/src/e2e_nested_contract/nested_contract_test.ts +15 -13
  134. package/src/e2e_p2p/inactivity_slash_test.ts +179 -0
  135. package/src/e2e_p2p/p2p_network.ts +125 -89
  136. package/src/e2e_p2p/shared.ts +69 -60
  137. package/src/e2e_token_contract/token_contract_test.ts +17 -17
  138. package/src/fixtures/e2e_prover_test.ts +65 -105
  139. package/src/fixtures/fixtures.ts +2 -5
  140. package/src/fixtures/get_acvm_config.ts +2 -2
  141. package/src/fixtures/get_bb_config.ts +3 -2
  142. package/src/fixtures/l1_to_l2_messaging.ts +4 -2
  143. package/src/fixtures/setup_p2p_test.ts +79 -32
  144. package/src/fixtures/snapshot_manager.ts +120 -131
  145. package/src/fixtures/token_utils.ts +16 -24
  146. package/src/fixtures/utils.ts +175 -269
  147. package/src/fixtures/web3signer.ts +63 -0
  148. package/src/fixtures/with_telemetry_utils.ts +2 -2
  149. package/src/guides/up_quick_start.sh +3 -11
  150. package/src/quality_of_service/alert_checker.ts +1 -1
  151. package/src/shared/cross_chain_test_harness.ts +23 -31
  152. package/src/shared/gas_portal_test_harness.ts +14 -21
  153. package/src/shared/jest_setup.ts +1 -1
  154. package/src/shared/submit-transactions.ts +12 -8
  155. package/src/shared/uniswap_l1_l2.ts +80 -88
  156. package/src/simulators/lending_simulator.ts +9 -6
  157. package/src/simulators/token_simulator.ts +5 -2
  158. package/src/spartan/DEVELOP.md +15 -3
  159. package/src/spartan/setup_test_wallets.ts +171 -127
  160. package/src/spartan/tx_metrics.ts +130 -0
  161. package/src/spartan/utils.ts +543 -45
  162. package/dest/fixtures/setup_l1_contracts.d.ts +0 -6
  163. package/dest/fixtures/setup_l1_contracts.d.ts.map +0 -1
  164. package/dest/fixtures/setup_l1_contracts.js +0 -17
  165. package/src/fixtures/setup_l1_contracts.ts +0 -26
@@ -1,16 +1,20 @@
1
1
  import type { InitialAccountData } from '@aztec/accounts/testing';
2
- import type { AztecNodeConfig, AztecNodeService } from '@aztec/aztec-node';
3
- import { type AccountWalletWithSecretKey, AztecAddress } from '@aztec/aztec.js';
4
- import { type EmpireSlashingProposerContract, type Operator, RollupContract, type TallySlashingProposerContract, type ViemClient } from '@aztec/ethereum';
2
+ import type { AztecNodeService } from '@aztec/aztec-node';
3
+ import { AztecAddress } from '@aztec/aztec.js/addresses';
4
+ import { type EmpireSlashingProposerContract, RollupContract, type TallySlashingProposerContract } from '@aztec/ethereum/contracts';
5
+ import type { Operator } from '@aztec/ethereum/deploy-aztec-l1-contracts';
5
6
  import { ChainMonitor } from '@aztec/ethereum/test';
7
+ import type { ViemClient } from '@aztec/ethereum/types';
6
8
  import { type Logger } from '@aztec/foundation/log';
7
9
  import { SlasherAbi } from '@aztec/l1-artifacts';
8
10
  import { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
9
11
  import type { BootstrapNode } from '@aztec/p2p/bootstrap';
10
12
  import { SlashFactoryContract } from '@aztec/stdlib/l1-contracts';
11
13
  import type { PublicDataTreeLeaf } from '@aztec/stdlib/trees';
14
+ import type { TestWallet } from '@aztec/test-wallet/server';
12
15
  import { type GetContractReturnType } from 'viem';
13
16
  import { type SubsystemsContext } from '../fixtures/snapshot_manager.js';
17
+ import { type SetupOptions } from '../fixtures/utils.js';
14
18
  export declare const WAIT_FOR_TX_TIMEOUT: number;
15
19
  export declare const SHORTENED_BLOCK_TIME_CONFIG_NO_PRUNES: {
16
20
  aztecSlotDuration: number;
@@ -18,6 +22,7 @@ export declare const SHORTENED_BLOCK_TIME_CONFIG_NO_PRUNES: {
18
22
  aztecProofSubmissionWindow: number;
19
23
  };
20
24
  export declare class P2PNetworkTest {
25
+ readonly testName: string;
21
26
  bootstrapNodeEnr: string;
22
27
  bootNodePort: number;
23
28
  numberOfValidators: number;
@@ -26,20 +31,225 @@ export declare class P2PNetworkTest {
26
31
  private snapshotManager;
27
32
  baseAccountPrivateKey: `0x${string}`;
28
33
  baseAccount: {
29
- address: import("viem").Address;
34
+ address: `0x${string}`;
30
35
  nonceManager?: import("viem").NonceManager | undefined;
31
36
  sign: (parameters: {
32
- hash: import("viem").Hash;
33
- }) => Promise<import("viem").Hex>;
34
- experimental_signAuthorization: (parameters: import("viem/experimental").Authorization) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
37
+ hash: `0x${string}`;
38
+ }) => Promise<`0x${string}`>;
39
+ signAuthorization: (parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
35
40
  signMessage: ({ message }: {
36
41
  message: import("viem").SignableMessage;
37
- }) => Promise<import("viem").Hex>;
42
+ }) => Promise<`0x${string}`>;
38
43
  signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
39
44
  serializer?: serializer | undefined;
40
- } | undefined) => Promise<import("viem").IsNarrowable<import("viem").TransactionSerialized<import("viem").GetTransactionType<transaction>>, import("viem").Hex> extends true ? import("viem").TransactionSerialized<import("viem").GetTransactionType<transaction>> : import("viem").Hex>;
41
- signTypedData: <const typedData extends import("viem").TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<import("viem").Hex>;
42
- publicKey: import("viem").Hex;
45
+ } | undefined) => Promise<`0x${string}`>;
46
+ signTypedData: <const typedData extends Record<string, unknown> | {
47
+ [x: string]: readonly import("viem").TypedDataParameter[];
48
+ [x: `address[${string}]`]: undefined;
49
+ [x: `bool[${string}]`]: undefined;
50
+ [x: `bytes10[${string}]`]: undefined;
51
+ [x: `bytes11[${string}]`]: undefined;
52
+ [x: `bytes12[${string}]`]: undefined;
53
+ [x: `bytes13[${string}]`]: undefined;
54
+ [x: `bytes14[${string}]`]: undefined;
55
+ [x: `bytes15[${string}]`]: undefined;
56
+ [x: `bytes16[${string}]`]: undefined;
57
+ [x: `bytes17[${string}]`]: undefined;
58
+ [x: `bytes18[${string}]`]: undefined;
59
+ [x: `bytes19[${string}]`]: undefined;
60
+ [x: `bytes1[${string}]`]: undefined;
61
+ [x: `bytes20[${string}]`]: undefined;
62
+ [x: `bytes21[${string}]`]: undefined;
63
+ [x: `bytes22[${string}]`]: undefined;
64
+ [x: `bytes23[${string}]`]: undefined;
65
+ [x: `bytes24[${string}]`]: undefined;
66
+ [x: `bytes25[${string}]`]: undefined;
67
+ [x: `bytes26[${string}]`]: undefined;
68
+ [x: `bytes27[${string}]`]: undefined;
69
+ [x: `bytes28[${string}]`]: undefined;
70
+ [x: `bytes29[${string}]`]: undefined;
71
+ [x: `bytes2[${string}]`]: undefined;
72
+ [x: `bytes30[${string}]`]: undefined;
73
+ [x: `bytes31[${string}]`]: undefined;
74
+ [x: `bytes32[${string}]`]: undefined;
75
+ [x: `bytes3[${string}]`]: undefined;
76
+ [x: `bytes4[${string}]`]: undefined;
77
+ [x: `bytes5[${string}]`]: undefined;
78
+ [x: `bytes6[${string}]`]: undefined;
79
+ [x: `bytes7[${string}]`]: undefined;
80
+ [x: `bytes8[${string}]`]: undefined;
81
+ [x: `bytes9[${string}]`]: undefined;
82
+ [x: `bytes[${string}]`]: undefined;
83
+ [x: `function[${string}]`]: undefined;
84
+ [x: `int104[${string}]`]: undefined;
85
+ [x: `int112[${string}]`]: undefined;
86
+ [x: `int120[${string}]`]: undefined;
87
+ [x: `int128[${string}]`]: undefined;
88
+ [x: `int136[${string}]`]: undefined;
89
+ [x: `int144[${string}]`]: undefined;
90
+ [x: `int152[${string}]`]: undefined;
91
+ [x: `int160[${string}]`]: undefined;
92
+ [x: `int168[${string}]`]: undefined;
93
+ [x: `int16[${string}]`]: undefined;
94
+ [x: `int176[${string}]`]: undefined;
95
+ [x: `int184[${string}]`]: undefined;
96
+ [x: `int192[${string}]`]: undefined;
97
+ [x: `int200[${string}]`]: undefined;
98
+ [x: `int208[${string}]`]: undefined;
99
+ [x: `int216[${string}]`]: undefined;
100
+ [x: `int224[${string}]`]: undefined;
101
+ [x: `int232[${string}]`]: undefined;
102
+ [x: `int240[${string}]`]: undefined;
103
+ [x: `int248[${string}]`]: undefined;
104
+ [x: `int24[${string}]`]: undefined;
105
+ [x: `int256[${string}]`]: undefined;
106
+ [x: `int32[${string}]`]: undefined;
107
+ [x: `int40[${string}]`]: undefined;
108
+ [x: `int48[${string}]`]: undefined;
109
+ [x: `int56[${string}]`]: undefined;
110
+ [x: `int64[${string}]`]: undefined;
111
+ [x: `int72[${string}]`]: undefined;
112
+ [x: `int80[${string}]`]: undefined;
113
+ [x: `int88[${string}]`]: undefined;
114
+ [x: `int8[${string}]`]: undefined;
115
+ [x: `int96[${string}]`]: undefined;
116
+ [x: `int[${string}]`]: undefined;
117
+ [x: `string[${string}]`]: undefined;
118
+ [x: `uint104[${string}]`]: undefined;
119
+ [x: `uint112[${string}]`]: undefined;
120
+ [x: `uint120[${string}]`]: undefined;
121
+ [x: `uint128[${string}]`]: undefined;
122
+ [x: `uint136[${string}]`]: undefined;
123
+ [x: `uint144[${string}]`]: undefined;
124
+ [x: `uint152[${string}]`]: undefined;
125
+ [x: `uint160[${string}]`]: undefined;
126
+ [x: `uint168[${string}]`]: undefined;
127
+ [x: `uint16[${string}]`]: undefined;
128
+ [x: `uint176[${string}]`]: undefined;
129
+ [x: `uint184[${string}]`]: undefined;
130
+ [x: `uint192[${string}]`]: undefined;
131
+ [x: `uint200[${string}]`]: undefined;
132
+ [x: `uint208[${string}]`]: undefined;
133
+ [x: `uint216[${string}]`]: undefined;
134
+ [x: `uint224[${string}]`]: undefined;
135
+ [x: `uint232[${string}]`]: undefined;
136
+ [x: `uint240[${string}]`]: undefined;
137
+ [x: `uint248[${string}]`]: undefined;
138
+ [x: `uint24[${string}]`]: undefined;
139
+ [x: `uint256[${string}]`]: undefined;
140
+ [x: `uint32[${string}]`]: undefined;
141
+ [x: `uint40[${string}]`]: undefined;
142
+ [x: `uint48[${string}]`]: undefined;
143
+ [x: `uint56[${string}]`]: undefined;
144
+ [x: `uint64[${string}]`]: undefined;
145
+ [x: `uint72[${string}]`]: undefined;
146
+ [x: `uint80[${string}]`]: undefined;
147
+ [x: `uint88[${string}]`]: undefined;
148
+ [x: `uint8[${string}]`]: undefined;
149
+ [x: `uint96[${string}]`]: undefined;
150
+ [x: `uint[${string}]`]: undefined;
151
+ address?: undefined;
152
+ bool?: undefined;
153
+ bytes?: undefined;
154
+ bytes1?: undefined;
155
+ bytes10?: undefined;
156
+ bytes11?: undefined;
157
+ bytes12?: undefined;
158
+ bytes13?: undefined;
159
+ bytes14?: undefined;
160
+ bytes15?: undefined;
161
+ bytes16?: undefined;
162
+ bytes17?: undefined;
163
+ bytes18?: undefined;
164
+ bytes19?: undefined;
165
+ bytes2?: undefined;
166
+ bytes20?: undefined;
167
+ bytes21?: undefined;
168
+ bytes22?: undefined;
169
+ bytes23?: undefined;
170
+ bytes24?: undefined;
171
+ bytes25?: undefined;
172
+ bytes26?: undefined;
173
+ bytes27?: undefined;
174
+ bytes28?: undefined;
175
+ bytes29?: undefined;
176
+ bytes3?: undefined;
177
+ bytes30?: undefined;
178
+ bytes31?: undefined;
179
+ bytes32?: undefined;
180
+ bytes4?: undefined;
181
+ bytes5?: undefined;
182
+ bytes6?: undefined;
183
+ bytes7?: undefined;
184
+ bytes8?: undefined;
185
+ bytes9?: undefined;
186
+ int104?: undefined;
187
+ int112?: undefined;
188
+ int120?: undefined;
189
+ int128?: undefined;
190
+ int136?: undefined;
191
+ int144?: undefined;
192
+ int152?: undefined;
193
+ int16?: undefined;
194
+ int160?: undefined;
195
+ int168?: undefined;
196
+ int176?: undefined;
197
+ int184?: undefined;
198
+ int192?: undefined;
199
+ int200?: undefined;
200
+ int208?: undefined;
201
+ int216?: undefined;
202
+ int224?: undefined;
203
+ int232?: undefined;
204
+ int24?: undefined;
205
+ int240?: undefined;
206
+ int248?: undefined;
207
+ int256?: undefined;
208
+ int32?: undefined;
209
+ int40?: undefined;
210
+ int48?: undefined;
211
+ int56?: undefined;
212
+ int64?: undefined;
213
+ int72?: undefined;
214
+ int8?: undefined;
215
+ int80?: undefined;
216
+ int88?: undefined;
217
+ int96?: undefined;
218
+ string?: undefined;
219
+ uint104?: undefined;
220
+ uint112?: undefined;
221
+ uint120?: undefined;
222
+ uint128?: undefined;
223
+ uint136?: undefined;
224
+ uint144?: undefined;
225
+ uint152?: undefined;
226
+ uint16?: undefined;
227
+ uint160?: undefined;
228
+ uint168?: undefined;
229
+ uint176?: undefined;
230
+ uint184?: undefined;
231
+ uint192?: undefined;
232
+ uint200?: undefined;
233
+ uint208?: undefined;
234
+ uint216?: undefined;
235
+ uint224?: undefined;
236
+ uint232?: undefined;
237
+ uint24?: undefined;
238
+ uint240?: undefined;
239
+ uint248?: undefined;
240
+ uint256?: undefined;
241
+ uint32?: undefined;
242
+ uint40?: undefined;
243
+ uint48?: undefined;
244
+ uint56?: undefined;
245
+ uint64?: undefined;
246
+ uint72?: undefined;
247
+ uint8?: undefined;
248
+ uint80?: undefined;
249
+ uint88?: undefined;
250
+ uint96?: undefined;
251
+ }, primaryType extends "EIP712Domain" | keyof typedData = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<`0x${string}`>;
252
+ publicKey: `0x${string}`;
43
253
  source: "privateKey";
44
254
  type: "local";
45
255
  };
@@ -52,20 +262,19 @@ export declare class P2PNetworkTest {
52
262
  validators: Operator[];
53
263
  deployedAccounts: InitialAccountData[];
54
264
  prefilledPublicData: PublicDataTreeLeaf[];
55
- wallet?: AccountWalletWithSecretKey;
265
+ wallet?: TestWallet;
56
266
  defaultAccountAddress?: AztecAddress;
57
267
  spamContract?: SpamContract;
58
268
  bootstrapNode?: BootstrapNode;
59
- constructor(testName: string, bootstrapNodeEnr: string, bootNodePort: number, numberOfValidators: number, initialValidatorConfig: AztecNodeConfig, numberOfNodes?: number, metricsPort?: number | undefined, startProverNode?: boolean, mockZkPassportVerifier?: boolean);
60
- static create({ testName, numberOfNodes, numberOfValidators, basePort, metricsPort, initialConfig, startProverNode, mockZkPassportVerifier, }: {
269
+ constructor(testName: string, bootstrapNodeEnr: string, bootNodePort: number, numberOfValidators: number, initialValidatorConfig: SetupOptions, numberOfNodes?: number, metricsPort?: number | undefined, startProverNode?: boolean);
270
+ static create({ testName, numberOfNodes, numberOfValidators, basePort, metricsPort, initialConfig, startProverNode }: {
61
271
  testName: string;
62
272
  numberOfNodes: number;
63
273
  numberOfValidators: number;
64
274
  basePort?: number;
65
275
  metricsPort?: number;
66
- initialConfig?: Partial<AztecNodeConfig>;
276
+ initialConfig?: SetupOptions;
67
277
  startProverNode?: boolean;
68
- mockZkPassportVerifier?: boolean;
69
278
  }): Promise<P2PNetworkTest>;
70
279
  get fundedAccount(): InitialAccountData;
71
280
  addBootstrapNode(): Promise<void>;
@@ -78,11 +287,22 @@ export declare class P2PNetworkTest {
78
287
  removeInitialNode(): Promise<void>;
79
288
  sendDummyTx(): Promise<{
80
289
  receipt: import("viem").TransactionReceipt;
81
- gasPrice: import("@aztec/ethereum").GasPrice;
290
+ state: import("@aztec/ethereum/l1-tx-utils").L1TxState;
82
291
  }>;
83
292
  private _sendDummyTx;
84
293
  setup(): Promise<void>;
85
294
  stopNodes(nodes: AztecNodeService[]): Promise<void>;
295
+ /**
296
+ * Wait for P2P mesh to be fully formed across all nodes.
297
+ * This ensures that all nodes are connected to each other before proceeding,
298
+ * preventing race conditions where validators propose blocks before the network is ready.
299
+ *
300
+ * @param nodes - Array of nodes to check for P2P connectivity
301
+ * @param expectedNodeCount - Expected number of nodes in the network (defaults to nodes.length)
302
+ * @param timeoutSeconds - Maximum time to wait for connections (default: 30 seconds)
303
+ * @param checkIntervalSeconds - How often to check connectivity (default: 0.1 seconds)
304
+ */
305
+ waitForP2PMeshConnectivity(nodes: AztecNodeService[], expectedNodeCount?: number, timeoutSeconds?: number, checkIntervalSeconds?: number): Promise<void>;
86
306
  teardown(): Promise<void>;
87
307
  getContracts(): Promise<{
88
308
  rollup: RollupContract;
@@ -91,4 +311,4 @@ export declare class P2PNetworkTest {
91
311
  slashFactory: SlashFactoryContract;
92
312
  }>;
93
313
  }
94
- //# sourceMappingURL=p2p_network.d.ts.map
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwX25ldHdvcmsuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lMmVfcDJwL3AycF9uZXR3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQW1CLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBYyxNQUFNLDJCQUEyQixDQUFDO0FBR3JFLE9BQU8sRUFDTCxLQUFLLDhCQUE4QixFQUVuQyxjQUFjLEVBQ2QsS0FBSyw2QkFBNkIsRUFDbkMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUkxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQTRCLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR2xGLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQWEsVUFBVSxFQUFnQixNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRSxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUcxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTVELE9BQU8sRUFBRSxLQUFLLHFCQUFxQixFQUEyQixNQUFNLE1BQU0sQ0FBQztBQVEzRSxPQUFPLEVBRUwsS0FBSyxpQkFBaUIsRUFHdkIsTUFB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
@@ -1 +1 @@
1
- {"version":3,"file":"p2p_network.d.ts","sourceRoot":"","sources":["../../src/e2e_p2p/p2p_network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p2p_network.d.ts","sourceRoot":"","sources":["../../src/e2e_p2p/p2p_network.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
- import { getSchnorrWalletWithSecretKey } from '@aztec/accounts/schnorr';
2
- import { EthAddress, Fr } from '@aztec/aztec.js';
3
- import { GSEContract, MultiAdderArtifact, RollupContract, createL1TxUtilsFromViemWallet, deployL1Contract, getL1ContractsConfigEnvVars } from '@aztec/ethereum';
1
+ import { EthAddress } from '@aztec/aztec.js/addresses';
2
+ import { Fr } from '@aztec/aztec.js/fields';
3
+ import { getL1ContractsConfigEnvVars } from '@aztec/ethereum/config';
4
+ import { GSEContract, RollupContract } from '@aztec/ethereum/contracts';
5
+ import { deployL1Contract } from '@aztec/ethereum/deploy-l1-contract';
6
+ import { MultiAdderArtifact } from '@aztec/ethereum/l1-artifacts';
7
+ import { createL1TxUtilsFromViemWallet } from '@aztec/ethereum/l1-tx-utils';
4
8
  import { ChainMonitor } from '@aztec/ethereum/test';
9
+ import { EpochNumber } from '@aztec/foundation/branded-types';
5
10
  import { SecretValue } from '@aztec/foundation/config';
6
11
  import { createLogger } from '@aztec/foundation/log';
12
+ import { retryUntil } from '@aztec/foundation/retry';
7
13
  import { RollupAbi, SlasherAbi, TestERC20Abi } from '@aztec/l1-artifacts';
8
14
  import { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
9
15
  import { createBootstrapNodeFromPrivateKey, getBootstrapNodeEnr } from '@aztec/p2p/test-helpers';
@@ -28,6 +34,7 @@ export const SHORTENED_BLOCK_TIME_CONFIG_NO_PRUNES = {
28
34
  aztecProofSubmissionWindow: 640
29
35
  };
30
36
  export class P2PNetworkTest {
37
+ testName;
31
38
  bootstrapNodeEnr;
32
39
  bootNodePort;
33
40
  numberOfValidators;
@@ -51,7 +58,8 @@ export class P2PNetworkTest {
51
58
  spamContract;
52
59
  bootstrapNode;
53
60
  constructor(testName, bootstrapNodeEnr, bootNodePort, numberOfValidators, initialValidatorConfig, numberOfNodes = 0, // If set enable metrics collection
54
- metricsPort, startProverNode, mockZkPassportVerifier){
61
+ metricsPort, startProverNode){
62
+ this.testName = testName;
55
63
  this.bootstrapNodeEnr = bootstrapNodeEnr;
56
64
  this.bootNodePort = bootNodePort;
57
65
  this.numberOfValidators = numberOfValidators;
@@ -79,7 +87,6 @@ export class P2PNetworkTest {
79
87
  slashingRoundSizeInEpochs: initialValidatorConfig.slashingRoundSizeInEpochs ?? l1ContractsConfig.slashingRoundSizeInEpochs,
80
88
  slasherFlavor: initialValidatorConfig.slasherFlavor ?? 'tally',
81
89
  aztecTargetCommitteeSize: numberOfValidators,
82
- salt: 420,
83
90
  metricsPort: metricsPort,
84
91
  numberOfInitialFundedAccounts: 2,
85
92
  startProverNode
@@ -94,18 +101,17 @@ export class P2PNetworkTest {
94
101
  aztecTargetCommitteeSize: numberOfValidators,
95
102
  initialValidators: [],
96
103
  zkPassportArgs: {
97
- mockZkPassportVerifier,
98
104
  zkPassportDomain: zkPassportParams.domain,
99
105
  zkPassportScope: zkPassportParams.scope
100
106
  }
101
107
  });
102
108
  }
103
- static async create({ testName, numberOfNodes, numberOfValidators, basePort, metricsPort, initialConfig, startProverNode, mockZkPassportVerifier }) {
109
+ static async create({ testName, numberOfNodes, numberOfValidators, basePort, metricsPort, initialConfig, startProverNode }) {
104
110
  const port = basePort || await getPort();
105
111
  const bootstrapNodeENR = await getBootstrapNodeEnr(BOOTSTRAP_NODE_PRIVATE_KEY, port);
106
112
  const bootstrapNodeEnr = bootstrapNodeENR.encodeTxt();
107
113
  const initialValidatorConfig = await createValidatorConfig(initialConfig ?? {}, bootstrapNodeEnr);
108
- return new P2PNetworkTest(testName, bootstrapNodeEnr, port, numberOfValidators, initialValidatorConfig, numberOfNodes, metricsPort, startProverNode, mockZkPassportVerifier);
114
+ return new P2PNetworkTest(testName, bootstrapNodeEnr, port, numberOfValidators, initialValidatorConfig, numberOfNodes, metricsPort, startProverNode);
109
115
  }
110
116
  get fundedAccount() {
111
117
  if (!this.deployedAccounts[0]) {
@@ -115,7 +121,7 @@ export class P2PNetworkTest {
115
121
  }
116
122
  async addBootstrapNode() {
117
123
  await this.snapshotManager.snapshot('add-bootstrap-node', async ({ aztecNodeConfig })=>{
118
- const telemetry = getEndToEndTestTelemetryClient(this.metricsPort);
124
+ const telemetry = await getEndToEndTestTelemetryClient(this.metricsPort);
119
125
  this.bootstrapNode = await createBootstrapNodeFromPrivateKey(BOOTSTRAP_NODE_PRIVATE_KEY, this.bootNodePort, telemetry, aztecNodeConfig);
120
126
  // Overwrite enr with updated info
121
127
  this.bootstrapNodeEnr = this.bootstrapNode.getENR().encodeTxt();
@@ -139,7 +145,7 @@ export class P2PNetworkTest {
139
145
  }
140
146
  async applyBaseSnapshots() {
141
147
  await this.addBootstrapNode();
142
- await this.snapshotManager.snapshot('add-validators', async ({ deployL1ContractsValues, dateProvider, cheatCodes })=>{
148
+ await this.snapshotManager.snapshot('add-validators', async ({ deployL1ContractsValues, cheatCodes })=>{
143
149
  const rollup = getContract({
144
150
  address: deployL1ContractsValues.l1ContractAddresses.rollupAddress.toString(),
145
151
  abi: RollupAbi,
@@ -160,7 +166,7 @@ export class P2PNetworkTest {
160
166
  abi: MultiAdderArtifact.contractAbi,
161
167
  client: deployL1ContractsValues.l1Client
162
168
  });
163
- const stakeNeeded = l1ContractsConfig.activationThreshold * BigInt(this.numberOfValidators);
169
+ const stakeNeeded = await rollup.read.getActivationThreshold() * BigInt(this.numberOfValidators);
164
170
  await Promise.all([
165
171
  await stakingAsset.write.mint([
166
172
  multiAdder.address,
@@ -190,22 +196,17 @@ export class P2PNetworkTest {
190
196
  validatorTuples
191
197
  ])
192
198
  });
193
- const timestamp = await cheatCodes.rollup.advanceToEpoch(2n, {
194
- updateDateProvider: dateProvider
195
- });
199
+ await cheatCodes.rollup.advanceToEpoch(EpochNumber.fromBigInt(BigInt(await cheatCodes.rollup.getEpoch()) + await rollup.read.getLagInEpochsForValidatorSet() + 1n));
196
200
  // Send and await a tx to make sure we mine a block for the warp to correctly progress.
197
201
  await this._sendDummyTx(deployL1ContractsValues.l1Client);
198
- // Set the system time in the node, only after we have warped the time and waited for a block
199
- // Time is only set in the NEXT block
200
- dateProvider.setTime(Number(timestamp) * 1000);
201
202
  });
202
203
  }
203
204
  async setupAccount() {
204
- await this.snapshotManager.snapshot('setup-account', deployAccounts(1, this.logger, false), async ({ deployedAccounts }, { pxe })=>{
205
+ await this.snapshotManager.snapshot('setup-account', deployAccounts(1, this.logger), ({ deployedAccounts }, { wallet })=>{
205
206
  this.deployedAccounts = deployedAccounts;
206
- const [account] = deployedAccounts;
207
- this.wallet = await getSchnorrWalletWithSecretKey(pxe, account.secret, account.signingKey, account.salt);
208
- this.defaultAccountAddress = this.wallet.getAddress();
207
+ [{ address: this.defaultAccountAddress }] = deployedAccounts;
208
+ this.wallet = wallet;
209
+ return Promise.resolve();
209
210
  });
210
211
  }
211
212
  async deploySpamContract() {
@@ -219,11 +220,12 @@ export class P2PNetworkTest {
219
220
  return {
220
221
  contractAddress: spamContract.address
221
222
  };
222
- }, async ({ contractAddress })=>{
223
+ }, ({ contractAddress })=>{
223
224
  if (!this.wallet) {
224
225
  throw new Error('Call snapshot t.setupAccount before deploying account contract');
225
226
  }
226
- this.spamContract = await SpamContract.at(contractAddress, this.wallet);
227
+ this.spamContract = SpamContract.at(contractAddress, this.wallet);
228
+ return Promise.resolve();
227
229
  });
228
230
  }
229
231
  async removeInitialNode() {
@@ -269,6 +271,29 @@ export class P2PNetworkTest {
269
271
  await Promise.all(nodes.map((node)=>node.stop()));
270
272
  this.logger.info('Nodes stopped');
271
273
  }
274
+ /**
275
+ * Wait for P2P mesh to be fully formed across all nodes.
276
+ * This ensures that all nodes are connected to each other before proceeding,
277
+ * preventing race conditions where validators propose blocks before the network is ready.
278
+ *
279
+ * @param nodes - Array of nodes to check for P2P connectivity
280
+ * @param expectedNodeCount - Expected number of nodes in the network (defaults to nodes.length)
281
+ * @param timeoutSeconds - Maximum time to wait for connections (default: 30 seconds)
282
+ * @param checkIntervalSeconds - How often to check connectivity (default: 0.1 seconds)
283
+ */ async waitForP2PMeshConnectivity(nodes, expectedNodeCount, timeoutSeconds = 30, checkIntervalSeconds = 0.1) {
284
+ const nodeCount = expectedNodeCount ?? nodes.length;
285
+ const minPeerCount = nodeCount - 1;
286
+ this.logger.warn(`Waiting for all ${nodeCount} nodes to connect to P2P mesh (at least ${minPeerCount} peers each)...`);
287
+ await Promise.all(nodes.map(async (node, index)=>{
288
+ const p2p = node.getP2P();
289
+ await retryUntil(async ()=>{
290
+ const peers = await p2p.getPeers();
291
+ // Each node should be connected to at least N-1 other nodes
292
+ return peers.length >= minPeerCount ? true : undefined;
293
+ }, `Node ${index} to connect to at least ${minPeerCount} peers`, timeoutSeconds, checkIntervalSeconds);
294
+ }));
295
+ this.logger.warn('All nodes connected to P2P mesh');
296
+ }
272
297
  async teardown() {
273
298
  await this.monitor.stop();
274
299
  await tryStop(this.bootstrapNode, this.logger);
@@ -276,11 +301,11 @@ export class P2PNetworkTest {
276
301
  }
277
302
  async getContracts() {
278
303
  if (!this.ctx.deployL1ContractsValues) {
279
- throw new Error('DeployL1ContractsValues not set');
304
+ throw new Error('DeployAztecL1ContractsValues not set');
280
305
  }
281
306
  const rollup = new RollupContract(this.ctx.deployL1ContractsValues.l1Client, this.ctx.deployL1ContractsValues.l1ContractAddresses.rollupAddress);
282
307
  const slasherContract = getContract({
283
- address: getAddress(await rollup.getSlasher()),
308
+ address: getAddress((await rollup.getSlasherAddress()).toString()),
284
309
  abi: SlasherAbi,
285
310
  client: this.ctx.deployL1ContractsValues.l1Client
286
311
  });
@@ -1,39 +1,37 @@
1
1
  import type { InitialAccountData } from '@aztec/accounts/testing';
2
2
  import type { AztecNodeService } from '@aztec/aztec-node';
3
- import { AztecAddress, type Logger, ProvenTx, type SentTx } from '@aztec/aztec.js';
3
+ import { AztecAddress } from '@aztec/aztec.js/addresses';
4
+ import { type SentTx } from '@aztec/aztec.js/contracts';
5
+ import type { Logger } from '@aztec/aztec.js/log';
6
+ import { Tx } from '@aztec/aztec.js/tx';
4
7
  import type { RollupCheatCodes } from '@aztec/aztec/testing';
5
- import type { EmpireSlashingProposerContract, RollupContract, TallySlashingProposerContract } from '@aztec/ethereum';
6
- import type { TestDateProvider } from '@aztec/foundation/timer';
8
+ import type { EmpireSlashingProposerContract, RollupContract, TallySlashingProposerContract } from '@aztec/ethereum/contracts';
7
9
  import type { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
8
- import { PXEService } from '@aztec/pxe/server';
9
10
  import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
10
11
  import type { SlashFactoryContract } from '@aztec/stdlib/l1-contracts';
11
- import type { NodeContext } from '../fixtures/setup_p2p_test.js';
12
12
  export declare const submitComplexTxsTo: (logger: Logger, from: AztecAddress, spamContract: SpamContract, numTxs: number, opts?: {
13
- callPublic?: boolean;
13
+ callPublic?: boolean | undefined;
14
14
  }) => Promise<SentTx[]>;
15
- export declare const createPXEServiceAndSubmitTransactions: (logger: Logger, node: AztecNodeService, numTxs: number, fundedAccount: InitialAccountData) => Promise<NodeContext>;
16
- export declare function createPXEServiceAndPrepareTransactions(logger: Logger, node: AztecNodeService, numTxs: number, fundedAccount: InitialAccountData): Promise<{
17
- pxeService: PXEService;
18
- txs: ProvenTx[];
19
- node: AztecNodeService;
20
- }>;
15
+ export declare const submitTransactions: (logger: Logger, node: AztecNodeService, numTxs: number, fundedAccount: InitialAccountData) => Promise<SentTx[]>;
16
+ export declare function prepareTransactions(logger: Logger, node: AztecNodeService, numTxs: number, fundedAccount: InitialAccountData): Promise<Tx[]>;
21
17
  export declare function awaitProposalExecution(slashingProposer: EmpireSlashingProposerContract | TallySlashingProposerContract, timeoutSeconds: number, logger: Logger): Promise<bigint>;
22
- export declare function awaitCommitteeExists({ rollup, logger, }: {
18
+ export declare function awaitCommitteeExists({ rollup, logger }: {
23
19
  rollup: RollupContract;
24
20
  logger: Logger;
25
21
  }): Promise<readonly `0x${string}`[]>;
26
- export declare function awaitOffenseDetected({ logger, nodeAdmin, slashingRoundSize, epochDuration, }: {
22
+ export declare function awaitOffenseDetected({ logger, nodeAdmin, slashingRoundSize, epochDuration, waitUntilOffenseCount, timeoutSeconds }: {
27
23
  nodeAdmin: AztecNodeAdmin;
28
24
  logger: Logger;
29
25
  slashingRoundSize: number;
30
26
  epochDuration: number;
27
+ waitUntilOffenseCount?: number;
28
+ timeoutSeconds?: number;
31
29
  }): Promise<import("@aztec/slasher").Offense[]>;
32
30
  /**
33
31
  * Await the committee to be slashed out of the validator set.
34
32
  * Currently assumes that the committee is the same size as the validator set.
35
33
  */
36
- export declare function awaitCommitteeKicked({ rollup, cheatCodes, committee, slashFactory, slashingProposer, slashingRoundSize, aztecSlotDuration, logger, dateProvider, }: {
34
+ export declare function awaitCommitteeKicked({ rollup, cheatCodes, committee, slashFactory, slashingProposer, slashingRoundSize, aztecSlotDuration, aztecEpochDuration, logger, offenseEpoch }: {
37
35
  rollup: RollupContract;
38
36
  cheatCodes: RollupCheatCodes;
39
37
  committee: readonly `0x${string}`[];
@@ -41,7 +39,8 @@ export declare function awaitCommitteeKicked({ rollup, cheatCodes, committee, sl
41
39
  slashingProposer: EmpireSlashingProposerContract | TallySlashingProposerContract | undefined;
42
40
  slashingRoundSize: number;
43
41
  aztecSlotDuration: number;
44
- dateProvider: TestDateProvider;
42
+ aztecEpochDuration: number;
45
43
  logger: Logger;
44
+ offenseEpoch: number;
46
45
  }): Promise<void>;
47
- //# sourceMappingURL=shared.d.ts.map
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZTJlX3AycC9zaGFyZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQThDLE1BQU0sMkJBQTJCLENBQUM7QUFFcEcsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEVBQUUsRUFBWSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQ1YsOEJBQThCLEVBQzlCLGNBQWMsRUFDZCw2QkFBNkIsRUFDOUIsTUFBTSwyQkFBMkIsQ0FBQztBQU1uQyxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUl2RSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBTXZFLGVBQU8sTUFBTSxrQkFBa0I7O3VCQTJCOUIsQ0FBQztBQUdGLGVBQU8sTUFBTSxrQkFBa0Isa0hBVzlCLENBQUM7QUFFRix3QkFBc0IsbUJBQW1CLENBQ3ZDLE1BQU0sRUFBRSxNQUFNLEVBQ2QsSUFBSSxFQUFFLGdCQUFnQixFQUN0QixNQUFNLEVBQUUsTUFBTSxFQUNkLGFBQWEsRUFBRSxrQkFBa0IsR0FDaEMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBcUJmO0FBRUQsd0JBQWdCLHNCQUFzQixDQUNwQyxnQkFBZ0IsRUFBRSw4QkFBOEIsR0FBRyw2QkFBNkIsRUFDaEYsY0FBYyxFQUFFLE1BQU0sRUFDdEIsTUFBTSxFQUFFLE1BQU0sR0FDYixPQUFPLENBQUMsTUFBTSxDQUFDLENBMEJqQjtBQUVELHdCQUFzQixvQkFBb0IsQ0FBQyxFQUN6QyxNQUFNLEVBQ04sTUFBTSxFQUNQLEVBQUU7SUFDRCxNQUFNLEVBQUUsY0FBYyxDQUFDO0lBQ3ZCLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDaEIsR0FBRyxPQUFPLENBQUMsU0FBUyxLQUFLLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FZcEM7QUFFRCx3QkFBc0Isb0JBQW9CLENBQUMsRUFDekMsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsYUFBYSxFQUNiLHFCQUFxQixFQUNyQixjQUFvQixFQUNyQixFQUFFO0lBQ0QsU0FBUyxFQUFFLGNBQWMsQ0FBQztJQUMxQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIscUJBQXFCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDL0IsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ3pCLCtDQWtCQTtBQUVEOzs7R0FHRztBQUNILHdCQUFzQixvQkFBb0IsQ0FBQyxFQUN6QyxNQUFNLEVBQ04sVUFBVSxFQUNWLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLE1BQU0sRUFDTixZQUFZLEVBQ2IsRUFBRTtJQUNELE1BQU0sRUFBRSxjQUFjLENBQUM7SUFDdkIsVUFBVSxFQUFFLGdCQUFnQixDQUFDO0lBQzdCLFNBQVMsRUFBRSxTQUFTLEtBQUssTUFBTSxFQUFFLEVBQUUsQ0FBQztJQUNwQyxZQUFZLEVBQUUsb0JBQW9CLENBQUM7SUFDbkMsZ0JBQWdCLEVBQUUsOEJBQThCLEdBQUcsNkJBQTZCLEdBQUcsU0FBUyxDQUFDO0lBQzdGLGlCQUFpQixFQUFFLE1BQU0sQ0FBQztJQUMxQixpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsa0JBQWtCLEVBQUUsTUFBTSxDQUFDO0lBQzNCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixZQUFZLEVBQUUsTUFBTSxDQUFDO0NBQ3RCLGlCQTZFQSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/e2e_p2p/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/e2e_p2p/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,KAAK,MAAM,EAA8C,MAAM,2BAA2B,CAAC;AAEpG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,EAAE,EAAY,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EACV,8BAA8B,EAC9B,cAAc,EACd,6BAA6B,EAC9B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAIvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAMvE,eAAO,MAAM,kBAAkB;;uBA2B9B,CAAC;AAGF,eAAO,MAAM,kBAAkB,kHAW9B,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,kBAAkB,GAChC,OAAO,CAAC,EAAE,EAAE,CAAC,CAqBf;AAED,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,8BAA8B,GAAG,6BAA6B,EAChF,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CA0BjB;AAED,wBAAsB,oBAAoB,CAAC,EACzC,MAAM,EACN,MAAM,EACP,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,SAAS,KAAK,MAAM,EAAE,EAAE,CAAC,CAYpC;AAED,wBAAsB,oBAAoB,CAAC,EACzC,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,cAAoB,EACrB,EAAE;IACD,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,+CAkBA;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,MAAM,EACN,UAAU,EACV,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,MAAM,EACN,YAAY,EACb,EAAE;IACD,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,SAAS,EAAE,SAAS,KAAK,MAAM,EAAE,EAAE,CAAC;IACpC,YAAY,EAAE,oBAAoB,CAAC;IACnC,gBAAgB,EAAE,8BAA8B,GAAG,6BAA6B,GAAG,SAAS,CAAC;IAC7F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB,iBA6EA"}