pub struct ActivityTask {
pub workflow_id: Option<WorkflowId>,
pub activity_id: Option<ActivityId>,
pub activity_type: String,
pub input: Option<Payload>,
pub attempt: u32,
pub labels: HashMap<String, String>,
pub run_id: Option<RunId>,
pub completion_token: String,
pub idempotency_key: String,
}Expand description
Activity invocation pushed by the server to a registered worker.
Fields§
§workflow_id: Option<WorkflowId>§activity_id: Option<ActivityId>§activity_type: String§input: Option<Payload>§attempt: u32One-based delivery attempt stamped by the dispatching engine seam. Zero is malformed: consumers MUST reject a task whose attempt is 0 (proto3 default = the producer failed to stamp it).
labels: HashMap<String, String>Human-meaningful display labels the workflow attached to the activity (for example brief=IP-001, repo=ablative-io/yggdrasil). Display metadata only: the engine never interprets them and they never affect routing or replay. Carried purely so worker logs and the dashboard can show what a dispatch is working on. Absent (empty map) when the workflow set none.
run_id: Option<RunId>Concrete run that owns this task. New servers MUST stamp it; a missing run cannot produce a run-scoped idempotency key and is refused before dispatch.
completion_token: StringOpaque proof of this execution generation. Workers MUST echo it verbatim on ActivityResult and MUST NOT infer or synthesize it. Empty means the server is from an incompatible pre-fencing registration era.
idempotency_key: StringStable external-effect key derived from workflow id + run id + activity site. It is intentionally independent of attempt and execution generation.
Trait Implementations§
Source§impl Clone for ActivityTask
impl Clone for ActivityTask
Source§fn clone(&self) -> ActivityTask
fn clone(&self) -> ActivityTask
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 ActivityTask
impl Debug for ActivityTask
Source§impl Default for ActivityTask
impl Default for ActivityTask
Source§impl<'de> Deserialize<'de> for ActivityTask
impl<'de> Deserialize<'de> for ActivityTask
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>,
Source§impl Message for ActivityTask
impl Message for ActivityTask
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for ActivityTask
impl PartialEq for ActivityTask
Source§impl Serialize for ActivityTask
impl Serialize for ActivityTask
impl StructuralPartialEq for ActivityTask
Auto Trait Implementations§
impl Freeze for ActivityTask
impl RefUnwindSafe for ActivityTask
impl Send for ActivityTask
impl Sync for ActivityTask
impl Unpin for ActivityTask
impl UnsafeUnpin for ActivityTask
impl UnwindSafe for ActivityTask
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,
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request