feat(SDLC 階段): 閘門改為能力標籤程式判定,分析與實作先確認分支,交接工作包優先 #6

Merged
admin merged 3 commits from fix/sdlc-skill-check-compliance into develop 2026-08-24 08:17:38 +00:00
Member

變更摘要

三件事:閘門改由程式判定、分析與實作前先確認分支、交接工作包優先交付。

一、階段閘門改為能力標籤程式判定

  • 四個階段的第一步統一改為:jsc-cli/tools/model-tags.sh sync 之後跑 jsc-hooks/hooks/sdlc-gate.sh lock {stage},由腳本讀 transcript 的實際模型 id 比對必要標籤。
  • 內文明文禁止模型自評:不得宣稱未經腳本驗證的能力標籤,也不得用自己的判斷取代腳本結論;非零 exit 就原文轉述訊息並停止,不得自行 unlock 繞過。
  • 階段需求:plan、analyze 需 reasoning-max;implement 需 coding;maintain 任意。

二、分析前確認來源分支,實作前確認目標分支

  • analyze:讀任何程式碼之前,先攤開當前分支、工作區狀態與遠端分支,依決策樹請使用者確認來源分支,並把分支與 head sha 記到分析頁。分析階段不切分支、不動工作區——需要換分支就停下來請使用者處理。
  • implement:寫任何檔案之前確認目標分支,接上 spec-git-safety 的「來源與目標同名就另開工作分支」,並沿用同一個答案作為 PR 目標。不再靜默預設 develop。

三、交接工作包優先(優先交付規格,實作候補)

  • WBS 新增「交接」判準:輸出要交給別人接手的(介面、schema、規格文件、驗收條件、範例 payload)算交接工作包。
  • 排序規則:相依關係優先,同一相依層級內交接工作包排在實作工作包之前;實作為候補,仍照常編號與估時。規格與其實作不得併成一個工作包,否則無法提早交接。
  • implement 選工作包時同樣把交接工作包列在前面。
  • 範例資料規則:先找真實來源(DB schema、實際 API 回應、既有設定檔或 fixture、日誌)並標 真實:{來源};查不到才由邏輯推理並標 推論:無來源。禁止把編造的值當成真實資料,且範例只留結構與格式,個資不寫上 wiki。

影響範圍

  • 四個階段技能的第一步呼叫方式改變(lock {stage},不再帶模型參數)。
  • templates/analyze-page.md 的 WBS 表新增「交接」與「資料來源」欄,並加上來源分支欄位;既有分析頁沿用舊格式仍可讀,下次更新時補欄即可。
  • 分析與實作各多一次分支確認的互動。

重點檔案

檔案 變更
skills/analyze/SKILL.md 閘門改寫、新增來源分支確認、交接優先與範例資料兩節
skills/implement/SKILL.md 閘門改寫、新增目標分支確認、選包時交接優先、範例資料規則
skills/plan/SKILL.md、skills/maintain/SKILL.md 閘門改寫
templates/analyze-page.md WBS 表加交接與資料來源欄、來源分支欄位、交接批次說明
README.md 閘門與分支確認說明同步

風險與注意事項

  • 相依:需要 jsc-cli(model-tags.sh、reasoning-max 標籤)與 jsc-hooks(新版 sdlc-gate.sh)先合併,否則第一步會失敗。
  • 行為改變:Sonnet 5 這類只有 reasoning-high 的模型從此無法執行 plan 與 analyze,會被閘門擋下並要求切換模型。
  • 分支確認是新增的必要互動,無法靜默略過;只讀階段刻意不代為切換分支。
  • maintain 這次只改閘門,沒有加分支確認——它逐專案由子代理各自切 develop/master,逐專案詢問會過度干擾。
