DAL/Proto: Handle the (old - new) published levels when decreasing the lag
For deps, see https://docs.google.com/spreadsheets/d/1rak6nBXnlNggnOnA5WTF7idHNXn0hsSCnVqrypHBew0/edit?usp=sharing
Backfill the cells of the skip list for published level that would become orphan when reducing attestation lag.
Testing
If you cherry-pick this commit (that changes attestation lag from 8 to 5 in a migration):
4b35e70a716c855c3d64ab89d4b3b8c1f75ede2d
and iff you run the test:
dune exec tezt/tests/main.exe -- --verbose --file tezt/tests/dal.ml --title 'T024->Alpha: test commitments history with migration'
you should see the following prints in the logs:
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ alpha: prev_attestation_lag:8 curr_attestation_lag:5
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ ### target_published_level:7 published_level:4 attestation_lag: 8 gap:3
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ ### target_published_level:7 published_level:5 attestation_lag: 7 gap:2
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ ### target_published_level:7 published_level:6 attestation_lag: 6 gap:1
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ ### target_published_level:7 published_level:7 attestation_lag: 5 gap:0
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │
[16:18:50.286] [node1] Oct 10 18:18:50.285 NOTICE │ ## NUM of added cells: 128
Edited by Gabriel Moise