跳到主要內容

QA Auditor - 跨節點環境審計與混沌測試技能 心得

之前寫了一篇 從「隔日 Bug」到安穩入睡:如何用一套 QA 體系馴服 AI 開發,提到可以在 AI Agent 或是小龍蝦環境中加上 QA Auditor Skill,這是一個特殊扮演角色。

當啟動此 Skill 時,AI 從「開發者」轉為「破壞者」與「審查員」。其唯一目的是在 不破壞真實環境的前提下,透過強制模擬異常與時間流逝,找出系統狀態與併發邏輯中的盲點(即「隔日 Bug」)。

自從有了這個,每次小龍蝦或是 Google Antigravity 開發時都會自動導入,我目前遇到開發上的錯誤幾乎沒有,有錯誤也會自動修補,省心不少。

以下就是我的 Skill 基礎文件,但每個人的環境與用法不同,有興趣的朋友可以將這兩篇文章都扔給 AI,叫 AI 幫你做一個適合你環境與期待的 QA Auditor Skill :)

🚨 沙盒隔離最高守則 TheIronLawOfSandbox

絕對禁止 讓 QA 腳本或模擬動作接觸到真實的 ~/自訂目錄 下的正式資料或設定。

所有測試必須在隔離的 自訂目錄/sandbox/ 目錄中進行。

強制規定:使用 run <test_name> <script_path> 執行測試,確保隔離滴水不漏。

🎯 4D 審計框架

任何功能的變更或新技能的加入,在提交前必須由 AI 根據此框架自我質疑與測試:

  1. D1: 邏輯測試
    • 腳本執行是否無報錯?預期產生的檔案/資料是否完備?
  2. D2: 狀態流轉閉環與可逆性
    • 彈性不變量:定義全域真理法則(例如:佇列必須在 N 個執行週期內清空),給予系統時間窗呼吸空間,避免死板驗證導致誤判。
    • 真理版本化:不變量應以版號管理,確保真理能隨著系統架構演進,避免過時驗證產生 False Positives。
    • 冪等性:強制連續執行受測腳本兩次,確保第二次執行不會堆積冗餘資料或造成崩潰。
    • 可逆測試:執行腳本後,故意中斷重跑,檢驗暫存檔與污染狀態是否能被完美清除?
  3. D3: 時序與併發抗性
    • 歷史垃圾注入:必定使用注入過期 7 天的廢物檔案與殘損 JSON,測試腳本的自癒力。
    • 物理競態:在產生檔案的瞬間,若正在同步,是否有穩定度鎖來保護?
  4. D4: 跨機適應性
    • 此腳本部署在 各主機 哪一端?是否有路徑或依賴軟體(如 pm2, jq)缺失?
    • 遠端環境密合度:必須執行核對目標虛擬環境中是否具備腳本所需的相關套件。
    • 時區差異(如 雲端主機 UTC vs 個人主機 UTC+8)是否影響時間戳記的判定?

🛠️ 標準審計流程與質量門禁

  1. 宣示啟動:宣告進入 QA Auditor 狀態。
  2. 建立沙盒:呼叫建立隔離環境。
  3. 佈置混亂
    • 強制呼叫灑下歷史垃圾。
    • 建立其他各種「破爛」狀態檔(半寫入、權限錯誤、空狀態)。
  4. 分級執行與可觀測性
    • QA_LEVEL 規範smoke(僅單次執行)、quick(單次執行+基礎環境)、full(標準雙次冪等)、chaos 等。
    • 觀測日誌:執行期間會自動產出包含目錄快照的 sandbox_events.jsonl
    • 除錯逃生閥:若測試卡死,由主人呼叫進入沙盒檢視。
  5. 沉澱全域回歸測試

    若測試發現缺失,QA Auditor 需針對該失敗場景撰寫驗證腳本,統一歸檔至全域測試集:

    • 分類目錄/time/(時間差)、/state/(JSON損毀)、/io/(權限錯誤)。
    • 生命週期管理:維護總表,追蹤 active/, known-issue/, deprecated/ 等狀態。
    • 實名制與清理政策:腳本檔頭必須宣告 @origin_bug, @owner, 與 @expiry_date
  6. 產生具備語意的質量門禁
    • 將測試結果寫入 QA_RECORD.md
    • 【強制】 在沙盒根目錄產生 .qa_status,內容為 PASS: <摘要>FAIL: <摘要>。未達 PASS 嚴禁部署。
  7. 清理沙盒
  8. 專家知識結算與導出
    • 當功能開發完畢且通過 QA 後,確保 AI 的潛在學習與約定能被萃取並歸檔回知識資產中。

