"工具鏈"
- 跨 surface 鏡像的連結轉換 mapping 要窮盡、不能靠猜
skill 鏡像從 .claude/skills/ 複製到 content/skills/ 時,references/principles/ 的相對連結要轉成 /report/ 的真實路徑。mapping table 不完整會讓 CI 反覆 broken link,每次修一批漏一批。窮盡 mapping 的方法是列出所有 principle 檔案再逐一找對應 report 卡,不是靠 slug 精確匹配碰運氣。
- 檢查規則的作用域要顯式列舉:零 error 可能是沒被檢查
新增與既有受檢目錄同類的內容目錄時、或工具鏈長期零 error 卻累積出違規時使用。規則的作用域由路徑常數決定、該常數常同時被多個檢查共用,擴作用域會連帶擴語意;作用域是獨立於規則內容的 fact,驗收方式是先確認新規則對已知違規報錯。
- 等比縮放不管空間分配:用了 sizing 套件、版面仍會擠壓
用了響應式 / 等比縮放套件、版面仍然溢出或內容被壓縮,懷疑套件失效時使用。換算工具工作在常數層、空間分配發生在 layout 協商層,兩層獨立 — 工具靜默不等於該層無問題,「有用 X 套件」不構成該維度的品質保證
- 非互動環境裡,要人停下來看的關卡表現成當機,而繞過它的旗標看起來像環境適配
一條會改動別人也在用的東西的指令跑不完、或印了警告仍然成功時,用來判斷剛才繞過的是故障還是關卡
- 廢除一項共用資產時,它的前提與它的效果都在自己看不到的那一側
刪掉一個被別的專案裝過的檢查、腳本或設定之前,用來確認哪些判斷本地驗得到、哪些驗不到
- 破壞性指令的目標用變數的字串截取組出來時,審核的人看不到要刪什麼;空值、尾斜線與截取對不上會改變刪除範圍,而這類清理夾在檢查指令裡時,核准一次檢查就核准了一次刪除
要寫或核准一條含 rm、清理或覆蓋動作的 shell 指令,而它的目標路徑來自變數或字串截取,或那個刪除動作夾在一條檢查、正對照指令的結尾時讀