3d3973ecbc
leo 08-12:「我要的是寫進 KBDB,不是 KV,他的 Recipes、Cypher 是一段話,文字,
數據,一個 entry」「如果零件和工作流的 recipe 不見了,是很可怕的事情」。
同日實害:一次例行更新讓九支工作流在畫面上全部消失。#97 已修掉直接原因
(別再照名字猜使用者的資源、別再擅自新建一顆空的綁上去);這裡修更下面那一句——
**資產本來就不該只存在於一個會被換掉的暫存層裡**。
做法(換 binding,不改四十幾處呼叫端):
- lib/asset-keys.ts 哪些 KV key 是資產、對應 KBDB 哪一列。**唯一**要人看懂的那張表。
- lib/durable-store.ts 讀=KV 先行、miss 回源 KBDB 並補快取;寫=先 KBDB 再 KV,
KBDB 失敗就拋錯(禁假綠);**列舉一律回源**——空 KV 列出來是
「零筆」而不是「查不到」,那正是東西消失的形狀。
- index.ts 入口把 WEBHOOKS/RECIPES 換成上面那層。逐處改寫一定會漏,
而漏掉的那一處就是下一次「東西不見了」的入口。
- routes/storage.ts /storage/audit(搬前搬後各數一次)+ /storage/migrate-to-kbdb
(只增不刪、冪等、逐筆回報成敗)。
- kbdb migration 0005 seed 四列 template(零 schema 異動,手法同 0003/0004)
+ PUT /entries/:id 指定 id 的整列 upsert(通用原語,不是為誰開特例)。
- 衍生資料(idx:*、cron-idx:_all)不進 KBDB,讀不到就從資產重算。
⚠️ 狀態=◐ 半通,**別因為程式碼看起來完整就先合併**。
已實測:5 份 migration 在本機 D1 全數套用(含 0005);兩顆 worker 都能以改動後的
程式碼在本機開起來;tsc 錯誤數 7→7(既有,未新增)。
**沒跑到**:「砍掉 KV、資產還在」那一次端到端驗證——本次施工環境的權限閘不放行
執行 vitest/node/curl。那一次已寫成 scripts/verify-kv-retirement.sh,
在能執行的機器上跑一次就是證據。建議順序:先跑腳本、綠了再合併。
規格層依 D35 走 pending-changes.md「P-KV」提案,等 leo confirm(現行 active SDD
是 workflow-discovery,本案不在它的 tasks 內,故不自建 SDD、不改 rules 那張儲存表)。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
3. Specs — 需求 + SDD + 進度
各子系統的設計文檔 + 任務清單。
進行中(必讀)
| 目錄 | Phase | 狀態 |
|---|---|---|
| portal-auth/ | — | 現行 active(唯一,D35 單一活性) |
| arcrun/kbdb-base/ | Phase 7 | 上線完成 + 待處理(§8) |
「進行中」以各 design.md frontmatter
status: active為唯一判準:bash system-dev/scripts/sdd-active-check.sh。
已封存(archive/,closed)
| 目錄 | 封存日 | 備註 |
|---|---|---|
| archive/credential-primitives-wasm/ | 2026-07-21 | 主線達成(cypher-executor TS 無 credential/auth 邏輯)。現行做法=CF Workers Secrets + D1 目錄。殘留缺口 auth_mtls 未實作、7.6 端到端未驗 → 要做需另立新 SDD |
主線
| 目錄 | 內容 | 狀態 |
|---|---|---|
| arcrun-core-mvp/ | MVP 整體架構 | 基礎完成 |
| arcrun/auth-recipe.md | Auth recipe 系統 | 穩定 |
| arcrun/landing-page.md | Landing page | 設計中 |
| arcrun/sdk-and-website/ | SDK + MCP + 文檔 | 進行中 |
| arcrun-platform-evolution/ | 長期演化規劃 | 路線圖 |
安全 & 基礎設施
| 目錄 | 用途 |
|---|---|
| component-gatekeeping/ | 零件投稿 gatekeeping(PR + CI) |
| component-registry-canon/ | registry 規範化(dead storage cleanup) |
| data-exfil-warning/ | 資料外流警示 API 層實作 |
未來
| 目錄 | 用途 |
|---|---|
| llm-interface/ | AI 操盤手體驗改進(mira dogfood 痛點) |
| recipe-system/ | recipe 長期規範(§5 onwards) |
| resumable-workflow/ | workflow 暫停恢復(Phase 6) |
| user-cc-harness/ | CC harness 安裝 + 配置(Phase 7) |
讀 SDD 的順序
新任務開始:
docs/3-specs/arcrun/arcrun.md(全景進度)- 對應子系統的
design.md(設計背景) - 同目錄的
tasks.md(細節任務 + 依賴)
更新時間:2026-06-08