config_duration_bad_unit

Diagnostic `nanook::config::duration_bad_unit`

Summary

invalid duration unit `{0}` in `{1}`

Help

supported units: s, m, h, d

Details

When this fires

The duration parser saw digits followed by a unit suffix it doesn't recognize. Only s, m, h, and d are supported (see Duration::unit_multiplier in crates/nanook-core/src/duration.rs). Common offenders are ms, min, sec, hr, w, y. This shows up when loading nanook.toml for any duration-bearing field (rule cooldown, escalate.after, collector interval, expr windows like avg(cpu)[5m]) or when an opt is coerced via Resolver::duration.

What to check

Stick to s, m, h, d. Sub-second precision isn't supported. Compound durations chain with no separator: 1h30m, 2d4h.

# bad
interval = "500ms"
# good
interval = "1s"