platform_core/
execution.rs1use crate::context::{ActorContext, CorrelationId, TenantId, TraceContext};
2use chrono::{DateTime, Utc};
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
6pub struct ExecutionId(pub String);
7
8#[derive(Debug, Clone, Deserialize, Serialize)]
9pub struct ExecutionContext {
10 pub execution_id: ExecutionId,
11 pub function_name: String,
12 pub attempt: u32,
13 pub queue: String,
14 pub correlation_id: CorrelationId,
15 pub causation_id: Option<String>,
16 pub actor: ActorContext,
17 pub tenant_id: Option<TenantId>,
18 pub trace: TraceContext,
19 pub deadline: Option<DateTime<Utc>>,
20}