pub trait WorkflowNamespaceSource: Send + Sync {
// Required method
fn workflow_attribution<'life0, 'life1, 'async_trait>(
&'life0 self,
workflow_id: &'life1 WorkflowId,
) -> Pin<Box<dyn Future<Output = Result<Option<WorkflowAttribution>, ServerError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}Expand description
Durable source of workflow→namespace ownership and type attribution facts.
The production implementation projects attribution from recorded workflow history; tests substitute a static fixture to prove adapter-boundary denials without an engine.
Required Methods§
Sourcefn workflow_attribution<'life0, 'life1, 'async_trait>(
&'life0 self,
workflow_id: &'life1 WorkflowId,
) -> Pin<Box<dyn Future<Output = Result<Option<WorkflowAttribution>, ServerError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn workflow_attribution<'life0, 'life1, 'async_trait>(
&'life0 self,
workflow_id: &'life1 WorkflowId,
) -> Pin<Box<dyn Future<Output = Result<Option<WorkflowAttribution>, ServerError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Returns the attribution recorded for a workflow, or None when the
workflow is unknown or recorded no namespace attribute.
§Errors
Returns ServerError when the underlying ownership data cannot be read.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".