efe8e165cf
按 leo 鐵律(2026-06-14)把插件從「直接 SQL 操作基本盤表」改寫成 「只透過基本盤 arcrun/kbdb HTTP API 讀寫」。零建表、零 migration、零 SQL。 - 新增 src/lib/kbdb-client.ts:唯一對外通道,封裝 entries/templates/records API - 新增 src/lib/templates.ts:triplet/entity template 定義(替代建表) - 改寫 21 個違規 action(triplet/graph/entity/search)→ 走 client,圖在插件層記憶體組裝 - 移除所有 migrations、D1/Vectorize/AI 綁定;embedding/語意搜尋歸基本盤 optional 模組 - index.ts 只掛 triplets/graph/entities/search 路由;基本盤路由歸 arcrun/kbdb - 測試改走 mock client(純 node);裁剪 CLAUDE.md 只留 graph 插件 + 鐵律 - 修正 SDD design.md「讀現狀推翻鐵律」的錯誤判斷(共用 D1 → API-as-Wall) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
24 lines
955 B
TypeScript
24 lines
955 B
TypeScript
// 三元組 partial update action
|
||
//
|
||
// [→arcrun] base 缺 PUT /records/:id(也無 DELETE):基本盤目前只支援建/查 record,
|
||
// 不支援就地更新一筆 record 的 slot 值。插件不准用 SQL 直改表,故更新暫不支援。
|
||
//
|
||
// 暫時策略:回 not-supported(null),由 route 轉成 4xx/501。
|
||
// 待上游補 PUT /records/:id 後,這裡改成 client.req('PUT', ...) 或薄殼呼叫。
|
||
// 不得以 SQL/D1 繞過。
|
||
|
||
import type { Triplet } from '../types';
|
||
import type { KbdbClient } from '../lib/kbdb-client';
|
||
|
||
export async function patchTriplet(
|
||
_client: KbdbClient,
|
||
_id: string,
|
||
_data: {
|
||
subject?: string; predicate?: string; object?: string; confidence?: number;
|
||
subject_alias?: string; predicate_alias?: string; object_alias?: string;
|
||
},
|
||
): Promise<{ ok: true; triplet: Triplet } | null> {
|
||
// base 無 PUT /records/:id → 無法就地更新;回 null(not-supported)。
|
||
return null;
|
||
}
|