Tauri 2 + Vue 3 + Vite 6 桌面应用,Rust workspace 含 13 个 crate (df-ai / df-storage / df-workflow / df-core / df-execute 等)。 核心能力:AI 聊天 agentic 循环(工具调用+人工审批)、工作流引擎、 任务/想法/项目/阶段管理、可追溯性,及配套前端组件。
47 lines
1.6 KiB
Markdown
47 lines
1.6 KiB
Markdown
# Phase 1 架构决策
|
|
|
|
> 创建: 2026-06-10 | 状态: 初稿
|
|
|
|
---
|
|
|
|
## 概述
|
|
|
|
Phase 1 是 DevFlow 的引擎骨架阶段,聚焦于核心数据流打通。本文记录此阶段的关键架构决策。
|
|
|
|
## 决策记录
|
|
|
|
### ADR-001: 引擎不绑定业务
|
|
|
|
- **决策**: Workflow Engine (df-workflow) 只做 DAG 执行,不感知具体业务语义
|
|
- **原因**: 保持引擎通用性,阶段逻辑通过 df-stages 插件化注入
|
|
- **影响**: df-workflow 的 Node trait 是纯接口,业务逻辑在 df-nodes / df-stages 实现
|
|
|
|
### ADR-002: 本地优先架构
|
|
|
|
- **决策**: 使用 SQLite 嵌入式数据库,不依赖云服务
|
|
- **原因**: DevFlow 定位为桌面工具,零运维,离线可用
|
|
- **影响**: 无网络层、无认证系统,数据全部本地存储
|
|
|
|
### ADR-003: 多 Crate Workspace
|
|
|
|
- **决策**: 拆分为 13 个独立 crate
|
|
- **原因**: 模块解耦、独立编译、按需引用
|
|
- **影响**: 依赖关系需严格管控,避免循环依赖
|
|
|
|
### ADR-004: 无 panic 原则
|
|
|
|
- **决策**: 所有占位代码返回空/默认值,不使用 `todo!`/`unimplemented!`
|
|
- **原因**: 保证应用不会因为未实现功能而崩溃
|
|
- **影响**: 未实现的方法返回 `Ok(default)` 而非 panic
|
|
|
|
### ADR-005: Phase 1 最小可用路径
|
|
|
|
- **决策**: 优先打通 `df-core → df-workflow → df-storage → Tauri IPC → Vue` 链路
|
|
- **原因**: 验证架构可行性,尽早发现集成问题
|
|
- **影响**: Phase 1 不实现 AI、想法池、多项目等高级功能
|
|
|
|
## 参考文档
|
|
|
|
- `ARCHITECTURE.md` — 完整架构设计
|
|
- `PROGRESS.md` — 当前进度与全局性问题
|