zeroclaw-labs/zeroclaw · error · anyhow::Error
Invalid cron expression: {expression} (expected 5, 6, or 7 f
Error message
Invalid cron expression: {expression} (expected 5, 6, or 7 fields, got {field_count}) What it means
Error "Invalid cron expression: {expression} (expected 5, 6, or 7 fields, got {field_count})" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-runtime/src/cron/schedule.rs:124
let field_count = expression.split_whitespace().count();
match field_count {
// standard crontab syntax: minute hour day month weekday
// Normalize weekday field from standard crontab semantics (0/7=Sun, 1=Mon, …, 6=Sat)
// to cron-crate semantics (1=Sun, 2=Mon, …, 7=Sat).
5 => {
let mut fields: Vec<&str> = expression.split_whitespace().collect();
let weekday = fields[4];
let normalized_weekday = normalize_weekday_field(weekday)?;
fields[4] = &normalized_weekday;
Ok(format!(
"0 {} {} {} {} {}",
fields[0], fields[1], fields[2], fields[3], fields[4]
))
}
// crate-native syntax includes seconds (+ optional year)
6 | 7 => Ok(expression.to_string()),
_ => anyhow::bail!(
"Invalid cron expression: {expression} (expected 5, 6, or 7 fields, got {field_count})"
),
}
}
/// Translate a single numeric weekday value from standard crontab semantics
/// (0 or 7 = Sunday, 1 = Monday, …, 6 = Saturday) to cron-crate semantics
/// (1 = Sunday, 2 = Monday, …, 7 = Saturday).
fn translate_weekday_value(val: u8) -> Result<u8> {
match val {
0 | 7 => Ok(1), // Sunday
1..=6 => Ok(val + 1),
_ => anyhow::bail!("Invalid weekday value: {val} (expected 0-7)"),
}
}
/// Enumerate the standard-crontab weekday values covered by `start-end`.
fn standard_weekday_range_values(start: u8, end: u8) -> Vec<u8> {View on GitHub (pinned to 88bb9c8533)
Solutions
- Use a cron expression with 5, 6, or 7 fields (min hour day month weekday [year]).
When it happens
Trigger: Thrown at crates/zeroclaw-runtime/src/cron/schedule.rs:124 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/152e6fa18fdc75a2.
Report an issue: GitHub.