kitt_score 0.1.0

Decision engine at the core of Project KITT — in-memory stateful matching with pluggable scoring backends.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//! Reference-data definition for a location (bulk load / per-location upsert).

use crate::schema::attr::OwnedValue;
use crate::{AttrId, KindId, LocId};

/// Reference-data payload for bulk load / per-location upsert (spec §3.1, §5).
#[derive(Clone, Debug)]
pub struct LocationDef {
    /// Caller-assigned location identifier.
    pub id: LocId,
    /// Kinds whose events will be accepted at this location. An incoming
    /// event with a disallowed kind is rejected by the engine.
    pub kinds_allowed: Vec<KindId>,
    /// Static reference attributes written into the buffer at build time.
    /// These are _not_ updated by events.
    pub ref_attrs: Vec<(KindId, AttrId, OwnedValue)>,
}