{"record":{"id":"ef38a6bfe964d1c8","repo":"tinyhumansai/openhuman","slug":"missing-scheduling-parameters","errorCode":null,"errorMessage":"Missing scheduling parameters","messagePattern":"Missing scheduling parameters","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/tools/impl/system/schedule.rs","lineNumber":399,"sourceCode":"                \"Created recurring job {} (expr: {}, next: {}, cmd: {})\",\n                job.id,\n                job.expression,\n                job.next_run.to_rfc3339(),\n                job.command\n            )));\n        }\n\n        if let Some(value) = delay {\n            let job = cron::add_once(&self.config, value, command)?;\n            return Ok(ToolResult::success(format!(\n                \"Created one-shot job {} (runs at: {}, cmd: {})\",\n                job.id,\n                job.next_run.to_rfc3339(),\n                job.command\n            )));\n        }\n\n        let run_at_raw = run_at.ok_or_else(|| anyhow::anyhow!(\"Missing scheduling parameters\"))?;\n        let run_at_parsed: DateTime<Utc> = DateTime::parse_from_rfc3339(run_at_raw)\n            .map_err(|error| anyhow::anyhow!(\"Invalid run_at timestamp: {error}\"))?\n            .with_timezone(&Utc);\n\n        let job = cron::add_once_at(&self.config, run_at_parsed, command)?;\n        Ok(ToolResult::success(format!(\n            \"Created one-shot job {} (runs at: {}, cmd: {})\",\n            job.id,\n            job.next_run.to_rfc3339(),\n            job.command\n        )))\n    }\n\n    fn handle_cancel(&self, id: &str) -> ToolResult {\n        match cron::remove_job(&self.config, id) {\n            Ok(()) => ToolResult::success(format!(\"Cancelled job {id}\")),\n            Err(error) => ToolResult::error(error.to_string()),\n        }","sourceCodeStart":381,"sourceCodeEnd":417,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/tools/impl/system/schedule.rs#L381-L417","documentation":"handle_create_like reached its final branch having matched none of the scheduling inputs — no cron 'expression', no 'delay', no 'run_at'. It is the catch-all guard meaning the create request specified no when; nothing is persisted.","triggerScenarios":"Thrown at src/openhuman/tools/impl/system/schedule.rs:399 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide one of \"expression\" (cron), \"delay\" (duration), or \"run_at\" (RFC 3339 time)"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}