DAL: handle changing parameters in refutation game
What
Supports protocol-specific constants of DAL in smart rollup refutation games.
Why
The motivation is to statically change the attestion lag of the DAL. However, before this merge request, the protocol considers only one attestation_lag, whatever is the latest value. Therefore, if you dispute a commitment that was produced in the previous protocol, you'll play the refutation game using the constants of the new protocol, which changes the behaviour based on when the refutation game is played, this is not correct.
How
It is fairly simple, we need 2 changes:
- In the refutation game, we dispute a tick, we need to know what is the tezos level this tick was processed.
- We need to know what was the DAL constants for this tezos level.
Manually testing the MR
To test this change, we need the parameters to change at protocol migration. I think we could change the protocol parameters in tezt somehow, but in the mean time you can cherry-pick the actual commit from @eugenz that introduces a parameters change (ac5b4e0c) and run the tezt test
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rstfor the protocol and the environment,CHANGES.rstat the root of the repository for everything else). -
Select suitable reviewers using the Reviewersfield below. -
Select as Assigneethe next person who should take action on that MR