pub struct AgenticSystemExecution { /* private fields */ }Expand description
One run of an agentic system.
Implementations§
Source§impl AgenticSystemExecution
impl AgenticSystemExecution
Sourcepub fn plan(
id: AgenticSystemExecutionId,
system: SystemPin,
ceremonies: impl IntoIterator<Item = (SystemCeremonyId, CeremonyExecutionLink)>,
resolved_profiles: impl IntoIterator<Item = (SystemRoleId, RequestedExecutionProfile)>,
participants: impl IntoIterator<Item = (ParticipantId, ParticipantMaterialization)>,
now: OffsetDateTime,
) -> Result<Self, DomainError>
pub fn plan( id: AgenticSystemExecutionId, system: SystemPin, ceremonies: impl IntoIterator<Item = (SystemCeremonyId, CeremonyExecutionLink)>, resolved_profiles: impl IntoIterator<Item = (SystemRoleId, RequestedExecutionProfile)>, participants: impl IntoIterator<Item = (ParticipantId, ParticipantMaterialization)>, now: OffsetDateTime, ) -> Result<Self, DomainError>
Open a run with nothing started yet.
pub const fn id(&self) -> &AgenticSystemExecutionId
pub const fn ceremonies( &self, ) -> &BTreeMap<SystemCeremonyId, CeremonyExecutionLink>
Sourcepub const fn resolved_profiles(
&self,
) -> &BTreeMap<SystemRoleId, RequestedExecutionProfile>
pub const fn resolved_profiles( &self, ) -> &BTreeMap<SystemRoleId, RequestedExecutionProfile>
What was asked of the host for each role, never what it did.
pub const fn participants( &self, ) -> &BTreeMap<ParticipantId, ParticipantMaterialization>
pub const fn integrator_binding(&self) -> Option<&IntegratorBindingId>
pub const fn state(&self) -> ExecutionState
pub const fn created_at(&self) -> OffsetDateTime
pub const fn updated_at(&self) -> OffsetDateTime
pub fn link( &self, ceremony: &SystemCeremonyId, ) -> Option<&CeremonyExecutionLink>
Sourcepub fn with_link(
&self,
ceremony: &SystemCeremonyId,
link: CeremonyExecutionLink,
now: OffsetDateTime,
) -> Result<Self, DomainError>
pub fn with_link( &self, ceremony: &SystemCeremonyId, link: CeremonyExecutionLink, now: OffsetDateTime, ) -> Result<Self, DomainError>
The run with one composition’s link replaced.
Replacing rather than mutating, and re-deriving the state from the links each time, so the summary can never disagree with the detail it summarises.
Sourcepub fn with_integrator_binding(
&self,
binding: IntegratorBindingId,
now: OffsetDateTime,
) -> Self
pub fn with_integrator_binding( &self, binding: IntegratorBindingId, now: OffsetDateTime, ) -> Self
The run with the integrator’s destination recorded.
Sourcepub fn ready(
&self,
blocking: &BTreeMap<SystemCeremonyId, Vec<SystemCeremonyId>>,
) -> Vec<&SystemCeremonyId>
pub fn ready( &self, blocking: &BTreeMap<SystemCeremonyId, Vec<SystemCeremonyId>>, ) -> Vec<&SystemCeremonyId>
Which compositions could be started now: still pending, and with everything they wait for completed.
Completed, not merely settled. A skipped ceremony produced no outputs, so anything that read them would be reading nothing, and starting it anyway would be the one thing a skip exists to prevent.
Trait Implementations§
Source§impl Clone for AgenticSystemExecution
impl Clone for AgenticSystemExecution
Source§impl Debug for AgenticSystemExecution
impl Debug for AgenticSystemExecution
Source§impl<'de> Deserialize<'de> for AgenticSystemExecution
impl<'de> Deserialize<'de> for AgenticSystemExecution
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for AgenticSystemExecution
Source§impl PartialEq for AgenticSystemExecution
impl PartialEq for AgenticSystemExecution
Source§impl Serialize for AgenticSystemExecution
impl Serialize for AgenticSystemExecution
impl StructuralPartialEq for AgenticSystemExecution
Auto Trait Implementations§
impl Freeze for AgenticSystemExecution
impl RefUnwindSafe for AgenticSystemExecution
impl Send for AgenticSystemExecution
impl Sync for AgenticSystemExecution
impl Unpin for AgenticSystemExecution
impl UnsafeUnpin for AgenticSystemExecution
impl UnwindSafe for AgenticSystemExecution
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