tinyhumansai/openhuman · error

todo_clear: {e}

Error message

todo_clear: {e}

What it means

Generic wrapper from todo_clear: wiping every card from the board failed. The underlying {e} is the ops clear error — usually a board file read/write or thread-location failure. The operation is irreversible on success, so treat failures before confirming cause carefully.

Source

Thrown at src/openhuman/threads/todos/tools.rs:516

    fn description(&self) -> &str {
        "Remove every card from a thread's todo board, leaving it empty. \
         Irreversible. Only use when the user wants to clear the whole board."
    }

    fn parameters_schema(&self) -> serde_json::Value {
        json!({ "type": "object", "properties": { "thread_id": thread_id_prop() } })
    }

    fn permission_level(&self) -> PermissionLevel {
        PermissionLevel::Write
    }

    async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
        log::debug!("[tool][todos] clear invoked");
        let location = board_location(&self.config, &args);
        let snapshot = ops::clear(&location)
            .await
            .map_err(|e| anyhow::anyhow!("todo_clear: {e}"))?;
        snapshot_to_result(snapshot)
    }
}

#[cfg(test)]
mod tests {
    use super::*;
    use crate::openhuman::tools::traits::ToolScope;

    fn cfg() -> Arc<Config> {
        Arc::new(Config::default())
    }

    #[test]
    fn names_and_levels() {
        let c = cfg();
        assert_eq!(TodoListTool::new(c.clone()).name(), "todo_list");
        assert_eq!(

View on GitHub (pinned to 7491200858)

Solutions

  1. Read {e} for the concrete clear failure
  2. Confirm the target thread (or scratch board) exists
  3. Re-run todo_list to see whether the board state is intact before retrying
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at src/openhuman/threads/todos/tools.rs:516 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/cea79e933c971830. Report an issue: GitHub.