Communitygithub.com

tuana-vn/system-reverse-engineer

以證據為基礎的逆向工程代理與技能,專為 GitHub Copilot 設計。

system-reverse-engineer 是什麼?

此技能提供一個嚴謹、系統化的方法來產生工作分解結構(WBS),確保每個實作任務都直接來自於經過驗證的設計決策。它的核心目的是消除模糊的通用任務,強制在 TDD(測試驅動開發)用例與具體的設計工件之間建立明確的追溯性。系統會強制執行語意鏈結:每個 WBS 任務的主要交付項目必須與其參照的詳細設計(DD)中所擁有的實作單元完全相符。如果無法證明語意上的所有權歸屬,技能會發出 `WBS_BLOCKED_DESIGN_GAP` 狀態,阻止虛構的對應。此技能適用於 GitHub Copilot 以及其他 AI 輔助開發環境,支援由驗證過的詳細設計驅動的結構化開發工作流程。它也明確排除了工時估算,將重點完全放在必須實作的內容(WHAT)而非所需時間(HOW LONG)上。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add tuana-vn/system-reverse-engineer

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

實作工作分解結構(WBS)產生

目的

WBS 是「必須實作什麼」,而非工時估算。

請勿直接從 TDD 的散文描述跳躍到通用任務。

輸入必須包含已驗證的詳細設計。

需求
→ 差距分析
→ TDD
→ 設計工件
→ 已驗證的詳細設計
→ WBS 任務
→ 驗證

輸入

  • 權威性需求
  • 已驗證的差距分析
  • 已驗證的 TDD
  • 設計工件登錄
  • 所有 DD_VERIFIED 的詳細設計
  • 詳細設計驗證報告
  • 若有可用的測試設計
  • 當前儲存庫

1. 任務推導

僅從已驗證的設計決策推導任務。

任務類別:

  • 產出程式碼
  • API/合約
  • 整合
  • 資料/持久化
  • 設定
  • 遷移/相容性
  • 測試
  • 建置/部署
  • 文件
  • 僅限於已核准設計要求的清理工作

請勿加入「有也不錯的重構」。

2. 任務粒度

一個任務應夠小,以具備:

  • 一個明確的成果
  • 具體的原始碼/設計錨點
  • 明確的相依性
  • 可驗證的完成條件

但請勿將機械性的編輯動作分割成數十個無意義的微任務。

3. 穩定 ID

使用:

WBS-001、WBS-002、...

3A. WBS ↔ 設計語意身分

追蹤性並非僅僅因為 WBS 列中包含某個現有工件 ID 就能滿足。

對於每個 WBS 任務,請識別其主要的實作交付項目,並證明參照的設計工件確實擁有該交付項目。

所需的語意鏈結:

WBS 任務標題 / 目標 / 主要交付項目
↔ 登錄工件名稱 + 責任
↔ 已驗證的 DD 所擁有的實作單元
↔ TDD 設計決策

規則:

  1. 參照某個工件 ID 是必要條件,但非充分條件。
  2. 一個型別/類別/介面僅被某個 DD 提及、匯入、參照或連結,並不證明該工件擁有該實作單元。
  3. 如果一個 WBS 任務的主要交付項目是某個從屬型別,則下列之一必須為真:
    • 登錄/DD 明確宣告該從屬型別位於擁有該工件的範圍內,或
    • 設計工件分解必須被修正,以單獨追蹤該從屬型別。
  4. 請勿將一個以元件/型別 A 為標題的任務,對應到一個其登錄責任為元件/型別 B 的工件,除非該工件明確擁有 A。
  5. 如果無法證明語意所有權,則以 WBS_BLOCKED_DESIGN_GAP 停止;不要從鄰近的 TDD 散文捏造出對應關係。

在產生 WBS 之前,請建立一個內部/公開的一致性表格:

WBS ID主要交付項目參照的工件 ID登錄的責任範圍DD 擁有的單元語意符合?證據

所需門檻:

WBS ↔ 工件語意身分 = 100%

4. WBS 表格

WBS ID設計工件 ID任務現有原始碼錨點 / 建議位置變更類型相依性需求 IDTDD/DD 參照驗證完成條件

變更類型:

  • 新增
  • 修改
  • 移除
  • 設定
  • 遷移
  • 測試
  • 文件
  • 驗證

5. 相依性有向無環圖 (DAG)

從工件相依性以及程式碼/執行時期相依性推導實作順序。

建立:

WBS ID依賴於相依原因硬/軟

偵測循環相依性。

請勿僅根據檔案順序發明順序。

6. 驗證對應

每個會變更程式碼的任務都需要一個驗證路徑。

對應至:

  • 需要更新的現有測試
  • 新的測試 ID / 觀點
  • 原始碼/建置驗證
  • 執行時期/整合驗證
  • 僅在自動化不可行時才使用手動驗證

7. 追溯性

建立:

需求 ID差距 IDTDD 決策 ID工件 IDDDWBS ID測試/驗證 ID覆蓋率

不得有任何已驗證的設計工件被孤立。

8. WBS 閘門

在 WBS_READY_FOR_VERIFICATION 之前:

[ ] 所有 DD_VERIFIED 工件都有對應的實作/驗證任務
[ ] 每個 WBS 任務都追溯到已驗證的設計
[ ] 每個 WBS 任務的主要交付項目與其參照工件之責任/擁有單元在語意上相符
[ ] 沒有任何任務依賴於僅僅被提及的 DD/TDD 符號作為工件所有權的證明
[ ] 原始碼錨點/建議位置是具體的
[ ] 相依性是明確的
[ ] 會變更程式碼的任務都有完成條件和驗證
[ ] 當需要時,已包含設定/遷移/文件/測試工作
[ ] 未加入未經核准的架構/重構
[ ] 沒有 HIGH/CRITICAL 的原始碼差距隱藏在任務內部

狀態:

  • WBS_READY_FOR_VERIFICATION
  • WBS_BLOCKED_DESIGN_GAP
  • WBS_BLOCKED_SOURCE_GAP

重要事項

請勿在此技能中估算工時(小時/天/故事點)。 工時估算是另一個獨立的主題。

相關技能