yumao
36085f107d
feat: 新增节假日缓存,仅工作日生成与推送
- daily/holiday.py: 抓取 xiaoai.me 全年节假日并缓存到 .cache/holidays-<year>.json,
is_workday() 判定(法定节假日/周末休息,调休补班日上班),联网失败回退本地缓存
- scheduler: tick_once 前置工作日闸门,非工作日标记完成并跳过,判定失败降级为正常工作日避免漏跑
- config/.env.example: 新增 DAILY_WORKDAY_ONLY 开关(默认开)
- tests: test_holiday 8 例 + scheduler 非工作日闸门 2 例
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 17:51:09 +08:00
..
2026-07-17 18:12:00 +08:00
2026-07-17 18:12:00 +08:00
2026-07-02 11:31:16 +08:00
2026-07-17 18:12:00 +08:00
2026-07-14 10:40:14 +08:00
2026-07-17 18:12:00 +08:00
2026-07-17 18:12:00 +08:00
2026-07-18 17:01:20 +08:00
2026-07-23 17:51:09 +08:00
2026-07-02 11:31:16 +08:00
2026-07-14 10:31:49 +08:00
2026-07-17 18:12:00 +08:00
2026-07-18 16:53:19 +08:00
2026-07-18 17:01:20 +08:00
2026-07-23 17:51:09 +08:00
2026-07-17 18:12:00 +08:00
2026-07-02 11:31:16 +08:00
2026-07-18 13:49:37 +08:00
2026-07-18 16:55:47 +08:00
2026-07-17 18:12:00 +08:00
2026-07-23 17:51:09 +08:00
2026-07-17 18:12:00 +08:00
2026-07-17 18:12:00 +08:00
2026-07-17 18:12:00 +08:00
2026-07-09 11:37:55 +08:00
2026-07-02 11:31:16 +08:00