Forward mint receipt fields through /validate-features (#146 Phase 2)#24
Open
Forward mint receipt fields through /validate-features (#146 Phase 2)#24
Conversation
…features
Master-list #146 Phase 2. Adds two transparent pass-through fields:
SDK -> validator commitment_new_hex on the request, and validator -> SDK
signed_receipt on the response. The executor itself takes no signing or
verification position; it just lets the wire contract flow.
ValidateFeaturesRequest gains optional commitment_new_hex (defaulted via
serde so old SDK requests keep working). ValidateFeaturesResponse gains
optional signed_receipt with skip_serializing_if so old SDK clients see
no extra field. The success path now reads the validator response body
to extract the receipt; parse failure or missing field both map to None
(older validators return { valid: true } without the receipt).
SignedReceiptDto is defined locally as a wire-format mirror of the
validator's struct, so the executor doesn't pull in entros-validation
as a crate dep. Field names and types match byte-for-byte.
84/84 tests pass; clippy clean. No new dependencies.
fe66a83 to
d6de8f3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Phase 2 of master-list #146. Wire-protocol pass-through only — no signing
or verification logic in the executor itself.
unchanged to the validator)
unchanged from the validator)
receipt; parse failure or missing field both map to None
Backward-compatible in every direction:
validator doesn't sign, executor returns valid:true with no receipt
{ valid: true } without the field, executor returns valid:true with
no receipt, SDK degrades to the no-binding mint flow
old-SDK behavior
SignedReceiptDto is defined locally as a wire-format mirror so the
executor doesn't take a crate dependency on entros-validation. Field
names and types match byte-for-byte.
Testing