fix(qdreader): limit archive cron grace window

This commit is contained in:
2026-05-19 16:17:38 +08:00
parent bca0aaa2f7
commit 557b5ae9c2
5 changed files with 29 additions and 14 deletions
+1 -1
View File
@@ -133,7 +133,7 @@ set(key, value)
4. 写入单账号当日结果 `qdreader_last_result_json`,包括 `ok/msg/time/source/runId`
5. 写入当日批次日志 `qdreader_last_run_json`,包括触发来源、开始/结束时间、成功/失败/总数和每账号结果;即使账号执行异常也会记录失败日志。
6. 插件内有两个 cron`0 0 * * *``15 7 * * *`
7. 每日 00:00 触发时只做日志归档;为防止调度器延迟,系统触发发生在 00:00-00:59 都按归档处理:把上一份 `qdreader_last_run_json` 按完成日期写入 `qdreader_archive_json`,再清空 `qdreader_last_result_json` / `qdreader_last_run_json`;不请求签名网关、不执行签到。
7. 每日 00:00 触发时只做日志归档;为防止调度器延迟,系统触发发生在 00:00-00:04 都按归档处理:把上一份 `qdreader_last_run_json` 按完成日期写入 `qdreader_archive_json`,再清空 `qdreader_last_result_json` / `qdreader_last_run_json`;不请求签名网关、不执行签到。
8. 每日 07:15 触发时只执行签到并反馈结果,不做归档。
9. 汇总每个账号签到结果。
+6 -5
View File
@@ -4,7 +4,7 @@
//[author: Hermes]
//[service: BOSS]
//[class: 工具类]
//[version: 2.5.3]
//[version: 2.5.4]
//[platform: web,qq,wx,tg,tb,fs,we]
//[public: false]
//[price: 0]
@@ -261,7 +261,7 @@ function contentText() {
}
function usage() {
return [
"启点读书签到插件 v2.5.3",
"启点读书签到插件 v2.5.4",
"【一级菜单】",
"账号管理:启点账号",
"执行查询:启点查询",
@@ -455,9 +455,10 @@ function latestArchiveForVisible(uids) {
function cronMode() {
var d = new Date()
var h = d.getHours ? d.getHours() : 7
// Autman cron can be delayed by scheduler/load; any system-triggered run during 00:00-00:59 is treated as archive-only.
// This avoids a dangerous midnight sign if the 00:00 archive cron is not executed exactly at minute 0.
if (h === 0) return "archive"
var m = d.getMinutes ? d.getMinutes() : 15
// Autman cron can be delayed by scheduler/load; allow a 5-minute archive-only window after 00:00.
// Outside 00:00-00:04, system-triggered runs follow the business sign path.
if (h === 0 && m < 5) return "archive"
return "sign"
}
function formatArchiveReply(ret) {