新增: AR-11 数据变更联动(AI 工具执行后 emit df-data-changed+store listen 刷新列表)

audit.rs data_change_for_tool 映射(create_project/idea/task→create,update_*→update,delete_*/purge→delete,restore/bind_directory→update)+emit_data_changed(process_tool_calls 已有 app_handle 无需透传);commands.rs ai_approve 成功路径 emit;types.ts DfDataChangedPayload;project.ts barrel listen df-data-changed + start/stopDataChangedListener 单例;App.vue onMounted 全局挂载+onUnmounted 清理。AI 工具(create/update/delete project/task/idea)执行后前端 Projects/Tasks/Ideas 列表自动刷新。批7,cargo+vue-tsc 0
This commit is contained in:
2026-06-15 05:54:15 +08:00
parent b08adcb9da
commit dc27e79fd2
5 changed files with 107 additions and 1 deletions

View File

@@ -214,6 +214,8 @@ onMounted(async () => {
window.addEventListener('keydown', handleKeydown)
// 加载知识库候选数(供侧栏 knowledge badge 显示)
knowledgeStore.loadCandidates()
// AR-11:数据变更联动监听(AI 工具 create/update/delete 后端 emit df-data-changed → store listen 刷新对应列表,全局挂载因用户可在任意页)
await projectStore.startDataChangedListener()
})
/// 一次性迁移:遍历遗留的 localStorage key,若有值则导入 appSettings(SQLite),
@@ -254,6 +256,7 @@ const candidateCount = computed(() => knowledgeStore.candidateCount)
onUnmounted(() => {
window.removeEventListener('keydown', handleKeydown)
projectStore.stopDataChangedListener?.()
})
const primaryNav = [