Theme / v0.10.8

Codebase Memory

程式碼記憶與知識圖譜 MCP

Changelog

版本更新紀錄

收錄 Codebase Memory 的版本變遷軌跡。每條紀錄以舊值新值呈現,舊值以紅線劃掉但保留可見,方便對照改動軌跡。

當前記錄版本

v0.10.8

查看上游所有 Release ↗
  1. v0.10.8

    當前版本2026-08-19
    • v0.10.4v0.10.8:version 欄位更新為 v0.10.8;合併收錄 v0.10.5(安裝與啟動修復)、v0.10.6(0.10.x 索引效能回歸修復)與 v0.10.8(19 個社群 PR 修復批次)三個正式版,不需索引、快取或設定遷移。上游曾以錯誤 tag 0.10.7(無 v 前綴)發布 prerelease,npm/PyPI 安裝器無法解析該 tag,已由 v0.10.8 以相同內容取代,本站不採用該 prerelease。
    • 0.10.x 索引效能回歸全面修復(v0.10.6,#1669):自 0.10.0 起大型 repo 索引持續變慢——Java 慢 6 倍、C# 2.6 倍、TypeScript 2 倍——根因是多處 per-file 工作隨整個 corpus 縮放;修復後 elasticsearch (Java) 477 秒 → 86 秒、dotnet/runtime (C#) 1211 秒 → 450 秒且比 0.9.0 多 48% edges、TypeScript repo 37 秒 → 約 24 秒;Linux 記憶體暴增一併修復(#1654,v0.10.4 曾在索引時把 36 GB 機器 OOM);CI 新增 complexity guard 防止再度回歸,CBM_PROFILE=1 可印各 pipeline pass 耗時。
    • 安裝與設定寫入修復(v0.10.5/v0.10.6):Windows installer 暫存目錄改為 owner-only ACL,不再被自家 binary 以 acl-grants-cross-account-mutation 拒絕;Hermes、goose、OpenCode、Codex 設定中的四類 YAML 建構(空 flow collections、行首 block sequences、反斜線續行字串、中綴 apostrophe)全部接受;含 UTF-8 BOM 的設定檔可正常編輯;cbm 自身寫入、後經 client 加註欄位(如 "enabled": true)的 MCP entry 不再被誤判為外來而拒改,修復時保留註解與 client 欄位;uninstall --help 不再真的執行解除安裝(#1038)。
    • Windows DACL 不再反覆重寫(v0.10.6):runtime 目錄僅在非 owner-only 狀態時重蓋安全描述元,受 pre-v0.10.3 空 DACL 破壞的目錄偵測後原位修復(#1416/#1601/#1620);CBM_RUNTIME_DIR 在正式 build 可搬移 daemon rendezvous 目錄,並轉發至 Codex 產生的設定(#1664)。
    • Cypher 聚合不再漏算(v0.10.8,#1196):unlabeled scan 在 max_rows 前提前截斷(#1323)與 relationship-expansion buffer 內部上限(#1698)兩處修復後,count()/collect() 可見完整 match set,max_rows 僅限制回傳列數,與文件語意一致。
    • Graph 準確度(v0.10.8):Python aliased from-import(如 from .gate import execute as bridge_execute)正確產生指向真實定義的 CALLS edge,django benchmark 找回 26 條 INHERITS 與 42 條 OVERRIDE edges(#1371);search_graph 不再回傳僅由 similarity edge 支撐的 semantic-only ghost 結果(#1319);list-valued 欄位不再折疊為第一個元素(#1325)。
    • Windows 與平台支援(v0.10.8):search_code 管線強制 UTF-8,非 ASCII(CJK 等)內容不再變成 ?(#1704),並支援 UTF-8 輸出路徑與 context 欄位(#1253);查詢可取消、不殘留孤兒 scan(#1608);新增 FreeBSD 支援(#1467);list_projects 支援 offset/limit 分頁(#1181);無副檔名腳本以 shebang 偵測語言(#1203)。
    • Release pipeline 強化(v0.10.8):gate 取消即 fail closed,逾時 gate 不再靜默跳過測試矩陣(#1719);preflight 拒絕無 v 前綴的版本輸入,杜絕 0.10.7 事件重演。
    上游 Release Notes ↗
  2. v0.10.4

    舊版本2026-08-14
    • version 欄位更新為 v0.10.4;install-and-diagnostics release,修正 v0.10.3 在 Windows 或套件管理員環境拒絕安裝/啟動的問題,不需索引、快取或設定遷移。
    • Windows 系統管理員帳號可正常安裝與啟動(@spam0115、@gotspatel,#1416):先前 installer 以 token 的 user SID 比對檔案 owner,但 Windows 對新建立物件蓋的是 owner SID(Administrators 群組預設為 BUILTIN\Administrators),導致自身建立的暫存檔被拒用;現在同時接受 Windows 實際蓋上的 owner SID,檔案真的屬於其他帳號時仍會拒絕。
    • 套件管理員安裝不再被覆寫(@SC-CTS):mise、Homebrew、nix、asdf、cargo 管理的 binary 不再被 install 複製一份到 ~/.local/bin,也不改 shell rc;update 會誠實拒絕並指名改用 mise upgrade/brew upgrade 等對應指令。
    • install --clients 可指定要設定的客戶端(@PsyTech-Rob):不再對每個偵測到的 client 都寫 MCP config、agents、skills 與 hooks;不帶參數的 --clients 會列出所有支援的 token。
    • 錯誤訊息與診斷改進(@listepo、@PsyTech-Rob):啟用拒絕改為指名目錄與觸發規則;client-path 啟動失敗改以 JSON-RPC error 回傳原因,不再只寫到 stderr 造成「transport closed unexpectedly」;ui_enabledui_port 成為 config set/config list 支援的第一級設定鍵。
    • Codex 重複安裝不再破壞設定(@astandrik):重複的 inline hook 指派會被併回 canonical block,外部 hook 保留,曖昧 TOML 直接拒絕修改;OpenCode 安裝已修正寫入 opencode.json/opencode.jsonc 的目標選擇,但寫入本身在 v0.10.4 仍失敗(追蹤 #1630)。
    • 查詢正確性與平台支援(@SEPURI-SAI-KRISHNA、@PR9000):OPTIONAL MATCH 在 hop buffer 飽和時不再丟棄 no-match 列;FreeBSD 可正確解析自身執行檔路徑。
    • 安全與可靠性:release pipeline 在執行前 pin 並驗證下載的外部工具(#1245);子程序 spawn 在核心回 EAGAIN 時改為指數 backoff(最長約 0.5 秒)後重試,機器真正耗盡時仍快速失敗。
    上游 Release Notes ↗
  3. v0.10.3

    舊版本2026-08-13
    • version 欄位更新為 v0.10.3;fixes-only 版本,收錄 6 個社群 PR 與 2 個 v0.10.2 回歸修復,不需索引、快取或設定遷移。
    • 並行實例不再互相 quarantine(#1206,@LynxBay):兩個 cbm 實例競爭同一專案時,輸者曾把健康資料庫誤判為損毀並 quarantine 重建。完整性檢查改為三向判定——僅確認損毀才 quarantine、lock race 回報「專案忙碌」並保留資料、深層 quick_check 抓出 shallow 探測漏掉的 page-level 損壞(#1037)。
    • Graph 決定性兩處修正(@Studnicky):同一 logical edge 重複產生時改由 total order 合併(高信心勝出、平手鍵決定性、結果與到達順序無關);CONFIGURES 候選收集改以純內容鍵排序後再套上限,不再隨 worker merge 順序漂移。
    • Windows daemon 空 ACL(#1351,@Kiborgik):受保護 DACL 加非繼承 ACE 使子檔案繼承不到任何權限、連擁有者都無法讀取;目錄改為可繼承的 owner-only ACE,安全 posture 不變且檔案可用,並以 SID 識別帳號修掉「機器名等同使用者名」的空 principal 陷阱。
    • 兩個 v0.10.2 回歸修復update --ui 恢復接受舊旗標(#1544,@ehendrix23,旗標已無作用但不再 hard error);產生的 Pi 擴充改為 default-export factory,不再讓載入失敗拖垮所有 pi 指令(#1550,@musichen)。
    • trace_path 結構化輸出不再丟失證據(#1542,@asemraza):format: "json" 原本悄悄丟掉 strategyconfidence 欄位,現與 tree 格式語意一致、缺值以 null 呈現。
    • 子程序 spawn 容忍忙碌機器:核心回傳 EAGAIN(程序表暫滿)時改為短暫重試,真正的錯誤(缺二進位、權限)仍立即失敗、語意不變。
    • 安裝與啟用拒絕訊號修正(#1537,@listepo):daemon 原本因祖先目錄 group-writable(WSL2 預設 0775)而永久拒絕、無從關閉也無從重開,現僅拒絕 world-writable 祖先、私目錄仍強制 owner-only;錯誤訊息不再虛構 ENOENT,改為指名目錄與觸發規則;啟用防護也把「無程序運行」與「無法停止程序」分為兩則訊息。
    • 其他修正:Codex 在 CBM_CACHE_DIR 下看不到工具的設定轉發(#1562,@anton-matosov);skill YAML 在嚴格 parser 下因未引用冒號載入失敗(#1554,@xezzon);search_code 把負 limit 回顯為結果數(#1511);OpenCode 安裝寫錯檔名(.json vs .jsonc,#1560,@iandol);release 封包解壓前驗證成員集並拒絕 symlink(#1510)。
    上游 Release Notes ↗
  4. v0.10.2

    舊版本2026-08-10
    • version 欄位更新為 v0.10.2;0.9.x 更新器與 npx 暫存安裝的連線問題已修正,且不需索引、快取或設定遷移。
    • Robustness + platform-support release(自 v0.8.1 以來):First-class Windows 支援(含非 ASCII path、native windows-arm64 build)、indexing 效能與記憶體安全、跨多語言抽取準確度修正、Graph UI 改進。
    • Indexing:kernel-scale campaign 減少 ~61% 索引時間且輸出 deterministic;新增 crash/hang supervisor 會 quarantine 單一壞檔並繼續索引其餘檔案,而非全部 abort。
    • Graph UI:node budget 上限 10M 節點(含 scaled rendering 與 contrast controls)、dead-code filtering、node code preview、GitHub deep-links、URL routing、離線 label rendering(不抓 remote font)。
    • 上游已發佈 pre-release v0.9.1-rc.1prerelease: true,2026-07-30 發布,body 約 30KB);目前 version 暫不跟 pre-release,待正式 v0.9.1 發布再升版。
    • 上游 main 分支最新 commit 為 2026-08-09T00:43:24Z,屬持續 commit、無新正式 release。
    上游 Release Notes ↗

圖例

  • 當前版本 本站現在記錄的版本
  • 舊版本 已被取代,保留作歷史對照
  • 已同步 與上游 release 對齊
  • 僅上游變動 上游 main 有 commit,但未發佈新版