feat: SDD 生命週期鐵律——單一活性 SDD+pending-changes 緩衝+雙層硬約束(issue #6)+ bump 1.15.0
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>
This commit is contained in:
@@ -10,6 +10,22 @@
|
||||
|
||||
---
|
||||
|
||||
## 1.15.0 — SDD 生命週期鐵律:單一活性 SDD(issue #6)
|
||||
|
||||
leo 拍板全體系採「單一活性 SDD」制度:任何時刻每個 repo 只有一份現行 SDD(`status: active`),所有開發任務唯一對應它的 tasks。prompt 軟約束+檔案系統硬約束(hook)雙層。
|
||||
|
||||
- **新增 `system-dev/docs/3-specs/SDD-LIFECYCLE.md`**:規則真相源。frontmatter 狀態標記(`active | draft | paused | closed` + `superseded_by`,機器可查)+五條鐵律(單一活性/禁止 CC 自建 SDD/規格變更只有 pending-changes.md → confirm 一條路/開新 SDD 先逐條搬舊任務才准寫 code/session 開始回報「現行規格+未完成任務 N+待裁決 proposal M」三數字)。
|
||||
- **新增 `system-dev/docs/3-specs/pending-changes.md`**:規格變更緩衝區骨架(待裁決/已裁決留底)。update 走 `add_if_missing`——proposal 是用戶資料,絕不覆蓋。
|
||||
- **TEMPLATE-sdd/design.md 掛 frontmatter**:`status: draft` 起手,原「> 狀態:」blockquote 移除(被 frontmatter 取代)。
|
||||
- **`sdd-guard.sh` 升級**:① active >1 → **不論寫什麼檔一律 exit 2**(先收斂)② 寫 code 檔需「恰好 1 份」active,=0 擋並指向 SDD-LIFECYCLE.md ③ **向下相容**:3-specs 下沒有任何 design.md 帶 frontmatter(老 repo 未遷移)→ 退回舊行為(有 design.md 就放行+提醒補標記),避免 update 後老 repo 立刻全紅;統計一律排除 archive/ 與 TEMPLATE(否則 update 鋪新 TEMPLATE 就誤判已遷移)。
|
||||
- **新增 `template/scripts/sdd-active-check.sh`**:獨立硬約束,pre-commit / CI 可掛(掛法見檔頭),active >1 → 列清單 exit 1。下游落地 `system-dev/scripts/`。
|
||||
- **`/sdd-check` 加「生命週期」段**:五條鐵律摘要+session 開始三數字回報格式+「兩份 active=違規,當場糾正」。
|
||||
- **template/CLAUDE.md 絕對鐵律更新**:指向 SDD-LIFECYCLE.md,濃縮五條。
|
||||
- install / update 均鋪齊新檔(SDD-LIFECYCLE.md、pending-changes.md、sdd-active-check.sh、新版 hook),杜絕 1.12 時代「update 不補新檔→結構斷層」(issue #13 教訓)。
|
||||
- 誠實限制不變:hook 只擋語法層明顯違規,繞道可行但留痕可審,不聲稱不可繞過。
|
||||
|
||||
---
|
||||
|
||||
## 1.14.0 — vault 萃取能力:raw Logseq 筆記 → system-dev/wiki(知識一庫 ingest 前段;issue #5)
|
||||
|
||||
筆記 vault(Logseq graph 如 `notes`/`kb`、或 Obsidian)只有原文、需要萃。新增可**重跑、冪等**的 vault 增量萃取,把原始筆記萃成 `system-dev/wiki/` 的精耕卡+`[[wikilink]]`,供下游 Arcrun ingest 從 wikilink 機械拉三元組進 KBDB。**AI 只產卡片檔,不寫 KBDB、不拉三元組**(那是下游的事)。
|
||||
|
||||
Reference in New Issue
Block a user