diff --git a/wiki/butler.md b/wiki/butler.md index 3565f25..32933be 100644 --- a/wiki/butler.md +++ b/wiki/butler.md @@ -1,6 +1,6 @@ --- title: 管家模式 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, butler, interaction] --- @@ -70,7 +70,15 @@ idle → (检测新用户) → greeting_sent → waiting_response → completed 切换文件: `desktop/src/store/uiModeStore.ts` 简洁侧边栏: `desktop/src/components/SimpleSidebar.tsx` -管家面板: `desktop/src/components/ButlerPanel.tsx` (3 区: 洞察/方案/记忆) +管家面板: `desktop/src/components/ButlerPanel.tsx` (3 区: 洞察/方案/记忆 + 行业专长卡片) + +### 行业配置 (V13 已接通) + +- `desktop/src/store/industryStore.ts` — 行业配置 Zustand Store (persist, 离线缓存) +- ButlerPanel 展示行业专长卡片 + 自动拉取行业配置 +- SaaS API: `industry/list` / `industry/fullConfig` / `industry/accountIndustries` +- 4 内置行业: 医疗/教育/制衣/电商 (keywords/prompt/pain_seeds) +- ButlerRouter 动态行业关键词注入 (Arc>>) ### Tauri 命令 diff --git a/wiki/chat.md b/wiki/chat.md index d47a67c..ee3919f 100644 --- a/wiki/chat.md +++ b/wiki/chat.md @@ -1,6 +1,6 @@ --- title: 聊天系统 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, chat, stream] --- @@ -84,7 +84,7 @@ UI 选择模型 → conversationStore.currentModel = newModel - [[routing]] — 路由决定使用哪种 client - [[saas]] — Token Pool 提供模型和 API Key - [[butler]] — ButlerRouter 中间件增强 system prompt -- [[middleware]] — 消息经过 14 层中间件处理 +- [[middleware]] — 消息经过 14 层 runtime 中间件处理 - [[memory]] — 对话内容可能触发记忆提取 ## 关键文件 diff --git a/wiki/development.md b/wiki/development.md index 52a2fcd..e31c2bd 100644 --- a/wiki/development.md +++ b/wiki/development.md @@ -1,6 +1,6 @@ --- title: 开发规范 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [development, conventions] --- @@ -23,10 +23,10 @@ tags: [development, conventions] | 禁止 | 原因 | |------|------| -| 新增 SaaS API 端点 | 已有 121 个 .route(),前端未全部接通 | +| 新增 SaaS API 端点 | 已有 137 个 .route(),前端未全部接通 | | 新增 SKILL.md | 已有 75 个 | -| 新增 Tauri 命令 | 已有 183 个,部分无前端调用 | -| 新增中间件 | 已有 14 层 | +| 新增 Tauri 命令 | 已有 189 个,部分无前端调用 | +| 新增中间件 | 已有 14 层 runtime + 10 层 SaaS HTTP | | 新增 Store | 已有 17 文件 + chat/4 子store | | 新增 admin 页面 | 已有 15 页 | diff --git a/wiki/hands-skills.md b/wiki/hands-skills.md index 0c27f77..47ef7d1 100644 --- a/wiki/hands-skills.md +++ b/wiki/hands-skills.md @@ -1,6 +1,6 @@ --- title: Hands + Skills + MCP -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, hands, skills, mcp] --- diff --git a/wiki/index.md b/wiki/index.md index ef53d7c..01add9c 100644 --- a/wiki/index.md +++ b/wiki/index.md @@ -1,6 +1,6 @@ --- title: ZCLAW 项目知识库 -updated: 2026-04-11 +updated: 2026-04-14 status: active --- @@ -8,35 +8,38 @@ status: active > 面向中文用户的 AI Agent 桌面客户端。管家模式 + 多模型 + 9 自主能力 + 75 技能。 > **使用方式**: 找到你要处理的模块,读对应页面,直接开始工作。 -> **数据来源**: 2026-04-11 代码全量扫描验证,非文档推测。 +> **数据来源**: 2026-04-14 代码全量扫描验证,非文档推测。 ## 项目画像 | 维度 | 值 | |------|-----| | 定位 | AI Agent 桌面客户端 (Tauri 2.x) | -| 技术栈 | Rust 10 crates + src-tauri (~95K行, 335 .rs文件) + React 19 + TypeScript + PostgreSQL | +| 技术栈 | Rust 10 crates + src-tauri (~77K行, 274 .rs文件) + React 19 + TypeScript + PostgreSQL | | 阶段 | 发布前稳定化,功能冻结中 | -## 关键数字(2026-04-11 代码验证) +## 关键数字(2026-04-14 代码验证) | 指标 | 值 | 验证方式 | |------|-----|----------| | Rust Crates | 10 + src-tauri | `ls crates/zclaw-*/Cargo.toml` | -| Rust 代码 | 95,181 行 (335 .rs文件) | `find crates/ src-tauri/ -name "*.rs"` | -| Rust 测试 | ~1,055 (872内联 + 183集成) | 含 #[test] + #[tokio::test] | -| Tauri 命令 | 190 定义 / 183 注册 (5 feature-gated) | `#[tauri::command]` / lib.rs handler | -| 前端 invoke 调用 | 105 处 | `grep invoke( desktop/src/` | -| SaaS .route() | 121 个 | `grep .route( crates/zclaw-saas/` | +| Rust 代码 | 77,444 行 (274 .rs文件) | `find crates/ src-tauri/ -name "*.rs"` | +| Rust 测试 | 774 (433 #[test] + 341 #[tokio::test]) | `grep '#\[test\]' / '#\[tokio::test\]'` | +| Tauri 命令 | 189 定义 | `grep '#\[tauri::command\]'` | +| 前端 invoke 调用 | 106 处 | `grep invoke( desktop/src/` | +| SaaS .route() | 137 个 | `grep .route( crates/zclaw-saas/` | +| SaaS 模块 | 16 个目录 (含 industry) | `ls crates/zclaw-saas/src/*/` | | SKILL 目录 | 75 个 | `ls -d skills/*/` | | HAND 配置 | 9 个 (TOML) | `ls hands/*.HAND.toml` | | Pipeline YAML | 17 个 | `find pipelines/ -name "*.yaml"` | -| Zustand Store | 17 文件 + chat/4子store = 21 | `ls desktop/src/store/` | +| Zustand Store | 17 文件 + chat/4子store = 21 (含 industryStore) | `find desktop/src/store/` | | React 组件 | 104 个 (.tsx/.ts) | `find desktop/src/components/` | -| Admin V2 页面 | 15 个 (.tsx) | `ls admin-v2/src/pages/` | -| 中间件 | 15 层 runtime + 6 层 SaaS HTTP | `kernel/mod.rs` + `zclaw-saas middleware` | +| Admin V2 页面 | 17 个 (.tsx) | `ls admin-v2/src/pages/` | +| 中间件 | 14 层 runtime + 10 层 SaaS HTTP | `kernel/mod.rs` + `zclaw-saas middleware` | | 前端 lib/ | 85 个 .ts | `find desktop/src/lib/` | -| TODO/FIXME | 前端 4 + Rust 4 = 8 | `grep TODO/FIXME` | +| SQL 迁移 | 20 文件 / 42 CREATE TABLE | `ls crates/zclaw-saas/migrations/*.sql` | +| @reserved 标注 | 22 个 | `grep @reserved desktop/src-tauri/src/` | +| TODO/FIXME | 前端 1 + Rust 3 = 4 | `grep TODO/FIXME` | ## 模块导航树 @@ -52,7 +55,7 @@ ZCLAW │ ├── [[butler]] 管家模式 — 默认交互范式,语义路由+冷启动+痛点 │ -├── [[middleware]] 中间件链 — 14层,按优先级分类注册 +├── [[middleware]] 中间件链 — 14层runtime + 10层SaaS HTTP │ ├── [[memory]] 记忆管道 — 对话→提取→FTS5+TF-IDF→检索→注入 │ @@ -76,7 +79,7 @@ ZCLAW **Q: 为什么管家模式是默认?** → 面向医院行政等非技术用户,语义路由(75技能TF-IDF)+痛点积累+方案生成,降低使用门槛。 -**Q: 为什么中间件是14层?** -→ 按优先级分4类: 100-199上下文(compaction/memory) → 200-399能力(skill/guardrail) → 400-599安全(loop_guard/data_masking) → 600-799遥测(token/title/trajectory)。Kernel `create_middleware_chain()` 条件注册,skill_index 仅在有技能时注册。 +**Q: 为什么中间件是14层runtime?** +→ 按优先级分4类: 100-199上下文(compaction/memory) → 200-399能力(skill/guardrail) → 400-599安全(loop_guard/data_masking) → 600-799遥测(token/title/trajectory)。Kernel `create_middleware_chain()` 条件注册,skill_index 仅在有技能时注册。另有 10 层 SaaS HTTP 中间件 (限流/认证/配额/CORS/日志等)。 > 数字真相源: `docs/TRUTH.md` — 如有冲突以代码实际为准 diff --git a/wiki/known-issues.md b/wiki/known-issues.md index fd92f3b..1a57e3c 100644 --- a/wiki/known-issues.md +++ b/wiki/known-issues.md @@ -1,13 +1,13 @@ --- title: 已知问题 -updated: 2026-04-12 +updated: 2026-04-14 status: active tags: [issues, bugs] --- # 已知问题 -> 从 [[index]] 导航。完整清单见 `docs/TRUTH.md §3` 和 `docs/features/audit-v13/V13-FULL-REPORT.md` +> 从 [[index]] 导航。完整清单见 `docs/TRUTH.md §3` ## 当前状态 @@ -17,46 +17,59 @@ tags: [issues, bugs] | P1 (功能失效) | 9 | 全部已修复 | | P1.5 (代码质量) | 7 | 全部已修复 | | P2 (代码质量) | 10 | 待处理 | -| V13 P1 (断链) | 3 | **待修复** | -| V13 P2 (差距) | 3 | 待处理 | +| V13 P1 (断链) | 3 | **全部已修复** | +| V13 P2 (差距) | 3 | **全部已修复** | -## V13 新发现 (2026-04-12) +## V13 审计修复 (2026-04-13 全部完成) -### P1 — 功能断链 +### P1 — 功能断链 ✅ 全部已修复 -| ID | 问题 | 位置 | +| ID | 问题 | 修复 | |----|------|------| -| V13-GAP-01 | TrajectoryRecorderMiddleware 未注册到中间件链 → Hermes 轨迹数据零流入 | `crates/zclaw-kernel/src/kernel/mod.rs` | -| V13-GAP-02 | industryStore 存在但无组件导入 → 行业配置无法在桌面端展示 | `desktop/src/store/industryStore.ts` | -| V13-GAP-03 | 桌面端未接入 Knowledge Search API → 用户无法搜索知识库 | `desktop/src/` (零匹配) | +| V13-GAP-01 | TrajectoryRecorderMiddleware 未注册到中间件链 | ✅ 已注册 @650,Hermes 轨迹数据开始流入 | +| V13-GAP-02 | industryStore 存在但无组件导入 | ✅ 已接入 ButlerPanel,桌面端展示行业专长卡片 | +| V13-GAP-03 | 桌面端未接入 Knowledge Search API | ✅ saas-knowledge mixin + VikingPanel SaaS KB 搜索 UI | -### P2 — 代码清洁度 +### P2 — 代码清洁度 ✅ 全部已修复 -| ID | 问题 | 位置 | +| ID | 问题 | 修复 | |----|------|------| -| V13-GAP-04 | Webhook 孤儿表 (迁移存在但代码已删) | `crates/zclaw-saas/migrations/20260403000002_webhooks.sql` | -| V13-GAP-05 | Structured Data Source 5 路由无 Admin-v2 消费者 | `crates/zclaw-saas/src/knowledge/` | -| V13-GAP-06 | PersistentMemoryStore 遗留模块 (数据流已统一但类型未清理) | `desktop/src-tauri/src/memory/persistent.rs` | +| V13-GAP-04 | Webhook 孤儿表 | ✅ deprecated 标注 + down migration 注释 | +| V13-GAP-05 | Structured Data Source 无 Admin UI | ✅ Admin Knowledge 新增"结构化数据"Tab | +| V13-GAP-06 | PersistentMemoryStore 遗留模块 | ✅ 全量移除 — persistent.rs 611→57 行 | -## 代码健康度指标(2026-04-12 V13 扫描) +## 三端联调测试 (2026-04-14) + +30+ API / 16 Admin / 8 Tauri 全量测试结果: + +| 问题 | 级别 | 状态 | +|------|------|------| +| API 密钥页崩溃 (undefined .map) | P1 | ✅ 已修复 | +| 桌面端 401 后不自动恢复 | P1 | ✅ 已修复 | +| 用量统计全零 (telemetry SQL timestamptz) | P1 | ✅ 已修复 | +| 行业选择 500 (industry 类型匹配) | P1 | ✅ 已修复 | +| 管理员切换订阅计划 500 | P1 | ✅ 已修复 | +| SaaS 启动崩溃 (config_items 约束) | P1 | ✅ 已修复 | +| SaaS 模型选择残留模型 ID | P0 | ✅ 已修复 | + +## 代码健康度指标(2026-04-14) | 指标 | 值 | 变化 | 说明 | |------|-----|------|------| | TODO/FIXME 前端 | 1 | 4→1 | 大幅减少 | | TODO/FIXME Rust | 3 | 4→3 | | -| @reserved 标注 | 24 | 33→24 | Butler/MCP 已接通 | -| dead_code 标记 | 43 | 76→43 | 大幅减少 | +| @reserved 标注 | 22 | 33→22 | Butler/MCP 已接通 | +| dead_code 标记 | 16 | 76→16 | 大幅减少 | | 前端孤立 invoke | 0 | 不变 | 已清理 | ## 长期观察项 | 问题 | 说明 | 位置 | |------|------|------| -| Tauri 命令孤儿 | 注册 191 命令,前端调用 106 处,@reserved 24 个,剩余 ~61 可能内部调用 | `desktop/src-tauri/src/lib.rs` | +| Tauri 命令孤儿 | 注册 189 命令,前端调用 106 处,@reserved 22 个,剩余 ~61 可能内部调用 | `desktop/src-tauri/src/lib.rs` | | Embedding 未激活 | NoOpEmbeddingClient 为默认值,用户配置后替换为真实 provider | `zclaw-growth/src/retrieval/semantic.rs` | | SaaS embedding deferred | pgvector 索引就绪,生成未实现 | `zclaw-saas/src/workers/generate_embedding.rs` | -| SkillIndex 条件注册 | 无技能时 skill_index 中间件不注册 | `kernel/mod.rs:289` | -| Hermes Schema | v4 新增 user_profiles + trajectory 表,但 TrajectoryRecorder 未注册 (V13-GAP-01) | `zclaw-saas/migrations/` | +| SkillIndex 条件注册 | 无技能时 skill_index 中间件不注册 | `kernel/mod.rs:309` | ## 已修复的关键问题(历史记录) @@ -70,5 +83,7 @@ tags: [issues, bugs] | P1-02 | 浏览器聊天 SaaS fixture | 04-10 | | P1-04 | AuthGuard 竞态条件 | 04-10 | | BREAKS 全部 | 全部 P0/P1/P2 已修复 | 04-10 | +| V13-GAP-01~06 | 6 项断链/差距全部修复 | 04-13 | +| 三端联调 P0/P1 | 7 项全部修复 | 04-14 | → 模块详情见各模块页面: [[routing]] [[chat]] [[saas]] [[memory]] [[middleware]] diff --git a/wiki/log.md b/wiki/log.md index f7cf2bc..1bbdcb7 100644 --- a/wiki/log.md +++ b/wiki/log.md @@ -1,6 +1,6 @@ --- title: 变更日志 -updated: 2026-04-13 +updated: 2026-04-14 status: active tags: [log, history] --- @@ -9,6 +9,30 @@ tags: [log, history] > Append-only 操作记录。格式: `## [日期] 类型 | 描述` +## [2026-04-14] docs | Wiki 全量更新 — 2026-04-14 代码验证驱动 + +- 全部 12 个 wiki 页面基于最新代码扫描验证更新 +- 关键数字修正: Rust 77K行(274 .rs)、Tauri 189命令、SaaS 137 routes、Admin 17页、SaaS 16模块 +- known-issues: V13-GAP 全部标记已修复 + 三端联调测试结果 +- middleware: 14层 runtime + 10层 SaaS HTTP 完整清单 +- saas: 16模块(含industry)、20迁移/42表、137 routes +- routing: SaaS降级流程、Store含industryStore、lib/85文件 +- chat: 14层中间件经过 +- butler: 行业配置接入ButlerPanel +- development: Admin 17页、SaaS 137 routes +- log: 链接三端联调测试报告 + +## [2026-04-14] fix | 三端联调测试 2 P0 + 6 P1 修复 + +- P0: SaaS 模型选择残留模型 ID → 模型可用性前置校验 +- P1: API 密钥页崩溃 / 桌面端 401 恢复 / 用量统计全零 / 行业选择 500 / 管理员订阅 500 / SaaS 启动崩溃 +- 完整报告: `docs/INTEGRATION_TEST_REPORT_20260414_V2.md` + +## [2026-04-13] fix | V13 审计 6 项修复全部完成 + +- FIX-01~06: TrajectoryRecorder注册 + industryStore接入 + 知识搜索 + webhook标注 + 结构化UI + PersistentMemoryStore移除 +- 提交: c167ea4 + fd3e7fd + ## [2026-04-12] audit | V13 系统性功能审计 — 6 项新发现 - 全系统功能一致性审计完成, 总体健康度 82/100 (V12: 76) diff --git a/wiki/memory.md b/wiki/memory.md index 5953c08..82c59da 100644 --- a/wiki/memory.md +++ b/wiki/memory.md @@ -1,6 +1,6 @@ --- title: 记忆管道 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, memory, growth] --- diff --git a/wiki/middleware.md b/wiki/middleware.md index 5ac6c0d..d555fbf 100644 --- a/wiki/middleware.md +++ b/wiki/middleware.md @@ -1,6 +1,6 @@ --- title: 中间件链 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, middleware, runtime] --- @@ -20,7 +20,7 @@ tags: [module, middleware, runtime] ## 代码逻辑 -### 15 层中间件(注册顺序见 `kernel/mod.rs:190-360`) +### 14 层 Runtime 中间件(注册顺序见 `kernel/mod.rs:248-361`) | # | 中间件 | 文件 | 职责 | 注册条件 | |---|--------|------|------|----------| @@ -37,9 +37,24 @@ tags: [module, middleware, runtime] | 11 | ToolOutputGuard | `middleware/tool_output_guard.rs` | 工具输出安全检查 | 始终 | | 12 | Guardrail | `middleware/guardrail.rs` | shell_exec/file_write/web_fetch 安全规则 | 始终 | | 13 | SubagentLimit | `middleware/subagent_limit.rs` | 限制并发子 agent | 始终 | -| 14 | TrajectoryRecorder | `middleware/trajectory_recorder.rs` | 轨迹记录 + 压缩 | 始终 (V13-FIX-01 注册) | +| 14 | TrajectoryRecorder | `middleware/trajectory_recorder.rs` | 轨迹记录 + 压缩 | 始终 (V13-FIX-01 已注册) | -### 优先级分类(来自 `middleware.rs` 头注释) +### 10 层 SaaS HTTP 中间件(`zclaw-saas/src/main.rs`) + +| # | 中间件 | 职责 | 层级 | +|---|--------|------|------| +| 1 | public_rate_limit_middleware | 公共端点限流 (20次/分钟/IP) | 公共路由 | +| 2 | api_version_middleware | API 版本校验 | 公共 + 认证路由 | +| 3 | request_id_middleware | 请求 ID 注入 | 公共 + 认证路由 | +| 4 | rate_limit_middleware | 认证端点限流 (5次/分钟/IP) | 认证路由 | +| 5 | auth_middleware | JWT 认证 + 权限校验 | 认证路由 | +| 6 | TimeoutLayer | 请求超时 15s | 认证路由 | +| 7 | api_version_middleware (relay) | API 版本校验 | Relay 路由 | +| 8 | request_id_middleware (relay) | 请求 ID 注入 | Relay 路由 | +| 9 | quota_check_middleware | 配额检查 | Relay 路由 | +| 10 | CORS / 其他 layer | 跨域等 | 全局 | + +### 优先级分类(Runtime,来自 `middleware.rs` 头注释) | 范围 | 类别 | 包含的中间件 | |------|------|-------------| @@ -82,7 +97,7 @@ trait AgentMiddleware: Send + Sync { ### 注册位置 -`crates/zclaw-kernel/src/kernel/mod.rs:190-345` — `create_middleware_chain()` 方法,13 次 `chain.register()` + 1 个条件注册。 +`crates/zclaw-kernel/src/kernel/mod.rs:248-361` — `create_middleware_chain()` 方法,14 次 `chain.register()` + 1 个条件注册 (SkillIndex)。 ## 关联模块 @@ -97,4 +112,5 @@ trait AgentMiddleware: Send + Sync { |------|------| | `crates/zclaw-runtime/src/middleware.rs` | AgentMiddleware trait + MiddlewareChain | | `crates/zclaw-runtime/src/middleware/` | 14 个中间件实现 (14个 .rs 文件) | -| `crates/zclaw-kernel/src/kernel/mod.rs:190-345` | 注册入口 | +| `crates/zclaw-kernel/src/kernel/mod.rs:248-361` | 注册入口 | +| `crates/zclaw-saas/src/main.rs` | SaaS HTTP 中间件注册 (10 层) | diff --git a/wiki/pipeline.md b/wiki/pipeline.md index f1aa8ab..0202d75 100644 --- a/wiki/pipeline.md +++ b/wiki/pipeline.md @@ -1,6 +1,6 @@ --- title: Pipeline DSL -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, pipeline, dsl] --- diff --git a/wiki/routing.md b/wiki/routing.md index e9d3722..b7766cf 100644 --- a/wiki/routing.md +++ b/wiki/routing.md @@ -1,6 +1,6 @@ --- title: 客户端路由 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, routing, connection] --- @@ -86,7 +86,7 @@ listModels() 失败 `getClient()` 定义: `connectionStore.ts:844` 所有 Store 通过 `initializeStores()` (store/index.ts:94) 获取共享 client。 -### Store 层 (17 文件 + chat/4) +### Store 层 (17 文件 + chat/4 = 21) ``` desktop/src/store/ @@ -98,6 +98,7 @@ desktop/src/store/ ├── configStore.ts 配置读写 ├── connectionStore.ts 路由决策核心 ├── handStore.ts Hand 状态管理 +├── industryStore.ts 行业配置 (V13 新增,已接通 ButlerPanel) ├── memoryGraphStore.ts 记忆图谱 ├── offlineStore.ts 离线队列 ├── saasStore.ts SaaS 认证 diff --git a/wiki/saas.md b/wiki/saas.md index 70efc7e..7fdd2bb 100644 --- a/wiki/saas.md +++ b/wiki/saas.md @@ -1,6 +1,6 @@ --- title: SaaS 平台 -updated: 2026-04-11 +updated: 2026-04-14 status: active tags: [module, saas, auth, billing] --- @@ -77,17 +77,17 @@ POST /api/v1/auth/refresh ### SaaS 模块结构(代码验证) -15 个模块目录 (`crates/zclaw-saas/src/`): +16 个模块目录 (`crates/zclaw-saas/src/`): ``` -account/ agent_template/ auth/ billing/ knowledge/ -migration/ model_config/ models/ prompt/ relay/ -role/ scheduled_task/ tasks/ telemetry/ workers/ +account/ agent_template/ auth/ billing/ industry/ +knowledge/ migration/ model_config/ models/ prompt/ +relay/ role/ scheduled_task/ tasks/ telemetry/ workers/ ``` ### SaaS API 分布 -121 个 `.route()` 调用,12 个路由模块 (main.rs `.merge()` 注册): +137 个 `.route()` 调用,13 个路由模块 (main.rs `.merge()` 注册): | 模块 | 路由注册 | 说明 | |------|----------|------| @@ -102,13 +102,14 @@ role/ scheduled_task/ tasks/ telemetry/ workers/ | telemetry | telemetry/ | 用量统计 | | prompt | prompt/ | Prompt 模板 | | scheduled_task | scheduled_task/ | 定时任务 CRUD | +| industry | industry/ | 行业配置管理 (V13 新增) | | migration | migration/ | Schema 迁移 | -### 数据表 (38 CREATE TABLE) +### 数据表 (42 CREATE TABLE) -32 个 SQL 迁移文件,38 个 `CREATE TABLE` 语句。 +20 个 SQL 迁移文件,42 个 `CREATE TABLE` 语句。 -核心表: users, agents, conversations, messages, billing_*, knowledge_*, model_configs, roles, permissions, scheduled_tasks, telemetry, agent_templates, saas_schema_version, user_profiles, trajectory_records +核心表: users, agents, conversations, messages, billing_*, knowledge_*, model_configs, roles, permissions, scheduled_tasks, telemetry, agent_templates, saas_schema_version, user_profiles, trajectory_records, industries, account_industries ### Workers (7 个) @@ -132,14 +133,14 @@ role/ scheduled_task/ tasks/ telemetry/ workers/ | 文件 | 职责 | |------|------| -| `crates/zclaw-saas/src/main.rs` | 路由注册入口 (12个 .merge()) | +| `crates/zclaw-saas/src/main.rs` | 路由注册入口 (13个 .merge()) | | `crates/zclaw-saas/src/auth/handlers.rs` | 认证端点 | | `crates/zclaw-saas/src/relay/` | 聊天中转 | | `crates/zclaw-saas/src/billing/` | 计费 | | `crates/zclaw-saas/src/knowledge/` | 知识库 | | `crates/zclaw-saas/src/workers/` | 7 个后台 Worker | -| `crates/zclaw-saas/migrations/` | SQL 迁移 (32 文件) | -| `admin-v2/src/pages/` | 15 页管理后台 | +| `crates/zclaw-saas/migrations/` | SQL 迁移 (20 文件) | +| `admin-v2/src/pages/` | 17 页管理后台 | | `desktop/src/lib/saas-client.ts` | 前端 SaaS API 客户端 | | `desktop/src/store/saasStore.ts` | SaaS 认证状态 |