2026.08.22 —— 今日 10 則
TODAY'S THREAD 今天兩則報導都在講被忽視的舊基礎設施怎麼出了紕漏——一個過期網域讓人意外聽到軍事基地的電話,Cassandra 為了跨分區交易走了 13 年;另一邊 Stripe 把資料庫維運直覺換成可驗證的演算法,Spotify 則追問 LLM 判讀能不能真的取代人工。
系統提示只是「軟約束」,Google 把 agent 信任邊界搬進硬體
文章以一個情境開場:客服 agent 被提示注入攻擊,把 149 美元的退款竄改成直接寫入資料庫的一萬美元退款。Google 主張系統提示終究只是軟約束,因此把信任邊界從提示層搬進基礎設施:用 Cloud KMS/HSM 對每筆寫入加密簽章,讓 agent 產生的程式碼跑在完全無對外網路的 gVisor 沙盒裡,再加上語意閘道與 VPC Service Controls 邊界防止資料外洩。整套參考架構以 Agent Development Kit 與 Gemini 建構,並在 GitHub 開源。
多教師蒸餾原本要跑兩天,LinkedIn 拆解流程後 5 小時內完成
LinkedIn 用來做 AI 求職搜尋的學生模型只有 0.6B 參數,卻要同時吸收多個教師模型的知識,原本端到端訓練流程接近 45 小時,主因是每次都要重新跑一輪教師推論。團隊改用 Ray 把教師推論與學生訓練解耦,讓每個教師模型能獨立擴展,並提供線上即時查詢與離線快取兩種模式,教師微調吞吐量翻倍、推論加速約 2 倍。整體訓練時間壓到 5 小時以內,比原本快超過 8 倍。
LLM 能不能代替真人做 A/B 測試判讀?Spotify 借用生醫統計學回答
Spotify 研究者把 LLM 判讀結果類比生物統計學裡的「替代終點」,主張要成立必須同時滿足替代性與可比性兩個條件,而「這兩個假設在設計上都無法被保證」。他們用真實的標題 A/B 測試資料驗證:讓 GPT-4o-mini 直接預測點擊率,未經校準只能還原 39% 的真實處理效應,用線性迴歸校準依然離人類基準差了 3.8 個標準誤,換成隨機森林等非線性校準器才拉得回接近人類基準。
醞釀近四年,Rust 下一代 trait solver 上了 nightly
Rust 團隊耗時近四年重寫 trait 求解與關聯型別正規化的核心演算法,8 月 21 日已在 main branch 開啟、8 月 22 日起可在 nightly 使用,修掉 GitHub 上超過 200 個既有問題。對 crates.io 前二萬個熱門 crate 的相容性比對顯示,datafusion 這類 crate 的編譯速度甚至加快超過 8 倍,但官方也坦承這是「一次會帶來不小破壞面的改動」。這次改動同時是 Type Alias Impl Trait、Return Type Notation 等被舊 solver 卡住多年的語言特性得以穩定化的前提。
大家都說組合語言沒有型別——設計 Odin 內嵌組語的人不同意
Odin 語言新設計的內嵌組合語言採用有型別的樣板語法,而非像多數語言把組語當成不透明字串塞進編譯器。編譯期語意檢查靠一份涵蓋 x86-64、ARM、RISC-V 等多種指令集的可機讀編碼表,因此編譯器能實際驗證每條指令的運算元型別與寬度是否合法,作者說:「難的從來不是語意檢查這件事本身,而是手邊沒有一份機讀的指令集模型可以拿來檢查。」整套系統只花約七天就設計實作完成。
花五歐元買下網域,我意外聽到軍事基地的電話
一位資安研究者發現,Diego Garcia、聖赫勒拿與阿森松三個電話號碼的 ENUM(e164.arpa)委派,指向一個已過期的 nameserver 網域,花 5 歐元買下後就取得這三地電話路由 DNS 的完整控制權。半年後回頭檢查 log,才發現伺服器默默記下約 40 萬筆查詢——多半是美國來源 IP 對軍事基地的通話後設資料,UK 政府多管道通報完全沒有回音,RIPE 則以「治理層級在 ITU-T」為由不受理。伊朗三月對 Diego Garcia 發動飛彈攻擊後,第二次通報才真正被當一回事,NCSC 最終接手,全程只花了 10 歐元、沒有 bug bounty。
從無交易到跨分區 ACID,Cassandra 6 走了 13 年
Cassandra 即將在 6.0 版加入 Accord——一個由 Apple 與密西根大學工程師打造、無需 leader 的共識協定,讓資料表首度能做到跨 partition 的原子性與隔離性。作者實測發現舊機制的缺陷相當具體:BATCH 遇到客戶端時間戳打平時會逐欄位取值而非整批取捨,兩筆並發寫入 (100,1900) 與 (1800,200) 打平後竟變成 (1800,1900);LWT 則完全無法跨 partition,800 次跨分區測試全數失敗。測試途中還意外揪出 Accord 本身一個真正的隔離性 bug,隔天就被 Apple 工程師證實。
Bun 1.4:把核心從 Zig 搬到 Rust,效能全面重測
Bun 1.4 把運行時核心部分改寫成 Rust、記憶體配置統一改用 mimalloc,實測小型應用閒置 CPU 用量降為五分之一,Claude Code 生產環境的 p99 CPU 使用率則從 24% 降到 10%。HTTP 伺服器情境下記憶體用量可減少 13% 到 48%,Linux 上啟動速度快兩倍,執行檔最多縮小 17%。這一版也新增 1,517 個來自 Node.js 官方測試套件的相容性測試,node:http、node:fs 等核心模組通過率達到 97%。
把兩千個資料庫節點的修復,變成一道最短路徑問題
Stripe 的 MongoDB 機群橫跨 2,000 個 shard、40 多種佈局,過去半年光是設定錯誤就觸發 124 次 pager,且每加入一種新佈局都要工程師手動稽核約一週。新架構把每個 shard 的狀態當成圖上的節點、把「重建節點」之類的維運操作當成有權重的邊,先用 BFS、後改用 Dijkstra 演算法找最短修復路徑,還能在毫秒級模擬每秒數百種候選狀態轉移後才對真實機器動手。上線後 pager 量降低 30%,一年省下 12 天的機群不健康時間,新增佈局也不再需要額外程式碼。
把單一登入接進 SSH,OPKSSH 開源了
OpenPubkey SSH(OPKSSH)正式開源,Cloudflare 把先前由旗下 BastionZero 閉源持有的程式碼捐給 OpenPubkey 專案。機制上使用者執行 opkssh login 觸發瀏覽器 OIDC 登入,取得的憑證直接塞進 SSH 協定原有的公鑰欄位傳遞,伺服器端只要在 sshd_config 加兩行呼叫驗證指令即可,完全不需修改 SSH 協定本身。作者引用 SSH 發明者 Tatu Ylonen 的話:「即使是非常重視資安的組織,過時的 authorized keys 數量往往是員工數的好幾倍,其中約一成授予 root 或管理員權限。」