RCF-068 — Source-of-Truth 變更三步協議(IMP-163 升規)
類型:規則變更 日期:2026-06-03 觸發條件:條件 1 — 新增 HARD STOP 規則(主 CLAUDE.md 新增獨立章節「⛔ Source-of-Truth 變更三步協議」) 相關文件:
CLAUDE.md(主,v3.2→v3.3:快速索引 +1 行 + 新增獨立 HARD STOP 章節)- 受協議約束的範圍:
.claude/skills/+knowledge/operations/+ 所有部門*/CLAUDE.md+ 上游來源文件 + 官網 repo HTML/JSON-LD
問題背景
IMP-163「主架構升級時衍生檔案同步遺漏」出現 3 次(閾值 2):
- 2026-06-02 批次一:客戶追蹤遷移 Google Sheets 只改 3 檔,漏改 4 檔(諮詢完整輸出 / 初談收尾 / post-consultation-sop / consultation-sop-complete)。
- 2026-06-02 C18:陪跑定價 NT$7,000 同步 —— 同一價格硬編散落 2 repo 共 49 處,service-catalogue.md 雖宣稱「唯一定價來源」實際各檔自行硬編未引用,改一價需手動改 49 處極易漏。
- 2026-06-02 C17:S-code 體系散落 11 檔(SOP / 財務 / SKILL / CRM / 方法論 / 產品架構)無單一來源,新增 S1/S2 須手動同步 17 處。
根本模式:主架構 / Source-of-Truth 變更時,引用該架構的衍生檔案(SKILL / 部門 CLAUDE.md / SOP / 官網)未同步,殘留舊指令。現有「部門 CLAUDE.md 同步規則」HARD STOP 僅涵蓋部門 CLAUDE.md,未涵蓋 SKILL 檔 + SOP 文件 + 上游來源引用 + 官網 repo。
子模式:關鍵數字(定價)+ 分類碼(S-code)跨檔重複無單一來源。
考慮過的方案
| 方案 | 描述 | 優點 | 缺點 | 採用? |
|---|---|---|---|---|
| 方案 A | 擴充現有「部門 CLAUDE.md 同步規則」涵蓋範圍 | 不新增章節 | 兩者觸發條件不同(規則文字傳播 vs 數值傳播),混在一處讀者困惑 | ❌ 未採用 |
| 方案 B | 改造 service-catalogue.md 為可程式 import 的單一來源 | 真正消除重複 | .md / HTML 無 import 機制,技術不可行 | ❌ 未採用 |
| 方案 C(最終採用) | 新增獨立 HARD STOP 章節「Source-of-Truth 變更三步協議」(Grep 全庫 → 逐檔同步 → grep 驗證) | 觸發條件清晰獨立;明確涵蓋官網 repo;三步可機械驗證 | 快速索引 +1 條(21 條,未達 25 門檻) | ✅ 採用 |
最終決策
採方案 C,獨立章節而非子節。理由:
- 「部門 CLAUDE.md 同步規則」解決的是「規則文字的傳播」(主文件改 HARD STOP → 部門 CLAUDE.md 同步)。
- Source-of-Truth 三步協議解決的是「具體數值 / 分類碼 / 引用的傳播」(改一個定價/S-code → 全庫硬編處同步)。
- 兩者觸發條件完全不重疊,並列為兩個獨立 HARD STOP,共同覆蓋「改了什麼必須同步」的全域;放同一章節會讓快速索引讀者混淆觸發時機。
三步協議:① Grep 全庫(含官網 repo HTML/JSON-LD)→ ② 逐檔同步(窮舉式全改 / 示意式說明)→ ③ grep 驗證兩 repo 無殘留。
影響範圍
| 影響類型 | 具體項目 |
|---|---|
| 新增文件 | 本 RCF 檔案 |
| 修改文件 | CLAUDE.md(v3.2→v3.3:版本號 + 日期 + 快速索引 +1 行 + 新增獨立 HARD STOP 章節 ~35 行) |
| 觸發部門同步 | 無需逐一 Edit(協議為主文件新增規則,各部門 CLAUDE.md 以「詳見總部 CLAUDE.md」指針繼承) |
| 影響的 SKILL | 無直接修改;未來所有涉及定價 / S-code / 追蹤架構 / 系統清單變更的 SKILL 執行需遵守 |
驗證方式
下次任何定價 / S-code / 追蹤架構 / 系統清單變更時,執行流程應包含三步:變更當下即 Grep 全庫定範圍 → 逐檔同步 → grep 舊值驗證兩 repo 無殘留。若再次出現「改主文件但衍生檔案殘留舊值」(如 C18/C17 類),即代表協議未被遵守需重新檢討。C18(49 處)已實證此流程有效。