pub struct LoadOutcome {
pub record: LoadedWorkflow,
pub freshly_loaded: bool,
pub route_changed: bool,
pub superseded_versions: Vec<ContentHash>,
}Expand description
Outcome of one package load, computed inside the catalog mutation lock.
freshly_loaded distinguishes a real registration from an idempotent
re-load of a resident hash; route_changed reports whether the call
re-pointed routing (false means the hash was already route-active and the
load was a full no-op). Both flags are race-free truth captured under the
same lock that committed the mutation, never a list-before/list-after read.
Fields§
§record: LoadedWorkflowThe loaded (or already-resident) workflow record.
freshly_loaded: boolTrue when this call registered the version; false on idempotent re-load.
route_changed: boolTrue when this call re-pointed the type’s route at the version.
superseded_versions: Vec<ContentHash>Every OTHER version of this workflow type still resident after the load, sorted, with the newly routed one excluded.
Deploy has never removed a superseded version and is not going to
start: a version may still be carrying live runs, and the decision to
unload one is the platform’s, not the engine’s (decision record #62).
What deploy CAN do is stop the accumulation being invisible. A stale
retained version is still a reachable contract — one of them made a
whole task queue unservable — so the operator is handed the exact
hashes unload_workflow_version will accept.
Trait Implementations§
Source§impl Clone for LoadOutcome
impl Clone for LoadOutcome
Source§fn clone(&self) -> LoadOutcome
fn clone(&self) -> LoadOutcome
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 LoadOutcome
impl Debug for LoadOutcome
impl Eq for LoadOutcome
Source§impl PartialEq for LoadOutcome
impl PartialEq for LoadOutcome
impl StructuralPartialEq for LoadOutcome
Auto Trait Implementations§
impl Freeze for LoadOutcome
impl RefUnwindSafe for LoadOutcome
impl Send for LoadOutcome
impl Sync for LoadOutcome
impl Unpin for LoadOutcome
impl UnsafeUnpin for LoadOutcome
impl UnwindSafe for LoadOutcome
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.