pub struct KgQueryBody {
pub source_id: Option<String>,
pub from: Option<String>,
pub to: Option<String>,
pub max_depth: Option<usize>,
pub valid_at: Option<String>,
pub allowed_agents: Option<Vec<String>>,
pub limit: Option<usize>,
pub include_invalidated: bool,
pub rel_types: Option<Vec<String>>,
}Expand description
JSON body for POST /api/v1/kg/query (Pillar 2 / Stream C —
memory_kg_query). POST is used because allowed_agents is a list;
keeping it in a body avoids over-long query strings and keeps the
surface symmetric with POST /api/v1/kg/invalidate. max_depth
defaults to 1 and is bounded by KG_QUERY_MAX_SUPPORTED_DEPTH.
Fields§
§source_id: Option<String>Canonical name. Aliased by from (S82’s wire shape).
from: Option<String>from alias for source_id — the cert harness S82 uses
{from, to, max_depth, rel_types}.
to: Option<String>Optional target id — when present the query is interpreted as
a find-path between (source_id, to); kg_query’s existing
surface ignores it but accepting it keeps the wire shape
flexible for the cert harness.
max_depth: Option<usize>§valid_at: Option<String>§allowed_agents: Option<Vec<String>>§limit: Option<usize>§include_invalidated: boolNHI-P3-T7 (v0.7.0 NHI testing): when omitted or false, the
“current view” filter excludes edges whose valid_until lies
in the past (invalidated via memory_kg_invalidate). Pass
true to traverse the full historical link graph.
rel_types: Option<Vec<String>>Optional relation-type filter — accepted for forward-compat
with the find_paths shape; unused on the current trait
surface (CTE walks :related_to only).
Trait Implementations§
Source§impl Debug for KgQueryBody
impl Debug for KgQueryBody
Source§impl<'de> Deserialize<'de> for KgQueryBody
impl<'de> Deserialize<'de> for KgQueryBody
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for KgQueryBody
impl RefUnwindSafe for KgQueryBody
impl Send for KgQueryBody
impl Sync for KgQueryBody
impl Unpin for KgQueryBody
impl UnsafeUnpin for KgQueryBody
impl UnwindSafe for KgQueryBody
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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