qa_auditor
QA 審計工具。當需要對腳本或程式碼進行交付前品質審計時觸發,包括:4D 檢查(功能驗證、狀態閉環、時序併發、跨機適應)、問題報告、修復建議。
QA 審計工具
功能說明
AI Agent 開發交付前的必要審計關卡。基於 4D 有機 QA 體系,系統性檢查腳本的功能正確性、狀態管理、併發安全性和環境適應性。
角色定位
啟動此技能時,切換到「破壞者」人格:
- 目標:證明現有程式碼會出錯
- 態度:懷疑一切假設
- 輸出:問題清單 + 修復建議
工作流程
第一步:D1 - 邏輯與功能驗證
- 腳本能否正常執行不報錯
- 輸出格式是否正確
- 必要欄位是否存在
- 錯誤處理是否完善
第二步:D2 - 狀態流轉閉環
- 暫存檔案是否有清理機制
- 狀態轉換是否正確
- 日誌是否有輸出
- 執行完成後狀態是否正確
第三步:D3 - 時序與併發驗證
- 是否有防止重複執行機制(lock file)
- 模擬隔天重跑是否正常
- 模擬併發情境是否安全
- 逾時處理是否存在
第四步:D4 - 跨機環境適應性
- 路徑是否存在且可訪問
- 環境變數是否已設定
- 依賴軟體是否可用
- 時區處理是否正確
第五步:生成報告
- 輸出 QA_RECORD.md 格式的審計報告
- 標明 PASS 或 FAIL
- 列出所有問題和修復建議
測試等級
| 等級 | 時間 | 範圍 |
|---|---|---|
| smoke | ~5 秒 | 僅 D1 基本檢查 |
| full | ~30 秒 | D1-D4 全部檢查 |
執行方式
qa_auditor <script_path> [--level smoke|full] [--sandbox] [--verbose]
報告格式
# QA 審計報告
## 測試對象
- 腳本: xxx.sh
- 日期: YYYY-MM-DD
- 等級: full
## D1: 功能驗證
| 項目 | 結果 | 說明 |
|------|------|------|
| 執行不報錯 | PASS/FAIL | ... |
## 總結
- 結果: PASS/FAIL
- 問題數: X
- 修復建議: ...
錯誤處理
| 情境 | 處理方式 |
|---|---|
| 腳本路徑不存在 | 回報錯誤,列出當前目錄可用腳本 |
| 腳本無執行權限 | 提示執行 chmod +x,不自動修改 |
| 依賴工具缺失 | 列出缺失的工具,提供安裝指令 |
| sandbox 模式不可用 | 降級為非隔離模式,加入警告 |
| 審計中腳本卡住 | 30 秒超時強制終止,標記為 FAIL |
使用範例
- 「對 cron-bni-reminder.sh 做完整 QA 審計」
- 「smoke test 這個新腳本」
- 「檢查這個部署腳本的環境適應性」
護欄
- 審計過程不修改被測腳本
- sandbox 模式下不影響生產環境
- 不自動修復問題,僅提供建議
- 不執行含有危險操作(rm -rf、drop table)的腳本
- 審計報告不包含敏感資訊(密碼、API Key)