## 變更摘要 三件事:閘門改由程式判定、分析與實作前先確認分支、交接工作包優先交付。 **一、階段閘門改為能力標籤程式判定** - 四個階段的第一步統一改為:`jsc-cli/tools/model-tags.sh sync` 之後跑 `jsc-hooks/hooks/sdlc-gate.sh lock {stage}`,由腳本讀 transcript 的**實際**模型 id 比對必要標籤。 - 內文明文禁止模型自評:**不得宣稱未經腳本驗證的能力標籤**,也不得用自己的判斷取代腳本結論;非零 exit 就原文轉述訊息並停止,不得自行 `unlock` 繞過。 - 階段需求:plan、analyze 需 `reasoning-max`;implement 需 `coding`;maintain 任意。 **二、分析前確認來源分支,實作前確認目標分支** - `analyze`:讀任何程式碼之前,先攤開當前分支、工作區狀態與遠端分支,依決策樹請使用者確認**來源分支**,並把分支與 head sha 記到分析頁。分析階段不切分支、不動工作區——需要換分支就停下來請使用者處理。 - `implement`:寫任何檔案之前確認**目標分支**,接上 spec-git-safety 的「來源與目標同名就另開工作分支」,並沿用同一個答案作為 PR 目標。不再靜默預設 `develop`。 **三、交接工作包優先(優先交付規格,實作候補)** - WBS 新增「交接」判準:輸出要交給別人接手的(介面、schema、規格文件、驗收條件、範例 payload)算交接工作包。 - 排序規則:相依關係優先,同一相依層級內**交接工作包排在實作工作包之前**;實作為候補,仍照常編號與估時。規格與其實作不得併成一個工作包,否則無法提早交接。 - `implement` 選工作包時同樣把交接工作包列在前面。 - 範例資料規則:先找真實來源(DB schema、實際 API 回應、既有設定檔或 fixture、日誌)並標 `真實:{來源}`;查不到才由邏輯推理並標 `推論:無來源`。禁止把編造的值當成真實資料,且範例只留結構與格式,個資不寫上 wiki。 ## 影響範圍 - 四個階段技能的第一步呼叫方式改變(`lock {stage}`,不再帶模型參數)。 - `templates/analyze-page.md` 的 WBS 表新增「交接」與「資料來源」欄,並加上來源分支欄位;既有分析頁沿用舊格式仍可讀,下次更新時補欄即可。 - 分析與實作各多一次分支確認的互動。 ## 重點檔案 | 檔案 | 變更 | | --- | --- | | `skills/analyze/SKILL.md` | 閘門改寫、新增來源分支確認、交接優先與範例資料兩節 | | `skills/implement/SKILL.md` | 閘門改寫、新增目標分支確認、選包時交接優先、範例資料規則 | | `skills/plan/SKILL.md`、`skills/maintain/SKILL.md` | 閘門改寫 | | `templates/analyze-page.md` | WBS 表加交接與資料來源欄、來源分支欄位、交接批次說明 | | `README.md` | 閘門與分支確認說明同步 | ## 風險與注意事項 - **相依**:需要 `jsc-cli`(`model-tags.sh`、`reasoning-max` 標籤)與 `jsc-hooks`(新版 `sdlc-gate.sh`)先合併,否則第一步會失敗。 - **行為改變**:Sonnet 5 這類只有 `reasoning-high` 的模型從此無法執行 plan 與 analyze,會被閘門擋下並要求切換模型。 - 分支確認是新增的必要互動,無法靜默略過;只讀階段刻意不代為切換分支。 - `maintain` 這次只改閘門,沒有加分支確認——它逐專案由子代理各自切 `develop`/`master`,逐專案詢問會過度干擾。
jiantw83 added 3 commits 2026-08-24 08:08:10 +00:00
admin approved these changes 2026-08-24 08:17:33 +00:00
admin merged commit 3746f84305 into develop 2026-08-24 08:17:38 +00:00
admin deleted branch fix/sdlc-skill-check-compliance 2026-08-24 08:17:38 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Reference: plugins/sdlc#6