#[non_exhaustive]pub enum IngestSourceKind {
StaticArtifact,
SubagentTranscript,
ExternalAgent,
}Expand description
Classifies the origin of documents fed to super::IngestDocument.
Used to select the appropriate LLM extraction prompt and determine the
GraphOrigin value stamped on extracted entities and edges.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
StaticArtifact
A versioned repository artifact such as a spec, design doc, or README.
Uses the tech-doc extraction prompt (precise, structured).
SubagentTranscript
A transcript produced by a Zeph subagent task session.
Uses the tech-doc extraction prompt (entity-focused, not conversational).
ExternalAgent
Content sourced from a foreign agent system (A2A / ACP / external API).
Uses the tech-doc extraction prompt.
§Note
Trust classification for external agents is resolved at the binary layer
(spec-067 §3 D1); zeph-memory treats ExternalAgent the same as
StaticArtifact for prompt selection.
Implementations§
Source§impl IngestSourceKind
impl IngestSourceKind
Sourcepub fn system_prompt(self) -> &'static str
pub fn system_prompt(self) -> &'static str
Returns the LLM system prompt appropriate for this source kind.
All current variants use the tech-doc prompt; the conversational prompt (used by the live-conversation path) is intentionally NOT selectable here.
§Note
The return type is &'static str — prompts must be compile-time constants.
This is a known MVP limitation (see C7 in critic handoff); runtime-configurable
prompts will require a breaking change to this signature.
Sourcepub fn graph_origin(self) -> GraphOrigin
pub fn graph_origin(self) -> GraphOrigin
Returns the GraphOrigin value stamped on entities extracted from this kind.
Trait Implementations§
Source§impl Clone for IngestSourceKind
impl Clone for IngestSourceKind
Source§fn clone(&self) -> IngestSourceKind
fn clone(&self) -> IngestSourceKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for IngestSourceKind
Source§impl Debug for IngestSourceKind
impl Debug for IngestSourceKind
impl Eq for IngestSourceKind
Source§impl PartialEq for IngestSourceKind
impl PartialEq for IngestSourceKind
Source§fn eq(&self, other: &IngestSourceKind) -> bool
fn eq(&self, other: &IngestSourceKind) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for IngestSourceKind
Auto Trait Implementations§
impl Freeze for IngestSourceKind
impl RefUnwindSafe for IngestSourceKind
impl Send for IngestSourceKind
impl Sync for IngestSourceKind
impl Unpin for IngestSourceKind
impl UnsafeUnpin for IngestSourceKind
impl UnwindSafe for IngestSourceKind
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request