//! Memory tiers: cognitive-inspired storage hierarchy.
use serde::{Deserialize, Serialize};
/// Memory tiers inspired by human cognitive architecture.
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize, PartialOrd, Ord)]
pub enum MemoryTier {
/// Active conversation context. Ultra-fast, limited capacity.
/// Analogy: human working memory (~7 items).
Working = 0,
/// Recent interactions and events. Fast retrieval with temporal decay.
/// Analogy: human episodic memory.
Episodic = 1,
/// Consolidated facts, concepts, and relationships.
/// Analogy: human semantic memory.
Semantic = 2,
/// Learned procedures, workflows, and skills.
/// Analogy: human procedural/muscle memory.
Procedural = 3,
/// Long-term storage. Compressed, immutable, sealed.
/// Analogy: human long-term memory archives.
Archival = 4,
}