Skip to content

Commit e149d64

Browse files
authored
Merge pull request #724 from lidofinance/feat/remove-burn-and-force-exit
Feat: remove shares burn and remove force exit predicate
2 parents 701306d + 3e39ec0 commit e149d64

File tree

4 files changed

+38
-30
lines changed

4 files changed

+38
-30
lines changed

src/modules/accounting/accounting.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,8 +302,9 @@ def simulate_rebase_after_report(
302302
)
303303

304304
def get_shares_to_burn(self, blockstamp: ReferenceBlockStamp) -> int:
305-
shares_data = self.w3.lido_contracts.burner.get_shares_requested_to_burn(blockstamp.block_hash)
306-
return shares_data.cover_shares + shares_data.non_cover_shares
305+
# shares_data = self.w3.lido_contracts.burner.get_shares_requested_to_burn(blockstamp.block_hash)
306+
# return shares_data.cover_shares + shares_data.non_cover_shares
307+
return 0
307308

308309
def _get_slots_elapsed_from_last_report(self, blockstamp: ReferenceBlockStamp):
309310
chain_conf = self.get_chain_config(blockstamp)

src/services/exit_order_iterator.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -270,10 +270,11 @@ def _no_predicate(self, node_operator: NodeOperatorStats) -> tuple:
270270

271271
@staticmethod
272272
def _no_force_predicate(node_operator: NodeOperatorStats) -> int:
273-
return ValidatorExitIterator._get_expected_validators_diff(
274-
node_operator.predictable_validators,
275-
node_operator.force_exit_to,
276-
)
273+
# return ValidatorExitIterator._get_expected_validators_diff(
274+
# node_operator.predictable_validators,
275+
# node_operator.force_exit_to,
276+
# )
277+
return 0
277278

278279
@staticmethod
279280
def _no_soft_predicate(node_operator: NodeOperatorStats) -> int:

tests/modules/accounting/test_accounting_module.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -416,9 +416,9 @@ def test_get_shares_to_burn(
416416
out = accounting.get_shares_to_burn(bs)
417417

418418
assert (
419-
out == shares_data.cover_shares + shares_data.non_cover_shares
419+
out == 0 # shares_data.cover_shares + shares_data.non_cover_shares
420420
), "get_shares_to_burn returned unexpected value"
421-
call_mock.assert_called_once()
421+
# call_mock.assert_called_once()
422422

423423

424424
@pytest.mark.unit

tests/modules/ejector/test_validator_exit_order_iterator.py

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -194,9 +194,9 @@ def test_eject_validator(iterator):
194194

195195
force_list = ejector.get_remaining_forced_validators()
196196

197-
assert len(force_list) == 2
198-
assert force_list[0][0] == (1, 1)
199-
assert force_list[1][0] == (1, 1)
197+
assert len(force_list) == 0
198+
# assert force_list[0][0] == (1, 1)
199+
# assert force_list[1][0] == (1, 1)
200200

201201

202202
@pytest.mark.unit
@@ -227,7 +227,8 @@ def test_no_predicate(iterator):
227227

228228
result = iterator._no_predicate(node_operator_1)
229229

230-
assert result == (1, -50, -75, -185, 0, -100, 10)
230+
assert result == (1, 0, -75, -185, 0, -100, 10)
231+
# assert result == (1, -50, -75, -185, 0, -100, 10)
231232

232233
node_operator_2 = NodeOperatorStatsFactory.build(
233234
predictable_validators=2000,
@@ -244,23 +245,27 @@ def test_no_predicate(iterator):
244245
)
245246

246247
result = iterator._no_predicate(node_operator_2)
247-
assert result == (0, -1950, -1975, -185, -1000, -2000, 20)
248+
assert result == (0, 0, -1975, -185, -1000, -2000, 20)
249+
# assert result == (0, -1950, -1975, -185, -1000, -2000, 20)
248250

249251
iterator.consensus_version = 3
250252
iterator.w3.cc.is_electra_activated = Mock(return_value=False)
251253

252254
# Check works with old alg before pectra
253255
result = iterator._no_predicate(node_operator_2)
254-
assert result == (0, -1950, -1975, -185, -1000, -2000, 20)
256+
assert result == (0, 0, -1975, -185, -1000, -2000, 20)
257+
# assert result == (0, -1950, -1975, -185, -1000, -2000, 20)
255258

256259
iterator.w3.cc.is_electra_activated = Mock(return_value=True)
257260

258261
# Check after pectra
259262
result = iterator._no_predicate(node_operator_2)
260-
assert result == (0, -1950, -1975, -185, 0, -2000, 20)
263+
assert result == (0, 0, -1975, -185, 0, -2000, 20)
264+
# assert result == (0, -1950, -1975, -185, 0, -2000, 20)
261265

262266
result = iterator._no_predicate(node_operator_1)
263-
assert result == (1, -50, -75, -185, -1000, -100, 10)
267+
assert result == (1, 0, -75, -185, -1000, -100, 10)
268+
# assert result == (1, -50, -75, -185, -1000, -100, 10)
264269

265270

266271
@pytest.mark.unit
@@ -273,17 +278,17 @@ def test_no_force_and_soft_predicate(iterator):
273278
]
274279

275280
# Priority to bigger diff exitable - forced_to
276-
sorted_nos = sorted(nos, key=lambda x: -iterator._no_force_predicate(x))
281+
# sorted_nos = sorted(nos, key=lambda x: -iterator._no_force_predicate(x))
277282

278-
assert [nos[0], nos[3], nos[1], nos[2]] == sorted_nos
283+
# assert [nos[0], nos[3], nos[1], nos[2]] == sorted_nos
279284

280285
# Last two elements have same weight
281-
assert [
282-
nos[0].node_operator.id,
283-
nos[3].node_operator.id,
284-
] == [
285-
no.node_operator.id for no in sorted_nos
286-
][:2]
286+
# assert [
287+
# nos[0].node_operator.id,
288+
# nos[3].node_operator.id,
289+
# ] == [
290+
# no.node_operator.id for no in sorted_nos
291+
# ][:2]
287292

288293
sorted_nos = sorted(nos, key=lambda x: -iterator._no_soft_predicate(x))
289294
assert [
@@ -419,19 +424,20 @@ def _eject(self, gid):
419424

420425
vals = iterator.get_remaining_forced_validators()
421426

422-
assert len(vals) == 3
427+
assert len(vals) == 0
428+
# assert len(vals) == 3
423429

424-
assert vals[0][1].index == 3
425-
assert vals[1][1].index == 4
426-
assert vals[2][1].index == 5
430+
# assert vals[0][1].index == 3
431+
# assert vals[1][1].index == 4
432+
# assert vals[2][1].index == 5
427433

428434
iterator.node_operators_stats[1, 2].predictable_validators = 11
429-
430435
iterator.max_validators_to_exit = 10
431436
iterator.index = 9
432437

433438
vals = iterator.get_remaining_forced_validators()
434-
assert len(vals) == 1
439+
assert len(vals) == 0
440+
# assert len(vals) == 1
435441

436442

437443
@pytest.mark.unit

0 commit comments

Comments
 (0)