Tauri 2 + Vue 3 + Vite 6 桌面应用,Rust workspace 含 13 个 crate (df-ai / df-storage / df-workflow / df-core / df-execute 等)。 核心能力:AI 聊天 agentic 循环(工具调用+人工审批)、工作流引擎、 任务/想法/项目/阶段管理、可追溯性,及配套前端组件。
39 lines
1.0 KiB
Markdown
39 lines
1.0 KiB
Markdown
# SQLite CRUD 模式
|
|
|
|
> 创建: 2026-06-10 | 状态: 初稿
|
|
|
|
---
|
|
|
|
## 概述
|
|
|
|
DevFlow 使用 SQLite (rusqlite) 作为本地存储引擎。df-storage 负责 SQLite 连接管理、Schema 迁移和 CRUD 操作。
|
|
|
|
## 当前状态
|
|
|
|
- SQLite 连接池: 已实现
|
|
- Schema 迁移 (6 张表 + 4 索引): 已实现
|
|
- CRUD 层: **待实施**
|
|
|
|
## 设计要点
|
|
|
|
### 待实施内容
|
|
|
|
1. **泛型 CRUD trait** — 定义统一的 `Repository<T>` 接口
|
|
2. **SQL 构建** — 参数化查询,防止 SQL 注入
|
|
3. **事务支持** — 跨表操作的原子性保证
|
|
4. **批量操作** — `insert_batch` / `update_batch`
|
|
5. **查询构建器** — 条件查询、分页、排序
|
|
|
|
### 约定
|
|
|
|
- ID 字段统一使用 `TEXT` (UUID v4)
|
|
- 时间字段使用 `INTEGER` (Unix timestamp)
|
|
- JSON 字段使用 `TEXT` 存储 JSON 字符串
|
|
- 所有写操作返回 `Result<(), df_core::error::Error>`
|
|
|
|
## 相关文件
|
|
|
|
- `crates/df-storage/src/lib.rs` — 存储层入口
|
|
- `crates/df-storage/src/schema.rs` — Schema 定义与迁移
|
|
- `crates/df-core/src/error.rs` — 统一错误类型
|