pub enum IssueReclaimGrantResponse {
Granted {
execution_id: String,
partition_key: PartitionKey,
grant_key: String,
expires_at_ms: u64,
lane_id: String,
},
NotReclaimable {
execution_id: String,
detail: String,
},
ReclaimCapExceeded {
execution_id: String,
reclaim_count: u32,
},
}Expand description
Response body for POST /v1/executions/{execution_id}/reclaim
(RFC-024 §3.5).
The server serializes this struct with a status discriminator so
consumers can match on structured outcomes without re-parsing a
200-vs-4xx split for business-logic outcomes (mirrors
RotateWaitpointSecretResponse’s precedent).
Variants§
Granted
Grant issued. Build a
ff_core::contracts::ReclaimGrant via
Self::into_grant and feed it to
crate::FlowFabricWorker::claim_from_reclaim_grant.
Fields
partition_key: PartitionKeyNotReclaimable
Execution is not in a reclaimable state (not
lease_expired_reclaimable / lease_revoked).
ReclaimCapExceeded
max_reclaim_count exceeded; execution transitioned to
terminal_failed. Consumers stop retrying and surface a
structural failure.
Implementations§
Source§impl IssueReclaimGrantResponse
impl IssueReclaimGrantResponse
Sourcepub fn into_grant(self) -> Result<ReclaimGrant, SdkError>
pub fn into_grant(self) -> Result<ReclaimGrant, SdkError>
Convert a Self::Granted response into a typed
ff_core::contracts::ReclaimGrant for handoff to
crate::FlowFabricWorker::claim_from_reclaim_grant.
Returns SdkError::AdminApi when the wire variant is not
Granted (consumer asked for a grant but the server replied
with a terminal outcome) or when execution_id / lane_id
are malformed — the latter signals a drift between server and
SDK, so failing loud prevents silent misrouting.
Trait Implementations§
Source§impl Clone for IssueReclaimGrantResponse
impl Clone for IssueReclaimGrantResponse
Source§fn clone(&self) -> IssueReclaimGrantResponse
fn clone(&self) -> IssueReclaimGrantResponse
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IssueReclaimGrantResponse
impl Debug for IssueReclaimGrantResponse
Source§impl<'de> Deserialize<'de> for IssueReclaimGrantResponse
impl<'de> Deserialize<'de> for IssueReclaimGrantResponse
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>,
impl Eq for IssueReclaimGrantResponse
impl StructuralPartialEq for IssueReclaimGrantResponse
Auto Trait Implementations§
impl Freeze for IssueReclaimGrantResponse
impl RefUnwindSafe for IssueReclaimGrantResponse
impl Send for IssueReclaimGrantResponse
impl Sync for IssueReclaimGrantResponse
impl Unpin for IssueReclaimGrantResponse
impl UnsafeUnpin for IssueReclaimGrantResponse
impl UnwindSafe for IssueReclaimGrantResponse
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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