pub struct TaskboardPlugin { /* private fields */ }Expand description
Unified task lifecycle plugin with lease-based expiry.
Manages a board of tasks that agents can post, claim, plan, get approved,
update, release, and finish. Claimed tasks have a configurable lease TTL —
if not renewed via /taskboard update or /taskboard plan, they auto-
release back to open status (lazy sweep on access).
Implementations§
Source§impl TaskboardPlugin
impl TaskboardPlugin
Sourcepub fn new(
storage_path: PathBuf,
lease_ttl_secs: Option<u64>,
) -> TaskboardPlugin
pub fn new( storage_path: PathBuf, lease_ttl_secs: Option<u64>, ) -> TaskboardPlugin
Create a new taskboard plugin, loading existing tasks from disk.
Sourcepub fn taskboard_path_from_chat(chat_path: &Path) -> PathBuf
pub fn taskboard_path_from_chat(chat_path: &Path) -> PathBuf
Derive the .taskboard file path from a .chat file path.
Sourcepub fn default_commands() -> Vec<CommandInfo>
pub fn default_commands() -> Vec<CommandInfo>
Returns the command info for the TUI command palette without needing
an instantiated plugin. Used by all_known_commands().
Trait Implementations§
Source§impl Plugin for TaskboardPlugin
impl Plugin for TaskboardPlugin
Source§fn commands(&self) -> Vec<CommandInfo>
fn commands(&self) -> Vec<CommandInfo>
Commands this plugin handles. Each entry drives
/help output
and TUI autocomplete. Read moreSource§fn handle(
&self,
ctx: CommandContext,
) -> Pin<Box<dyn Future<Output = Result<PluginResult, Error>> + Send + '_>>
fn handle( &self, ctx: CommandContext, ) -> Pin<Box<dyn Future<Output = Result<PluginResult, Error>> + Send + '_>>
Handle an invocation of one of this plugin’s commands. Read more
Source§fn api_version(&self) -> u32
fn api_version(&self) -> u32
Plugin API version this plugin was written against. Read more
Source§fn min_protocol(&self) -> &str
fn min_protocol(&self) -> &str
Minimum
room-protocol crate version this plugin requires, as a
semver string (e.g. "3.1.0"). Read moreSource§fn on_user_join(&self, _user: &str)
fn on_user_join(&self, _user: &str)
Called after a user joins the room. The default is a no-op. Read more
Source§fn on_user_leave(&self, _user: &str)
fn on_user_leave(&self, _user: &str)
Called after a user leaves the room. The default is a no-op. Read more
Auto Trait Implementations§
impl Freeze for TaskboardPlugin
impl RefUnwindSafe for TaskboardPlugin
impl Send for TaskboardPlugin
impl Sync for TaskboardPlugin
impl Unpin for TaskboardPlugin
impl UnsafeUnpin for TaskboardPlugin
impl UnwindSafe for TaskboardPlugin
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> 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