aion/loader/version_info.rs
1//! Serde-ready listing record for loaded workflow versions.
2
3use aion_package::{ContentHash, ManifestVersion};
4use chrono::{DateTime, Utc};
5
6/// One loaded version of one workflow type, as reported by the catalog.
7#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
8pub struct WorkflowVersionInfo {
9 /// Logical workflow type this version belongs to.
10 pub workflow_type: String,
11 /// Content hash identifying the package version (textual when serialized).
12 pub content_hash: ContentHash,
13 /// Namespaced module name spawned for this version.
14 pub deployed_entry_module: String,
15 /// Exported entry function spawned for this version.
16 pub entry_function: String,
17 /// Author-declared manifest version label.
18 pub manifest_version: ManifestVersion,
19 /// Engine-local instant this version was loaded.
20 pub loaded_at: DateTime<Utc>,
21 /// Whether new dispatches of this type currently route to this version.
22 pub route_active: bool,
23}