kuaifan 5a10f59df8 fix(task): 修复周期任务到点后无限复制重复任务
Carbon 3 的 addDays() 不接受字符串,自定义天数周期(loop="90")在
refreshLoop() 中抛 TypeError。LoopTask 先提交副本再刷新周期,异常后
副本与原任务的 loop_at 都留在 10 分钟窗口内,每分钟翻倍并在同一轮内
被 chunkById 继续扫到。

- refreshLoop:自定义天数转 int 且必须大于 0,拒绝 0 天周期
- LoopTask:复制、刷新周期、关闭旧周期放入同一事务,失败整体回滚;
  锁定并复核原任务防并发重入;refreshLoop 失败即抛出;只处理本轮
  开始前已存在的任务
- ai-kb:更正周期任务按 loop_at 到点生成(而非完成时生成)、不依赖
  end_at、会复制附件,并补充自定义天数须为正整数
2026-09-30 14:48:43 +00:00
..
2024-10-31 16:39:08 +08:00