pub struct ImproveParams<'a> {Show 23 fields
pub dataset_name: String,
pub session_ids: Option<Vec<String>>,
pub node_name: Option<Vec<String>>,
pub owner_id: Uuid,
pub tenant_id: Option<Uuid>,
pub feedback_alpha: f64,
pub extraction_tasks: Option<Vec<String>>,
pub enrichment_tasks: Option<Vec<String>>,
pub data: Option<String>,
pub build_global_context_index: bool,
pub run_in_background: bool,
pub llm: Arc<dyn Llm>,
pub storage: Arc<dyn StorageTrait>,
pub graph_db: Arc<dyn GraphDBTrait>,
pub vector_db: Arc<dyn VectorDB>,
pub embedding_engine: Arc<dyn EmbeddingEngine>,
pub ontology_resolver: Arc<dyn OntologyResolver>,
pub db: Option<Arc<DatabaseConnection>>,
pub session_store: Option<Arc<dyn SessionStore>>,
pub session_manager: Option<Arc<SessionManager>>,
pub add_pipeline: Option<&'a AddPipeline>,
pub checkpoint_store: Option<Arc<dyn CheckpointStore>>,
pub cognify_config: &'a CognifyConfig,
}Expand description
Parameters for improve.
All fields are required at construction time — Default is intentionally
not derived because several fields (owner_id, the engine handles, and
cognify_config) have no sensible default value. This forces every caller
to think about each dependency. Callers that omit optional behavior should
pass None explicitly for the Option<...> fields.
LIB-04 (Decision 8) introduced this struct to replace the previous 18
positional parameters. E-05 (this commit) extended it with three v2
power-user fields — extraction_tasks, enrichment_tasks, data —
matching Python’s ImprovePayloadDTO field-for-field. They are pure-data
fields and currently informational: the orchestrator does not yet branch
on them, but they are accepted by the constructor so callers (especially
the HTTP layer) can plumb the raw payload through without dropping fields.
Fields§
§dataset_name: StringDataset name to operate on (Stage 2 persistence + Stage 4 lookup).
session_ids: Option<Vec<String>>Session ids that drive Stages 1, 2, and 4. None or empty skips them.
node_name: Option<Vec<String>>Optional graph node-name filter applied to the memify (Stage 3) pass.
owner_id: UuidOwner UUID under which graph/session reads and writes are scoped.
tenant_id: Option<Uuid>Optional tenant UUID for multi-tenant deployments.
feedback_alpha: f64Mixing factor for feedback weight propagation (Stage 1).
extraction_tasks: Option<Vec<String>>Optional list of extraction-task identifiers (Python parity:
extraction_tasks: Optional[List[str]]). Currently informational —
reserved for future power-user overrides matching Python’s
ImproveKwargs.extraction_tasks.
enrichment_tasks: Option<Vec<String>>Optional list of enrichment-task identifiers (Python parity:
enrichment_tasks: Optional[List[str]]). Currently informational.
data: Option<String>Optional inline text payload (Python parity: data: Optional[str]).
Currently informational; reserved for future power-user overrides.
build_global_context_index: boolWhen true and not running in background, build the global context
index (graph summary) after Stage 3.
Mirrors Python’s build_global_context_index parameter.
Default false (opt-in) — matches Python parity.
run_in_background: boolWhen true, treat this as a background run: skips stages that
require the prior stage to have completed synchronously (e.g. the
global context index and the sync-graph stage).
Background dispatch is handled by the host (HTTP server or CLI); this flag is used only for stage-skipping logic parity with Python.
llm: Arc<dyn Llm>LLM handle (used by Stage 2 cognify-of-session-text).
storage: Arc<dyn StorageTrait>File storage handle.
graph_db: Arc<dyn GraphDBTrait>Graph database handle.
vector_db: Arc<dyn VectorDB>Vector database handle.
embedding_engine: Arc<dyn EmbeddingEngine>Embedding engine handle.
ontology_resolver: Arc<dyn OntologyResolver>Ontology resolver handle.
db: Option<Arc<DatabaseConnection>>Metadata DB connection. Required for Stage 4 (dataset lookup).
session_store: Option<Arc<dyn SessionStore>>Session backing store. Required for Stages 1 and 2.
session_manager: Option<Arc<SessionManager>>Session manager. Required for Stages 1 and 4.
add_pipeline: Option<&'a AddPipeline>Add pipeline (borrowed). Required for Stage 2.
checkpoint_store: Option<Arc<dyn CheckpointStore>>Checkpoint store. Required for Stage 4.
cognify_config: &'a CognifyConfigBorrowed cognify configuration used by Stage 2 persistence.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for ImproveParams<'a>
impl<'a> !UnwindSafe for ImproveParams<'a>
impl<'a> Freeze for ImproveParams<'a>
impl<'a> Send for ImproveParams<'a>
impl<'a> Sync for ImproveParams<'a>
impl<'a> Unpin for ImproveParams<'a>
impl<'a> UnsafeUnpin for ImproveParams<'a>
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> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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::RequestSource§impl<T, U, C> IntoWithContext<U, C> for Twhere
U: FromWithContext<T, C>,
impl<T, U, C> IntoWithContext<U, C> for Twhere
U: FromWithContext<T, C>,
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.