pub struct ExecutionTrackingService { /* private fields */ }Implementations§
Source§impl ExecutionTrackingService
impl ExecutionTrackingService
pub const fn new(repository: Arc<ExecutionStepRepository>) -> Self
pub async fn track( &self, task_id: TaskId, content: StepContent, ) -> Result<ExecutionStep>
pub async fn track_async( &self, task_id: TaskId, content: StepContent, ) -> Result<(TrackedStep, ExecutionStep)>
pub async fn complete( &self, tracked: TrackedStep, result: Option<Value>, ) -> Result<()>
pub async fn complete_planning( &self, tracked: TrackedStep, reasoning: Option<String>, planned_tools: Option<Vec<PlannedTool>>, ) -> Result<ExecutionStep>
pub async fn fail(&self, tracked: &TrackedStep, error: String) -> Result<()>
pub async fn fail_step( &self, step_id: &StepId, started_at: DateTime<Utc>, error: String, ) -> Result<()>
pub async fn get_steps_by_task( &self, task_id: &TaskId, ) -> Result<Vec<ExecutionStep>>
pub async fn get_step(&self, step_id: &StepId) -> Result<Option<ExecutionStep>>
pub async fn fail_in_progress_steps( &self, task_id: &TaskId, error: &str, ) -> Result<u64>
pub async fn track_understanding( &self, task_id: TaskId, ) -> Result<ExecutionStep>
pub async fn track_planning( &self, task_id: TaskId, reasoning: Option<String>, planned_tools: Option<Vec<PlannedTool>>, ) -> Result<ExecutionStep>
pub async fn track_planning_async( &self, task_id: TaskId, reasoning: Option<String>, planned_tools: Option<Vec<PlannedTool>>, ) -> Result<(TrackedStep, ExecutionStep)>
pub async fn track_skill_usage( &self, task_id: TaskId, skill_id: SkillId, skill_name: impl Into<String>, ) -> Result<ExecutionStep>
pub async fn track_tool_execution( &self, task_id: TaskId, tool_name: impl Into<String>, tool_arguments: Value, ) -> Result<(TrackedStep, ExecutionStep)>
pub async fn track_completion(&self, task_id: TaskId) -> Result<ExecutionStep>
Trait Implementations§
Source§impl Clone for ExecutionTrackingService
impl Clone for ExecutionTrackingService
Source§fn clone(&self) -> ExecutionTrackingService
fn clone(&self) -> ExecutionTrackingService
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ExecutionTrackingService
impl !RefUnwindSafe for ExecutionTrackingService
impl Send for ExecutionTrackingService
impl Sync for ExecutionTrackingService
impl Unpin for ExecutionTrackingService
impl !UnwindSafe for ExecutionTrackingService
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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 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>
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