📚職涯停看聽・知識庫← 總部儀表板
📅最後更新:2026/06/22
📑 目錄

RCF-099:「憑記憶斷言」家族 meta 收斂規則 + 獨立驗證層 + 旗標 logging

日期:2026-06-21 觸發條件:條件 1(新增 HARD STOP)+ 條件 4(修改核心執行步驟)→ RCF-084 全 repo 觸點掃描 作業模式:🎯 策略 / 方案多輪比較(規則式 vs agent 式對打) 來源:tasks.md L213 評估;Tim 五輪 gate(含「全面盤點檢討,不要想到什麼才做什麼」直接升規)後選「完整」


背景:評估從「加規則」翻轉為「收斂規則 + 補驗證層」

L213 原問「憑記憶斷言緩解:規則式 vs agent 式對打」。前四輪評估我自己重蹈該家族的病(A→C 組合→D 來源欄,逐輪「想到什麼加什麼」),第五輪 Tim「全面盤點」後做全 repo 觸點掃描才看到全貌:

全面盤點關鍵發現

  1. 規則防線已飽和:針對此失效家族的既有 RCF 至少 7 條——RCF-006(五維度)/ RCF-010(缺口導向收斂)/ RCF-035(已讀清單先行)/ RCF-036(Q7-Q11 格式化)/ RCF-038(已讀清單強制完整讀取)/ RCF-039(先列應讀再標)/ RCF-060(分析模式禁壓縮摘要)+ IAUD 合規層①+Q7+RCF-070/082/084。
  2. 仍復發:IMP-111 ≥16 次、IMP-166/177 跨 14 領域(improvements.md 全掃 22 處)。~10 道規則未根治。
  3. 系統早有 pending 正解:improvements.md 多 session「📋 升規待確認:強烈建議收斂為通用 meta 規則取代逐領域 HARD STOP」。
  4. 真缺口是「驗證層為零」:HQ 規則層極厚、獨立驗證層為零,唯一攔截=Tim 手動 gate。

→ 結論翻轉:不該再加第 8 條逐領域規則(含我自己推的「方案 D 來源欄」);應 (1) 收斂為 1 條 meta 規則 (2) 補唯一真缺口「獨立驗證層」(3) 旗標問題先 logging 再診斷。


三方案對打結論

方案 判定 理由
規則式 A(散文)/ D(來源欄結構) ❌ 撤回 = 第 8 條逐領域 HARD STOP,正是 improvements.md 判定無效的模式;7 條已飽和
meta 收斂規則 ✅ 主推(治本) 系統 pending 正解;1 條取代逐領域,新缺口歸入不再新增
agent 式 B 窄觸發 ✅ 補驗證層 唯一真新層;限對外/SoT/不可逆;父傳檔路徑給唯讀 sub-agent 驗 claim 真偽
機械式(soplint) 「斷言有無工具支撐」是對話行為非檔案狀態,靜態查不到
維持現狀 兜底 Tim gate + rigor loop 為上線前偵測層

兩失效模式切分(方案配對關鍵)

  • Mode 1 漏讀(沒讀就斷言,最高頻)→ meta 規則「斷言須對應本次工具調用、無對應標【未驗證假設】」攔截。
  • Mode 2 讀錯/灌水(讀了但過度宣稱)→ B 窄觸發 claim 驗證器(重讀對應檔驗矛盾)。

落地內容(三工作流)

(1) meta 收斂規則(CLAUDE.md 新 HARD STOP「查照第一輪窮舉 meta 規則(收斂層)」)

單一治本原則:「查照第一輪即結構化框架窮舉;任何現況/事實斷言必須對應本次對話實際工具調用,無對應→標【未驗證假設】;涉 SoT/規則/散落清單變更時,全 repo grep 為查照階段交付物(非執行階段)。」

  • 既有 RCF-035/036/038/039/060 + IAUD①/Q7 + RCF-071/084 全 repo 掃描要求 → 皆為本 meta 規則「實例」;新缺口歸入本規則,不再新增逐領域 HARD STOP
  • 既有 RCF 為歷史決策記錄(不刪),但操作層以本 meta 規則為單一治本來源。

(2) 獨立驗證層(B 窄觸發)

對外交付 / SoT 變更 / 不可逆操作三類高風險查照,執行前可觸發「claim 驗證 sub-agent」:父傳(斷言 + 對應檔路徑)→ 唯讀 sub-agent 重讀驗真偽。治 Mode 2。

(3) 旗標 logging(knowledge-hook.py)

新增 _pending_flag.log(gitignore,runtime log)記每次 TOUCH/UNLINK + prompt 前 40 字 + 時間 → 實證旗標再生源,取代憑記憶推測。先 logging 後修(殘留未驗證點:Stop-hook 再呼叫是否走 UserPromptSubmit 重建旗標 → 待 log 累積後判定)。


