revise bulk-clear to explicit ids per mara's feedback, fix clippy line count

This commit is contained in:
damocles 2026-08-02 15:29:21 +02:00 committed by mara
commit bc69ee3b8f
7 changed files with 228 additions and 181 deletions

View file

@ -41,18 +41,15 @@ pub struct AckUntilArgs {
pub up_to: i64,
}
/// MCP tool args for `ack_todos_until`.
/// MCP tool args for `mark_todos_done`.
#[derive(Debug, serde::Deserialize, schemars::JsonSchema)]
pub struct AckTodosUntilArgs {
/// Highest todo id to bulk-clear: every pending todo (bash-task
/// completions, matrix unread, forge activity) with `id <= up_to` is
/// acked in one call — the todo-store analogue of `ack_until` for the
/// message inbox. `get_loose_ends` suggests a value in its truncation
/// summary when there are more todos than it renders individually;
/// pass that value (or the highest id you've actually triaged) to
/// clear the backlog in one shot instead of cancelling ids one at a
/// time.
pub up_to: i64,
pub struct MarkTodosDoneArgs {
/// The specific todo ids to clear (from `get_loose_ends`'s `todo #N`
/// lines) — every id in the list is acked in one call. Deliberately a
/// list, not a range/threshold: only clears exactly what you pass, so
/// you don't risk acking a todo you haven't actually looked at. Unknown
/// or already-acked ids are silently skipped.
pub ids: Vec<i64>,
}
/// MCP tool args for `remind`. Exactly one of `delay_seconds` or