Files
freedak f7a720204a Update: 将子项目从 submodule 转为完整内容
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用
- 添加所有子项目的完整源代码
- 保留原始 .git 为 .git.bak 备份
2026-07-04 19:20:46 +08:00

25 lines
1.9 KiB
SQL

-- IDMM 决策记录:把原本仅存于内存(100 条环形缓冲、重启即丢、前端零渲染)的
-- 介入审计落独立表,使决策"看得见、可追溯"。激进淘汰(数据不重要,只留一点):
-- 每 target 仅留最近 30 条 + 全局 TTL 48h + 全局硬上限兜底;target_id 多态
-- (会话 TEXT / 终端 INTEGER),不设双 FK,删会话/终端时由应用层级联清理。
CREATE TABLE IF NOT EXISTS idmm_interventions (
id TEXT PRIMARY KEY NOT NULL, -- idmmrec_{uuidv7}
target_kind TEXT NOT NULL, -- 'conversation' | 'terminal'
target_id TEXT NOT NULL,
watch TEXT NOT NULL, -- 'fault'(provider/agent 故障)| 'decision'(其余),由信号种类推导
at INTEGER NOT NULL, -- epoch ms
signal TEXT NOT NULL, -- stall_class: provider_error/idle/decision/open_question/scheduled
tier_used TEXT NOT NULL, -- rule | sidecar | rule_fallback
category TEXT, -- option/open_question/permission/fault
action TEXT NOT NULL, -- retry/answer_choice/send_text/confirm/wait/stop
detail TEXT, -- 选了什么/答了什么(截断 ≤2000 字符)
reason TEXT, -- 思路(模型 reason 或规则解释;非选项分支的描述串也落这里)
confidence REAL, -- 模型置信度(规则档 NULL)
bypass_model TEXT, -- provider/model(规则档 NULL)
outcome TEXT NOT NULL -- 规范枚举 applied/resolved/failed/halted/skipped(Phase1 发 applied|halted)
);
CREATE INDEX IF NOT EXISTS idx_idmm_interventions_target
ON idmm_interventions(target_kind, target_id, at DESC);
CREATE INDEX IF NOT EXISTS idx_idmm_interventions_at
ON idmm_interventions(at);