//! Phase 41 profile types. //! //! The existing `ModelProfile` (Phase 17) is aliased as //! `ExecutionProfile` here — it continues to carry the model + //! bindings + HNSW config needed to run inference. Three new profile //! types land alongside: `RetrievalProfile`, `MemoryProfile`, //! `ObserverProfile` — each owns a distinct slice of what used to be //! bundled. //! //! Backward-compat rule (PRD Phase 41): existing `ModelProfile` on //! disk continues to deserialize unchanged. New fields on the new //! profile types are `#[serde(default)]` so old payloads load with //! empty defaults. //! //! These are the canonical shapes — downstream code converts via //! `From for ExecutionProfile` (they're the same struct //! today, just named differently) and constructs the other three //! as needed. pub mod execution; pub mod retrieval; pub mod memory; pub mod observer; pub use execution::ExecutionProfile; pub use memory::MemoryProfile; pub use observer::ObserverProfile; pub use retrieval::RetrievalProfile;