check-impl-against-spec

check-impl-against-spec

熱門

將 Pull Request 的實作與 spec_context.md 中的規格內容進行比較,並將任何重大差異回饋到 review.json。在 PR 審查已核准或儲存庫有規格上下文時使用。

125星標
0分支
更新於 2026/7/11
SKILL.md
readonlyread-only
name
check-impl-against-spec
description

將 Pull Request 的實作與 spec_context.md 中的規格內容進行比較,並將任何重大差異回饋到 review.json。在 PR 審查已核准或儲存庫有規格上下文時使用。

檢查實作是否符合規格

僅在 PR 審查期間存在 spec_context.md 時使用此技能。

目標

判斷已簽出的 PR 中的實作是否與已核准的規格上下文有重大差異。這是正常程式碼審查的補充,而非獨立的輸出。

輸入

  • spec_context.md 包含要比較的規格上下文。可能包含產品規格內容(預期行為、驗收標準)和技術規格內容(實作細節、檔案變更)。
  • pr_diff.txt 包含 PR 的註解差異。
  • pr_description.md 可能包含額外的範圍或理由。
  • 工作目錄包含 PR 分支的內容。

流程

  1. 讀取 spec_context.md 並提取其中具體的承諾:
    • 必要的行為(來自產品規格)
    • 需要變更的檔案或子系統(來自技術規格)
    • 明確的限制條件
    • 必要的後續步驟、驗證或遷移
  2. 將這些承諾與 pr_diff.txt 中的實際實作以及已簽出的檔案進行比較。
  3. 當小型實作層級的調整保留了規格的意圖時,視為可接受。不要標記命名、結構或底層技術上的無害差異。
  4. 僅在差異重大時才標記,例如:
    • 產品規格中的必要行為缺失
    • 實作與規格決策矛盾
    • 變更引入了顯著的未規劃範圍
    • 技術規格中要求的驗證、遷移或相容性步驟缺失

輸出

  • 不要建立獨立的報告檔案。
  • 將規格對齊的發現整合到 review.json 中。
  • 將廣泛的規格偏移問題放入審查摘要中。
  • 僅在差異可與差異中的變更行相關聯時,才加入行內註解。
  • 將重大規格偏移視為至少一個重要問題。
  • 如果實作與規格足夠接近,不要為了提及對齊而加入註解。

邊界

  • 當 PR 安全地達成相同結果時,不要求規格的逐字逐句實作。
  • 不要推測 spec_context.md 中未實際存在的規格細節。
  • 不要直接發佈到 GitHub。