布驗收 Agent 執(zhí)行手冊:從候選 SHA 到 release-ready 的可復(fù)現(xiàn)審計契約)
【免費(fèi)下載鏈接】codeburnFree, local tool to track AI coding token usage and cost across 37 tools and agents (Claude Code, Cursor, Codex, Gemini and more), by model, project, and task. npx codeburn項目地址https://gitcode.com/gh_mirrors/co/codeburn點(diǎn)擊查看免費(fèi)下載CodeBurn 是一個免費(fèi)、本地的 AI 編碼 Token 用量與成本追蹤工具覆蓋 CLI、TUI、桌面端、菜單欄和本地 Web 五種界面。本文將講解其發(fā)布驗收體系docs/release-acceptance/的核心文件 AGENT-RUNBOOK.md當(dāng)把一個候選版本交給審計 Agent 時必須遵守的驗收契約、不可妥協(xié)的控制項、12 步執(zhí)行序列以及ready/conditional/not-ready三種判定標(biāo)準(zhǔn)。讀完本文你將掌握一套可復(fù)制的發(fā)布前審計工作流如何鎖定候選產(chǎn)物、如何用真實(shí)點(diǎn)擊流驗證每個界面、如何獨(dú)立核算黃金語料、如何記錄證據(jù)并追加賬本。驗收的總體目標(biāo)證明即將發(fā)布的確切候選驗收不是跑一遍單元測試就結(jié)束。該體系在 README.md 中明確寫道它是一套證據(jù)系統(tǒng)而不是聲稱單元測試等同于使用產(chǎn)品evidence system, not a claim that unit tests are equivalent to using the product。審計 Agent 的目標(biāo)是對即將發(fā)布的確切候選the exact candidate that will ship給出認(rèn)證certify或拒絕reject的結(jié)論需要證明以下七個維度安裝installation打包產(chǎn)物能被正確安裝、簽名與信任見效速度time-to-value首次有用輸出是否在合理時間內(nèi)出現(xiàn)正確性correctness調(diào)用數(shù)、Token、成本、邊界日期的核算與獨(dú)立計算完全一致響應(yīng)性responsiveness首屏反饋、熱導(dǎo)航等是否達(dá)標(biāo)恢復(fù)能力recovery離線、損壞緩存、并發(fā)、中斷后能否自愈或給出可操作錯誤隱私privacy遙測與遠(yuǎn)程同步默認(rèn)關(guān)閉敏感信息不外泄機(jī)器衛(wèi)生machine hygiene驗收結(jié)束后機(jī)器上只保留一份健康的當(dāng)前安裝殘留被記錄在案。這七個維度必須橫跨 CLI、TUI、Desktop、Menu Bar 和本地 Web 全部五種界面逐一驗證。不可妥協(xié)的控制項Non-negotiable controls運(yùn)行手冊開篇就列出 11 條紅線任何一條都不能妥協(xié)。它們共同保證了測的是正確的產(chǎn)物、用的是正確的方法、記錄的是正確的證據(jù)鎖定權(quán)威遠(yuǎn)端拉取權(quán)威 remote 并固定 SHA、ancestry父提交、版本、產(chǎn)物校驗和、工具鏈、macOS 版本和硬件再開始測試。從干凈工作區(qū)開始絕不靜默恢復(fù)構(gòu)建產(chǎn)生的改動一旦發(fā)現(xiàn)構(gòu)建污染了 tracked 文件記錄并判定可復(fù)現(xiàn)性門檻失敗fail the reproducibility gate。這一點(diǎn)在自動化運(yùn)行器中有直接實(shí)現(xiàn)見下文。只使用打包/可安裝產(chǎn)物測試對象必須是官方入口點(diǎn)產(chǎn)出的包而不是本地臨時構(gòu)建。真實(shí)使用界面Desktop 和 Menu Bar 必須使用真實(shí)的 Computer Use點(diǎn)擊流Web 必須使用真實(shí)瀏覽器交互。僅憑截圖或 CLI 輸出不能證明一個點(diǎn)擊流程跑通。Persona A 使用隔離環(huán)境在隔離的 HOME/config/cache 中嚴(yán)格按當(dāng)前第一用戶文檔字面操作。Persona B 使用凍結(jié)語料在真實(shí)語料的凍結(jié)副本上測試真實(shí)歷史與憑據(jù)保持只讀。registry 必須全跑cases.csv中的用例可以增加但不能遺漏additions are welcome, omissions are not。記錄單調(diào)時鐘原始計時保留 JSON/CSV/logs/截圖等原始證據(jù)。獨(dú)立核算黃金語料各界面數(shù)字一致是必要條件但不是充分條件——如果大家用同一個錯誤算法會得到同一個錯誤數(shù)字。同意含糊一律保守對所有requiresApproval或其他同意語義含糊之處采取保守處理不推斷權(quán)限。禁止越權(quán)外發(fā)除非另行授權(quán)不得發(fā)送遙測/同步、發(fā)布、合并、開 issue 或改動外部系統(tǒng)。第 10 條與代碼倉庫中的同步同意機(jī)制相呼應(yīng)src/sync/consent.ts實(shí)現(xiàn)了同意一次consent-once的自動同步模型任何將要外發(fā)內(nèi)容的變更目的地、節(jié)奏、范圍、work matching、字段集合都會改變 SHA-256 指紋computeAcceptanceFingerprint觸發(fā)acceptance-required狀態(tài)并要求用戶重新接受detectFingerprintChanges返回變更清單披露文本明確列出哪些數(shù)據(jù)外發(fā)、哪些數(shù)據(jù)留本機(jī)原始提示詞永不發(fā)送、文件路徑只發(fā)送項目 basename并可通過codeburn sync auto disable停止。這正是不推斷權(quán)限這一紅線在代碼層的具體落點(diǎn)。必需執(zhí)行序列Required sequence12 步驗收流水線運(yùn)行手冊給出一個嚴(yán)格的 12 步順序不允許跳步或重新排序候選解析與變更前盤點(diǎn)candidate resolution and pre-mutation inventory鎖定 SHA記錄基線狀態(tài)??赡?zhèn)浞?隔離與干凈安裝reversible backup/quarantine and clean install。自動化運(yùn)行器 package 模式執(zhí)行 scripts/release-acceptance/run.mjs。兩輪卸載/重裝循環(huán)檢查身份identity、Gatekeeper、進(jìn)程路徑和重啟后狀態(tài)。Persona A 上手零狀態(tài)引導(dǎo)、空狀態(tài)、幫助/報錯、每個可見目的地/控件、鍵盤、縮放、主題、無障礙。黃金夾具Golden fixture每條相關(guān)執(zhí)行路徑跑 3 次冷啟動 5 次熱運(yùn)行。Persona B 重語料記錄首次有用輸出/完整耗時、導(dǎo)航、峰值資源至少在 5 個可用 Provider 上采集 30 條原始會話??缃缑嫱^濾器對賬所有界面用相同過濾器結(jié)果必須一致?;謴?fù)用例離線、鎖定/不可讀 Provider、損壞/中斷緩存、并發(fā)運(yùn)行、SIGINT/重啟、睡眠/喚醒、登錄重啟。最終單安裝盤點(diǎn)每類界面只保留一份當(dāng)前安裝恢復(fù)兼容狀態(tài)保留惰性備份產(chǎn)出殘留清單residue manifest。結(jié)論撰寫每個 finding 必須包含嚴(yán)重級別、精確前置條件/復(fù)現(xiàn)步驟、期望/實(shí)際/頻率、脫敏證據(jù)、隱私影響、負(fù)責(zé)人、規(guī)模以及 autonomous/HITL 分類。獨(dú)立評審后追加賬本只有經(jīng)過獨(dú)立評審才允許向賬本追加一行記錄。第 3 步的自動化運(yùn)行器是關(guān)鍵基礎(chǔ)設(shè)施。run.mjs支持三種模式preflight、tests、packagenode scripts/release-acceptance/run.mjs --mode package --output /absolute/evidence/run-id從源碼run.mjs可以看到其行為契約--output必須是絕對路徑isAbsolute校驗否則拒絕執(zhí)行運(yùn)行前先檢查git status --porcelainv1工作區(qū)不干凈直接拋錯終止第 93-94 行這是從不靜默恢復(fù)構(gòu)建改動紅線的機(jī)器執(zhí)行自動采集 provenance第 96-119 行g(shù)it SHA、parent、branch、version、commit 信息以及 macOS 的sw_vers、架構(gòu)、硬件型號、內(nèi)存、Node/npm/Swift 版本寫入provenance.json權(quán)限 0600tests模式追加執(zhí)行根測試、lock 測試和 Swift 原生測試package模式再追加生產(chǎn)構(gòu)建和 Menu Bar 打包mac/Scripts/package-app.sh每個子命令的 stdout/stderr 全部落盤到logs/id.log打包成功后對產(chǎn)物CodeBurnMenubar-sha8.zip計算 SHA-256 并記入automated-results.json結(jié)束再次檢查工作區(qū)是否被污染clean_after污染則整體判 fail所有結(jié)果寫入automated-results.json和timings.csv。用例注冊表cases.csv 的結(jié)構(gòu)與分階段執(zhí)行驗收的測試內(nèi)容全部登記在 cases.csv 中共 12 個階段 70 個用例RA- 前綴 階段縮寫 序號。每行包含id, phase, persona, surface, test, method, automation, evidence, threshold, blocking, owner。幾個代表性用例用例階段表面測試內(nèi)容methodblockingRA-PROV-001provenanceall權(quán)威遠(yuǎn)端 SHA 與 ancestry 鎖定scriptyesRA-BUILD-003buildMenu BarSwift 測試、universal 包與部署目標(biāo)scriptyesRA-INSTALL-002installDesktop兩輪卸載/重裝循環(huán)computer-useyesRA-A-002onboardingDesktop遙測退出選項清晰且被遵守computer-useyesRA-UI-007clickthroughMenu Bar狀態(tài)項可見、左鍵彈出 popovercomputer-useyesRA-PERF-001performanceCLI黃金打包冷啟動 3 次shellyesRA-PERF-004performanceWeb首次有用繪制與熱操作browsernoRA-ACC-001accuracyall黃金調(diào)用/會話/Token 族independent-calculationyesRA-REC-003recoveryCLI獨(dú)占鎖定的 SQLite 副本shellyesRA-REV-001reviewall獨(dú)立復(fù)現(xiàn)與代碼評審reviewyes要點(diǎn)method 決定證據(jù)形式script/shell可由自動化完成computer-use/browser必須是真實(shí)點(diǎn)擊independent-calculation要求獨(dú)立核算mixed/review/external-test各有用途owner 決定責(zé)任歸屬release、build、engineering、desktop、menubar、web、product、privacy、cli、accessibility、performance、correctness、reliability、quality一目了然blocking 標(biāo)志絕大多數(shù)是yes發(fā)布阻斷少數(shù)觀測類用例是no例如RA-PERF-004的 Web 首次繪制flag 而非硬門檻。證據(jù)階梯與驗證標(biāo)準(zhǔn)README 定義了五級證據(jù)階梯從弱到強(qiáng)源碼檢查或單元測試只能證明代碼意圖凍結(jié)夾具frozen fixture證明受控輸入下輸出確定打包并安裝的產(chǎn)物證明被評估的是可分發(fā)物真實(shí)交互證明用戶可見路徑被點(diǎn)擊并檢查過受影響機(jī)器證明針對無法在本機(jī)復(fù)現(xiàn)的 OS/賬號/Provider 特定故障。關(guān)鍵原則代碼檢查可以解釋結(jié)果但不能替代已安裝 UI 的行為Code inspection can explain a result; it cannot substitute for installed UI behavior。一個 finding 只有在記錄了可獲得的最強(qiáng)證據(jù)、且排除了可能的測量偽影measurement artifacts后才算確認(rèn)。發(fā)布節(jié)奏Cadence也寫明了證據(jù)梯級的適用場景每個主干變更現(xiàn)有 CI 聚焦回歸測試次版本發(fā)布前自動化運(yùn)行器、凍結(jié)黃金語料一致性、安裝/打包身份、每個已發(fā)布界面的 smoke 點(diǎn)擊流、所有歷史失敗用例主版本或?qū)嵸|(zhì)性的 parser/cache/UI 變更前跑完整cases.csv注冊表、兩輪干凈安裝、3 次凍結(jié)冷試、5 次熱試、真實(shí)語料抽樣、對抗性恢復(fù)、無障礙、殘留清單、獨(dú)立評審。計時與正確性指標(biāo)、觀測標(biāo)志與黃金對賬計時必須使用單調(diào)時鐘monotonic clock。需要記錄的指標(biāo)包括首次可見反饋、首次有用輸出、完整結(jié)果、熱導(dǎo)航、CPU/RSS可行處以及 totals 是否一致。受控性能分布使用同一凍結(jié)語料上的 3 次冷試 5 次熱試。繼承的觀測標(biāo)志observational flags有五個它們是分診信號而非合同閾值250 ms 內(nèi)無可見 UI 反饋熱導(dǎo)航超過 1 秒出現(xiàn)無階段/進(jìn)度文案的停頓違反文檔化的產(chǎn)品 SLA相對前一次可比賬本運(yùn)行出現(xiàn)回歸。正確性核算要求獨(dú)立計算以下每一項調(diào)用數(shù)、input/output/cache/reasoning 各類 Token、priced/unpriced/estimated 語義、亞美分精度sub-cent的成本、時間邊界、去重/恢復(fù)處理、委派子代理delegated-agent歸因。任何不一致都必須調(diào)查不能平均掉do not average it away。計時數(shù)據(jù)通過 templates/timings.csv 記錄列包括run_id, case_id, surface, persona, operation, trial, cache_state, start_monotonic_ms, first_feedback_ms, first_useful_ms, complete_ms, cpu_peak_pct, rss_peak_bytes, calls, tokens, cost_usd, identical_totals, notes。此外會話解析、增量重解析、周期切換和 CLI 冷啟動的 wait-path 性能數(shù)字由 scripts/perf/ 與 perf/README.md 中的獨(dú)立性能基準(zhǔn)負(fù)責(zé)它產(chǎn)出timings.csv模板但不能替代本驗收運(yùn)行器也不聲稱覆蓋已安裝的 Desktop/Menu Bar UI。準(zhǔn)確度證據(jù)則落在 templates/accuracy.csv每一行按 Provider/session 對比 expected 與 actual 的calls、各類 token、cost_usd并標(biāo)注priced_state、estimated_state和status。隱私與安全驗收中的紅線遙測與遠(yuǎn)程同步保持關(guān)閉除非某個命名測試明確授權(quán)本地接收端或 dry run絕不打印密鑰、不枚舉環(huán)境變量保留 Keychain 條目Provider 歷史與真實(shí)緩存只讀破壞性恢復(fù)使用副本分享前必須審查截圖與日志中的項目名、路徑、消費(fèi)、賬號數(shù)據(jù)與憑據(jù)發(fā)布簽名/公證、意外權(quán)限、憑據(jù)、CAPTCHA、不可逆刪除屬于人工閘門human gates。這一點(diǎn)與 12 步序列中Persona A 遙測退出、Persona A 隔離 HOME相互配合審計 Agent 本身也是被測對象的消費(fèi)者必須把自己隔離在干凈的沙箱環(huán)境里同時確保不觸碰真實(shí)賬號的敏感憑據(jù)。判定標(biāo)準(zhǔn)ready / conditional / not-ready運(yùn)行手冊的判定規(guī)則非常明確ready在確切產(chǎn)物上所有發(fā)布阻斷用例通過無 P0/P1 遺留所有已發(fā)布界面都有運(yùn)行時證明。conditional沒有已知的正確性或隱私損失但仍有一個具名的人工閘門受影響機(jī)器、或發(fā)布身份release-identity閘門待通過。not-ready出現(xiàn)以下任一情況——任何 P0/P1、賬本錯誤或靜默為空incorrect or silently empty accounting、普通冷啟動路徑不可用、安裝/信任破壞、某個已發(fā)布界面被跳過、或殘留未被控制uncontained residue。兩條提醒寫得非常直白不要因為修復(fù)看起來很容易就軟化判定Do not soften a verdict because a fix seems easy不要在沒有證明普通用戶能觸達(dá)的情況下夸大邊緣案例Do not inflate an edge case without proving an ordinary user can reach it。運(yùn)行記錄與賬本證據(jù)如何沉淀每次運(yùn)行的記錄結(jié)構(gòu)由 ledger.schema.json 約束JSON Schema draft 2020-12必填字段run_id至少 8 字符、started_at、candidate、environment、verdict、surfaces、evidence、limitationscandidate要求 40 位十六進(jìn)制sha與parent、version以及帶sha256的artifacts數(shù)組environment要求os, arch, hardware, node, npm可選swift、memory_bytesverdict枚舉ready/conditional/not-ready/incompletesurfaces每個表面的狀態(tài)枚舉pass/fail/conditional/blocked/not-shippedfindings需要id、severityP0-P3、statusopen/fixed/not-reproduced/downgraded、summaryevidence需要root、timings、click_through、accuracy、residue五類證據(jù)的路徑。賬本本體是 ledger/history.jsonl只追加、不重寫append-only。README 規(guī)定發(fā)布后追加該產(chǎn)物結(jié)果不得改寫舊運(yùn)行記錄。賬本里的真實(shí)先例2026-08-25 的一次審計展示了這套體系如何工作候選b305378e、版本 0.9.21、macOS 26.6.1 / Apple M3 Ultra / Node v22.22.3黃金語料為 9 次調(diào)用、8 個會話、1220 input / 242 output / 490 cache-read / 70 cache-write Token、成本 0.010186 USD判定為not-ready因為 Desktop fail、Menu Bar blocked并列出 5 個 P1/P2 findingGatekeeper 拒簽、同 SHA 不同表面嵌入不同定價、鎖定 SQLite 靜默報空、重語料冷啟動首次有用輸出延遲、退出后殘留進(jìn)程limitations 里如實(shí)記錄了 Menu Bar popover 無法尋址、真實(shí) Provider 語料未納入交接。這個例子恰好印證了 runbook 中靜默為空即 not-ready和blocked 不等于 pass的規(guī)則。所有權(quán)與人工閘門Agent 能做什么、不能做什么自動化邊界在 README 的 Ownership 一節(jié)寫得很清楚。Agent 可以自主執(zhí)行確定性測試、本地打包、計算夾具真值、性能剖析、采集截圖、在副本上做恢復(fù)測試、起草 findings。人類擁有產(chǎn)品語義、SLA 選擇、Apple 憑據(jù)/簽名、意外安全提示、真實(shí)賬號同意、受影響機(jī)器驗證。任何 Agent 都不能僅因自動化賬本變綠就合并代碼、發(fā)布版本或傳輸數(shù)據(jù)No agent should merge, publish a release, or transmit data merely because the automated ledger is green。結(jié)語把發(fā)布變成可審計、可復(fù)現(xiàn)、可問責(zé)的流程CodeBurn 的發(fā)布驗收體系把一次性的狗糧審計dogfood audit變成了可重復(fù)的發(fā)布閘門。核心價值不在自動化程度有多高而在于它構(gòu)建了完整的證據(jù)鏈從鎖定候選 SHA 與校驗和到自動化運(yùn)行器強(qiáng)制干凈工作區(qū)、真實(shí)點(diǎn)擊流覆蓋每個界面、獨(dú)立核算黃金語料、凍結(jié)副本上的恢復(fù)測試再到只追加的賬本和獨(dú)立評審。對于任何一個以 CLI 桌面應(yīng)用形態(tài)發(fā)布、且涉及真實(shí)消費(fèi)數(shù)據(jù)與隱私的本地工具而言這套 AGENT-RUNBOOK 契約都是一份可以直接復(fù)制執(zhí)行的范本——它回答了發(fā)布前最后一個問題我們憑什么相信這個確切候選可以交給用戶。贊分享【免費(fèi)下載鏈接】codeburnFree, local tool to track AI coding token usage and cost across 37 tools and agents (Claude Code, Cursor, Codex, Gemini and more), by model, project, and task. npx codeburn項目地址https://gitcode.com/gh_mirrors/co/codeburn點(diǎn)擊查看免費(fèi)下載相關(guān)推薦CodeBurn 發(fā)布驗收體系實(shí)戰(zhàn)指南把一次性的 dogfood 審計變成可重復(fù)的發(fā)布門禁CodeBurn 發(fā)布驗收體系實(shí)戰(zhàn)指南把一次性的 dogfood 審計變成可重復(fù)的發(fā)布門禁 本篇技術(shù)指南系統(tǒng)講解 CodeBurn 倉庫中 docs/relescientific-agent-skills 數(shù)據(jù)庫查詢的檢索契約與審計清單讓 Agent 每次 API 查詢都可復(fù)現(xiàn)、可審計scientific agent skills 數(shù)據(jù)庫查詢的檢索契約與審計清單讓 Agent 每次 API 查詢都可復(fù)現(xiàn)、可審計 在 scientific aAI 技能科研生物信息學(xué)數(shù)據(jù)科學(xué)gbrain eval takes-quality跨模型評審面板與 4-Sha 回執(zhí)契約構(gòu)建 Takes 層可復(fù)現(xiàn)質(zhì)量門禁gbrain eval takes quality跨模型評審面板與 4 Sha 回執(zhí)契約構(gòu)建 Takes 層可復(fù)現(xiàn)質(zhì)量門禁 gbrain eval take人工智能RAGAgent 記憶MCP 服務(wù)知識管理創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考