AI Newsway

代理把30萬行C程式碼推上滿分,真正的難關是那套驗證框架

CodeScene三週花掉約4,000美元的token——而讓這件事安全成立的逐格重播驗證,才是多數老舊程式庫複製不來的部分

|6分鐘閱讀0
C source code on screen — CodeScene's agents modified 252,055 lines across 726 files in three weeks of part-time work.
C source code on screen — CodeScene's agents modified 252,055 lines across 726 files in three weeks of part-time work.

CodeScene為期三週的實驗,替代理驅動的老舊系統現代化標上了一個很難忽視的數字:約4,000美元的token,把30萬行C程式碼的Code Health分數從5.6拉到毫無瑕疵的10.0。數字很好傳播,附帶的前提條件卻很難傳播,而對任何打算做同樣事情的人來說,那個條件才是更有用的發現。

那個條件叫做「oracle」。代理做的每一次修改,都要通過一套重播軌跡框架的檢驗,逐格比對遊戲的回溯狀態雜湊值。被動刀的程式庫,是快打旋風III:三度衝擊的開源反編譯版本。按CodeScene的說明文章,選它的理由之一,是兩名工程師本身就在玩這款遊戲,壞掉會立刻察覺。行為確定的格鬥遊戲,是少數幾類能讓這種驗證成立的軟體。

重點摘要

  • 這次分數提升的token花費約4,000美元,CodeScene把它對照成開發者月薪的一半,而代理出現前的估計是專家12到18個月的工作量。
  • 安全網來自行為而非測試:一套逐格比對回溯狀態雜湊值的重播框架,外加一個讓代理可以據以最佳化的CodeHealth分數。
  • 被當成成果流傳的數字——AI造成的缺陷少70%、token浪費少45%——是沿用CodeScene早先研究的推估,並不是這次測出來的。

4,000美元實際涵蓋了什麼

原始的活動紀錄相當可觀:2,903次提交、動到726個檔案、修改252,055行。讀這些總量時要看清範圍。這是兩名工程師兼職投入,不是一支正規團隊,而且費用只算token,不含薪資與審查時間。

回饋透過一台MCP伺服器送達,把CodeScene的CodeHealth指標開放給代理取用,讓每一次轉換不只是被嘗試,而是能被評分。把一個確定性的品質分數和一個確定性的正確性檢查配成一對,正是這個迴圈能幾乎無人看管地運轉的原因;少掉任何一半,吞吐量的數字就不太有意義了。

真正的發現是手冊,不是分數

滿分的指標讀數,是這場實驗裡最難移植的部分。真正留得下來的成果是一本手冊:代理邊做邊整理出的22則配方與82條補充筆記,替反覆碰到的轉換型態命名,並寫下每一則的前提條件。

有些條目出自標準劇目——提取函式、防衛子句、參數物件。另外三則大概不會出現在任何重構目錄裡,因為它們描述的是這個程式庫自身的狀況。Shared Index Range把只差在起訖點的迴圈摺疊成一個。Action Parameter吸收掉那些主要差別只在呼叫哪個函式的重複控制結構。Uniform Step Table則把散落各處、型態不一的呼叫,換成表格驅動的派發。

失敗的結果也一併留下。不少嘗試完全沒動到指標,有些甚至把分數拉低;這些被寫進手冊,和成功案例並列。那比較接近實驗記錄本的紀律,而不是一次程式碼清理。

模型的層級差異在這次執行中相當明顯。早期試探之後,大部分工作由Anthropic的Claude Opus接手,團隊表示在捕捉並記錄新浮現模式這項特定工作上,搭配Opus的Claude Code表現勝過搭配Sol的Codex。改用較小的Sonnet與Terra模型時則容易卡住——檔案會停在看似局部最佳解的位置,程式碼異味還留在原地。

質疑落在哪裡

據InfoQ記錄,隨後在LinkedIn上的爭論,焦點不在這次執行是否真的發生,而在於它容許別人推論出什麼。支持者指出,軌跡重播的門檻遠高於一套全綠的測試,因為測試通過只證明測試仍然會過。

針對適用範圍的挑戰相當尖銳。一位技術主管想知道產出到底有沒有被合併,以及開源遊戲程式碼能不能代表撐著營收的正式軟體。NeoSee技術長、也是兩名工程師之一的丹尼爾·韋伯(Daniel Webb)說,成果經由54個拉取請求進入了分支版本的main——是真的合併,只是並非進入有外部維護者的上游專案。

