pub struct FileFlowDecisionLedger { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Debug for FileFlowDecisionLedger
impl Debug for FileFlowDecisionLedger
Source§impl FlowDecisionLedger for FileFlowDecisionLedger
impl FlowDecisionLedger for FileFlowDecisionLedger
fn claim<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
owner_id: &'life3 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimOutcome>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn renew<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
owner_id: &'life3 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn renew<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
owner_id: &'life3 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Extend a pending claim only while it is still owned by
owner_id.
Returns false after completion, takeover, release, or identity conflict.Source§fn inspect<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimState>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn inspect<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimState>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Inspect a claim without revealing its owner token. Read more
Source§fn inspect_with_identity<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimState>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn inspect_with_identity<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimState>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Inspect a claim while validating its canonical execution identity.
fn complete<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
owner_id: &'life3 str,
completed_at_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn complete_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
completed_at_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn complete_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
completed_at_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Complete a pending claim only when its canonical execution identity
still matches the record that was admitted. The default keeps custom
host ledgers source-compatible; built-in ledgers persist and fence the
identity together with the owner and lease checks.
fn release<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
owner_id: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Source§fn claim_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimOutcome>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn claim_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<FlowDecisionClaimOutcome>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Claim a decision while binding its canonical execution identity. The
default preserves source compatibility for host ledgers; built-in
ledgers persist and fence on the identity.
Source§fn renew_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn renew_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
now_ms: u64,
lease_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Renew only when both the legacy request key and canonical identity
still belong to the admitted worker.
Source§fn complete_with_receipt<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
receipt: &'life5 ExecutionResultReceiptV1,
completed_at_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
fn complete_with_receipt<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
receipt: &'life5 ExecutionResultReceiptV1,
completed_at_ms: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
Complete with a bounded digest-only result receipt. The default keeps
third-party ledgers source-compatible but cannot persist the receipt.
Source§fn release_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn release_with_identity<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
request_hash: &'life2 str,
identity: &'life3 ExecutionIdentityV1,
owner_id: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Release only when the canonical identity also matches. Legacy ledgers
fall back to their existing request/owner fence.
Source§fn completed_receipt<'life0, 'life1, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<ExecutionResultReceiptV1>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn completed_receipt<'life0, 'life1, 'async_trait>(
&'life0 self,
decision_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<ExecutionResultReceiptV1>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Return a terminal receipt when the ledger supports result persistence.
Auto Trait Implementations§
impl !Freeze for FileFlowDecisionLedger
impl !RefUnwindSafe for FileFlowDecisionLedger
impl !UnwindSafe for FileFlowDecisionLedger
impl Send for FileFlowDecisionLedger
impl Sync for FileFlowDecisionLedger
impl Unpin for FileFlowDecisionLedger
impl UnsafeUnpin for FileFlowDecisionLedger
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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> ⓘ
Converts
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> ⓘ
Converts
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