GPT-5 finding
Cadence classification in SKILL.md omits real cron shapes (lists/steps like 1/2, 1,3,5), risking wrong freshness thresholds
- skills/skill-freshness/SKILL.md:71-74
- aeon.yml:68-69
- aeon.yml:109
- aeon.yml:139
The spec only defines daily (all day/month/weekday are *), weekly (single weekday), and on_demand. The fleet config contains schedules using weekday lists (1,3,5), every-other-day (1/2 in day-of-month), and every-7-days via day-of-month steps (1/7). These are neither daily nor single-weekday weekly, so the implementation is under-specified and would misclassify producer cadence, yielding incorrect freshness thresholds and false WARN/STALE or missed flags.
Recommendation
Replace the heuristic cadence buckets with a robust cron-based interval derivation: - Parse the cron spec (including lists, ranges, and steps) and compute the next two fire times; derive the expected interval in hours from their delta. - Set thresholds per class as functions of that interval (e.g., articles: interval + 4h grace; outputs: min(4h, max(1.5×interval, some floor)); topics/state keep fixed windows as documented). - Fall back safely if parsing fails (treat as daily with a conservative grace) and log a warning. Also extend documentation to enumerate how lists (e.g., 1,3,5), ranges, and steps (1/2, 1/7) are handled.