@@ -235,14 +235,7 @@ def assert_snapshot(before, after):
235235 assert after ["node_operators_count" ] == before ["node_operators_count" ]
236236 assert after ["active_node_operators_count" ] == before ["active_node_operators_count" ]
237237 assert after ["total_signing_keys_count" ] == before ["total_signing_keys_count" ]
238-
239- # TODO: restore this check after v3-phase2 upgrade is complete
240- # assert after["unused_signing_keys_count"] == before["unused_signing_keys_count"]
241- # Note: deposited validators count can differ due to changes in deposit distribution logic
242- # (e.g., CSM stake share limit increase from 5% to 7.5%), so we don't assert it
243- assert len (after ["unused_signing_keys_count" ]) == len (before ["unused_signing_keys_count" ])
244- for i , (before_count , after_count ) in enumerate (zip (before ["unused_signing_keys_count" ], after ["unused_signing_keys_count" ])):
245- assert almost_eq (before_count , after_count , epsilon = 8 )
238+ assert after ["unused_signing_keys_count" ] == before ["unused_signing_keys_count" ]
246239
247240 assert_signing_keys (before , after )
248241 assert_node_operators (before , after )
@@ -254,10 +247,7 @@ def assert_signing_keys(before, after):
254247 for sk_before , sk_after in zip (before ["signing_keys" ][id ], after ["signing_keys" ][id ]):
255248 assert sk_before ["key" ] == sk_after ["key" ]
256249 assert sk_before ["depositSignature" ] == sk_after ["depositSignature" ]
257- # TODO: restore this check after v3-phase2 upgrade is complete
258- # Note: 'used' status can differ due to changes in deposit distribution logic during upgrade
259- # (e.g., CSM stake share limit increase from 5% to 7.5%), so we don't assert it
260- # assert sk_before["used"] == sk_after["used"]
250+ assert sk_before ["used" ] == sk_after ["used" ]
261251
262252
263253def assert_rewards_distribution (before , after ):
@@ -267,17 +257,10 @@ def assert_rewards_distribution(before, after):
267257 for i in range (after ["active_node_operators_count" ]):
268258 assert rewards_distribution_before ["recipients" ][i ] == rewards_distribution_after ["recipients" ][i ]
269259
270- # TODO: restore this check after v3-phase2 upgrade is complete
271- # Note: Rewards distribution (shares in Wei) can differ significantly due to changes in
272- # deposit distribution logic (CSM stake share limit increase, max external ratio changes).
273- # Shares depend on the number of active validators per operator, which changes after upgrade.
274- # epsilon increased from 200k to 10^15 Wei (0.1% of 1 ETH distribution) to accommodate this
275260 assert almost_eq (
276261 rewards_distribution_before ["shares" ][i ],
277262 rewards_distribution_after ["shares" ][i ],
278- # TODO: restore this check after v3-phase2 upgrade is complete
279- # epsilon=200000, # estimated divergence is number of deposited validators
280- epsilon = 10 ** 15 , # 0.1% of 1 ETH distribution (0.001 ETH per operator max divergence)
263+ epsilon = 200000 , # estimated divergence is number of deposited validators
281264 )
282265 assert not rewards_distribution_after ["penalized" ][i ]
283266
@@ -289,26 +272,15 @@ def assert_node_operators(before: Dict[str, ReturnValue], after: Dict[str, Retur
289272 assert node_operator_before ["active" ] == node_operator_after ["active" ]
290273 assert node_operator_before ["name" ] == node_operator_after ["name" ]
291274 assert node_operator_before ["rewardAddress" ] == node_operator_after ["rewardAddress" ]
292-
293- # TODO: restore this check after v3-phase2 upgrade is complete
294- # assert node_operator_before["totalDepositedValidators"] == node_operator_after["totalDepositedValidators"]
295- # Note: deposited validators count can differ due to changes in deposit distribution logic
296- # (e.g., CSM stake share limit increase from 5% to 7.5%), so we don't assert it
297- assert almost_eq (node_operator_before ["totalDepositedValidators" ], node_operator_after ["totalDepositedValidators" ], epsilon = 8 )
275+ assert node_operator_before ["totalDepositedValidators" ] == node_operator_after ["totalDepositedValidators" ]
298276
299277 assert node_operator_before ["totalExitedValidators" ] == node_operator_after ["totalExitedValidators" ]
300278 assert node_operator_before ["totalAddedValidators" ] == node_operator_after ["totalAddedValidators" ]
301279
302280 if not node_operator_before ["active" ]:
303281 assert node_operator_after ["totalVettedValidators" ] == node_operator_after ["totalDepositedValidators" ]
304- # TODO: restore this check after v3-phase2 upgrade is complete
305- # else:
306- # assert node_operator_before["totalVettedValidators"] == node_operator_after["totalVettedValidators"]
307- # Note: vetted validators count can differ due to changes in deposit distribution logic
308- # (e.g., CSM stake share limit increase from 5% to 7.5%), so we don't assert it
309282 else :
310- assert almost_eq (node_operator_before ["totalVettedValidators" ], node_operator_after ["totalVettedValidators" ], epsilon = 8 )
311-
283+ assert node_operator_before ["totalVettedValidators" ] == node_operator_after ["totalVettedValidators" ]
312284
313285
314286def almost_eq (a , b , epsilon = 0 ):
0 commit comments