留言

這個網誌中的熱門文章

關於閱星曈 XTEINK 這款超便攜電子紙,掌握型電子紙書小玩意

話說今年初在小紅書上看到 「星曈-超便攜電子紙」 的帳號,在講他們正在 DIY 掌握型電子紙書的歷程,覺得挺有意思的,從硬體的規劃到電子紙的選擇與電池的搭配,後來他們決定眾籌小量的真正做出一台掌握型電子紙書販售,這我就坐不住了,馬上聯繫了「星曈-超便攜電子紙」的版主,想說是否我們台灣這邊的電子紙愛好者也可以購買。在聯繫過中,才發現原來 FB 上的 電子書閱讀器討論區版主秋雁 也是第一時間聯繫對方,所以我們倆就手牽手(並沒有)的一起買了。 這整個眾籌的過程真的很像是一起參與創業的感覺,幾乎每天都看到星曈在小紅書上更新進度,他們遇到了什麼困難,怎麼直面解決等,而且首批的價格非常實惠,其實我都不知道星曈他們到底是否能堅持到底,畢竟「量產實作」這條路非常不容易。在和星曈的聊天過程中,知道他過去可是在中國曾經創辦過知名的事業,雖然後來因為大環境改變而退出市場,但同為曾經的創業者,我一直相信也期待他們成功。 終於在最近拿到了「星曈-超便攜電子紙」的 Founders Edition ,包裝的質感很不錯,超便攜電子紙本人更是優雅出眾,不過因為它的使用方式需要一點技巧,所以寫了這篇簡單的教學,希望對新手有一些幫助。 拿到手的第一件重要事:系統升級 星曈他們這次很有誠意的也提供了繁體中文介面,但需要升級後才能使用,所以我們先來了解一下如何最無痛升級。 「星曈-超便攜電子紙」內建的網絡使用「XT-EPD」,當然你之後可以自己更換其他想使用的網路基地台登入,但這需要一點技巧,對於大多數使用者來說是有理解上的難度,所以星曈建議使用最無腦的連接升級方式。 1. 拿出你的手機(以下用 iPhone 為例說明),將手機「設定」下「關於本機」裡的名稱先改為 XT-PED,升級之後再改回你原本使用的名稱即可。 2. 將手機「設定」下「個人設點」裡的密碼先改為 12345678(這是 超便攜電子紙的 XT-EPD 內定密碼),這裡有一個要提醒的事情,下面有個「最大化相容性」,要開啟。 3. 在 超便攜電子紙 這邊選擇「系統升級」,你的兩個設備就應該會自動開始 WIFI 連接,並問你是否要升級更新,就勇敢的點下去吧。 4. 在升級過程中,會看到一些補充說明,一方面你應該會看到進度百分比慢慢的上升,但假如你發現這個百分比數字停滯很久,也別擔心,將機子右下角的 reset 鍵按下去,再點擊機子右下角...

「分享」我的 Kindle 3 Graphite 初體驗 3G / Wifi 版本

