ainl_persona/lib.rs
1//! Persona evolution over AINL graph memory — soft axes, metadata-only signals.
2//!
3//! See [`EvolutionEngine`] for the main entry point.
4
5/// Canonical [`ainl_memory::PersonaNode::trait_name`] for axis-evolution bundles.
6/// `graph_extractor` (Prompt 2) should import this from the crate root when selecting
7/// persona rows for domain / formality signals — do not duplicate the string.
8pub const EVOLUTION_TRAIT_NAME: &str = "axis_evolution_snapshot";
9/// Stable alias for the same trait string (documentation / import ergonomics).
10pub const AXIS_EVOLUTION_SNAPSHOT: &str = EVOLUTION_TRAIT_NAME;
11
12pub mod axes;
13pub mod engine;
14pub mod extractor;
15pub mod fitness;
16pub mod persona_node;
17pub mod signals;
18
19pub use axes::{AxisState, PersonaAxis};
20pub use engine::{EvolutionEngine, INGEST_SCORE_EPSILON};
21pub use extractor::GraphExtractor;
22pub use fitness::PersonaSnapshot;
23pub use signals::{MemoryNodeType, RawSignal};