#[non_exhaustive]pub enum MerkleCandidateQuoteResponse {
Success {
candidate_node: Vec<u8>,
commitment: Option<Vec<u8>>,
},
Error(ProtocolError),
}Expand description
Response with a merkle candidate quote.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Success
Candidate quote generated successfully.
Contains the serialized MerklePaymentCandidateNode.
Fields
commitment: Option<Vec<u8>>ADR-0004: the serialized signed storage commitment the candidate’s
price was derived from, so the client can fully resolve the binding
BEFORE paying (resolve-before-pay). None for a baseline candidate.
Unlike the single-node path, this commitment is NOT forwarded in the
merkle PUT bundle — sixteen per-candidate sidecars exceeded the
storer’s payment-proof size budget, so current clients omit them and
storers resolve merkle pins from gossip or a GetCommitmentByPin
fetch (MerklePaymentProof.commitment_sidecars stays for legacy
bundles). Same semantics as
ChunkQuoteResponse::Success::commitment; postcard-encoded, so
this is a hard-cutover field, not an interop guarantee.
Error(ProtocolError)
Quote generation failed.
Trait Implementations§
Source§impl Clone for MerkleCandidateQuoteResponse
impl Clone for MerkleCandidateQuoteResponse
Source§fn clone(&self) -> MerkleCandidateQuoteResponse
fn clone(&self) -> MerkleCandidateQuoteResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MerkleCandidateQuoteResponse
impl Debug for MerkleCandidateQuoteResponse
Source§impl<'de> Deserialize<'de> for MerkleCandidateQuoteResponse
impl<'de> Deserialize<'de> for MerkleCandidateQuoteResponse
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for MerkleCandidateQuoteResponse
impl RefUnwindSafe for MerkleCandidateQuoteResponse
impl Send for MerkleCandidateQuoteResponse
impl Sync for MerkleCandidateQuoteResponse
impl Unpin for MerkleCandidateQuoteResponse
impl UnsafeUnpin for MerkleCandidateQuoteResponse
impl UnwindSafe for MerkleCandidateQuoteResponse
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<'de, T> BorrowedRpcObject<'de> for T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more