Skip to main content

RecallBody

Struct RecallBody 

Source
pub struct RecallBody {
Show 20 fields pub context: Option<String>, pub query: Option<String>, pub q: Option<String>, pub namespace: Option<String>, pub limit: Option<usize>, pub tags: Option<String>, pub since: Option<String>, pub until: Option<String>, pub as_agent: Option<String>, pub budget_tokens: Option<usize>, pub context_tokens: Option<Vec<String>>, pub session_default: Option<bool>, pub has_citations: Option<bool>, pub source_uri_prefix: Option<String>, pub kinds: Option<Value>, pub session_id: Option<String>, pub include_archived: Option<bool>, pub confidence_tier: Option<String>, pub verbose_provenance: Option<bool>, pub format: Option<String>,
}

Fields§

§context: Option<String>

Recall context. Accepts either context (canonical), query (cert harness alias used by S79), or q (matches the search-style API surface). At least one must be present and non-empty.

§query: Option<String>§q: Option<String>§namespace: Option<String>§limit: Option<usize>§tags: Option<String>§since: Option<String>§until: Option<String>§as_agent: Option<String>

Task 1.5 visibility filtering.

§budget_tokens: Option<usize>

Task 1.11 — context-budget-aware recall.

§context_tokens: Option<Vec<String>>

#1622 — salience tokens biasing the recall query embedding (70/30 blend). Pre-#1622 this field was unreachable from HTTP (hard-coded None in from_http_body) while MCP + CLI honored it — the same class #1098 fixed for four other fields.

§session_default: Option<bool>

v0.7.0 (issue #518) — when true, splice defaults from [agents.defaults.recall_scope] in config.toml for any filter field not explicitly set on this request body. Resolution: explicit args > recall_scope defaults > compiled defaults. Default false preserves v0.6.x recall semantics.

§has_citations: Option<bool>

v0.7.0 Form 4 (issue #757) — restrict to memories whose citations array is non-empty. Composes with the other filters.

§source_uri_prefix: Option<String>

v0.7.0 Form 4 (issue #757) — restrict to memories whose source_uri column begins with this exact prefix.

§kinds: Option<Value>

v0.7.x Form 6 (issue #759) — Batman-taxonomy memory-kind filter. Accepts either a JSON array of strings ({"kinds": ["concept", "claim"]}) or a comma-separated string ({"kinds": "concept,claim"}). OR-of-kinds within the param; AND with the other filters.

§session_id: Option<String>

v0.7.0 (issue #518) — per-session recency boost. See the matching field on RecallQuery.

§include_archived: Option<bool>

v0.7.0 #1098 — WT-1-E include atomised sources alongside atoms. HTTP parity with the MCP RecallRequest.

§confidence_tier: Option<String>

v0.7.0 #1098 — Gap 4 (#887) confidence-tier filter. HTTP parity with the MCP RecallRequest.

§verbose_provenance: Option<bool>

v0.7.0 #1098 — Gap 7 (#890) per-row provenance decoration. HTTP parity with the MCP RecallRequest.

§format: Option<String>

v0.7.0 #1098 — response format selector (e.g. toon_compact). HTTP parity with the MCP RecallRequest.

Implementations§

Source§

impl RecallBody

Source

pub fn resolved_query(&self) -> String

Resolve the recall query string from context, query, or q. Returns the trimmed value, or an empty string when all three are absent — the caller is expected to reject empty.

Source

pub fn resolved_kinds(&self) -> Option<Vec<MemoryKind>>

v0.7.x Form 6 — parse the optional kinds JSON field. Accepts a JSON array of strings or a single comma-separated string. Treats "all" as “no filter” (returns None). Drops unknown tokens silently.

Cluster E audit COR-4 (issue #767): mirrors MemoryKind::parse_csv semantics — an explicit array of only-unknown tokens (e.g. ["reflektion"]) returns Some(vec![]) (intentional zero-match filter), distinct from the absent / empty / "all" cases which return None (no filter declared).

Trait Implementations§

Source§

impl Debug for RecallBody

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for RecallBody

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more