ssvlabs / ssv-spec

GNU General Public License v3.0
26 stars 23 forks source link

Deprecate SSZ custom variables #245

Open GalRogozinski opened 1 year ago

GalRogozinski commented 1 year ago
          I'm unsure about the issue with the JSON format. Firstly, it improves readability, and secondly, it's utilized by a reliable package (go-eth2-client) that the entire SSV spec relies on.

Apart from that, I believe the question might contain a typo. Alon's question states:

"why is the full block taken from a JSON and the versioned one generated here?"

I assume he meant "blinded" instead of "versioned." @alonmuroch, please correct me if I'm mistaken.

Addressing the question:

By the way, the SSZTransactions were created for a specific purpose:

  1. to build the blinded block
  2. verify that the hash root of the full data block matches the blinded one. You can refer to the related test for more information.

That's why we've maintained the same design and introduced SSZWithdrawals for Capella, to ensure that the hash root of the full data Capella block matches the blinded one. With that being said, we can deprecate SSZWithdrawals and use the blinded Capella block in JSON format from go-eth2-client, while still retaining the test to verify that their hash roots are identical.

_Originally posted by @olegshmuelov in https://github.com/bloxapp/ssv-spec/pull/234#discussion_r1195452213_

GalRogozinski commented 1 year ago

@olegshmuelov

while still retaining the test to verify that their hash roots are identical

Imo we can just delete the tests