其他批評衝著用詞而來。把一個程式庫形容為完美,本身就引來反彈。新配方也是:如果DRY講的是知識的重複而非字元的重複,那麼以迴圈邊界為判準的配方,可能正抹掉一個值得保留的區別。再者,Claude Code與Codex各自針對自家模型調校過,成果該怎麼在模型能力與框架設計之間分帳,其實並不清楚。整個過程中架構始終沒有被評分,這就留下一種可能:健康指標看起來乾淨,結構性債務卻在一年後浮現。

哪些還沒有被測量

創辦CodeScene的亞當·托恩希爾(Adam Tornhill),以三十年大型系統經驗來衡量這次執行,稱這是他頭一回在規模化場景中見到超越人類的AI表現。他同時強調,自動化測試與等價性檢查是絕對不可或缺的防護——這句但書悄悄訂出了入場門檻,因為不健康的程式庫之所以不健康,往往正是缺了這些東西。

流傳最廣的兩個數字其實是預測。AI造成的缺陷約少70%、token浪費約少45%,都來自外推CodeScene更早的Code Red研究;該研究發現健康的程式碼演進速度快10倍,平均缺陷少15倍。這個專案裡真正被觀察到的,只有4,000美元和三週。

驗證其餘部分,正是隆德大學一項規劃中研究的目的:把5.6與10.0兩個版本的程式庫都交給學生,讓他們用前沿模型開發功能,直接比較成本與品質。這是值得跑一次的檢驗,尤其對照著LLM修錯工具弄壞正常程式碼的次數,多過它修好壞掉程式碼的證據來看。

FAQ 常見問題

重構後的程式碼真的被合併了嗎

合併進了main,但是在分支版本上,而非上游專案。丹尼爾·韋伯給出的總數是54個拉取請求。討論中的審查者認為,要讓同等成果被一個有獨立維護者、仍在活躍的上游專案接受,會是難得多的考驗。

4,000美元包含工程人力成本嗎

不包含。這筆錢只算token花費,涵蓋兩名工程師三週的兼職投入。CodeScene把它擺在開發者月薪的一半旁邊,並估計同樣的現代化工作在代理出現之前,會吃掉資深開發者12到18個月的時間。

這套做法能用在典型的老舊程式庫上嗎

評分那一半到哪裡都能用,驗證那一半通常不行。逐格重播要靠確定性的遊戲迴圈,一般的商業系統很少有對等的東西。少了相當的正確性oracle,代理可以一路把品質指標往上推,卻沒有任何東西確認行為仍然完好。

對這篇文章有什麼感想?

SJ
載入中...

相關文章

DoorDash代理以4.79美元、14分鐘清掉一個過期功能旗標
Developer Tools

DoorDash代理以4.79美元、14分鐘清掉一個過期功能旗標

DoorDash的代理把50個過期功能旗標中的45個變成工程師核准的拉取請求,而人力處理每個旗標需要一到兩小時。

Seung Jung11 天前
Vercel 因一年前就修好的錯誤,全平台關閉 AVIF
Developer Tools

Vercel 因一年前就修好的錯誤,全平台關閉 AVIF

Vercel 將回報的 Next.js RCE 追查到 libheif,於 8 月 13 日在全平台停用 AVIF,並在 8 月 25 日前協調完成 sharp、libvips 與 libheif 的修補。

Seung Jung11 天前
四種Opus 5的請求寫法,在Claude Opus 5.5上會回400
Developer Tools

四種Opus 5的請求寫法,在Claude Opus 5.5上會回400

Claude Opus 5.5比Opus 5便宜20%,卻對Opus 5原本接受的四種請求回傳HTTP 400。第五項變更則讓代理的進度串流悄悄消音。

Seung Jung前天
Docker 把 AI 代理沙箱搬上雲端,按秒計費、每小時 0.07 美元起
Developer Tools

Docker 把 AI 代理沙箱搬上雲端,按秒計費、每小時 0.07 美元起

Docker 推出 Cloud Sandboxes,把微型 VM 代理隔離搬到託管運算上,按秒計費、每小時 0.07 美元起,並將 Kits 格式移交 CNCF。

Seung Jung5 天前
OpenRouter 為美國 AI 流量築牆,中國模型主導開放權重用量
Developer Tools

OpenRouter 為美國 AI 流量築牆,中國模型主導開放權重用量

OpenRouter 正式推出美國境內路由,送往美國端點的請求從解密、處理到回應全程都在美國境內完成。

Seung Jung15 天前
七個月湧入一百萬個代理技能 — 其中近半數只被安裝過一次
Developer Tools

七個月湧入一百萬個代理技能 — 其中近半數只被安裝過一次

Vercel 的 skills.sh 在七個月內突破一百萬個代理技能。近半數只被安裝過一次,375 個項目就吃下全部安裝量的 62%。

Seung Jung4 天前