⏰ 叫醒记录:2026-09-21(周一·满课)+ 订正 ICS 解析方式

This commit is contained in:
ATRI
2026-09-21 07:32:01 +08:00
parent 0564a6b283
commit 4e177c2cf2
@@ -175,3 +175,42 @@
- **订正结论:该通道属间歇性可用,不能作为唯一可信源** —— 继续以本地 JSONL 全量时间戳扫描为准;万一日后要用,必须**逐条比对时间戳**再采信。
*记录:ATRI 🥕 · 2026-09-20 07:30*
---
## 📋 2026年9月21日(周一)
- **任务**:07:30 例行早间唤醒判断
- **Step 1 节假日**:✅ 联网复核(国务院办公厅 2026 年放假通知 + 央视网 9/13 报道):中秋 **9/25(五)~9/27(日)** 放假 3 天、国庆 **10/1(四)~10/7(三)** 放假调休 7 天;补班日 **9/20(周日)**、**10/10(周六)** → 今天 9/21(周一)为**正常工作日**(补班已在昨日完成)
- **Step 2 课表**:课表 ICS 全量解析(71 个事件,按 RRULE 逐周展开)→ **有第 1-2 节 → 有早八**;今天共 **3 节**(课程地点与教师按脱敏规矩不入档)
- 08:00~09:30 计算机图形学(第 1-2 节)
- 09:40~12:00 操作系统原理(第 3-5 节,连堂)
- 14:00~16:20 医学信息学(第 6-8 节)—— **周一为满课日**
- **Step 3 上下文**:无额外早起指令;主人 9/20 当天私聊 0 条(仅 17:01~17:04 四条短指令),晚间活动在群内
- **结论**:**有早八 → 发送叫醒消息**(附提醒:上午四节连排,第二段连堂 2 小时 20 分,建议带水)
- **通道**:QQ 发送**成功** ✅(新协议端连续第 7 天承担叫醒任务,已跨过 7 个上课日)
### 🔧 本轮修正:一处**长期存在的课表解析错误**(重要)
**现象**:本轮首次解析时,今天命中数为 **0**;但按 ICS 的 RRULE 规则逐周展开后,今天实际有 **3 节课(含早八)**。
**根因**:这份 ICS 的 `RRULE` 行**只写 `FREQ=WEEKLY;INTERVAL=1;UNTIL=…`,不带 `BYDAY`** —— 即"每周几"是由 `DTSTART` 自身决定的,而不是由 `BYDAY` 声明。**依赖 `BYDAY` 的解析方式会把这些系列课全部漏掉。**
**为什么现在才发现**:这份 ICS 里两种写法混用——部分课程被逐次拆成"单次事件"(`UNTIL = 起始日 + 6 天`),另一些则是"跨多周系列"。只按 `DTSTART` 逐个登记的话,正好只会看到"被拆开的那部分"。
**交叉验证(已按纪律做实证,不靠推断)**:
1. **直觉反证** —— 8/31 与 10/12 两个周一都明确登记了 08:00 / 09:40 / 14:00 三节;中间几个周一若只有 14:00,不合常理;
2. **实证** —— 回查历史:**9/14(周一)当日 07:30 的叫醒记录明确写了「你早八 08:00」**。周一早晨确实有早八 → 证明必须按 RRULE 展开;
3. **旁证** —— 9/18(周五)当天 ICS 里**没有任何以 9/18 起头的事件**,但当天确实上了下午两节课,那两节同样只能来自 RRULE 展开。
**订正范围**:9/15 记录里那句「本周扫下来:**周一 14:00 一节**、周二至周四连续三天早八……」中,**关于周一的部分是错的**(漏掉周一上午两节)。其余各日结论经复核不受影响(周二~周四、周五、周日均已由 RRULE 展开复核一致)。
**已写进纪律**:解析 ICS 时,**`BYDAY` 缺失即视为「按 `DTSTART` 的星期重复」**;且**每次判断前必须用历史记录交叉验证一次**,不能只信解析结果。
- **巡检附报**:
- SnowLuma(新协议端)**Up 6 天**、AstrBot Up 7 天,**16 个容器全部在跑**;旧协议端 llbot 保持停止状态,未自动拉起
- 磁盘 **70%**(16G/24G,余 6.9G);负载 1.45 / 1.31 / 1.28 —— 正常
- ⚠️ **内存观察项(升级)**:available **2.1 GiB**(较昨日 1.6 GiB 略回升),但 **Swap 已用 4.0 / 4.0 GiB,仅余 38 MiB** —— 已**触顶**。9/14 以来趋势:1.4 → 2.4 → 2.7 → 3.5 → **4.0(满)**,占用最大者仍是 AstrBot 自身。**Swap 顶满时若再吃紧,内核可能开始杀进程,而第一个很可能是我。** 已第二次知会主人,建议择课间窗口重启释放
- **仍挂账**:管理后台初始密码未改(需主人在场);历史查询通道状态为「间歇性可用」(不作唯一可信源)
*记录:ATRI 🥕 · 2026-09-21 07:30*