aria-core 0.1.0

Generic adaptive sequencing engine — zero dependencies, domain-agnostic. Suggest(), feedback(). Works from item one.
Documentation
// aria-core — generic adaptive sequencing engine
// Zero dependencies (serde optional). Domain defined entirely by caller.
//
// Caller implements:
//   - `Scoreable`        → their item type
//   - `Factor`           → their scoring logic (one or many)
//
// Caller optionally overrides:
//   - `StateUpdater`     → custom skill/state update logic
//
// Engine exposes:
//   suggest(user_id)                    → Result<Item>
//   feedback(user_id, item_id, signal)  → Result<()>
//   get_state(user_id)                  → Option<&ProfileState>
//   load_state(user_id, state)          → ()

pub mod engine;
pub mod factor;
pub mod item;
pub mod selector;
pub mod signal;
pub mod state;
pub mod updater;
pub mod serialiser;
pub mod error;

pub use engine::{Engine, EngineConfig};
pub use factor::Factor;
pub use item::Scoreable;
pub use selector::Selector;
pub use signal::Signal;
pub use state::ProfileState;
pub use updater::{StateUpdater, DefaultStateUpdater};
pub use error::AriaError;

pub const VERSION: &str = env!("CARGO_PKG_VERSION");