新增: Phase2 阶段收尾(Sprint 1-20)
重构:删 5 零引用 crate(df-evolve/plugin/stages/task/traceability)+ 清死模块、ai.rs 拆 11 子 module、ai.ts 拆 6 composable、i18n 拆目录 功能:知识库全栈(df-project/scan + CRUD + 时间线 + 前端)、Settings 拆分、appSettings KV 迁移、模型池、LLM 并发 Semaphore 修复:审批持久化根治、ConditionEngine 默认拒绝、NodeRegistry unimplemented 清除、promote 补偿删除、工具结果截断 50KB、路径校验防 symlink 逃逸 文档:B-03 人工审批设计、决策记录三分档、规格契约自检、经验记录、todo 看板、PROGRESS 更新 详见 PROGRESS.md。src-tauri/儿童每日打卡应用/ 与本项目无关,已排除。
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
import { invoke } from '@tauri-apps/api/core'
|
||||
import type {
|
||||
KnowledgeRecord,
|
||||
KnowledgeEventRecord,
|
||||
KnowledgeDetailPayload,
|
||||
CreateKnowledgeInput,
|
||||
KnowledgeSearchInput,
|
||||
UpdateKnowledgeInput,
|
||||
KnowledgeConfig,
|
||||
} from './types'
|
||||
|
||||
export const knowledgeApi = {
|
||||
/** 列出知识(可按 status 筛选,默认排除 archived) */
|
||||
list(status?: string | null): Promise<KnowledgeRecord[]> {
|
||||
return invoke('knowledge_list', { status: status ?? null })
|
||||
},
|
||||
|
||||
/** 单条查询 */
|
||||
get(id: string): Promise<KnowledgeRecord> {
|
||||
return invoke('knowledge_get', { id })
|
||||
},
|
||||
|
||||
/** 检索知识(top-N,默认 3) */
|
||||
search(input: KnowledgeSearchInput): Promise<KnowledgeRecord[]> {
|
||||
return invoke('knowledge_search', { input })
|
||||
},
|
||||
|
||||
/** 创建知识(始终 candidate 状态) */
|
||||
create(input: CreateKnowledgeInput): Promise<KnowledgeRecord> {
|
||||
return invoke('knowledge_create', { input })
|
||||
},
|
||||
|
||||
/** 状态转换(含合法矩阵校验) */
|
||||
updateStatus(id: string, status: string): Promise<boolean> {
|
||||
return invoke('knowledge_update_status', { id, status })
|
||||
},
|
||||
|
||||
/** 复用计数 +1 */
|
||||
recordReuse(id: string): Promise<boolean> {
|
||||
return invoke('knowledge_record_reuse', { id })
|
||||
},
|
||||
|
||||
/** 审核收件箱(候选列表,按置信度排序) */
|
||||
listCandidates(): Promise<KnowledgeRecord[]> {
|
||||
return invoke('knowledge_list_candidates')
|
||||
},
|
||||
|
||||
/** 归档(软删除) */
|
||||
archive(id: string): Promise<boolean> {
|
||||
return invoke('knowledge_archive', { id })
|
||||
},
|
||||
|
||||
/** 读取知识库行为配置 */
|
||||
getConfig(): Promise<KnowledgeConfig> {
|
||||
return invoke('knowledge_get_config')
|
||||
},
|
||||
|
||||
/** 保存知识库行为配置 */
|
||||
saveConfig(config: KnowledgeConfig): Promise<boolean> {
|
||||
return invoke('knowledge_save_config', { config })
|
||||
},
|
||||
|
||||
/** 手动触发提炼 */
|
||||
extractNow(): Promise<boolean> {
|
||||
return invoke('knowledge_extract_now')
|
||||
},
|
||||
|
||||
/** 知识详情(基本信息 + 生命线事件) */
|
||||
getDetail(id: string): Promise<KnowledgeDetailPayload> {
|
||||
return invoke('knowledge_get_detail', { id })
|
||||
},
|
||||
|
||||
/** 编辑知识(部分更新) */
|
||||
update(id: string, input: UpdateKnowledgeInput): Promise<KnowledgeRecord> {
|
||||
return invoke('knowledge_update', { id, input })
|
||||
},
|
||||
|
||||
/** 查询生命线事件(可按 event_type 过滤) */
|
||||
events(knowledgeId: string, eventType?: string, limit?: number): Promise<KnowledgeEventRecord[]> {
|
||||
return invoke('knowledge_events', { knowledgeId, eventType: eventType ?? null, limit: limit ?? null })
|
||||
},
|
||||
}
|
||||
Reference in New Issue
Block a user