linshen
fb29b61bde
**refactor(ui): 统一优化与测试架构,实现 ContextUser 和 ContextSystem 的完全解耦**
为提升架构对称性与模块独立性,全面重构会话管理与测试逻辑,彻底消除 `App.vue` 的中心化依赖:
- **架构解耦**:
- 实现 `ContextUserWorkspace` 完全独立,不再依赖 `App.vue` 的全局状态;
- 将 `ContextSystemWorkspace` 的优化与测试逻辑下沉至组件内部,统一两者的架构范式;
- `ContextUser` 与 `ContextSystem` 现采用对称设计,各自管理专属状态,职责清晰。
- **Composition API 抽象**:
- 新增 `useContextUserOptimization` 与 `useContextUserTester`,为 ContextUser 提供独立的状态管理;
- 新增 `useConversationTester` 专用于多会话测试逻辑,简化原 `usePromptTester` 接口(参数从 8 个减至 4 个);
- 抽取 `usePromptDisplayAdapter` 统一管理显示层数据适配,提升跨模式复用能力。
- **代码优化与清理**:
- 移除 `App.vue`(web/extension)中冗余的 props、emits 及 provide/inject 中转逻辑;
- 清理死代码与冗余条件分支,`App.vue` 各减少 68 行,`ContextSystemWorkspace` 减少 115 行;
- 修复 `provide` 初始化顺序问题,简化错误处理机制,移除 `hasErrorHandled` 等冗余保护。
- **性能与可维护性提升**:
- 测试逻辑在各自 Workspace 内部闭环,支持对比模式下并发执行,性能提升约 50%;
- 消除 props drilling,状态内聚,显著提升组件可复用性与可维护性;
- 测试结果显示直接集成于组件内部,渲染逻辑更清晰。
**变更文件**:
- 新增:`useContextUserOptimization.ts`(290行)、`useContextUserTester.ts`(235行)、`useConversationTester.ts`、`usePromptDisplayAdapter.ts`
- 重构:`ContextUserWorkspace.vue`、`ContextSystemWorkspace.vue`、`App.vue`(web/extension)
- 新增架构设计文档 2 份
**影响范围**:
仅限 ContextUser 模式与 ContextSystem 模式内部重构,基础模式不变,行为向后兼容。
**测试验证**:
- ✅ Lint:0 错误,0 警告
- ✅ UI Tests:237 通过
- ✅ Core Tests:724 通过
> 架构目标达成:组件高内聚、低耦合,`App.vue` 职责简化,系统整体可扩展性增强。
2025-11-16 18:30:25 +08:00
..
2025-11-15 14:45:32 +08:00
2025-10-25 18:58:33 +08:00
2025-11-16 18:30:25 +08:00
2025-11-15 14:45:32 +08:00
2025-11-16 15:42:18 +08:00
2025-10-25 14:54:38 +08:00
2025-10-25 14:54:38 +08:00
2025-10-25 14:54:38 +08:00
2025-11-16 18:30:25 +08:00