feat/sdlc-analyze-feasibility/main
master
對一顆需求議題執行可行性檢查,把疑點一題一題問到共識,最後輸出摘要。這一段完全不寫入 Gitea。
#1 — tea-sdlc:以 tea 驅動 SDLC 全流程的跨平台指令組
#6 — 以 sdlc-analyze 逐題問到共識並輸出摘要
references/feasibility-{architecture,logic,data,schedule}.md
prompts/sdlc-analyze.md
test/helpers/prompt-doc.js
sdlc-plan
/sdlc-sync
可行性疑點原本靠人記得要問、憑印象問,不同人問出來的東西不一樣。四份清單把該問的固定下來,一次一題的協定則讓使用者能看著前一題的答案回答下一題,而不是被丟一整包問題。
新增。sdlc-plan 的測試改用共用檢查,斷言沒有減少(反而多了 .codex 進黑名單),既有測試全數通過。
.codex
npm test:
npm test
ℹ tests 123 ℹ suites 0 ℹ pass 123 ℹ fail 0
六顆 commit 逐一 checkout 後跑測試,每一顆都是綠的(110/110/109/122/122/123)。
手動驗證:grep 確認正本指名的每一個路徑與欄位名都真實存在——四份 references/feasibility-*.md 都在,scripts/issue-extract.js 存在,正本提到的 未處理留言數 與該腳本實際輸出的鍵名一字不差。
grep
references/feasibility-*.md
scripts/issue-extract.js
未處理留言數
本階段不寫入 Gitea,因此沒有需要對真實 repo 驗證的寫入路徑;正本裡唯一被叫用的腳本 issue-extract 是唯讀的。
issue-extract
🤖 Generated with Claude Code
四份規則正本,各自列出要對著需求議題回答的檢查項,回答不出來的就是一個要問 使用者的問題。每份末尾都交代「問題怎麼問」——檢查項只說要查什麼,不說怎麼把 它變成一句能收斂的提問,那才是實際卡住的地方。 四份各自點出一個最該先問的:架構問落點與循環相依,邏輯問既有功能是不是已經 做過同一件事(這條能整個取消工作),資料問 schema 與遷移(答案通常不在議題裡), 時程問未知數最大的一項(它決定整體估算的可信度)。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
一次問一題、依架構→邏輯→資料→時程清空、每題固定給「建議(含理由)」與 「手動輸入」兩個選項、最後輸出共識摘要。摘要只印在終端,這一段完全不寫入 Gitea——把工作包開出去是下一段的事。 開頭先看 issue-extract 回傳的未處理留言數:不是 0 就代表描述可能是過期的, 先提示使用者以 sdlc-sync 整併回描述再回來,堅持要繼續就在摘要裡註明。 明令「能在程式碼裡查證的就自己去查」,把問題留給只有人能回答的事。 Closes #6 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
description 前綴、沒有 frontmatter、不出現平台專屬字樣——這三件事每一份流程 正本都要驗,第二份正本出現時就該抽出來,而不是再抄一次。順帶把讀正本、讀規則 正本、讀模板三個路徑組合也收在同一處。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
這一顆沒有腳本,交付的就是文件本身,所以驗的是文件的結構:四份清單各有足夠 的檢查項與提問指引、正本逐一指名它們且順序為架構→邏輯→資料→時程、一次一題、 兩個固定選項、共識摘要只印不寫,以及「不對 Gitea 寫入」有被寫成明確邊界。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
時程清單的「相依鏈最長路徑」預設了一份工作拆法,但分析階段還沒有工作包可依, 照著問會問不出東西。補上說明:這個階段要先拉一份暫定拆法,它同時是下一段開 工作包的草稿;拆不出來本身就是一個要問使用者的問題。 架構清單原本在開頭多了一段中間文字,內容與自己的「問題怎麼問」重複,也讓它 成為四份裡唯一結構不同的一份,移除。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
No dependencies set.
The note is not visible to the blocked user.
摘要
對一顆需求議題執行可行性檢查,把疑點一題一題問到共識,最後輸出摘要。這一段完全不寫入 Gitea。
需求議題
#1 — tea-sdlc:以 tea 驅動 SDLC 全流程的跨平台指令組
工作包議題
#6 — 以 sdlc-analyze 逐題問到共識並輸出摘要
變更內容
references/feasibility-{architecture,logic,data,schedule}.md— 四份可行性檢查清單。prompts/sdlc-analyze.md— 流程正本。test/helpers/prompt-doc.js— 流程正本的共用檢查,sdlc-plan的測試一併改用。設計重點
/sdlc-sync;使用者堅持要繼續就繼續,但要在共識摘要裡註明「分析基於未整併留言前的描述」。解決的問題
可行性疑點原本靠人記得要問、憑印象問,不同人問出來的東西不一樣。四份清單把該問的固定下來,一次一題的協定則讓使用者能看著前一題的答案回答下一題,而不是被丟一整包問題。
影響的功能
新增。
sdlc-plan的測試改用共用檢查,斷言沒有減少(反而多了.codex進黑名單),既有測試全數通過。測試結果
npm test:六顆 commit 逐一 checkout 後跑測試,每一顆都是綠的(110/110/109/122/122/123)。
手動驗證:
grep確認正本指名的每一個路徑與欄位名都真實存在——四份references/feasibility-*.md都在,scripts/issue-extract.js存在,正本提到的未處理留言數與該腳本實際輸出的鍵名一字不差。本階段不寫入 Gitea,因此沒有需要對真實 repo 驗證的寫入路徑;正本裡唯一被叫用的腳本
issue-extract是唯讀的。Code review 修掉的兩處
🤖 Generated with Claude Code