Files
system-dev-template/template/system-dev/docs/3-specs/TEMPLATE-sdd/design.md
T
Leo 7b83465acf 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>
2026-07-17 16:53:18 +08:00

1.3 KiB
Raw Blame History

status, superseded_by
status superseded_by
draft

[子系統名稱] — Design

建立:[YYYY-MM-DD] | 最後更新:[YYYY-MM-DD] 負責人:[名稱]


一句話說明

[這個子系統做什麼,一句話。]


背景與問題

[為什麼需要這個子系統?解決了什麼問題?]


範圍

包含(In Scope

  • [這個 SDD 涵蓋的功能]

不包含(Out of Scope

  • [明確排除的功能,避免 CC 自行延伸]

設計

架構概覽

[用文字或 ASCII 描述系統結構]

[元件 A] → [元件 B] → [元件 C]

關鍵決策

決策 選擇 原因 放棄的選項
[問題] [選擇] [原因] [其他選項]

API / 介面定義

[端點、資料格式、輸入輸出規格]

資料模型

[資料結構、欄位說明]


技術限制

  • [不能用什麼]
  • [必須相容什麼]
  • [效能要求]

驗收標準

完成的定義(CC 完成任何 task 前必須確認):

  • [可客觀驗證的條件,例如:POST /api/xxx 回傳 200]
  • [...]

相關文件

  • [連結到相關 ADR]
  • [連結到相關 SDD]