feat: 每日消耗任务触发时点 23:00 改为 23:20

- volc_limit_sync:_maybe_trigger_daily_consume 改分钟级判断(23:20 起触发),
  线程内 0-10 分钟随机抖动保留,实际执行窗口 23:20~23:30
- volc_consume:main 手动运行门卫同步 23:20 窗口(--force/--dry-run 不受限)
- docs/volc-quota-notes §9:consume clamp2 余额快照滞后在最新思路(§4.2 量化
  L=149,616)下确认为必改项,方向待定;消耗任务口径同步收紧标记 [x]
- 全仓文档/注释 23:00 统一同步为 23:20(AGENTS/README/docker-compose/两 docs)
This commit is contained in:
vibe-code
2026-08-13 06:08:26 +00:00
parent f86aa59af1
commit 6a2760bd03
7 changed files with 43 additions and 38 deletions
+5 -4
View File
@@ -1249,9 +1249,9 @@ def discover_monitored_models():
def _maybe_trigger_daily_consume():
"""
🕰️ 每日北京时间 23:00 触发免费额度消耗任务(洗过期资源包)。
🕰️ 每日北京时间 23:20 触发免费额度消耗任务(洗过期资源包)。
- consume:last_run:{北京日期} 去重(SETNX,当天只触发一次)
- daemon 线程执行,不阻塞主循环;线程内 0-10 分钟随机抖动,避免固定 23:00 被风控识别
- daemon 线程执行,不阻塞主循环;线程内 0-10 分钟随机抖动,避免固定 23:20 被风控识别
- 延迟 import volc_consume,避免模块级循环 import
"""
if not redis_client:
@@ -1260,8 +1260,9 @@ def _maybe_trigger_daily_consume():
now = time.time()
beijing_ts = now + (8 * 3600)
beijing_hour = time.gmtime(beijing_ts).tm_hour
if beijing_hour != 23:
return
beijing_min = time.gmtime(beijing_ts).tm_min
if beijing_hour != 23 or beijing_min < 20:
return # 23:20 起才触发(北京时间)
date_str = time.strftime("%Y-%m-%d", time.gmtime(beijing_ts))
lock_key = f"consume:last_run:{date_str}"
if redis_client.set(lock_key, "1", nx=True, ex=172800) is None: