pub enum DaemonEvent {
PalaceCreated {
id: String,
name: String,
},
DrawerAdded {
palace_id: String,
drawer_count: usize,
},
DrawerDeleted {
palace_id: String,
drawer_count: usize,
},
DreamCompleted {
palace_id: Option<String>,
merged: usize,
pruned: usize,
compacted: usize,
closets_updated: usize,
duration_ms: u64,
},
StatusChanged {
total_drawers: usize,
total_vectors: usize,
total_kg_triples: usize,
},
}Expand description
Live daemon events broadcast to connected SSE subscribers.
Why: The dashboard needs push-driven updates so palace creation, drawer
add/delete, dream cycles, and aggregate status changes are visible without
polling. A single broadcast channel fans out to every connected browser.
What: Tagged enum serialized as {"type": "...", ...fields} over SSE.
Test: web::tests::sse_stream_emits_events subscribes, triggers a
mutation, and asserts the frame arrives.
Variants§
Trait Implementations§
Source§impl Clone for DaemonEvent
impl Clone for DaemonEvent
Source§fn clone(&self) -> DaemonEvent
fn clone(&self) -> DaemonEvent
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DaemonEvent
impl Debug for DaemonEvent
Auto Trait Implementations§
impl Freeze for DaemonEvent
impl RefUnwindSafe for DaemonEvent
impl Send for DaemonEvent
impl Sync for DaemonEvent
impl Unpin for DaemonEvent
impl UnsafeUnpin for DaemonEvent
impl UnwindSafe for DaemonEvent
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more