配置了一个按 RRULE 规则只在每周一 09:00 执行的自动化任务,但实际运行中在周二也触发了执行,且调度器计算的下一次执行时间竟然是周三,BYDAY=MO 的限制完全失效。
项目 | 详情 |
|---|---|
WorkBuddy 平台 | macOS Desktop 客户端 |
自动化名称 | App Store 教育榜周报(每周一 09:00) |
自动化 ID | automation-1782095024956 |
RRULE 配置 | FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0;BYSECOND=0 |
期望行为 | 每周一 09:00 执行一次 |
实际行为 | 周一执行后,周二又执行了一次,下次执行显示周三 |
name: App Store 教育榜周报(每周一 09:00)
status: ACTIVE
scheduleType: recurring
rrule: RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0;BYSECOND=0执行时间 | 星期 | 是否符合预期 |
|---|---|---|
2026-06-22 11:28 | 周一 | ✅ 首次创建时触发(非 RRULE 调度) |
2026-06-23 09:14 | 周二 | ❌ 不应执行 |
2026-06-24 08:50(预期) | 周三 | ❌ next_run_at 仍然不对 |
直接从 ~/.workbuddy/workbuddy.db 查询:
SELECT last_run_at, next_run_at FROM automation_runtime_state
WHERE automation_id = 'automation-1782095024956';结果:
last_run_at: 1782177276881 → 2026-06-23 09:14:36 (周二) ❌
next_run_at: 1782262200000 → 2026-06-24 08:50:00 (周三) ❌[2026-06-22 Mon 11:28] 首次运行成功(手动/创建触发)
[2026-06-23 Tue 09:10] 调度器自动触发运行 ← 不应触发
[2026-06-24 Wed 08:50] 下次计划运行 ← next_run_at 仍有误在平台修复前,只能手动暂停自动化(status = PAUSED),等到周一再手动激活。但这失去了自动化的意义。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。