dsh-code-coverage:AI 代碼覆蓋率歸因工具

DeepSeek Harness(DSH)在生成代碼的同時,c8 可以統計覆蓋率,但往往無法區分哪部分代碼是 AI 產生的。dsh-code-coverage 解析 DSH session 日誌,將 AI 產生的文件與 c8 覆蓋率數據疊加,解決歸因問題。

插件簡介

這是 DeepSeek Harness 生態的一個工作流插件,由 SleepEggTart 維護,採用 MIT 許可證。它通過解析 DSH session 日誌,識別 AI 創建或修改過的文件(支持 write、edit、str_replace_editor),併疊加 c8 的覆蓋率數據,產出對比報告。

核心功能

  1. 文件歸因:解析 DSH session 日誌,識別 AI 修改過的文件。
  2. 覆蓋率疊加:使用 c8 收集測試覆蓋率。
  3. 對比分析:產出「AI 代碼 vs 人工代碼」的行數與覆蓋率對比。
  4. 風險清單:生成未測 AI 文件的高危風險清單。
  5. 信任分:基於覆蓋率計算 0-100 分的信任分。
  6. 閉環工作流:支持生成補測試計劃與驗證補測效果。

安裝與啓用

前提條件:Node.js ≥ 18,本地已安裝 DeepSeek Harness,項目中存在 package.json。

安裝命令:

dsh plugin --profile web add dsh-code-coverage

使用方式

安裝爲 DSH 插件後,Agent 可直接在會話中調用以下工具:

  • code_coverage_check:分析 AI 代碼覆蓋率,產出信任分卡片。
  • code_coverage_fix:定位高危未測 AI 文件,生成補測試計劃。
  • code_coverage_verify:與上次存檔對比,驗證補測效果。

作爲 CLI 獨立使用時,支持以下命令:

# 生成 HTML 報告
dsh-code-coverage --html report.html

# 生成補測計劃(顯示 Top 3)
dsh-code-coverage fix --top 3

# 驗證補測效果
dsh-code-coverage verify

注意事項

  1. 語言限制:僅支持 JS/TS。
  2. Shell 命令解析:通過 Shell 命令重定向(如 >)寫文件的操作暫不解析。
  3. 歸因粒度:當前爲文件級歸因,非行級(行級歸因計劃在 v0.3 實現)。
  4. Vitest 配置:vitest 3 默認 pool=forks 會屏蔽覆蓋率,需使用 --pool=threads。
  5. 命令參數:測試命令按空白字符拆分,不支持帶引號的複雜命令。
  6. 信任分含義:信任分高僅代表 AI 生成的文件有測試,不代表測試質量高。

總結

該工具的核心在於「歸因」,幫助開發者量化 AI 代碼的測試保護情況。

  • GitHub:https://github.com/SleepEggTart/dsh-code-coverage
  • 生態目錄:https://www.skillhub.cn/plugins/SleepEggTart/dsh-code-coverage
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