Currently for some of the states where we use state root and signatures (e.g. ApproveState, NewState) we use Strings.
Those strings however are hex encoded strings ( without 0x prefix ).
It would help and remove the confusion or need to search and figure out what it was (hex encoded or prefixed or not and etc.) by using u8 instead and leaving the hex encoding and prefix/no-prefix to the underlying structs (the states) serialization/deserialization.
This can be applied to the adapters as well, even for the DummyAdapter's sign/verify, because it uses Strings and Strings can be created from the u8, unifying the implementations and requirements of the Adapters
NOTE: In order for this to work though, we have to alter the DummyAdapter in a way that will actually return not a string signature Dummy adapter signature for {state_root} by {validator_id}, but a valid Hex string instead.
Currently for some of the states where we use
state rootandsignatures(e.g.ApproveState,NewState) we use Strings.Those strings however are hex encoded strings ( without
0xprefix ).It would help and remove the confusion or need to search and figure out what it was (hex encoded or prefixed or not and etc.) by using
u8instead and leaving the hex encoding and prefix/no-prefix to the underlying structs (the states) serialization/deserialization.This can be applied to the adapters as well, even for the DummyAdapter's
sign/verify, because it usesStrings andStrings can be created from theu8, unifying the implementations and requirements of the AdaptersNOTE: In order for this to work though, we have to alter the DummyAdapter in a way that will actually return not a string signature
Dummy adapter signature for {state_root} by {validator_id}, but a valid Hex string instead.