總之,我買了一台 Kindle 3 XD Kindle Wireless 3G/Wifi - $189.00 Shipped via DHL International - $20.98 Import Fees Deposit: - $10.65 Total: - $220.63 2010/10/30 update : 剛 Amazon通知因為 Export fee reduced , 所以 $10.65 會完全退回 :D 很快的講一下我晚上的測試: 1. 因為我原本在 Amazon 上面的帳號是台灣的地址,所以購買的時候沒有送 Power 線,聽說有大大直接寫信和 Amazon 的客服要求應該要附線,不過我下訂單的時候比較早,就沒有做這件事,也因此我得到的只有一條 USB 線 2. 我原有的台灣帳號購買書籍,會需要額外支付 2 美金的費用 3. 自行灌入的繁簡體中文 PDF 檔案,都可以正常觀看無誤,載入速度也還不錯(檔案約 90 頁) 4. 中文檔名有些會漏字,但內文 OK , 和繁簡體好像沒有直接關係 5. txt 純文字檔的中文偶而會有漏字 6. 可以直接透過 3G 上網無誤(非常爽) 7. 繁體中文的網站觀看無誤,測試網站包括了雅虎繁體中文網站、無名小站等 8. 簡體中文的網站偶而會有漏字,但大體上無誤,測試網站包括了新浪網等 9. 某些特殊網站也可以用,例如 Google Map 台灣美食地圖、Plurk mobile 網頁 10. 可以一面聽音樂一面閱讀 11. 內建的兩套牛津字典還不錯用,不算陽春 12. Text to speech 的功能只支援英文,包括了自己輸入的 txt 檔(PDF 不支援) 下面是一些螢幕截圖: 中文 PDF 沒問題 PDF 漫畫當然也沒問題 Plurk Mobile 版本正常 新浪娛樂頻道簡體網站,內容正常,標題可能漏字 Google Map 台灣地圖正常,但有點難按 Yahoo 奇摩繁體中文網頁正常 無名小站繁體中文正常 Google 新聞網站沒問題 簡體中文內容的 PDF 檔案正常 後續更新中: 感謝林兄之前的努力,小梅子測試在 Kindle 3 中也可以自行安裝「 21世紀英漢詞典 」,贊啦! 延伸閱讀: Kindle 3 的幾個快速鍵、...

「分享」Mac / iPhone 上的廣播電台軟體 FStream - 廣播列表更新 2009/9/19

小梅子在蘋果電腦上面最喜歡用的小功能之一,就是可以透過電腦聆聽廣播電台,以前我常用 Hinet Sucks! Radio Widget ,這是個絕頂好物,可以隱藏在背景默默忠實的播放廣播音樂,但因為 Hinet 常常更改他們的線上廣播規則,所以搞的原作者疲於奔命,有時候就會聽不到音樂。 後來小梅子使用了另一個工具 FStream ,這也是一個可以讓你在 Mac OSX 上聽廣播的好東西,並且它可以讓你自由編輯廣播電台目錄,也支援 iTunes 的廣播列表(這真的很方便),還支援錄音功能喔!所以小梅子這陣子每天都在用 FStream 聽佳音廣播電台,很開心。 FStream 的介紹網路上已經很多了,它也有 iPhone 版本,所以只要你的 iPhone 可以3G上網,理論上就可以開心的聽廣播囉。 因為介紹已經很多,所以小梅子這裡要分享的是:廣播節目清單 XD FStream 不像 Hinet Sucks! Radio Widget 內建好了一狗票廣播節目清單,得自己一一輸入,這說起來也是滿麻煩的,我看了一下網路上的教學,覺得要一個個輸入實在不是人幹的事情,所以小梅子比對了一下資料結構,搞了一個「 台灣+香港 常用廣播電台節目表 」,所以你只要下載了 FStream ,再輸入(Import) 這個節目表就會有現成的一狗票節目了,也不用去改檔案夾目錄什麼的。 首先開啟 FStream 中的 Stream Manager 功能,預備輸入清單。 在 Stream Manager 的右下角,有一個「Import」按鈕,點下去預備輸入檔案 下載小梅子整理好的檔案,直接輸入囉,下載後直接放在桌面上就可以了,不用特別去選定目錄。 噹噹噹,這時候你應該會看到三個目錄,包括台灣、香港,還有一個 ... 沒成功過 XD,這個沒成功的列表是過去曾經用過,但現在沒有列在 Hinet Free 廣播清單中,或許以後可以用。 上面的清單中,小梅子其實也沒有一一測試過啦,大夥可以自己試試,若是還有不能連線的電台,你也可以自己手動搬移到「沒成功過」這個列表 :P PS : Hinet 又更新了廣播位置,小梅子今天 (4/15)也更新了這個目錄,順手又多加了一些電台,目前使用正常,歡迎大家一起聽廣播音樂 ^_^ ps : 2009/09/19 更新 這兩天發現 Fstream 又忽然不能聽了,但這次的狀...