Extend fork choice tests for testing is_data_available logic#3402
Extend fork choice tests for testing is_data_available logic#3402
is_data_available logic#3402Conversation
In the first example I would expect the root of the head to be
Why would we use For
|
You're right,
Sorry, I was not clear. I was thinking about the opposite way:
|
IMO, this approach suites better for unit tests for |
|
I am not really following, I think clients should always run the validation so I don't see the need for the field |
One potential use case that I kept in mind is writing FC tests with no consideration for data availability, but this can be achieved by generating blocks with no blobs in them I guess |
|
Thank you for your feedback!
Given that we do have
I just figured out that we didn’t specify the
Yeah, now I’m inclined to this way, too, for the simplicity. |
Yeah, I think I agree. I will say that in the event we extend the data using DAS, we might consider adding the boolean to dictate the availability instead of including full payloads with the test. But I don't think we need the premature optimization |
|
replaced by #3463 |
Address #3194
A proposed test format for testing
is_data_availablein Deneb fork choice.New
on_blockstep fields:Rules:
blobsandproofsare new fields from Deneb EIP-4844. These are the expected values fromretrieve_blobs_and_proofs()helper insideis_data_available()helper.blobsindicates theList[Blob, MAX_REQUEST_BLOB_SIDECARS]SSZ object file name.is_data_availableis the expected result ofis_data_available()helper. It's mainly for debugging.is_data_available()helper returnstrue.Example 1 the valid case:
Example 2, with incorrect proof:
/cc @mkalinin @potuz, I hope to hear your feedback on this new format 🙏