DSH 插件介紹:@goodandready/dsh-test-pilot(自動邊界測試運行)

在 DSH 中進行代碼修改時,AI 代理往往需要在完成前獲得一個明確的執行信號。Test Pilot 插件旨在解決這個問題。它通過觀察成功的文件寫入,並在後臺運行相關測試,將測試結果反饋給代理,從而在同一個 DSH 輪次中提供自動化的邊界測試反饋。

插件簡介

該插件由 GooDAnDReaREADY 維護,核心價值在於實現“自動邊界測試運行,帶有持久化的最近結果”。它是一個驗證器工具,而非自主修復代理。

核心功能

  1. 自動觸發與運行
    插件觀察成功的文件寫入結果,等待兩秒的靜默期以合併編輯,隨後在後臺通過 DSH 子進程服務運行測試。如果在同一輪次中可能完成,它會返回已完成的測試結果;如果輪次結束,它會刷新待處理的工作作爲安全網。只讀輪次不會啓動測試進程。

  2. 測試匹配與執行
    支持多種測試運行器和命令:pytest、Jest、Vitest、Go、Rust/Cargo、TAP 和 TypeScript 編譯器命令。

    • 當映射完整時,插件會運行與更改源文件約定匹配的測試。
    • 當映射不完整時,它會運行配置的完整套件並報告原因。
    • 插件拒絕 shell 操作符和命令替換,以確保安全執行。
  3. 管理與工具
    提供兩個工具:

    • test_pilot_status:返回活動運行計數和最新結果。可選參數可限制包含最多 20 個最近的邊界摘要。
    • test_pilot_run:在當前工作區或指定的 cwd 中啓動配置的完整命令。
  4. 結果持久化
    測試結果保留 30 天。終端摘要原子性地存儲在 $DSH_HOME/data/dsh-test-pilot/state.json 中。工作區路徑使用 SHA-256 鍵表示,持久化的行僅包含狀態、運行器、計數、時間戳/持續時間和失敗測試標識符,絕不包含命令或完整輸出。最多保留 50 個工作區和 50 條歷史記錄。

安裝與啓用

使用官方命令安裝插件到 DSH web 配置文件:

dsh plugin --profile web add @goodandready/dsh-test-pilot

安裝後,進入設置 -> 插件 -> 插件設置,展開 Test Pilot 面板,以編輯自動運行和配置。

典型用法

  1. 在設置中展開 Test Pilot,編輯自動運行配置和運行器默認值。
  2. 在開發過程中,使用 test_pilot_run 工具手動啓動配置的完整命令進行測試。

注意事項

  • 該插件目前是 MVP 階段,定位爲驗證器,不具備編輯文件、啓動修復輪次、提交/推送、阻止審批或發送遙測的能力。
  • 如果狀態損壞或爲未知版本,插件將從空狀態開始。
  • 併發請求不能在同一可變目錄上同時測試,插件會序列化自動和手動運行。

總結

Test Pilot 爲 DSH 中的 AI 代碼更改提供了必要的可執行信號,通過後臺運行和持久化結果來增強開發流程。

  • GitHub: https://github.com/GooDAnDReaDY/dsh-test-pilot
  • 插件目錄: https://www.skillhub.cn/plugins/GooDAnDReaDY/dsh-test-pilot
羽毛球分组比赛记分
小程序二维码

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

小夜