# KBDB-graph 抽出 — Requirements > 建立:2026-06-14 > 來源:InkStoneCo 頂層 `matrix-rearrange` R2 + 本目錄 `docs/HANDOFF-kbdb-plugin.md` > 定調:leo 2026-06-13 --- ## 背景 本目錄(`matrix/kbdb-graph-plugin`,原 `matrix/kbdb`)原是「整套 KBDB」。leo 2026-06-13 拍板拆分: - **基本盤** = `arcrun/kbdb`:D1 三表(blocks/templates/slots)的基本存儲讀寫,已併進 arcrun。 - **本目錄(KBDB-graph)** = 掛在基本盤之上的 triplet 採集 + graph 查詢插件,**類比 Apache AGE 之於 Postgres**。 為何獨立:graph 能力較龐大、非基本存儲、leo 產權較複雜 → 獨立成 repo 不留 arcrun。 ## 需求 1. **R-EXT-1 確認邊界**:把現有 `src/actions/`、`src/routes/`、`migrations/`、`contracts/` 逐一分類為「插件(triplet/graph/entity/search)」或「基本盤(block CRUD/template/tag/profile)」。基本盤的歸 arcrun/kbdb,插件的留本目錄。順便裁剪 CLAUDE.md(移除基本盤規範,只留 graph 插件相關)。 2. **R-EXT-2 獨立成 repo**:改名 KBDB-graph,`git init` + 設 remote(帳號問 leo)+ 推 GitHub。由本 CC 自己推,不經總管。 3. **R-EXT-3 定義掛載介面**:KBDB-graph 如何掛在 arcrun/kbdb 基本盤上(AGE-on-Postgres 模式)——插件怎麼讀基本盤的 blocks 表、怎麼宣告自己的 triplet/entity/graph schema。 ## 約束(硬性) - **修改不是重建**:在現有實作上改,不重寫。 - **部署繞開 GitHub**:wrangler 直推 Cloudflare,禁跨 repo 同步 Actions(當初害帳號被 flag 的模式)。新 repo 預設不開 Actions。 - **本目錄現無獨立 git**(matrix 降級後脫離、被 InkStoneCo 頂層 gitignore)→ R-EXT-2 才 git init。在那之前用普通 mv 不是 git mv。 - **API-as-Wall / 萬物皆 Block** 仍適用於基本盤;插件對 graph 資料同樣經 API。 - **樂高法**:`src/actions/` 單檔 < 100 行、一檔一事、無狀態。 ## leo 已拍板(2026-06-14) - 獨立 repo = **新 repo `uncle6me-web/kbdb-graph-plugin`**(沿用現目錄名,非「KBDB-graph」字面)。 - 灰色地帶處理方式 = 先 grep 查引用再提建議(已完成,見 design.md)。 ## 仍待確認(與 arcrun 對齊,非 leo) - 0005/0007 等基本盤 migration 歸屬與 HANDOFF 清單有出入,移交前對齊 arcrun。