session-mechanism:硬档处置钉死「必须建接续会话 + 报 automation id」

用户选 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(确认没有判据锚定改的这两句)。
This commit is contained in:
admin committed 2026-10-15 09:32:57 +08:00
1 parent f53d86dd4b
commit 80ddf1220d
1 file changed
+4 -2
@@ -346,8 +346,10 @@ def _note(level, size, soft=SOFT_BYTES, hard=HARD_BYTES):
'③ 让脚本内部聚合、只 print 摘要。⛔ 不要再开新任务。') '③ 让脚本内部聚合、只 print 摘要。⛔ 不要再开新任务。')
else: else:
act = ('处置(硬档 · 顺序固定):① **立刻停手**,本轮不再开新任务;② 写接续包(含「不要重做」清单);' act = ('处置(硬档 · 顺序固定):① **立刻停手**,本轮不再开新任务;② 写接续包(含「不要重做」清单);'
'③ **建接续会话**(走一次性 automation —— 自动化是**唯一**能开新会话的通道);' '③ 🔴 **必须建接续会话**(走一次性 automation —— 自动化是**唯一**能开新会话的通道),'
'④ 在**给用户的最后一条回复里用陈述句**告知「已登记自动接续,约 N 分钟后自动开新会话,不需要你操作」。' '**建完把 automation id 写进给用户的最后一条回复**;'
'④ 在**给用户的最后一条回复里用陈述句**告知「已登记自动接续(automation id `xxx`),'
'约 N 分钟后自动开新会话,不需要你操作」。'
'⚠️ **钩子开不了新会话** ⇒ 这四步必须由**你自己**做完;本钩子只负责"叫"。') '⚠️ **钩子开不了新会话** ⇒ 这四步必须由**你自己**做完;本钩子只负责"叫"。')
return head + '\n' + why + '\n' + act return head + '\n' + why + '\n' + act