7b83465acf
leo 2026-07-17 拍板:任何時刻每 repo 只有一份現行 SDD(status: active)。 - 新增 3-specs/SDD-LIFECYCLE.md:frontmatter 狀態標記(active|draft|paused|closed + superseded_by)+五條鐵律(單一活性/禁 CC 自建 SDD/規格變更走 pending-changes.md 等 confirm/開新 SDD 先逐條搬舊任務才准寫 code/session 開始回報三數字) - 新增 3-specs/pending-changes.md:規格變更緩衝區骨架(待裁決/已裁決留底) - TEMPLATE-sdd/design.md 掛 frontmatter(status: draft),移除舊「> 狀態」blockquote - sdd-guard.sh 升級:active>1 不論寫什麼檔一律 exit 2;寫 code 檔需恰好 1 份 active;老 repo 無 frontmatter 退回舊行為(統計排除 archive/ 與 TEMPLATE) - 新增 template/scripts/sdd-active-check.sh:獨立檢查,pre-commit/CI 可掛,>1 exit 1 - /sdd-check 加生命週期段(五鐵律摘要+三數字回報格式);template/CLAUDE.md 鐵律指向 SDD-LIFECYCLE.md - install.sh/update.sh 鋪齊新檔(issue #13 教訓:update 不補新檔=結構斷層) - 三情境 pipe-test 真跑通過:兩份 active 擋(2)/一份放行(0)/零 frontmatter 退舊行為(0) - 版號:遠端已被 issue #5(vault 萃取)佔走 1.14.0,本案改記 1.15.0 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.1 KiB
3.1 KiB
CLAUDE.md — [專案名稱]
導航牌。細節在兩個地方,不在這裡。 這個檔案不增長——超過 100 行就是放錯地方了。
絕對鐵律(違反 = 停手)
- 任何 code 變動前必須有對應 SDD,且遵守 SDD 生命週期鐵律(全文:
system-dev/docs/3-specs/SDD-LIFECYCLE.md):- 單一活性:任何時刻只有一份
status: active的 SDD,所有任務對應它的 tasks - 禁止自行建立 SDD:找不到對應 → 停手問 [負責人]
- 規格層變更:proposal 寫進
3-specs/pending-changes.md,等使用者「confirm」才動 - 開新 SDD(confirm 後):先把舊 SDD 未完成任務搬進新 SDD,才准寫 code
- session 開始回報:「現行規格〈名稱〉+未完成任務 N+待裁決 proposal M」
- 單一活性:任何時刻只有一份
- [技術棧限制,例如:前端只用 React,不引入其他框架]
- [其他專案特定限制]
工作流程(強制)
開始任一任務,按順序:
- 讀
system-dev/wiki/status.md(3 分鐘,了解當前狀態) - 確認有對應 SDD(
system-dev/docs/3-specs/) - 在回覆開頭宣告:
📋 已讀 SDD:<路徑> 🎯 對應 task:<編號> 🚧 執行範圍:<會動哪些檔案> - 完成後更新
system-dev/wiki/status.md
Wiki 讀取順序
| 檔案 | 時機 | 用途 |
|---|---|---|
system-dev/wiki/status.md |
session 開始第一件事 | 當前進度、下一步 |
system-dev/wiki/mistakes.md |
做新功能前 | 已知誤解 + 快速檢查清單 |
system-dev/wiki/decisions-summary.md |
遇到設計判斷時 | 架構決策快速查 |
開 session 由
SessionStarthook 自動注入 status 重點。沒自動接關 → 打/wiki-recall。 status/wiki 是 快照非即時狀態:讀快照 + 核實快照,不盲信。
整理 wiki 的方法(採集規則所在地)
要「採集/改寫 wiki」時,完整規則(三層架構、frontmatter 標籤、typed-edge 三元組、gloss 定義句) 不在本檔,而在下表。動手採集前先讀對應那份,不要憑印象做。
| 由誰整理 | 規則檔(採集當下必讀) |
|---|---|
| Claude Code(CC) | /wiki-init(初始化/採集)、/wiki-capture(存結論),規則寫在指令內文 |
| Claude.ai(Cowork) | system-dev/docs/SKILL.md(skill wiki-cowork-scan),與 CC 共用同一套規則 |
兩條路徑輸出格式相同、規則一致:gloss、typed-edge、標籤的寫法在兩份裡都有,任一方整理過另一方不覆蓋。
規範索引
| 檔案 | 內容 |
|---|---|
system-dev/docs/README.md |
文件分類規則 |
system-dev/docs/3-specs/ |
所有 SDD |
system-dev/docs/2-architecture/decisions/ |
架構決策記錄 |
文件位置速查
| 類別 | 位置 |
|---|---|
| 架構決策 | system-dev/docs/2-architecture/decisions/ |
| SDD | system-dev/docs/3-specs/[子系統]/ |
| 操作手冊 | system-dev/docs/4-guides/ |
| 事件記錄 | system-dev/docs/5-records/incidents/ |
| 測試報告 | system-dev/docs/5-records/test-reports/ |