feat(server,dashboard): 引入多工作流数据隔离、安全中间件与前端 ESM 模块化重构

- server: 实现按 workflow_name 的多工作流数据隔离与旧数据库平滑迁移机制
- server: 新增 API Key 认证(auth)、限流中间件(rate_limit)与运维备份接口(admin)
- server: 统一 AppError 错误处理体系,重构调度器 scheduler 支持工作流级重置与抢占
- node: 节点 ID 缺失时自动生成随机 UUID,原生支持 `docker compose --scale node=N` 动态扩容
- dashboard: 前端模块化重构(state/api/components),升级 CSS 变量设计系统与 Toast 通知
- docker/docs: 更新 /healthz 健康检查、部署脚本 IP 配置及数据库设计文档
This commit is contained in:
fmq
2026-07-28 21:54:02 +08:00
parent 4b4238d702
commit b91f1e4fa5
59 changed files with 7697 additions and 1490 deletions
+5 -3
View File
@@ -11,7 +11,9 @@ members = [
[workspace.dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
# 注:官方 serde_yaml (dtolnay/serde-yaml) 已于 2024 年 3 月归档停止维护。
# 本项目选择固定使用官方最终稳定版本 0.9.34,因其经过多年大规模生产验证,功能完备且极度稳定无隐患。
serde_yaml = "0.9.34"
tokio = { version = "1.35", features = ["full"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
@@ -21,13 +23,13 @@ tempfile = "3.8"
uuid = { version = "1.6", features = ["v4", "serde"] }
chrono = { version = "0.4", features = ["serde"] }
regex = "1.10"
reqwest = { version = "0.11", features = ["json", "multipart"] }
reqwest = { version = "0.12", features = ["json", "multipart"] }
rusqlite = { version = "0.31", features = ["bundled"] }
async-trait = "0.1"
axum = { version = "0.7", features = ["multipart"] }
tokio-util = { version = "0.7", features = ["io"] }
tower-http = { version = "0.5", features = ["cors", "trace", "fs"] }
tower = { version = "0.4", features = ["util"] }
tower = { version = "0.4", features = ["util", "limit"] }
clap = { version = "4.4", features = ["derive"] }
sysinfo = "0.30"
gethostname = "0.5"