From 80ddf1220de34e7624abfaf9dfcb0888ba47690a Mon Sep 17 00:00:00 2001 From: maogeigei Date: Thu, 15 Oct 2026 09:32:57 +0800 Subject: [PATCH] =?UTF-8?q?session-mechanism=EF=BC=9A=E7=A1=AC=E6=A1=A3?= =?UTF-8?q?=E5=A4=84=E7=BD=AE=E9=92=89=E6=AD=BB=E3=80=8C=E5=BF=85=E9=A1=BB?= =?UTF-8?q?=E5=BB=BA=E6=8E=A5=E7=BB=AD=E4=BC=9A=E8=AF=9D=20=EF=BC=8B=20?= =?UTF-8?q?=E6=8A=A5=20automation=20id=E3=80=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 用户选 B 方案(只改规则文字,不加自测判据)。 改的是 `session-log-guard.py` 日志硬档(8 MiB)的处置文案: · ③ 由「建接续会话」改为「🔴 **必须建接续会话**」,并加「**建完把 automation id 写进 给用户的最后一条回复**」; · ④ 告知语补上 id:「已登记自动接续(automation id `xxx`),约 N 分钟后自动开新会话」。 为什么必须有这一句(实测缺口):2026-10-14 本会话已到三级告警(`.budget-alert-level` 记 `23715e76…→ 3`),而接续会话**一封都没建** —— 宿主库里名字/提示含「接续」「交接」 的排期命中 **0 条**。根因是钩子只负责「叫」(源码明写「钩子开不了新会话」), 建会话得由会话里的模型走一次性 automation;少了「必须建 + 报 id」这句, 叫完仍然可能没人建。 ⛔ 不动架构文档:references/architecture.md §③ 讲的是接续会话的**命名规范**(标题怎么起), 与本处「是否必须建」互补、不冲突。 验收:全量自测 PASS 110 / FAIL 0(确认没有判据锚定改的这两句)。 --- session-mechanism/scripts/hooks/session-log-guard.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/session-mechanism/scripts/hooks/session-log-guard.py b/session-mechanism/scripts/hooks/session-log-guard.py index 11bad88..2539cb1 100644 --- a/session-mechanism/scripts/hooks/session-log-guard.py +++ b/session-mechanism/scripts/hooks/session-log-guard.py @@ -346,8 +346,10 @@ def _note(level, size, soft=SOFT_BYTES, hard=HARD_BYTES): '③ 让脚本内部聚合、只 print 摘要。⛔ 不要再开新任务。') else: act = ('处置(硬档 · 顺序固定):① **立刻停手**,本轮不再开新任务;② 写接续包(含「不要重做」清单);' - '③ **建接续会话**(走一次性 automation —— 自动化是**唯一**能开新会话的通道);' - '④ 在**给用户的最后一条回复里用陈述句**告知「已登记自动接续,约 N 分钟后自动开新会话,不需要你操作」。' + '③ 🔴 **必须建接续会话**(走一次性 automation —— 自动化是**唯一**能开新会话的通道),' + '**建完把 automation id 写进给用户的最后一条回复**;' + '④ 在**给用户的最后一条回复里用陈述句**告知「已登记自动接续(automation id `xxx`),' + '约 N 分钟后自动开新会话,不需要你操作」。' '⚠️ **钩子开不了新会话** ⇒ 这四步必须由**你自己**做完;本钩子只负责"叫"。') return head + '\n' + why + '\n' + act