影響範圍(RCF-084 觸點)

  • CLAUDE.md:新 HARD STOP meta 規則 section + 快速索引 +1 列 + 版本 v4.1→v4.2
  • knowledge-hook.py:flag logging(已測試通過)
  • 既有 RCF-035/036/038/039/060:歷史記錄不動,操作層歸入 meta 規則
  • 部門 CLAUDE.md:收尾/查照規則指針化自動繼承;主檔 meta 規則為 HARD STOP → 同步規則觸發(多數指針化)
  • rejected-evaluations.md:方案 D(來源欄)+ 散文規則 A 加碼 → 記為否決
  • tasks.md L213 [x]

信念變更

  • from:「憑記憶斷言=缺規則 → 加規則」→ to:「規則已飽和(7+ 條仍復發 16 次)→ 收斂為 1 條 meta 規則 + 補『驗證層』才是真缺口」
  • from:「規則式 vs agent 二選一」→ to:「meta 規則治 Mode 1(漏讀)+ agent 窄觸發治 Mode 2(讀錯),互補」
  • trigger:Tim「全面盤點不要想到什麼才做什麼」+ 全 repo 掃描揭露規則飽和 + 系統 pending 正解
  • 信心変化:+(治本方向從擴張轉收斂,對齊系統累積學習);自評:本評估前四輪自身即犯該家族病,第五輪全掃才收斂,再證 meta 規則之必要

2026-06-22 補記:收斂雙向判準(IMP-180,Tim 親自指出)

觸發:條件 1(修改 HARD STOP meta 規則)。不另鑄新 RCF 號——遵本規則自身「不為本失效家族再新增逐領域 HARD STOP」反碎片化哲學,以修記方式併入。

缺口(IMP-180)

本規則原文「輪數不是收斂依據」(RCF-010 沿用、CLAUDE.md:641)為單向表述:原意禁「用輪數判『已收斂可停』」。但 2026-06-22 L40-L44 SEO 系列,Claude 反向誤用——拿「已修正 N 次/不再加輪/已很嚴謹」當停止藉口。實證打臉:被 Claude 自評「收斂」後 Tim 每次追問都揪出真缺失(72% 高估→校準 36%;「≈0% 創作」單篇外推→58% 需起草;「36% 免簽」→168/168 開頭無標記、carve-out 100% 必要)。根因=Claude 對「自己已收斂」的自評不可靠(連 5 輪誤判),且此自評誤判在「Tim 不追問」的任務會靜默發生(無人 gate)。

修正(寫入 CLAUDE.md:641 後「收斂雙向判準」子條 + AGENTS.md 鏡像)

  1. 判據=正確性(真缺失歸零),非輪數(雙向:既不判「可停」、也不當「停止藉口」)。
  2. 宣告收斂時,承重斷言必須已『工具驗證』(grep/read/curl/實跑)而非自評——不論 Tim 是否追問(堵「自評收斂、停太早」根因,非只補 Tim-gate 反應式路徑)。
  3. 無工具可驗者(純判斷)→ 明標「判斷非可驗事實」+ 換角度重檢前提。
  4. Tim 再追問=預設「重新驗證承重斷言」,非「重述前結論/說明判斷依據」;原 RCF-010「不重跑全套」僅在承重斷言已工具驗證且零缺失時成立。
  5. 適用範圍=五維度「複雜任務判斷」表中需書面輸出者(簡單任務不在此列)。
  6. 與獨立驗證層 B 互補:B 治「讀錯/灌水」(Mode 2),本條治「自評收斂、停太早」。

自我實證(recursive)

本補記的評估自身歷 5 輪查照(v1→v5),每輪都以工具驗證(非自評)揪出真缺失:v2 補「Tim 追問重驗」但仍依賴自評(承重缺失)→ v3 改「任何收斂宣告須工具驗證」→ v4 補範圍對齊 + B 互補 → v5 實讀 CLAUDE.md:644 表發現 v4 範圍標籤「SoT/不可逆/評估型」憑記憶不符表格(IMP-111 再現)→ 對齊表格用語。正是本規則『工具驗證非自評』的最佳示範——若每輪自評早就放行錯誤版本。

信念變更

  • from:「『輪數不是收斂依據』=多輪後可宣告收斂、不重跑;Claude 可自評是否收斂」→ to:「收斂唯一判據=正確性(工具驗證非自評);連續多輪每輪揪真缺失=鐵證未收斂;自評收斂不可靠,承重斷言宣告收斂時即須工具驗證(不待 Tim 追問)」
  • trigger:Tim「每次都有真實缺失,不應以檢查輪數作為收斂依據,應以正確性」(親自指出)
  • 信心変化:+(補單向理解漏洞,收斂判準從努力量改為工具驗證的正確性)
← 返回 決策記錄