pub struct InjectionQuery<'a> {
pub embedding: &'a [f32],
pub query_text: Option<&'a str>,
pub session_id: Option<&'a str>,
pub exclude_ids: &'a [MemoryId],
pub max_items: usize,
pub max_episodic: usize,
pub agent_id: Option<AgentId>,
pub user_id: Option<UserId>,
pub current_project: Option<&'a str>,
}Expand description
A request for injection-ready context.
Fields§
§embedding: &'a [f32]Embedding of the prompt (plus any conversational blend).
query_text: Option<&'a str>Raw query text for the lexical half of hybrid recall.
session_id: Option<&'a str>The session issuing the query. Memories tagged session:<id> with
this ID are excluded: they are already in that session’s context.
exclude_ids: &'a [MemoryId]Memory IDs already delivered within the current context lifetime.
max_items: usizeMaximum items returned beyond pinned memories.
max_episodic: usizeMaximum verbatim episodic items within max_items.
agent_id: Option<AgentId>Restrict recall to this agent’s memories plus shared (nil owned) knowledge. None recalls globally.
user_id: Option<UserId>Restrict recall to this user’s memories plus shared (nil owned)
knowledge, orthogonal to agent_id. None recalls globally on the user
axis. A memory is injectable only when visible on BOTH axes.
current_project: Option<&'a str>Current project (a scope:project:<name> value without the prefix). When
set, memories from other projects are weighted down in recall so injection
favors the active project instead of dumping cross-project noise. None
recalls across all projects.