aether_core/events/
context_event.rs1use schemars::JsonSchema;
2use serde::{Deserialize, Serialize};
3
4pub use acp_utils::notifications::ContextUsage;
5
6#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, JsonSchema)]
8#[serde(tag = "status", rename_all = "snake_case")]
9pub enum CompactionOutcome {
10 Completed,
11 Failed { error: String },
12 Cancelled,
13}
14
15#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, JsonSchema)]
17#[serde(tag = "type", rename_all = "snake_case")]
18pub enum ContextEvent {
19 CompactionStarted { message_count: usize },
21 CompactionEnded { outcome: CompactionOutcome },
23 CompactionResult { summary: String, messages_removed: usize },
25 UsageUpdated { usage: ContextUsage },
27 Cleared,
29}