47c6aaea03
SDD: workflow-discovery 3.12/3.13(不是新規格;3.12 已 confirmed 並實作完成) ## 1) workers_ai_chat 種子(新) Cloudflare Workers AI 走 env.AI binding ⇒ 用戶不必填任何 API 金鑰就能問答。 放種子表而非產品安裝器:「裝好後預設有哪些 recipe」是平台能力(rule 07 薄殼原則)。 換模型/換供應商=改這一筆 recipe,workflow 不動。 選型實測(1.4.4 實例,真實長度 RAG prompt,每個模型連跑 2 次): llama-4-scout-17b 2373/2173 ms ✅ 答案最完整、引用正確 ← 選它 llama-3.3-70b-fp8-fast 3261/2147 ms ✅ 可用但波動較大 mistral-small-3.1-24b 3560/3631 ms qwen2.5-coder-32b 3572/3353 ms gpt-oss-120b 1971/2295 ms ❌ 回應形狀不同,response 取不到文字 gemma-3-12b-it ❌ 5018 帳號無權限 對照舊路徑 Gemini gemma-4-31b-it:同型提問 16.87 s,且吐整段英文思考草稿。 ## 2) 修 /init/seed 靜默吃掉 3.12 欄位 3.12 給 RecipeDefinition 加了 body_template/response_map/auth/binding_name, 但 /init/seed 是**列舉欄位重建** recipe record ⇒ 不在名單上的欄位被丟掉。 最惡劣的地方是「哪裡都不會紅」:recipe 查得到、endpoint 對,只有跑起來像沒設定過。 與 08-02 syncManifest 吃掉 manifest.daemon 欄同型(教訓:東西還在不在也要進機械閘)。 加 tests/init-seed-recipe-fields.test.ts:拿掉修復會紅、補回會綠(已實測會擋)。 ## 3) 修 D1 LIKE pattern 50 bytes 上限造成的 500 /entries/search?q=… 只要 q 超過 48 bytes 就回 HTTP 500,沒有錯誤訊息。 逐 byte 二分:48→200/49→500;中文 16 字→200/17 字→500。 判別實驗:q 固定 48 bytes、其他 filter 全塞滿讓 SQL 變很長 → 仍 200 ⇒ 爆的是 LIKE 的 pattern('%'+q+'%' = 50),不是 statement 長度。 中文問句超過 16 字是常態,而 rag_chat 用整句問題當 q ⇒ 聊天對正常問句等於不能用。 (=InkStoneCo status.md 待辦第 1 條「KBDB keyword 長查詢會炸」的根因。) 修法:q ≤ 48 bytes 走原路(行為逐字不變),超過才拆詞/切 UTF-8 邊界片段。 kbdb 全套 83 測全綠(含新增 8 項)。 ## 4) 順手 - 移除被 commit 進 repo 的 node_modules 壞 symlink(指向 leo Mac 的絕對路徑, 害任何 fresh clone 裝不起來、切分支還會把裝好的蓋掉——本次撞了兩次)。 - pending-changes.md 加 P2 提案(fan-out 並行執行)+等裁決,未動引擎。 驗證:cypher-executor 新增測試 17/17 綠;tsc 與基線逐字相同; 全套測試失敗集合與基線**逐字相同**(基線 14 個失敗,本分支 t173 既有,非本次引入)。
Arcrun 文件分類索引
LLM Wiki 結構:長期記憶系統,防止決策遺忘和重複錯誤。 參考:Andrej Karpathy — A Closer Look at How LLMs Remember
分類規則
| 目錄 | 用途 | 例子 |
|---|---|---|
| 1-vision/ | 「為什麼」:設計哲學、核心價值、前瞻方向 | arcrun 優勢、Haiku 就能搞定、薄殼原則 |
| 2-architecture/ | 「是什麼」:系統設計、技術棧、組件關係 | MVP 架構、零件模型、KV 存儲方案 |
| 2-architecture/decisions/ | 架構關鍵決策和 trade-off | Service binding 為什麼廢、R2 只用 Phase 5、同 zone 1042 解法 |
| 3-specs/ | 需求和 SDD:設計文件、任務清單 | (從 .agents/specs/ 搬來) |
| 4-guides/ | 操作手冊:如何做、工作流程 | 部署流程、CLI 用法、壓測方法 |
| 5-records/ | 日誌和證據:事件、測試、決策履歷 | Incident、壓測報告、問題追蹤 |
| 5-records/incidents/ | 生產問題復盤:故障原因、改進方案 | 2026-05-13 同 zone 1042、2026-06-06 MCP route bug |
| 5-records/test-reports/ | 壓測結果、驗收報告 | 2026-06-07 公庫上線測試、2026-06-08 Haiku 乾淨重測 |
| 6-user/ | 對外文件:README、教程、FAQ | self-hosted 安裝、開發者指南 |
.claude/wiki/ — LLM 本機記憶
| 檔案 | 用途 | 更新頻率 |
|---|---|---|
| INDEX.md | wiki 目錄和導引 | 每次新增 |
| mistakes.md | CC(我)常犯的錯 + 避坑方法 | 每次踩坑後 |
| status.md | 當前進度、已知問題、下一步 | 每次 session 結束 |
| decisions-summary.md | 架構決策快速參考(不是全文,是摘要 + 連結) | 每次大決策後 |
| modules/[name].md | 關鍵模組說明:職責、入口、常見誤解 | 不定期補充 |
檔案遷移計畫
| 當前位置 | 新位置 | 優先級 |
|---|---|---|
| 根目錄 .md(除 README/CLAUDE) | → docs/ 分類 | 高 |
| .agents/specs/ | → docs/3-specs/ | 高 |
| .claude/rules/ | → docs/2-architecture/ + wiki | 中 |
| docs/incidents/ | → docs/5-records/incidents/ | 中 |
| 壓測報告 | → docs/5-records/test-reports/ | 中 |
下一步
所有檔案整理進此結構後,wiki 將作為 CC 和任何 LLM 的長期記憶入口。