Tezt: Add Mockup and Proxy modes for monitor attestable_slots RPC
What
Parent MR: !19736 (merged)
There are two tests that are "mocking" / altering the GET attestable_slots RPC, so we need to add the capability to to the same thing for the monitoring RPC that we introduced in !19459 (merged).
Why
Because otherwise, when we will make the baker use the monitoring RPC, mocking the static RPC will not have any effect on the baker in the tests.
How
By altering the streams bodies. If in the static RPC case we would alter the JSON object to contain all-true bitsets when we needed then, now for the streaming RPC, we add the slot_ids for each slot_index from 0 to number_of_slots, because their presence means that the beneficiary of the stream will notice them, and therefore they will be "attestable" for them.
Manually testing the MR
CI green as this is a no-op, we only add the ability to use the monitoring RPC without failing tests. One should follow the CI for the MR where we plug the monitoring RPC in the baker (!19528 (closed)) and there one can check that the following tests pass for S023-, T024- and Alpha:
dune exec tezt/tests/main.exe -- --file dal.ml -v --title "Alpha: Testing DAL node (faulty DAL node entrapment)"
dune exec tezt/tests/main.exe -- --file dal.ml -v --title 'Alpha: Testing DAL L1 integration (mockup get_attestable_slots)'
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