diff --git a/CLAUDE.md b/CLAUDE.md index 8cdcc38..03cadd8 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -65,15 +65,26 @@ ## 🔴 第一鐵律:wiki 是判準,不准跳過(2026-07-20/21 leo 兩度點破) -**要查任何東西之前,先搜尋 wiki——用 grep,不是只讀開頭幾行。** +**要查任何東西之前,先照索引走:`system-dev/wiki/INDEX.md` → 下層 `00-INDEX.md` → 卡片。** + +🔴 **2026-08-15 leo 糾正:本條原本寫的是「用 grep」,那是錯的。** +grep 是平面搜尋,它繞過索引,於是**索引永遠不會被驗證、也永遠不會變準**—— +而 AI 又用「索引可能不準」當理由繼續 grep。這是自我實現的。 +實測那天:`matrix/arcrun` 的 wiki 有 64 張卡,**只有 1 張走得到索引** +(唯一那張是 leo 手寫的;63 張機器產的卡從沒加入任何索引), +而 AI 從沒發現——**因為 grep 找得到,破損就永遠不會浮現。** + +**grep 不是禁令,是異常訊號**: +1. 先照索引走 +2. 索引走不到 → **那是索引壞了,先講出來**(哪一層缺、缺什麼) +3. 講完才准 fallback 用 `grep -rin "<關鍵字>" system-dev/wiki/` + +⇒ 每一次 grep 都該留下一筆「索引缺陷」,而不是變成習慣。 +(全面禁止 grep 也是錯的——索引壞掉那天 AI 會瞎掉,而且沒人知道。) > leo:「花很多力氣去產生 wiki,最重要的就是要可以查詢,**結果要查的時候就跳過,那就白寫了**。」 > 「重點是你自己的記憶對嗎?而你有按照規定去切實讀 wiki 嗎?」 -```bash -grep -rin "<本題關鍵字>" system-dev/wiki/ -``` - **三條硬規則**: 1. **wiki 與程式碼/歷史文件衝突 → 以 wiki 為準**。程式碼反映「還沒清乾淨」,不等於「還在用」。 2. wiki 寫「不可動/待廢除/進行中」→ **讀它的解除條件並逐條核對**。那是當時狀態,不是永久禁令。