Generate hash from arbitrary transaction id #12021
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For the CLI command
advanced hash-transaction
, allow arbitrary transaction IDs as input:Most of the changes here relate to the first case. The Base58Check encoding relied on the
Bin_prot
serialization that had tags for all versioned types. So we needed to createSigned_command.Stable.V1.With_all_version_tags
, which forced many changes.In
ppx_version
, for%%versioned_binable
Stable modules, added the ability to generate theWith_all_versioned_tags
module fromBinable
functors. Changed the functor used inUnsigned_extended.UInt32/64
to allow such generation.Token_id.V1
had changed fromcompatible
. Made thatV2
, and restored the originalV1
. The version linter failures here are due to using the newV2
.Wrote tests to decode and hash V1 and V2 signed commands, and a V1 zkApp command. For the V1 signed command, the hash produced and verified is the original hash from
compatible
.Part of #11821.