pub struct TaskStore { /* private fields */ }Expand description
File-backed task store. Tasks live in status-based directories beneath
the configured base directory:
{base}/{pending,in_progress,completed,failed}/{task_id}.json
Implementations§
Source§impl TaskStore
impl TaskStore
pub fn new(base_dir: PathBuf) -> Self
pub fn init(&self) -> SdkResult<()>
pub fn create_task(&self, task: &Task) -> SdkResult<()>
pub fn try_claim_next( &self, agent_id: AgentId, agent_name: &str, completed_task_ids: &[TaskId], ) -> SdkResult<Option<Task>>
pub fn mark_in_progress( &self, task_id: TaskId, agent_id: AgentId, ) -> SdkResult<()>
pub fn complete_task( &self, task_id: TaskId, agent_id: AgentId, result: TaskResult, ) -> SdkResult<()>
pub fn fail_task( &self, task_id: TaskId, agent_id: AgentId, error: String, ) -> SdkResult<()>
pub fn read_task(&self, task_id: TaskId) -> SdkResult<Task>
pub fn list_all_tasks(&self) -> SdkResult<Vec<Task>>
pub fn list_tasks_in_dir(&self, status_dir: &str) -> SdkResult<Vec<Task>>
pub fn completed_task_ids(&self) -> SdkResult<Vec<TaskId>>
pub fn recover_orphaned_tasks(&self) -> SdkResult<usize>
pub fn summary(&self) -> SdkResult<TaskSummary>
Auto Trait Implementations§
impl Freeze for TaskStore
impl RefUnwindSafe for TaskStore
impl Send for TaskStore
impl Sync for TaskStore
impl Unpin for TaskStore
impl UnsafeUnpin for TaskStore
impl UnwindSafe for TaskStore
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